Brauche Microcontroller Kaufberatung. /// ARM-Microcontroller

Hero2

Ensign
Registriert
Juli 2007
Beiträge
202
Hallo,

ich will diesen Sommer ein Projekt versuchen. Ich will mit einem ARM - Microcontroller mehre Spannungen messen und diese Grafisch ausgeben.

Ich weiß aber nicht, welchen ARM - Microcontroller ich am besten benutze.
Der ARM - Microcontroller soll folgendes erfüllen :

1.: Er soll zwischen 10 und 20 Spannungen parallel einlesen (10 muss er mindestens können. 20 währen SUPER!)
2.: Diese Werte Speichern (es wird über mehrere Minuten eingelesen)
3.: Diese Werte mit anderen Vergleichen(vielleicht auch komplizierte Vergleichsmethoden ausführen)
4.: Die Werte ausgeben.

Es gibt ja 10000 Microcontroller und jeder ist anders und ich weiß einfach nicht, worauf ich am besten achten muss. Ich hab mich schon ein wenig schlau gemacht und denke so langsam an sowas :
http://www.keil.com/mcb4300/
Was haltet ihr davon ?
Der Preis ist erst mal nicht so wichtig. Wichtiger ist die Funktionalität.


Ich hoffe meine frage ist nicht zu Speziell, aber ich hab kein gutes Forum gefunden, wo ich so eine Frage stellen kann. Wenn jemand weiß, wo ich solche Spezialfragen sonst stellen kann, sagt mir bitte beschied.


Mit freundlichen Grüßen
 
Hi,
also einen Contoller kann ich dir nicht empfehlen, aber ein Forum.

mikrocontroller.net

Als ich mich mit der Thematik beschäftigt hatte, wurde mir da immer bestens geholfen.
 
Hero2 schrieb:
1.: Er soll zwischen 10 und 20 Spannungen parallel einlesen (10 muss er mindestens können. 20 währen SUPER!)

Mach dir dazu mal mehr Gedanken.
Um welchen Spannungsbereich geht es? Was für Signalformen sind zu erwarten? Mit welcher max. Frequenz? Welche Anforderungen werden gestellt - Auflösung der ADCs, Abtastfrequenz, Genauigkeit usw.

Wenn du die Fragen alle genau beantworten kannst, kann man dir evtl. helfen.
 
mdave schrieb:
Mach dir dazu mal mehr Gedanken.
Um welchen Spannungsbereich geht es? Was für Signalformen sind zu erwarten? Mit welcher max. Frequenz? Welche Anforderungen werden gestellt - Auflösung der ADCs, Abtastfrequenz, Genauigkeit usw.

Wenn du die Fragen alle genau beantworten kannst, kann man dir evtl. helfen.

Ich beschrieb das dann mal genauer :

1.: Es sind sehr kleine Ströme : meistens kleiner, um 1mV (können notfals verstärkt werden)
2.: Als Signalform ist eine Welle zu erwarten in einer Frequenz zwichen : 1 und 30 Hz
3.: Anforderungen sind, dass die Signale so zeitnahe wie möglich gespeichert werden
4.: Wichtig ist, dass der Prozessor trotzdem noch genug Leistung hat, um die Daten vergleichen zu können.

Der Rest hängt von den Sensoren ab. Das problem hier ist, dass dort auch mehrere zur Verfügung stehen.
Reicht das, oder sind das zu wenig informationen ?
 
Hi, kannst auch mal nach Arduino googlen, wenn dir das nicht schon zu integriert ist^^

Gruß
 
Na sagen wir mal, jetzt haben wir schon eine konkretere Vorstellung von dem was du vorhast. ;-)
Suchst du denn 'nur' ein Controller-Board, oder eine Komplettlösung inkl. analogem Teil?
Ich weiss nicht genau wie du die Daten verarbeiten willst, aber der ~200MHz M4 hat schon ordentlich Dampf.
Die Daten da rein zu bekommen wird wohl eher das Problem sein. ~30Hz sind praktischerweise nicht viel, ~1mV aber leider auch nicht. Mit den on-chip ADCs wird das wohl ohne Weiteres nichts werden, du müsstest noch ein ADC-Board kaufen oder bauen. Falls Bauen in Frage kommt bieten sich dank der sehr niedrigen Datenrate einige Optionen. Z.B. könntest du die Signale erstmal verstärken und dann mit einem analogen Multiplexer zeitversetzt auf den on-Chip ADC bringen (LTC1391 oder ähnlich).
Ansonsten gibt es auch sehr nette ADCs mit mehreren Kanälen. (ADS1258 z.B.: 24bit delta-sigma Wandler mit 16 single ended oder 8 differentiellen Eingängen und für deine Zwecke sehr großzügigen 23ks/s pro Kanal.) Eingangsverstärker müssen dann trotzdem noch her.
Wenns wirklich nur um den Controller geht: die paar Daten einsammeln und verschicken, da lacht der drüber. Die zu verarbeiten, da musst du dir überlegen was für Operationen du geplant hattest.
 
