LabVIEWForum.de
LabView Protokoll für Rs232 - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA)
+---- Thema: LabView Protokoll für Rs232 (/Thread-LabView-Protokoll-fuer-Rs232)

Seiten: 1 2 3


LabView Protokoll für Rs232 - Manfred Steiner - 18.01.2011 13:30

Hallo

Ich möchte mein vorhandenes VB-Programm durch ein LabView-Programm ersetzen.
Leider bin ich auf dem Gebiet LabView ein blutiger Anfänger und bräuchte ein paar Tips zur Umsetzung.

Im Prinzip handelt es sich um eine Platine(Atmega32) an dem 4 Sensoren angeschlossen sind und über A/D ausgelesen werden.
Der Atmgea32 schickt dan die Daten der Sensoren ( SensorNr und Daten) mittels Rs232 an den Pc.
Dort übernimmt bis jetzt das VB Programm die Auswertung bzw Zuordnung der Daten zu den einzelnen Sensoren.

Nun möchte ich das ganze mit Labview umsetzen , ich habe mir als erstes mal die allg. Kommunikation mit der RS232 angeschaut.
Bis jetzt habe ich ein einfaches TerminalProgramm mit Visa aufgebaut welches ankommende Daten (String) anzeigt.

Mein Problem ist nun das ich keine Ahnung habe wie ein geeignetes Protokoll aussieht welches Labview handeln kann.
Wichtig ist eben die Zuordnung Sensor-Daten , mit VB ist die Auswertung relativ einfach wie macht man das mit Labview ?

Ich bin für jede Antwort, Link oder Tip danbar , immoment stehe ich ziemlich auf dem Schlauch

mfg

Manfred


LabView Protokoll für Rs232 - Lucki - 18.01.2011 14:12

Mit Labview funktioniert mit jedem Protokoll - sofern man es entsprechend programmiert. Normalerweise wird deshalb die Frage anders herum gestellt:
"Eine Platine mit 4 Sensoren sendet Daten über RS232 an den PC, Protokoll siehe Anhang. Wie muß das VI zu diesem Protokoll aussehen?"
Ich würde das bisherige, funktionierende Protokoll so lassen wie es ist. Du kannst es hier posten, und die erhälst wahrscheinlich umgehend einen Realisierungvorschlag. Besser wäre allerdings ein eigener Versuch mit einem VI, und sei der noch so bescheiden.


LabView Protokoll für Rs232 - Manfred Steiner - 18.01.2011 15:45

Hallo

Danke für die schnelle Antwort !

Ich habe damals einfach die Daten wie folg gesendet bzw empfangen !

236;125;147;214;n

DatenSensor1;DatenSensor2;DatenSensor3;DatenSensor4; n

Ich bin was das programmieren des Mc(Atmega32) angeht ziemlich fit könnte das ganze also sehr fix ändern damit es für Labview besser geeignet ist.


LabView Protokoll für Rs232 - jg - 18.01.2011 15:49

Das sieht doch schön aus! Eindeutiges Abschlußzeichen der Nachricht (n), wunderbar, darauf kann man VISA-Read einstellen, und die Strichpunkte als Trennzeichen zwischen den Zahlen, damit lässt sich der empfangene String mit einem VI (Spreadsheet String to Array) in eine Zahlen-Array umwandeln.

Gruß, Jens


LabView Protokoll für Rs232 - Manfred Steiner - 18.01.2011 16:33

Hallo

Danke für deine Antwort !
Wie setze ich das ganze jetzt in LabView um !
Wie gesagt bis jetzt habe ich nur ein einfaches Terminalprogramme zusammengebaut welches Zeichen einliest und ausgibt (String)
Leider bin ich nicht so Fit in Labview das ich das ganze nun im handumdrehen umsetzen kann.


LabView Protokoll für Rs232 - Y-P - 18.01.2011 16:53

Du kannst das "Advanced Serial Write and Read.vi" aus dem Examplefinder verwenden (da ist n als Termination-Char eingestellt) und den String, den Du erhältst kannst Du, wie Jens schon gesagt hat, mit "Spreadsheet String to Array" im String-Menü auseinanderpflücken.

Gruß Markus


LabView Protokoll für Rs232 - GerdW - 18.01.2011 17:01

Hallo Manfred,

einfach Jens' Antwort aufmerksam lesen und umsetzen.
D.h. die Funktion "SpreadsheetStringToArray" einsetzen und bei der Konfiguration der seriellen Schnittstelle das Abschlußzeichen einstellen...

Dazu noch die Beispiele anschauen, die bei LabVIEW dabei sind (z.B. das "Basic Serial Read and Write")!


LabView Protokoll für Rs232 - Lucki - 19.01.2011 10:41

Habe mal ein kleines VI für Dich gemacht, damit Du in die Materie reinkommst. Du sagst allerdings über ein wichtige Frage nichts: Ob die Daten auf Anforderung gesendet werden (Master-Slave-Modus), oder ob die Daten selbstätig kontinuierlich gesendet werden. Ich habe hier das Letzgenannte angenommen.

Am String
236;125;147;214;n
stört das letzte ";". So wie es jetzt ist, vermutet das VI "Tabellen-String nach Array" einen fünften Wert in der Zeile und gibt als zusätzliches Array-Element eine Null aus, da der Wert im String fehlt. Wenn es Dir ein Clacks ist, den String zu ändern, dann beseitige doch das Zeichen.

Hintergrundinformation zum VI Lesen: Das VI Visa Read wartet, bis eine von drei Bedingungen erfüllt ist:[list]
[*]TermChar n wird empfangen. Die Zeile wird aus dem Empfangspuffer gelesen.<>
[*]Timout erreicht. Fehlermeldung (Wird im Beispiel abgefangen). Es wird nichts gelesen.<>
[*]Byte-Anzahl im Empfangspuffer erreicht. Es wird die betreffende Anzahl Bytes aus dem Buffer gelesen. Damit diese Möglichkeit hier nicht zum Zuge kommt, ist die Anzahl Bytes größer als die Zeilenlänge zu vorzugeben.<>
[st]Lv09_img2[attachment=31775]


LabView Protokoll für Rs232 - Manfred Steiner - 19.01.2011 17:15

Hallo

Vielen Dank für deine Mühen !

Ich habe mir dein VI runtergeladen und ausprobiert , allerdings kommen nie Daten an bzw werden angezeigt !

Wenn ich Hyperterminal anschließe bekomme ich die Zeichen/Daten angezeigt sie werden also von der Sensor Platine ordnugsg. versendet !

Ich habe der Sensro-Platine einfach mal gesagt sie soll Testdaten raushauen !

33;57;211;45 n
139;87;111;85 n

usw

Hyperterminal und auch alle anderen Terminals zeigen die Daten korrekt an !
Ich stehe ziemlich auf dem Schlauch bin noch dabei dein VI zu verstehen und nach zu bauen !
Ich hoffe mir kann jemand von euch helfen !

[attachment=31790]
Lv09_img2


LabView Protokoll für Rs232 - Y-P - 19.01.2011 17:34

Hast Du die richtige Schnittstelle ausgewählt? Unsure

Gruß Markus

EDIT: Nächstes Mal bitte LabVIEW-Version des VIs angeben. Rulez