• #by-own #raspberrypi #developRobot

Kapitel 04: Kommunikation Protokoll

Die Kommunikation der einzelnen Komponente findet über WebSocket Verbindungen statt. Um später Zuodnungen der einzelnen Teile zu machen, wird ein eigenes art "minimalistisches Protokoll" entwickelt.

Zunächst konzentrieren wir uns dabei auf den Nachrichtenaustausch zwischen der "Python Welt" und der "Java Welt". Die Übermittlung der Daten an das Frontend (der Website) wird später behandelt.

 Es werden schlicht String-Werte, also einfache Texte, werden übermittelt. Um dennoch Bezeichnungen und Werte trennen zu können, wird ein Trennzeichen benötigt. Wir haben hier schlicht den Doppelpunkt ( : ) Ausgewählt.

Exemplarisch wird eine Kommunikation zwischen Zwei Komponenten dargestellt. Es sollen die Werte eines Sensor an die Java-Applikation gesendet werden. Alle NAchrichten werden dabei über den Tornade-Websocket Server gesendet.

Abstand Sensor Tornado Web Server Java-Applikation

Beschreibung

[Name:ultrasonicFront] Nimmt beide in sein internes Dictionary auf. [Name:Java] Beide senden eine Nachricht an den Server um sich mit Ihren Namen zu Registrieren. (Key: Name, Value: KomponentenName)
[ultrasonicFront:35] kein if trifft zu, damit der Standardfall und die Nachricht wird an den Client mit dem Namen 'Java' gesendet.   Der Sensor übermittelt nun mit seinem Namen den gemessenen Wert.
    Empfang. In Jave kann nun die Nachricht durch ':' aufgesplittet werden. So kann die Java Anwendung den Wert '35' den vorderen Abstandssensor (ultrasonicFront) zuweisen.  

 Nach diesem Prinzip werden alle Nachrichten über den Websocket versendet.

© 2019 by-own