Sorry, hatte in den letzten Tagen viel zu tun.

Danke erst mal für die lange ausführliche Antwort.
mdave schrieb:
Suchst du denn 'nur' ein Controller-Board, oder eine Komplettlösung inkl. analogem Teil?

Eine Komplettlösung gibt es soweit ich weiß leider nicht. Ich habe mich mit A/D Wandlern noch nciht so wirklich befasst.

mdave schrieb:
Ich weiß nicht genau wie du die Daten verarbeiten willst, aber der ~200MHz M4 hat schon ordentlich Dampf.
Die Daten da rein zu bekommen wird wohl eher das Problem sein.

Das ist gut zu hören. Die Verarbeitung ist mir auch noch nicht so 100% klar, weil sie ein riesiger Teil des Projekts ist. Es geht um den Vergleich von Spannungen. Deswegen wollte ich mir Spielraum nach oben lassen und ich denke auch, dass die Daten Zeitnahe zu bekommen ein großes Problem ist.
mdave schrieb:
~30Hz sind praktischerweise nicht viel, ~1mV aber leider auch nicht. Mit den on-chip ADCs wird das wohl ohne Weiteres nichts werden, du müsstest noch ein ADC-Board kaufen oder bauen. Falls Bauen in Frage kommt bieten sich dank der sehr niedrigen Datenrate einige Optionen. Z.B. könntest du die Signale erstmals verstärken und dann mit einem analogen Multiplexer zeitversetzt auf den on-Chip ADC bringen (LTC1391 oder ähnlich).
Ansonsten gibt es auch sehr nette ADCs mit mehreren Kanälen. (ADS1258 z.B.: 24bit delta-sigma Wandler mit 16 single ended oder 8 differentiellen Eingängen und für deine Zwecke sehr großzügigen 23ks/s pro Kanal.) Eingangsverstärker müssen dann trotzdem noch her.
Ich würde gerne hierzu nochmal genauer eingehen.

Ich hab hier nämlich eine dumme Frage : Wie krieg ich ein ADC mit dem Board verbunden. Worauf soll / muss ich da achten, damit diese Verbindung mir nicht die gesamte zeit kostet. Denke, dass wir ADC kaufen werden, weil bauen ein wenig lange dauert. Es ist aber auch nicht in Stein gemeißelt.
Welche ADC sind gut ? Worauf sollte man beim Kauf achten ?
Wie teuer sind "gute" in etwa ? Wie verbinde ich sie mit dem Microcontroller ?


Allgemein : Danke für eure Hilfe und vor allem danke an mdave
 
Hero2 schrieb:
Es geht um den Vergleich von Spannungen. Deswegen wollte ich mir Spielraum nach oben lassen und ich denke auch, dass die Daten Zeitnahe zu bekommen ein großes Problem ist.

Wäre nicht schlecht zu wissen wieviel Spielraum man da hat. Wie weit zeitlich gesehen dürfen die Abtastungen der einzelnen Kanäle entfernt sein? Bei dem was du bislag geschrieben hast würde ich vermuten dass das ziemlich unkritisch ist, aber man weiss ja nie. ;-)



Hero2 schrieb:
Ich hab hier nämlich eine dumme Frage : Wie krieg ich ein ADC mit dem Board verbunden. [..]
Worauf soll / muss ich da achten, damit diese Verbindung mir nicht die gesamte zeit kostet. [..]
Welche ADC sind gut ? Worauf sollte man beim Kauf achten ?
Also für mich klingt das nach legitimen Fragen. ;-)

Tja, alles nicht so einfach. ;-)
Man muss sich im Klaren darüber sein was man machen will und was man dafür braucht. ADCs gibt es mit arg verschiedenen Kenndaten, trotzdem sind die dann nicht zwangsläufig besser oder schlechter.
Wie die Dinger angebunden werden ist unterschiedlich. Manchmal parallel, bei diesen kleinen sample-rates aber meist seriell (SPI). Da muss man dann gucken wieviele dieser Schnittstellen der Controller hat und wieviel Verzögerung zwischen dn Kanälen bei deiner Anwendung noch zulässig ist.
Da deine Signalfrequenz so klein ist, ist das aber eigentlich alles unproblematisch.
Der erwähnte ADS1258 z.B. tastet im langsamsten Modus mit 1,8ks/s ab. (Also immernoch 60-fache Überabtastung für 30Hz. (Was für einen delta-sigma Wandler jetzt nicht so toll wäre. Aber keine Angst, intern hat der noch ein höheres Oversampling.))
1,8k*24bit Auflösung * 16 Kanäle macht gerade mal 700kbit/s. Der Controller kann normalerweise SPI mit mindestens 8MHz, oft sogar mehr, bis 40MHz zum Teil. Also unkritisch. In Wirklichkeit kommt natürlich noch Overhead dazu und auch etwas Zeit zwischen den Abtastungen zum Kanal umschalten. Aber insgesamt sieht das selbst über einen einzelnen SPI nicht schlecht aus. Im Zweifelsfall kann man sich natürlich immernoch einen Controller mit mehr Schnittstellen suchen und das dann z.B. auf 2 aufteilen.

