Aufbau des seriellen AMS Reset Frames
Datenfeld | Größe in Bytes | Wertebereich/Default | Beschreibung |
---|---|---|---|
Magic Cookie | 2 | 0xA501/0xA501 | Id zur Erkennung eines seriellen AMS Frames |
Adresse Sender | 1 | 0..255 / 0 | Adresse des sendenden Teilnehmers. Für eine RS232 Kommunikation kann dieser Wert immer auf 0 gesetzt werden, da es sich um eine 1 zu 1 Verbindung handelt und die Teilnehmer dadurch eindeutig sind. |
Adresse Empfänger | 1 | 0..255 / 0..255 | Adresse des Empfängers. Für eine RS232 Kommunikation kann dieser Wert immer auf 0 gesetzt werden, da es sich um eine 1 zu 1 Verbindung handelt und die Teilnehmer dadurch eindeutig sind. |
Fragment Nummer | 1 | 0..255 / 0 | Nummer des gesendeten Frames. Wenn die Nummer 255 gesendet worden ist, wird wieder mit der Nummer 0 begonnen. Der Empfänger überprüft diese Nummer mit einem internen Zähler. |
Nutzdatenlänge | 1 | 0..255 / 0..255 | Die maximale Länge des zu sendenden AMS Pakets beträgt 255. Wenn größere AMS Pakete verschickt werden sollen müssen diese fragmentiert werden (zur Zeit nicht offen gelegt). |
Nutzdaten | n |
| Das zu sendende AMS Paket. |
CRC | 2 | 0..65535 | Checksum des Frames |
Mit Hilfe des seriellen AMS-Frames kann ein AMS-Paket über RS232 übertragen werden. Das eigentliche AMS-Paket befindet sich im Feld Nutzdaten des Frames. Die maximale Länge des AMS-Paketes ist auf 255 Bytes beschränkt. Damit beträgt die maximale Größe eines seriellen AMS Frames 263 Bytes. Die Fragment-Nummer wird vom Empfänger mit einem internen Zähler verglichen. Beim Empfangen des ersten AMS-Frames oder bei Überschreitung eines Timeouts wird die Frame-Nummer einfach übernommen und nicht überprüft. Zur Berechnung der Prüfsumme (Checksum) wird der CRC16 Algorithmus verwendet.
Wenn ein serielles AMS-Frame empfangen worden ist und der Frame OK ist (Magic Cookie OK, CRC OK, richtige Fragment-Nummer etc.), muss der Empfänger ein Ackknowledge-Frame schicken, um dem Sender mitzuteilen, dass der Frame angekommen ist.
Datenfeld | Größe in Bytes | Wertebereich/Default | Beschreibung |
---|---|---|---|
Magic Cookie | 2 | 0x5A01/0x5A01 | Id zur Erkennung eines seriellen AMS Acknowledge Frames. |
Adresse Sender | 1 | 0..255 / 0 | Eigene Adresse. |
Adresse Empfänger | 1 | 0..255 / 0..255 | Adresse des Teilnehmers, der den ursprünglichen Frame geschickt hat. |
Fragment Nummer | 1 | 0..255 / 0 | Entspricht der Fragment Nummer, die der Sender geschickt hat. |
Nutzdatenlänge | 1 | 0/ 0 | Ist immer 0, da keine Nutzdaten verschickt werden. |
CRC | 2 | 0..65535 | Checksum des Frames |
Falls der Sender nach mehrmaligem Senden kein gültiges Acknowledge erhält, wird ein Reset-Frame verschickt. Dadurch wird dem Empfänger mitgeteilt, dass eine neue Kommunikation aufgesetzt wird, und der Empfänger übernimmt dann beim nächsten AMS-Frame die Fragment-Nummer, ohne eine Überprüfung vorzunehmen.
Datenfeld | Größe in Bytes | Wertebereich/Default | Beschreibung |
---|---|---|---|
Magic Cookie | 2 | 0xA503 / 0xA503 | Id zur Erkennung eines seriellen AMS Reset Frames. |
Adresse Sender | 1 | 0..255 / 0 | Adresse des Senders. |
Adresse Empfänger | 1 | 0..255 / 0..255 | Adresse des Empfängers. |
Fragment Nummer | 1 | 0/0 | Ist immer 0. |
Nutzdatenlänge | 1 | 0/ 0 | Ist immer 0, da keine Nutzdaten verschickt werden. |
CRC | 2 | 0..65535 | Checksum des Frames |