Jump to content
Turtle64

RS232 Slave - wie funktioniert das?

Recommended Posts

Hallo,

über eine RS232-Schnittstelle bekomme ich Meßwerte von 16 verschiedenen Sensoren. In dem Datenstrom gibt es für jeden der Sensoren eine bestimmte Kennung, gefolgt von 4 verschiedenen Meßwerten.

Mit einem RS232 Master habe ich es schon geschafft, den ersten der Meßwerte auf allen 16 Kanälen einzulesen. Dazu warte ich, bis bestimmte feste Zeichen kommen, und lese dann den folgenden Integer ein:

"\X80\X71\X15" iy

Beim nächsten Sensor 0x81 statt 0x80 usw. bis 0x8F, funktioniert.

Aber wie komme ich an den zweiten, dritten und vierten Integer aus den Datenpaketen der 16 Sensoren?

Ich habe es mit einem RS232 Slave versucht, Format iy, aber da kommt nichts.

Es fehlt mir das grundsätzliche Verständnis, was der Slave macht.

Liest der Slave auf Kanal 0 da weiter, wo der Master bei Kanal 0 aufgehört hat?

Oder werden erst alle 16 Kanäle beim Master abgerbeitet, und dann geht es mit dem Slave weiter?

Oder arbeiten Master und Slave quasi gleichzeitig auf demselben Datenstrom?

Vielen Dank für Hinweise!

Share this post


Link to post
Share on other sites

Hallo

Das Slave Modul ist eine Kanalerweiterung zum Master Modul, d.h. wenn die Abarbeitung im 16. Kanal des Master Modul abgeschlossen ist, springt die Bearbeitung automatisch in den ersten Kanal des Slaves. Prinzipiell werden die Module immer in der Kanalreihenfolge durchlaufen.

Diese Reihenfolge können sie z.B. mit den Suchstrings aufbreczhen, so wie sie es ja auch schon gemacht haben. Wenn Dasylab den Suchstring in einem Kanal findet, positioniert es die Abarbeitung zu dem entsprechenden Kanal. Nachdem der Wert ausgewertet ist (iy in ihrem Fall) geht die Abarbeitung einfach mit dem nächsten Kanal weiter.

Wenn ich sei richtig verstanden habge, dann haben Sie 16 Sensoren mit je 4 Werten. Wenn Sie also den Erkennungsstring für den ersten Sensor im Kanal 0 des Masters stehen haben, dann lesen die Folgewerte des Sensors einfach in den folgenden Kanälen ein, die Formatstrings sehen dann in etwa so aus:

Kanal 0 : "\X80\X71\X15" iy
Kanal 1 : iy
Kanal 2 : iy
Kanal 3 : iy
Kanal 4 : "
\X81\X71\X15" iy
Kanal 5 : iy

usw.

Somit können sie vier Sensoren mit je 4 Werten im Master Modul auswerten. Im ersten Slave Modul geht es dann in Kanal 16 mit dem Formatstring für den 5. Sensor weiter.

Ich hoffe, das hilft

Gruß aus Mönchengladbach

Stephan

 

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...