Um einen wandler vernünfig auswählen zu können muss man erstmal überhaupt um die ganzen wichtgen Parameter wissen.
Dazu sei dir erstmal die kleine Appnote hier ans Herz gelegt:
http://www.atmel.com/Images/doc8456.pdf
Danach kannst du nochmal bei Wiki oder so die Unterschiede zwischen den Wandlertopoligien durchlesen. (ΔΣ, flash, resistor-string usw.)
DANN, und erst dann kannst du darüber nachdenken was du für dein Projekt brauchst.
Stelle dir Fragen wie: ich muss meine 1mV kräfig verstärken. Wie rauscharm bekomme ich das hin? Welche Auswirkung hat das auf die Wahl z.B. meiner Auflösung? (ein 24bit ADC ist sinnlos wenn die untere Hälfte bereits im Rauschen verschwindet. ;-)) Usw.
(Und dann halt in der parametersuche deines Zulieferers oder der Hersteller nach Wandlern suchen die deine Kriterien erfüllen.
Oft bieten die Hersteller auch gleich Evaluierungsboars an, die sind aber meist nicht günstig.(>100€))

Kosten sind sehr unterschiedlich. Einfache können durchaus einen Euro kosten. Der oben erwähnte kostet ~20€, hat aber auch 16 Kanäle.
 
mdave schrieb:
Wäre nicht schlecht zu wissen wieviel Spielraum man da hat. Wie weit zeitlich gesehen dürfen die Abtastungen der einzelnen Kanäle entfernt sein? Bei dem was du bislag geschrieben hast würde ich vermuten dass das ziemlich unkritisch ist, aber man weiss ja nie. ;-)

Das ist egal. Wir haben mindestens 2 Zentimeter. Deswegen ist das wirklich nicht von Bedeutung ;).


mdave schrieb:
Tja, alles nicht so einfach. ;-)
Man muss sich im Klaren darüber sein was man machen will und was man dafür braucht. ADCs gibt es mit arg verschiedenen Kenndaten, trotzdem sind die dann nicht zwangsläufig besser oder schlechter.
Wie die Dinger angebunden werden ist unterschiedlich. Manchmal parallel, bei diesen kleinen sample-rates aber meist seriell (SPI). Da muss man dann gucken wieviele dieser Schnittstellen der Controller hat und wieviel Verzögerung zwischen dn Kanälen bei deiner Anwendung noch zulässig ist.
Da deine Signalfrequenz so klein ist, ist das aber eigentlich alles unproblematisch.

Das ist gut. Werde bei dem Microcontroller drauf achten.


mdave schrieb:
Um einen wandler vernünfig auswählen zu können muss man erstmal überhaupt um die ganzen wichtgen Parameter wissen.
Dazu sei dir erstmal die kleine Appnote hier ans Herz gelegt:
http://www.atmel.com/Images/doc8456.pdf
Danach kannst du nochmal bei Wiki oder so die Unterschiede zwischen den Wandlertopoligien durchlesen. (ΔΣ, flash, resistor-string usw.)
DANN, und erst dann kannst du darüber nachdenken was du für dein Projekt brauchst.
Stelle dir Fragen wie: ich muss meine 1mV kräfig verstärken. Wie rauscharm bekomme ich das hin? Welche Auswirkung hat das auf die Wahl z.B. meiner Auflösung? (ein 24bit ADC ist sinnlos wenn die untere Hälfte bereits im Rauschen verschwindet. ;-)) Usw.

Ich muss dir nochmal dafür danken.
Ich werde nun folgendes machen : Ich werde die Kuh von der anderen Seite aufziehen ;).
Ich meine damit, dass ich mir nun Zuerst einmal 1 Sensor besorge und dann daran den ADC anpassen, bzw. aussuchen werde. Du hast einfach recht, dass es so rum sinnvoller ist. Ich muss mich da nun erst mal nochmal ausgiebig informieren. Erst, wenn ich das weiß, such ich den Microcontroller aus.


Gut danke für alles. Für 1-2 Wochen ist damit das Thema erst mal beendet ;). Muss mich erst mal mit den "neuen" dingen befassen und melde mich vielleicht nochmal danach, wenn ich weiß, welchen ADC und welchen Sensor ich genau benutze. Hat mir wirklich sehr geholfen alles. Danke nochmal, auch wenn das extrem schleimich klingt. ;)

:D:):D
 
Zurück
Oben