CODESYS als CANopen Master

In diesem Tutorial zeigen wir Dir, wie Du mithilfe von CODYSYS und Produkten aus der RevPi-Familie ein CANopen-Netzwerk erstellen kannst.

Wir verwenden dazu:

  • RevPi Connect
  • RevPi Con CAN
  • Connect Bridge
  • CODESYS Runtime (Bitte installiere diese auf Deinem RevPi Connect)
  • RevPi mGate CANopen

RevPi Con CAN in Betrieb nehmen

  • Verbinde RevPi Connect und RevPi Con CAN mit Hilfe der Connect Bridge. Achte dabei darauf, dass sich RevPi Con CAN dabei auf der rechten Seite des RevPi Connect befindet.
  • Verbinde RevPi Connect mit der Spannungsversorgung.
  • Öffne PiCtory.
  • Stelle Deine Geräte auf dem Configuration Board zusammen.

  • Klicke auf „File>Save as Start-Config“ um das Projekt zu speichern.

  • Klicke auf „Tools >Reset Driver“.

  • Im Webstatus kannst Du prüfen, ob RevPi Con CAN erfolgreich aktiviert wurde:

Script für CODESYS anlegen

Damit die Kommunikation zwischen CODESYS und den RevPi Geräten funktioniert, muss die Bitrate konfiguriert werden. Dazu legen wir in diesem Arbeitsschritt ein Script an und machen dieses auf Deinem RevPi Connect ausführbar.

  • Öffne das das RevPi Terminal und melde Dich mit Deinem Benutzernamen und Passwort an.
  • Gib folgenden Befehl ein, um ein neues Script anzulegen:
sudo nano /var/opt/codesys/rts_set_baud.sh
  • Füge in das Dokument folgende Zeilen ein:
#!/bin/sh
BITRATE=`expr $2 \\* 1000`
ifconfig $1 down
echo ip link set $1 type can bitrate $BITRATE
ip link set $1 type can bitrate $BITRATE
ifconfig $1 up
  • Speichere die Änderungen mit Ctrl-O.
  • Beende den Editor mit Ctrl-X.
  • Gib folgenden Befehl in die Kommandozeile ein, um das Script ausführbar zu machen:
sudo chmod +x /var/opt/codesys/rts_set_baud.sh
  • Gib folgenden Befehl in die Kommandozeile ein, um RevPi Connect neu zu starten:
sudo reboot

CANopen-Master in CODDESYS konfigurieren

  • Klicke mit der rechten Maustaste auf Dein Projekt im Projektbaum.
  • Klicke auf „Gerät anhängen“
  • Wähle „CODESYS Control for Raspberry Pi „.
  • Klicke auf „Hinzufügen“.

  • Klicke mit der rechten Maustaste auf das  hinzugefügte Gerät (CODESYS Control for Raspberry Pi ).
  • Klicke auf „Gerät anhängen“.
  • Wähle „CANbus“.
  • Klicke auf „Hinzufügen“.

  • Klicke mit der rechten Maustaste auf das  hinzugefügte Gerät (CANbus).
  • Klicke auf „Gerät anhängen“.
  • Wähle „CANopen_Manager“.
  • Klicke auf „Hinzufügen“.

  • Klicke auf Deine Application.
  • Klicke auf „Objekt“ hinzufügen.
  • Füge auf diese Weise folgende Objekte ein:
    -Taskkonfiguration
    -POU

  • Füge der Taskkonfiguration den Aufruf „POU“ hinzu.

Das Projekt kann jetzt„Übersetzt“ und auf den RevPi übertragen werden. Im Eingeloggten Zustand kannst Du sehen ob der CANopen Master läuft:

KUNBUS CANopen mGate in CODESYS einfügen

  • Lade die Gerätebeschreibungsdatei (EDS) für das mGate CANopen von der KUNBUS Homepage herunter.
  • Klicke auf „Tools“.
  • Klicke auf „Geräte-Repository „.

  • Wähle „KUNBUS-mGate CANopen“.
  • Klicke auf „Installieren“.

  • Klicke mit der rechten Maustaste auf den CANopen_Manager.
  • Klicke auf „Gerät anhängen“.
  • Wähle das „KUNBUS-mGate CANopen „.

  • Stelle die Node-ID und die Bitrate des Gateways an den Drehcodierschaltern des Geräts ein.

Das Projekt kann jetzt übersetzt und auf den RevPi Connect übertragen werden. Im eingeloggten Zustand kannst Du sehen, ob das Gateway vom Master erkannt wird: