Hallo Technipion,
der Entwurf von Protokollen ist je nach Zielvorgabe eine sehr anspruchsvolle Tätigkeit. Je nach Anforderungen und Rahmenbedingungen können Protokolle sehr unterschiedlich Aussehen und gestaltet werden.
Protokolle kann man unterschiedlichen "Schichten" zuordnen. Die unteren Schichten arbeiten dabei sehr hardwarenah, die darüber liegenden Schichten bauen auf dieser Funktionalität auf und biete komplexere Dienste an. Die Aufgaben der Schichten ändern sich mit zunehmendem Abstraktionsgrad. Eine gängige Strukturierung:
Schicht 1: Die Bitübertragungsschicht (physical layer) kümmert sich darum, einzelne Bits über ein Medium zu befördern. Üblicherweise wird diese Aufgabe von spezialisierten Hardwarekomponenten (SPI/USART, Funkchips etc.) übernommen.
Schicht 2: Die Sicherungsschicht (data link layer) hat als Aufgabe, aus dem kontinuierlichen Bitstrom der über Schicht 1 versendet wird, eine zuverlässige und strukturierte Transportmöglichkeit für Daten zu formen. Speziell bei Funk ist dabei der Medienzugriff wichtig, da mehrere Sender sich gegenseitig stören.
Schicht 3: Die Vermittlungsschicht (network layer) brauchst du möglicherweise schon gar nicht mehr. Sie ist dafür zuständig, Informationen über mehrere Stationen hinweg zu übertragen (Routing). Die ersten beiden Schichten decken dagegen nur die Kommunikation zwischen zwei benachbarten Endpunkten ab.
Darüber gibt es noch weitere Schichten (mehr dazu im Wikipedia-Artikel OSI-Modell), die sind aber an dieser Stelle uninteressant.
Der wichtigste Teil deines Protokollentwurfes wird darin bestehen, zum einen eine zuverlässige Fehlererkennung zu gewährleisten, und zum anderen den Medienzugriff zu regeln. Darauf aufbauen kannst du dann die Signalisierung für dein Bewässerungssystem erledigen.
mfG
Markus
Lesezeichen