6.1.3 Senden und
EmpfangderCAN-Message
Ø Senden Und Empfang von Daten im
TerminalFenster
Nach der Konfiguration des CAN-Moduls MCP2515 kann auf das
Terminal Fenster schnell überprüfen werden ob das Modul Daten sendet
bzw. empfängt. Vor dem Senden der Daten wird zunächst die
Can0-Schnittstelle gestartet. Dies wird im folgenden Beispiel mit einer Bitrate
von 500kbits/s aktiviert.
pi@raspberrypi:~$sudo ip link set can0 up type bitrate
500000
Das stoppen des Can0-Interface geschieht wie folgt:
pi@raspberrypi:~$sudo ip link set can0 down
Nachdem das Can0-Interface gestartet wurde,können nun
Daten gesendet bzw. empfangen werden.
Senden einer 8-Bits-Can-Nachricht mit dem Identifier 123Hex:
pi@raspberrypi:~$cansend can0 123#FF
Daten Bits
Identifier
Can interface
Es handelt sich hier um einem Standard-Frame mit dem Maximum
11 Bits ((3FF) hex) Identifier. Für den Extended-Frame
wäreMaximum 29 BitsIdentifiers((1FFFFFFF) hex)zugelassen.
Um Daten empfangen zu können,wird der folgende Befehl
genutzt:
pi@raspberrypi:~$candump can0
Ø Senden und Empfang von Daten im Tkinter
Das Senden und Empfangen von CAN-Nachrichten im Python-Code
beginnt mit dem Import des Can-Moduls und danach der Aktivierung der
Schnittstelle (Abbildung 35).
Abbildung 35: Aktivierung des
Can0 Interfaces in Python.
CAN-Nachrichten können nun mit dem folgenden Python-Code
periodisch gesendet oder empfangen werden.
Abbildung 36: Periodische Senden
Von CAN-Message in Python.
Abbildung 37: Empfang von
CAN-Message in Python
6.2 DieUART-Kommunikation
In diesem Kapitel wird gezeigt, wie der SIMOREG Gerät
parametrisiert werden soll, damit Daten über eine serielle Buskopplung
(RS232 Schnittstelle) mit Hilfe des USS-Protokollsfehlerfrei ausgetauscht
werden können.
6.2.1 Vorbereitung
6.2.1.1 RS232 Schnittstelle
Abbildung 37: USB zu RS232 Serial
DB9 Adapter Kabel (Best Buy Co, Inc., 2019)
Abbildung 37: Sub-D 9 Pin RS232
Stecker/Buchse Kabel (partsdata, 2019)
Die RS232 ist eine physikalische Schnittstelle, die im Rahmen
dieser Bachelorarbeit die Verbindung zwischen dem Raspberry Pi und dem SIMOREG
herstellen wird.Der Raspberry Pi verfügt bei der Lieferung über keine
Sub-D9-Stecker und braucht deswegen für die Verbindung mit dem RS232 einen
Adapter (Abbildung 38), der an den USB Port der Raspberry Pi angeschlossen
wird.
6.2.1.2 Aufbau der
Telegrammrahmen
Mit Hilfe eines USS-Protokollskönnen Daten über eine
serielle Schnittstelle gesendet bzw. empfangenwerden. Der Telegrammrahmen eines
USS-Protokollsbeginnt stets mit einem Startbit, gefolgt von der Länge des
Telegramms, danach kommen die Adresse Byte, der Nutzdatenblock und am Ende der
Block Check Charakter. Das folgende Diagramm zeigt den detaillierten Aufbau
eines Telegramms mit einem USS-Protokoll.
Nutzzeichen
STX LGE ADR PKW Bereich PZD Bereich BCC
02Hex 1 Byte 1 Byte
LGE=n+2{1=LGE=254}
PZD1
|
PZD2
|
|
PZDn
|
PKE
|
IND
|
PWE
|
16 Bits (1 Wort)
Ak
|
SP
|
PNU
|
HB
|
LB
|
Steuerwort
|
Hauptsollwert
|
Sollwert/
Zusatz-Steuerwort
|
4Bits 1Bit11Bits
Abbildung 38: Telegrammaufbau
eines USS-Protokolls
HB: High Byte
LB: Low Byte
|