SDO-Daten in der SPS empfangen

SDO-Daten, die der CANopen Teil der Software nicht kennt und nicht selbstständig bearbeitet, werden in die SPS weitergeleitet und können hier per ADS-Notification ausgewertet und beantwortet werden.

Hierfür muss im System Manager untern dem CAN-Gerät der ADS-Port freigeschaltet werden.

SDO-Daten in der SPS empfangen 1:
Freischaltung eines ADS-Ports für einen CANopen-Slave.

SDO Read request

Daten, die gelesen werden sollen, müssen mit einem ADSREADIND empfangen werden und mit ADSREADRES beantwortet werden.

Eingangsparameter ADSREADIND

Beschreibung

NETID

NetID der CAN-Schnittstelle

Port Nummer

0x1000hex + Node Nummer

IDXGRP

16#8000_0000 + SDO Index (IDXGRP.31 = ADS-Notification)

IDXOFFS

SDO Subindex

LEN

wird nicht beim Lesen benötigt

Nun müssen Sie auf das ADS-Indication antworten mit einem ADS Read Response.

Eingangsparameter ADSREADRES

Beschreibung

NETID

NetID der CAN-Schnittstelle

Port Nummer

0x1000hex + Node Nummer

INVOKEID

INVOKEID des ADSREADIND Bausteins

RESULT

Fehler <> 0, fehlerfrei = 0

LEN

Länge der Daten

SDO Write request

Daten, die geschrieben werden sollen, müssen mit einem ADSWRITEIND empfangen werden und mit ADSWRITERES beantwortet werden.

Ausgangsparameter ADSWRITEIND

Beschreibung

NETID

NetID der CAN-Schnittstelle

Port Nummer

0x1000hex + Node Nummer

IDXGRP

16#8000_0000 + SDO Index (IDXGRP.31 = ADS Notification)

IDXOFFS

SDO Subindex

LEN

Anzahl des empfangenden Daten in BYTE

Nun müssen Sie auf das ADS-Indication antworten mit einem ADS Write Response.

Eingangsparameter ADSWRITERES

Beschreibung

NETID

NetID der CAN-Schnittstelle

Port Nummer

0x1000hex + Node Nummer

INVOKEID

INVOKEID des ADSWRITEIND Bausteins

RESULT

Fehler <> 0, fehlerfrei = 0