Hallo,
habe hier einen Sensor der laut Hersteller seine Messwerte nur weitergibt wenn man ihn anpollt.
Auszug aus der Sensor-Doku:
Die Polling Sequence hat folgendes Format:
<Adresse>po<ENQ>
• <Adresse> ist die im Schnittstellenmenue eingestellte Geräteadresse 00
• po ASCII-Zeichen "p" und "o"
• <ENQ> ASCII-Zeichen ENQ
Wenn der Sensor nun Daten hat würden diese nun gesendet, ansonsten sendet er ein <EOT>.
Um die RS232-Kommunikation zw. 2 Rechnern zu testen habe ich schon ein py-Script... das funzt, aber mit polling habe ich leider keine Erfahrung.
Könnte mir hier jemand einen hilfreichen Tipp geben wie ich beim polling verfahren müsste (Anfragesequenz senden und Antwort empfangen)?
Polling via RS232 - Sensordaten abfragen
@SVblue: Was soll man denn da jetzt gross sagen? Du musst dem Sensor das senden was er hören möchte, und dann das empfangen was er zu sagen hat. Die Frage ist wie <Adresse> kodiert werden muss und wie das erwartete Ergebnis aussieht. Das ASCII-Zeichen ENQ hat den Bytewert 5, kann also in Python als '\x05' geschrieben werden. Siehe auch: http://man-ascii.com/
Hi,SVblue hat geschrieben: ... (Anfragesequenz senden und Antwort empfangen)?
eigentlich genau so wie du es gesagt hast.
Erst Sequenz raushauen, und danach warten bis eine Antwort kommt um sie dann zu lesen. Alle benötigten Daten scheinst du ja schon zu haben. Die Adresse kann aber u.u. auch nur eine einfach 0 als Zahl sein, kommt da auf die Kodierung an (Datenblatt oder probieren).
~Acuda