Skip to end of banner
Go to start of banner

CANopen LAYER_2 communication [DE]

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Einleitung

Die LAYER_2 Kommunikation kann mit der CANopen Slave Firmware und/oder der CANopen Master Firmware gleichermaßen realisiert werden.

Wenn ausschließlich LAYER_2 Kommunikation benötigt wird, muss in der SYCON Konfiguration das Startverhalten bei beiden FW (Master/Slave) auf "Controlled by Application" gestellt werden.

Der Master wird dann nur ein CAN-Telegramm mit CAN-ID 0x700 + NODE-ID senden, das lässt sich auch nicht abstellen.

Der Slave sendet dieses Telegramm nicht. SYCON.net übernimmt hier aber auch nur einen Teil der Konfiguration.

 

Alles weitere (Konfiguration, senden und empfangen von CAN Telegrammen) erfolgt ausschließlich über die Mailboxen der CIFX, also mit den Treiberfunktionen xChannelPutPacket() und xChannelGetPacket().

Da ohnehin mit Paketen konfiguriert werden muss, kann das Ganze aber auch komplett ohne SYCON.net implementiert werden (von SYCON kommt dann nur die Baudrate.

In der Datei "LAYER_2.txt" sind die einzelnen Kommandos als Dump zusammengestellt, die hierfür benötigt werden (alle Werte in HEX).

Es handelt sich hierbei aus Paketen die den API-Manuals entnommen sind. Diese sende ich Ihnen anbei.

Die Baudrate ist in beiden Fällen 1MBaud.

 

Für den CANopen Master müssen (ohne SYCON.net) folgende Pakete in folgender Reihenfolge gesendet werden (das oben beschriebene CAN-Telegramm wird hier auch gesendet):

CANopen-Master SetBusParam

CAN_DL-Register

CAN_DL-Enable RxID

(CAN_DL-Send Data) – Exemplarisches Senden eines CAN-Telegramms

Für den CANopen Slave müssen (ohne SYCON.net) folgende Pakete in folgender Reihenfolge gesendet werden:

CANopen-Slave SetBusParam

Channel Init

CAN_DL-Register

CAN_DL-Enable RxID

(CAN_DL-Send Data) – Exemplarisches Senden eines CAN-Telegramms

CAN-Telegramme werden dann von der Kundenapplikation über die Receive Mailbox der Karte empfangen (CAN_DL_CMD_DATA_IND)

Wenn SYCON.net verwendet wird,  müssen die SetBusParam und beim Slave der Channel Init übersprungen werden.

  • No labels