Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Mittels LabVIEW soll das Auslesen eines AC Signals stattfinden. So weit, so gut. Das Signal wird auf einen Atmel Atmega16 Microcontroller gegeben, der mittels ADC und MAX232 die Daten über den Serialport an einen Rechner weitergibt. Dort soll LabVIEW die Ansteuerung des Microcontrollers sowie die Messung vornehmen und auswerten. Dabei gelingt es mir jedoch nicht, Signale (sinnvoll) zu messen, sobald deren Frequenz höher als etwa 3 Hz liegt.
Testweise wurde mit einem TTi 40MHz Funktionsgenerator ein Sinussignal bzw. Pulssignal auf einen Kanal gelegt und ausgelesen.
Das Auslesen geschieht ungepuffert direkt nach Aufforderung:
LabVIEW sendet ein "m", der Microcontroller führt die Messung durch und sendet das Ergebnis an LabVIEW zurück. Dort werden die Daten in einen Spannungswert skaliert und auf einem Graphen ausgegeben.
LabVIEW sollte doch in der Lage sein, bis auf etwa 1ms Schleifen durchzuführen, das entspräche aber einer Frequenz von 1 kHz - davon bin ich aber leider weit entfernt...
Im Anhang findet Ihr das komplette Programm (erstellt mit LabVIEW 7.1 Express), die Aufteilung ist
Atmel16.vi - User Interface und Messschleifen
Communication.llb - VISA Kommunikation
Conversion.llb - Konvertieren der Daten in Spannungen, Hex in ASCII, etc.
Functions.llb - Diverse kleinere Funktionen
Test.llb - (nicht benötigt)
Variables.llb - Globale Variablen