Forum: Digitale Signalverarbeitung / DSP / Machine Learning Welcher MCU für meine Anwendung?


von TH (Gast)


Lesenswert?

Hallo zusammen,

für einen Teil meiner Abschlussarbeit möchte ich ein 
Datenerfassungsgerät und dessen Auswertungssoftware durch einen 
Mikrocontroller (DSP) ersetzen.

Anforderungen/Eckdaten:

Analoge Eingangssignale: Mikrofon, Beschleunigungssensor

Diese analogen Signale müssen digitalisiert werden.
Abtastung sollte mit min. 48kHz erfolgen.
Die Rohdaten werden dann einem Post-Processing unterzogen (FFT, 
Mittelwerte, ..)

Gerne würde ich dieses Post-Processing mit der Linux-Software GNU Octave 
realisieren.

d.h. Anforderungen sind..

DSP (Digitalisierung, Filterung, ..)
Linux OS
Echtzeitfähig

Die verarbeiteten Audiodaten möchte ich dann in "Echtzeit" (nach dem 
Post-Processing) über eine RS232-Schnittstelle an weitere Hardware 
senden.

Die eigentliche Frage.. welchen Mikroprozessor/DSP könnt ihr mir für 
diese Aufgabenstellung empfehlen?

Liebe Grüße

von Sascha (Gast)


Lesenswert?

Hallo,
Cortex M4 mit FPU z.B. STM32F429 oder ADSP-CM408F würde vermutlich 
reichen.
Die FFT solltest du aber besser umschreiben wie viel Performance da 
gebraucht wird kann ich nicht ableiten.
Der STM32F373 hat bessere AD-Wandler, gut ist nicht so schnell.
Ansonsten must du halt einen größeren DSP von Ti oder AD auswählen.

Gruß Sascha

von derguteweka (Gast)


Lesenswert?

Moin,

TH schrieb:
>
> Gerne würde ich dieses Post-Processing mit der Linux-Software GNU Octave
> realisieren.
>

Das ist das Killerkriterium. Damit schiesst du dich ins Aus. D.h. damit 
kommt eigentlich nur irgendein Intel i7 aufwaerts in Betracht, und damit 
ist es noch nicht gewaehrleistet. Octave ist nicht dazu gedacht, in 
Echtzeit irgendwas zu machen. Mit Octave simulierst du dir die Welt und 
probierst ein paar Filter-,FFT- und andere Faxen aus.
 Wenn du dann weisst, was fuer Algorithmen du gerne haettest, dann 
guckst du, dass du das in einer dem Target angepassten Hochsprache (oft 
C, VHDL) mit dem noetigen Echtzeitbums ans laufen kriegst.
Auf deinem "DSP"-Board laeuft selbst kein Octave.

* 48KSamples/sec ist schon mal eine Ansage. Was noch fehlt, sind Anzahl 
der Kanaele und benoetigte Bitbreite.

* FFT, Mittelwerte ist ungefaehr so aussagekraeftig wie: "Ich brauch' 
ein Auto, welches soll ich nehmen?"
Entscheidend sind Groesse, Anzahl der FFTs, Genauigkeit, usw.
Beim Filtern genauso...
Beim DSP-Quartett (Nachfolger des Hubschrauberquartetts) zaehlen u.a. 
MACs/sec; also die Anzahl von Multiply-Accumulates, die pro Sekunde 
berechnet werden koennen.

Wie willst du Daten die mit 48kSamples und mutmasslich mehreren Bits 
Aufloesung reinkommen, ueber eine RS232 verschicken? Wenn die nicht 
wahnsinnig gepimpt wird, ist die doch viel zu langsam.

Das erscheint mir alles noch arg unausgegoren - lass' noch ein bisschen 
gaeren...

Gruss
WK

von W.S. (Gast)


Lesenswert?

TH schrieb:
> für einen Teil meiner Abschlussarbeit..

TH schrieb:
> d.h. Anforderungen sind..
>
> DSP (Digitalisierung, Filterung, ..)
> Linux OS
> Echtzeitfähig

Meinst du nicht eventuell auch, daß dies ein wenig üertrieben ist und 
obendrein am Sinn einer Abschlußarbeit vorbeigeht? Natürlich könnten 
viele Fachleute hier in diesem Forum dir alle Teile deiner Aufgabe 
schlüsselfertig liefern - aber wer soll das später mal in deinem Beruf 
tun?

Und zur Sache: Du willst ein "Datenerfassungsgerät und dessen 
Auswertungssoftware durch einen Mikrocontroller" ersetzen.

OK, dann tue das.
Du wirst dazu erstmal dein Datenerfassungsproblem analysieren müssen, 
dann dir darüber klarwerden müssen, mit welchen Datendurchsätzen und 
Bearbeitungsaufwand du rechnen mußt, dir einen µC aussuchen, der so 
etwas handhaben kann ohne daß ihm die Datenflut über'n Kopf wächst und 
der auch solche Schnittstellen hat, daß du die Daten auch wieder 
woanders hin los wirst. Das ist die ingenieurtechnische Aufgabe, die dir 
gestellt ist. Daß du anschließend an die Hardwareauswahl auch noch die 
Firmware vor dir hast und dort wohl kaum mit irgendwelchen Anwendungen 
aus PC Gefilden AUF DEM µC wirst arbeiten können, sollte dir an dieser 
Stelle bereits klar geworden sein. Entweder also ein Hybridsystem mit 
dem µC als "Meßknecht und Zuträger" und einem PC für die eigentliche 
Verarbeitung - oder ne Menge Arbeit, um die du dich nicht herum-mogeln 
kannst.

Für eine "Abschlußarbeit" sehe ich das alles als ne ziemliche Nummer zu 
groß an. Was für ein Abschluß ist das eigentlich?

W.S.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.