PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfängerfragen zu Microcontrollerboard und meinem Projekt



nico23
21.03.2007, 19:53
Hallo Leute!
Also erst mal hoffe ich ins richtige Forum gepostet zu haben. Wenn nicht bitte verschieben.

Als nächstes möchte ich mich gerne vorstellen:
Mein Name ist Nico, ich bin 22 und studiere Maschinenbau im 6. Semester. Da das da allerdings alles ziemlich theoretisch ist habe ich so meine Probleme um meine aktuelle Projektidee zu verwirklichen. Ich hoffe ihr könnt und wollt mir helfen. ;)

Also, ich habe in meinem Leben schon ein bisschen was gelötet, kann eine C-like Programmiersprache, Java und bin auch technisch nicht ganz unbegabt. Ich denke das sind schon mal gute Voraussetzungen. ;)

Nun aber zu meiner Idee: Ich möchte gerne die Daten mehrerer Sensoren über circa 2h aufzeichnen und per Taster gestartet und gestoppt werden. Das ganze soll unabhänig von einem Computer und Netzstecker erfolgen. Nach der Aufzeichnung möchte ich die Daten dann mit einem Computer auslesen und weiterverarbeiten.
Folgende Sensoren sollen zu Beginn Verwendung finden:
1x 3 Achs Beschleunigungssensor bis 5g
1x 2 Achs Beschleunigungssensor bis 5g
2x Geschwindigkeitssensor (z.B. FAG Rillenkugellager mit integriertem Sensor)
Allerdings soll das eventuell noch mal erweitert werden.

Nun meine Fragen:
Kann man das mit einem Microcontrollerboard grundsätzlich realisieren? Das RN-Control wird einem hier in diversen Artikel ja schon mal ans Herz gelegt. Würde sich das Board eignen? Wieviel Messwerte könnten da pro Sensor pro Sekunde erfasst werden?
Worauf könnte am besten gespeichert werden, ohne das es bei leerem Akku zu einem Datenverlust der Messwerte kommen kann. Geht da so ne SD-Karte wie man sie z.B. aus dem MP3 Player kennt, oder gibt es günstigere Alternativen?
Der gesamte Versuchsaufbau würde auch wie die Sensoren belastet werden. Sind 5g da zu viel? Ehrlich gesagt bin ich noch nicht sicher ob solch hohe Beschleunigungen überhaupt wirken, aber es kann auch stellenweise zu deutlichen Lastspitzen kommen.

So, das waren schon mal einige Fragen. ;) Wie ihr seht bin ich absoluter Newbie und vermutlich wurde die Hälfte hier schon mal gefragt, trotzdem hoffe ich das mir jemand weiterhelfen kann. Es werden sicherlich noch einige weitere Fragen bei einer Realisierung des Ganzen auftreten und die kann ich dann immer in diesem Thread stellen.
Gruß und schon mal Danke im Voraus für eure Hilfe!

nico

Ringo
21.03.2007, 20:19
FAG Katalog Teufelswerk...

ABer zurück zum Topic.
Ich kenn mich mit den Sensoren nicht aus. Aber was man noch so als Größe bei so einem Projekt brauch ist die Speicherrate? Jede Min? jede Sekunde?
SD Karte hört sich schon sehr gut an.. wenn man aber nur kleine Datenmengen hat würde vll ein I2C EEprom funktionieren.

Wenn man als Auflösung der Senoren mal 8 bit an nimmt sind es also
3 Achs Sensor: 3 byte pro messung
2 Achs Sensor: 2 byte pro messung
2 geschw. Sensoren: 2 byte pro messung

7 byte pro messung? Oder mehr je nachdem wie genau die Sensoren sind.
Wie werden die eigentlich angesteuert? I2C? normale ADC?

2h haben immerhin 2*60*60 = 7200 Sekunden * die 7 byte (oder mehr) = 50400 byte oder ca 50 KByte..

verbessert mich wenn die Rechnung falsch ist.

MfG
Ringo

nico23
21.03.2007, 20:48
hehe... Wieso hälst du den FAG Katalog für Teufelswerk! ;) Ist doch nen schöner gebundener Schinken... :D

Also bei der Speicherrate denke ich so an die 10 Aufnahmen pro Sekunde. Eine schlechtere Auflösung halte ich nicht für sinnig.
Ich wollte erst mal hören wozu so ein kleines Microcontrollerboard fähig ist. ;) Je nach Sensor und wenn es der Speicherplatz und der Controller hergibt gerne auch höhere Abtastraten.

Noch etwas fürs Verständnis: Ich kenne Bit nur als Bezeichnung für eine Binärziffer. Kann jetzt so direkt in Verbindung mit Auflösung nichts damit anfangen.
Gruß!

nico

Lusbueb33
21.03.2007, 22:30
Zwei Bit kannst du auf vier verschiedene Arten kombinieren: 00, 01, 10, 11. Du kannst also mit 2bit ein analoges Signal vierteln. Wenn du mehr Bit hast, kannst du das analoge Signal feiner zerstückeln und erhälst eine bessere Auflösung.

Beispiel für 2bit-ADC(Analogwert muss zwischen 0 und 4V liegen):
________________________
Analog-Wert | Digitalsignal
________________________
0V...1V | 00
________________________
1V...2V | 01
________________________
2V...3V | 10
________________________
3V...4V | 11
________________________

