www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Analoge Spannung Digitalisierung


Autor: Ralf A (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe folgendes Problem.
Alle 1,5 bis 2 Sekunden muss ich eine analoge 1 - 5 Volt Spannung 
digitalisieren und am PC (Win XP) dokumentieren. Insgesamt so 3000 - 
4000 Messungen.

Ich habe zwei Lösungsansätze:

1: Ein A/D Wandler IC, welches dann direkt vom PC über die serielle oder 
parallele Schnittstelle angesprochen wird. Und jeden Messpunkt sofort 
überträgt.

2: Ein Mikrocontroller mit A/D Wandler, welcher ca. 3000 - 4000 
Messpunkte sammelt und erst nach abgeschlossener Messungen mit dem PC 
den Datenaustausch macht.

Zu meinen Kenntnissen:
Ich habe C++ Kenntnisse (Objektorientiert), leider habe ich noch nichts 
mit Schnittstellen gemacht, da muss ich mich erst noch einarbeiten.
Assembler Mikrocontroller Kenntnisse.
Das Windows Programm ist auch Bestandteil dieser Aufgabe.
Welche Schnittstelle ist dafür am geeignetsten?

Welche Methode würdet ihr mir empfehlen?

Ich freue mich auf eure Antworten

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Digital-Multimeter mit serieller Schnittstelle, das mißt auch alle 
1-2 Sekunden. Oder muß es getriggert wandeln?

Autor: sebba (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich würd irgendnen AVR mit AD Wandler nehmen

(zum einen muss der AD ja nich wirklich schnell sein - und zum anderen 
hört sich das nicht so an als ob du ne hohe Auflösung brauchst und 10 
Bit sind ja auch schon nich schlecht (bei 0-5 V sind das 5 / 2^10 = 
0,005 V Auflösung (die du aber sowieso nicht erreichen wirst...)

Ob du die Daten dann direkt überträgst oder noch zwischenspeicherst 
kannst du dann auch spontan entscheiden - bei nem Mega32 hast du 2K Ram 
- also kannst du ca 1500 Messungen zwischenspeichern (sofern der µC nich 
noch irgendwas anderes machen soll)

Die Schnittstelle is würd ich sagen Geschmackssache ;) - Seriell ist 
natürlich von der Übertragung extrem einfach - du brauchst auch der µC 
Seite so gut wie keine Hardware und auf der PC Seite keine Treiber...

Alternative wär USB - Vorteil: Du hast schon ne Stromversorgung, 
außerdem gibts Code um mit nem nakten AVR ne USB Schnittstelle 
hinzubekommen - aber es bleibt entweder erheblicher Programmieraufwand 
oder Hardwareaufwand (verglichen zu RS232) - und du brauchst auf der PC 
Seite natürlich Treiber...

Nen einfachen AD Wandler würd ich nich nehmen - wär mir halt zu 
aufwändig da dann noch Hardware ranzubasteln um den ann Parallel oder 
Seriellen Port zu bekommen - und nen AVR kost auch nur 2 - 5 €
(Is ja aber nur meine Meinung....)

Grüße, Sebba

Autor: Hansi Lein (fabian87)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das einfachste ist wohl einfach nen 10 bit ad wandler vom avr nehmen und 
das ergebnis sofort nach der messung per uart senden!

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das einfachste ist einen USB-AD-Wandler (in Form eines Multimeters :).

Autor: Ralf A (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die Antworten.

Ich tendiere zu der AVR A/D Wandler Methode.
Jetzt stellt sich mir nur noch die Frage, wie ich es übertragen soll.
Seriell hört sich für mich ser schwierig an, da ich die Stellen nur 
einzelen schicken kann, parallel könnte ich 8 bit direkt übertragen.
Wenn ich aber die 10 bit des A/D Wandlers übertragen möchte ergibt sich 
aber bei der parallelen Übertragung das gleiche Problem.

Habt ihr da Vorschläge für mich?

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Womit willst du die Daten auswerten?
Soll es eine Textdatei bzw. tabellenkalkualtionstaugliche Datei werden?
Dann ist es sinnvoll, die AD-Werte im Controller in einen String 
(Aneinanderreihung von ASCII-Zeichen) zu wandeln.
Man kann den AD-Wert dann auch schon in die Spannungswerte o.ä. wandeln.
Dann kann man in einem Protokoll noch festlegen, ob es zu regelmässigen 
Messungen (in einstellbaren Intervallen) oder nur eine einzelne gemacht 
werden soll.
Das sind alles mögliche Erweiterungen.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Seriell hört sich für mich ser schwierig an

Nicht wirklich.
Auf der AVR Seite schickt dir der µC jeden Messwert einzeln
jeweils abgeschlossen mit einem '\n'.
Auf der PS Seite empfängst du den String, teilst ihn
Anhand der '\n' in Teilstrings auf und wie man einen String
in einem Zahlenwert zurückverwandelt weist du ja.

Wenn du das so machst, hast du den Vorteil dass du zum Testen
noch überhaupt kein PC Programm brauchst. Du nimmst einfach
eine Terminalemulation (zb. Hyperterminal) und siehst dort
die Messwerte durchrauschen. Jeweils ein Messwert auf einer
neuen Zeile.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Auf der AVR Seite schickt dir der µC jeden Messwert einzeln
> jeweils abgeschlossen mit einem '\n'.

Das klingt jetzt so, als ob der AVR das von alleine
machen würde. Tut er natürlich nicht. Das musst du
schon programmieren. Ist aber nicht wirklich schwer.
Da das die einzige Aufgabe des AVR ist, kannst du
kleckern und einfach sprintf() dafür hernehmen.
Wenn du in C programmierst, was ich dir empfehlen
würde.


Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.