mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR - 2x 0V-5V in Abhängigkeit der Zeit messen?


Autor: Dendosh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag,

ich bin völlig neu hier und hab (bisher) null Ahnung, das mal vorweg.
(Ich weiß, ihr liebt mich jetzt schon...)

Einen Schaltplan kann ich grob lesen und es ist mir auch schon mal 
gelungen dieverse Schaltungen nachzubauen.

Nun zum Thema:
Ich möchte parallel zwei 0V-5V Ausgänge überwachen und
in Abhängigkeit der Zeit an einen PC übertragen, um zu Vergleichen wie 
schnell sich die Werte verändern.
Ist das mit AVR Controlern möglich oder hat jemand einen Tip für mich?

Bevor ich viel Zeit investiere um festzustellen, das ich völlig auf dem 
falschen Weg bin, hoffe ich hier ein paar Tipps von den Profis zu 
bekommen.

Ich möchte auch keine kpl. Lösung bekommen (würde ich natürlich auch 
nehmen...), schön wäre nur zu wissen, das ich auch dem richtigen Weg 
bin.
Generell möchte ich hinterher verstehen, wie das funktioniert und
bin ein großer Fan von "Learning by doing", möchte nur nicht zu sehr auf 
die Nase fallen dabei.

Auf AVR bin ich gekommen, weil ich erfolgreich einen E-Advenzkranz 
nachgebaut habe und ein AVR ISP Programmiergerät vorhanden ist.
"Nachgebaut" bedeutet: Schaltplan, Stückliste aus dem Internet, Platine 
per direkt-Toner Methode (nach mehrfachen Versuchen) geätzt, 
zusammengebraten und Programm aufgespielt.

Ich würde mich über zahlreiche Tipps sehr freuen

Autor: Slowflyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hierzu ein paar Stichworte:

 - AVR mit ADC und serieller Schnittstelle
 - Schaltungsentwurf (evtl. ein Starterkit)
 - Schaltungsdesign (evtl. ein Starterkit)
 - Firmware programmieren

Wenn du wirklich lernen möchstest, wirst du um diese Punkte nicht drum 
herumkommen.

Hirzu ein paar Links, die Hilfreich sein könnten:

http://www.mikrocontroller.net/articles/AVR-Tutorial

http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

Ich hoffe dass es hilfreich war

Autor: Gast123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie schnell ändern sich deine Signale denn?
Haben beide den selben Massebezug?
Ist sichergestellt, dass sie wirklich nur 0..5V sind?

wenn die Antworten 'langsam' (bis vielleicht 10kHz..), 'ja', 'ja' sind, 
ist das eigentlich sehr einfach zu machen.

Such dir einen Controller mit Analog-Digital-Wandler (ADC) und serieller 
Schnittstelle (UART) raus. Deine Signale an die AD-Wandler und an die 
serielle einen Pegelwandler (Stichwort MAX232).

Das Programm würde dann wohl so aussehen:

- Initialisierung
- Endlosschleife
     - warten
     - Kanal_1 messen
     - Ergebnis_Kanal_1 per UART senden (und warten bis fertig!)
     - Kanal_2 messen
     - Ergebnis_Kanal_2 per UART senden


Natürlich müsstest du dir noch etwas überlegen um dann auf dem PC 
Kanal_1 und  Kanal_2 auseinander halten zu können.
Auf die AVR Tutorials wurde ja schon hingewiesen. :-)

Autor: Dendosh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das klingt ja, als wäre das tatsächlich machbar wie ich mir das grob 
vorgestellt habe...

Die Tut's habe ich mir auch schon mal angesehen,
nur lerne ich am liebsten am lebenden Objekt,
also werde ich mir mal ein paar Komponenten besorgen und
einfach mal über die Tut's anfangen.

Die schon erwähnten E-Candles habe ich ja auch hinbekommen,
aber das war ja auch nur Bauen nach Anleitung, anschließen und
fertiges Programm aufspielen...
Das war ein schönes Erfolgserlebnis und gut für die ersten Schritte,
aber ich würde das viel lieber Verstehen und nicht nur machen.

Es gibt z.B. viele Linux Anleitungen in Schema:
tipp mal alles so ab und dann geht das schon...
Ich würde dann schon lieber verstehen was die Befehle und Parameter in 
der Komandozeile bedeuten, was aber selten dabei steht.

Anyway:
Vielen Dank für die Anregungen, ich werde das mal in Angriff nehmen.

Autor: Gast123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Solange die Messrate niedrig ist sollte das eigentlich schon zu nem 
Erfolgserlebnis führen :-)

Pass auf dass dein Messsignal 0..5V nicht verlassen kann, sonst ist noch 
eine Schutzschaltung notwendig (oder der Austausch des Controllers..).

Das einzige Problem könnte vielleicht noch die Visualisierung auf dem PC 
sein. Aber ich dachte da gabs auch mal eine Art Terminalprogramm, das 
auf der seriellen Schnittstelle lauscht und dann alles in eine CSV-Datei 
schreibt, die man dann mit Excel/Openoffice/Gnuplot weiter verwursten 
kann. Leider ist mir der Name des Programms entfallen.

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sind das 0 bis 5V oder 0 oder 5V, also Analog- oder Digitalsignale?

MW

Autor: Dendosh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was bedeutet denn langsam bis 10kHz?
10 000Hz = 10 000 Takte pro Sekunde?

Also aus dem Bauch raus würde ich mir 10 Takte pro Sekunde vorstellen 
und
vermutlich habe ich da schon hoch gegriffen.

Die Bauteile haben den gleichen Massenbezug und werden mit 5V versorgt,
also denke ich nicht das da mehr als 5V wieder raus kommen wird.

Autor: Dendosh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es sind 0V BIS 5V und analog.
Der Hinweis auf CSV ist interessant,
mit Excel sollte das ein kurzes Problem sein, die Werte auszuwerten.

Autor: Jörg B. (manos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dendosh wrote:
> Also aus dem Bauch raus würde ich mir 10 Takte pro Sekunde vorstellen
> und vermutlich habe ich da schon hoch gegriffen.
Also bei 10 Messungen/Sekunde langweilt sich jeder AVR. Sollte ohne 
Probleme mit jedem der einen A/D-Wandler hat machbar sein da eigentlich 
alle AVRs eine serielle Schnittstelle drin haben. Einfach noch ein RS232 
Pegelwandler für ±10V (z.B. MAX232) und ein wenig Hühnerfutter und 
fertig ist. Codebeispiele zum Einlesen eines A/D-Wertes und Ausgabe auf 
Serielle Schnittstelle gibt es bestimmt hier in der Code-Sammlung oder 
ansonsten über Google.

Autor: Gast123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und später wenn du noch ein bisschen Löterfahrung gesammelt hast kannst 
du den MAX232 auch gegen einen FTDI232 austauschen. Der setzt nach USB 
um und der Treiber simuliert auf dem PC eine virtuelle serielle 
Schnittstelle. Von dem Teil merkst du also im Idealfall garnicht, dass 
es kein MAX232 ist. Der einzige Nachteil ist das ziemlich kleine 
SMD-Gehäuse :-(

Autor: Dendosh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
FTDI323 = FT 245 BL von Reichelt?
Oder wo bekommt man einen FTDI323?

USB hört sich in meinen Ohren ja auch gut an,
weil die serielle Schnittstellen ja langsam aussterben.

Wie ist den der Aufwand zwischen Seriell und USB?
Vor der Löterrei habe ich eigentlich keine Angst,
das bekomme ich schon hin (früher oder später) ;o)

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.