kalledom
21.03.2007, 23:14
Hallo nico23,
wenn Du 10 Aufnahmen pro Sekunde benötigst, das für 2 Stunden mit 3 Sensoren bei 8 Bit = 1 Byte = 256 Stufen Auflösung, dann ergibt das einen Speicherbedarf von:
2h * 3.600s * 10 * 3 = 216.000Byte
Da wird es mit AVR und PIC ziemlich eng; welcher µC hat 256k RAM ?
Ich empfehle zwei statische CMOS-RAMs mit je 1MBit = 256kByte, batterie-gepuffert, die von den µC-I/O-Pins angesteuert werden.
Dazu ein µC für Minimum 8 Bit Datenleitungen, 18 Bit Adress-Leitungen, Schreib- und Leseleitung = 28 I/O-Pins plus die Analog-Eingänge.
Ich bin PIC-Fan und favorisiere den PIC16F877.
Der hätte dafür ausreichend I/Os und auch eine serielle Schnittstelle.
Bei 3 x 10 Messungen pro Sekunde gibt es überhaupt keine zeitlichen Probleme, weder bei einem (langsamen) 4MHz Quarz, noch bei irgendeiner Programmiersprache.

nico23
21.03.2007, 23:54
Hi!
Hui,... also das sind jetzt schon ein paar sehr spezielle Angaben...

Verstehe ich das nun richtig, das ein Beschleunigungssensor mit 8bit Auflösung, der einen Messbereich von 0-5g hat, eine Auflösung von 5/256 erreicht? Ich kenne das nur von A/D Wandlern, die dann ein analoges Signal in "Treppen" zerlegen um es als Digitalsignal weiter zu geben.

I/Os sind allgemeine Input/Output Möglichkeiten? Aber das macht noch keine Aussage, ob diese digital oder analog sind?

Ich fände es super wenn ich nicht erst noch großartig den gesamten Controller zusammenlöten müsste, sondern mich auf Anklemmen der Sensoren, des Speichers und der Programmierung der Software beschränken könnte. Ich denke das ist für meine erste Controllererfahrung das Beste.

Laut diesem HOWTO des Portals scheint da ja dieser RN-Control da erste Wahl zu sein für den Anfang? Vermutlich ist das Teil für meine Anwendung total überdimensioniert, aber vielleicht möchte ich das ganze System ja noch erweitern. Aus diesem Grund fände ich es auch genial wenn der Speicher etwas großzüger dimensioniert und Schnittstellen für weitere Sensoren vorhanden wären.
Gruß!

nico

kalledom
22.03.2007, 00:08
Ich bin erst mal davon ausgegangen, daß die Sensoren ein analoges Signal liefern, z.B. 0...5,0V und an die ADW-Eingänge (ADW=AnalogDigitalWandler) eines µC angeschlossen werden können.
µC haben AD-Wandler 'on Board' mit 10 Bit (und mehr) Auflösung bei einer Eingangsspannung von 0...5,0V.
In Deinem Fall ist das Problem nicht die Größe oder Geschwindigkeit der µC, sondern die Menge an Speicher zum Ablegen der Daten.
µC sind Steuer-Rechner und keine 'Daten-Verwalter'; deshalb wurde mit Speicher etwas 'gegeizt'.
Normalerweise wäre für Deine Anwendung ein µC aus der 8051-Familie mit einem Daten- und Adress-Bus angebracht, bei 256kByte sind aber auch dort die Grenzen teilweise überschritten.

nico23
22.03.2007, 00:15
Alles klar, ich verstehe...
In wie fern kann man da einen externen Speicher wie z.B. ne SD Karte anschließen? Würde das über den Daten- und Adress-Bus laufen?

kalledom
22.03.2007, 05:38
Da eine SD-Karte relativ wenig Kontakte hat, kann dort nicht viel parallel laufen; die Daten werden bit-weise seriell rein und raus geschoben.
Darüber hinaus gibt es I²C, SPI und weitere serielle 2- und 3-Leiter-Busse.
Eeproms mit I²C gibt es mit 1MBit; das wären 1MBit / 8 Bits = 128kByte.
Du kannst je nach Typ und Hersteller 4...8 Bausteine einsetzen.
Das wäre auch eine Möglichkeit zur Datenspeicherung (da hatte ich zuerst nicht dran gedacht).

nico23
22.03.2007, 19:25
Also dann könnte ich bis 8 Eeproms zusammenschaltet und würde 8 x 128 kByte = 1,024 MByte Speicher bekommen. Das würde ja fürs erste reichen. ;)

Um nun mal Nägel mit Köpfen zu machen. Kann ich dazu die RN-Control verwenden, oder muss ich alles komplett selbst bauen? Kann man dort die zusätzlichen Eeproms anschließen (per I2C?!)?
Dort sind bis zu 8 analoge Sensoren anschließbar und weitere mit A/D Wandler an die digitalen Eingänge, oder? Wie groß ist die Auflösung der internen A/D Wandler. Habe dazu nichts gefunden.
Ich denke das Board und die Sensoren ließen sich dann per 9V Blockbatterie betreiben. Benötigt man dann noch eine Spannungsstabilisierung, oder wäre die auch schon integriert?

Bei einem einzelnen Microcontroller tue ich mir zu Beginn nur unnötig schwer, da man den wohl nicht mal direkt beschreiben kann. Ein Board erscheint mir da etwas einfacher und anfängerfreundlicher...
Was meint ihr?!
Gruß!

nico