# Easy Going: CANopen EDS (electronic data sheet) für CAN Gerät



## Joh90 (4 September 2014)

Hi liebe Feldbus Freunde,

in der Vergangenheit habe ich im I-Net, zu jeder aufkommenden Frage, eine Antwort gefunden. Leider finde ich diesmal nichts aussagekräftiges, deshalb frage ich mal die Experten  . Ich habe ein CAN – Gerät, dieses kann über die CAN – ID 0x181 mit Eingangsdaten gefüttert werden. Jetzt dachte ich mir – schreibe ich mir mal eine EDS – Datei für das CAN-Gerät - . Daraufhin habe ich die Pflichtobjekte (0x1000,0x1001,0x1018) angelegt. Eine R-PDO, weil ich ja von meiner SPS senden will, das R-PDO Mapping Objekt und das dazugehörige Write Output 8Bit Objekt.  

  Das R-PDO Objekt habe ich die COB ID = CAN – ID 0x181 gegeben und als Transmission Type = 255 (Ereignisgesteuert. Damit bei jedem SPS – Zyklus, wo die verknüpfte Variable aufgerufen wird, diese auch auf Bus geschrieben wird. Ist die 255 richtig ? Habe auch 254 ausprobiert, auch ohne Erfolg).


 Nun zu meiner Frage: Ist es überhaupt Grundlegend möglich ein CAN – Gerät über die CANopen EDS anzusprechen? Dachte mir - im Grunde kann ich anstatt der CANopen COBID einfach meine CAN – ID hinterlegen und somit auf den Bus sprechen-.


Infos:
http://atlas.web.cern.ch/Atlas/GROUPS/DAQTRIG/DCS/LMB/PROFILE/cano-pdo.htm


 [FileInfo]
 CreatedBy=test
 ModifiedBy=test
 Description=Modul
 CreationTime=03:22PM
 CreationDate=09-03-2014
 ModificationTime=03:22PM
 ModificationDate=09-03-2014
 FileName=CAN.eds
 EDSVersion=4.0


 [DeviceInfo]
 VendorName=XXX
 ProductName=X
 BaudRate_10=0
 BaudRate_20=0
 BaudRate_50=0
 BaudRate_125=0
 BaudRate_250=1
 BaudRate_500=0
 BaudRate_800=0
 BaudRate_1000=0
 SimpleBootUpMaster=0
 SimpleBootUpSlave=0
 Granularity=0
 DynamicChannelsSupported=0
 CompactPDO=0
 GroupMessaging=0
 NrOfRXPDO=1
 NrOfTXPDO=0
 LSS_Supported=0


 [DummyUsage]
 Dummy0001=0
 Dummy0002=0
 Dummy0003=0
 Dummy0004=0
 Dummy0005=0
 Dummy0006=0
 Dummy0007=0


 [Comments]
 Lines=0


 [MandatoryObjects]
 SupportedObjects=3
 1=0x1000
 2=0x1001
 3=0x1018


 [1000]
 ParameterName=Device Type
 ObjectType=0x7
 DataType=0x0007
 AccessType=ro
 PDOMapping=0


 [1001]
 ParameterName=Error Register
 ObjectType=0x7
 DataType=0x0005
 AccessType=ro
 PDOMapping=0


 [1018]
 ParameterName=Identity Object
 ObjectType=0x9
 SubNumber=5


 [1018sub0]
 ParameterName=Number of entries
 ObjectType=0x7
 DataType=0x0005
 AccessType=ro
 DefaultValue=4
 PDOMapping=0
 LowLimit=1
 HighLimit=4


 [1018sub1]
 ParameterName=Vendor Id
 ObjectType=0x7
 DataType=0x0007
 AccessType=ro
 PDOMapping=0


 [1018sub2]
 ParameterName=Product Code
 ObjectType=0x7
 DataType=0x0007
 AccessType=ro
 PDOMapping=0


 [1018sub3]
 ParameterName=Revision number
 ObjectType=0x7
 DataType=0x0007
 AccessType=ro
 PDOMapping=0


 [1018sub4]
 ParameterName=Serial number
 ObjectType=0x7
 DataType=0x0007
 AccessType=ro
 PDOMapping=0


 [OptionalObjects]
 SupportedObjects=3
 1=0x1400
 2=0x1600
 3=0x6200


 [1400]
 ParameterName=Receive PDO Communication Parameter 0
 ObjectType=0x9
 SubNumber=6


 [1400sub0]
 ParameterName=Number of entries
 ObjectType=0x7
 DataType=0x0005
 AccessType=ro
 DefaultValue=5
 PDOMapping=0
 LowLimit=0x02
 HighLimit=0x05


 [1400sub1]
 ParameterName=COB ID
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x181
 PDOMapping=0
 LowLimit=0x00000001
 HighLimit=0xFFFFFFFF


 [1400sub2]
 ParameterName=Transmission Type
 ObjectType=0x7
 DataType=0x0005
 AccessType=rw
 DefaultValue=255
 PDOMapping=0


 [1400sub3]
 ParameterName=Inhibit Time
 ObjectType=0x7
 DataType=0x0006
 AccessType=rw
 DefaultValue=0x0000
 PDOMapping=0


 [1400sub4]
 ParameterName=Compatibility Entry
 ObjectType=0x7
 DataType=0x0005
 AccessType=rw
 PDOMapping=0


 [1400sub5]
 ParameterName=Event Timer
 ObjectType=0x7
 DataType=0x0006
 AccessType=rw
 DefaultValue=0
 PDOMapping=0


 [1600]
 ParameterName=Receive PDO Mapping Parameter 0
 ObjectType=0x9
 SubNumber=9


 [1600sub0]
 ParameterName=Number of entries
 ObjectType=0x7
 DataType=0x0005
 AccessType=rw
 DefaultValue=8
 PDOMapping=0
 LowLimit=0
 HighLimit=8


 [1600sub1]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000108
 PDOMapping=0


 [1600sub2]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000208
 PDOMapping=0


 [1600sub3]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000308
 PDOMapping=0


 [1600sub4]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000408
 PDOMapping=0


 [1600sub5]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000508
 PDOMapping=0


 [1600sub6]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000608
 PDOMapping=0


 [1600sub7]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000708
 PDOMapping=0


 [1600sub8]
 ParameterName=PDO Mapping Entry
 ObjectType=0x7
 DataType=0x0007
 AccessType=rw
 DefaultValue=0x62000808
 PDOMapping=0


 [6200]
 ParameterName=Write Output 8 Bit
 ObjectType=0x8
 SubNumber=255


 [6200sub0]
 ParameterName=Number of Elements
 ObjectType=0x7
 DataType=0x0005
 AccessType=ro
 DefaultValue=254
 PDOMapping=0


 [6200sub1]
 ParameterName=DigOutput8
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub2]
 ParameterName=DigOutput8_2
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub3]
 ParameterName=DigOutput8_3
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub4]
 ParameterName=DigOutput8_4
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub5]
 ParameterName=DigOutput8_5
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub6]
 ParameterName=DigOutput8_6
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub7]
 ParameterName=DigOutput8_7
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1


 [6200sub8]
 ParameterName=DigOutput8_8
 ObjectType=0x7
 DataType=0x0005
 AccessType=rww
 DefaultValue=0
 PDOMapping=1




 [ManufacturerObjects]
 SupportedObjects=0


----------



## nielscho (11 Februar 2015)

Ich pusch diesen Beitrag emal nach oben da ich selbiges Problem habe.
Habe eine CAN RElais Box die ich sonst mit meiner Messtechnik per dbc File anspreche und auslese (12 Relais output, 13 analog input)

Ist es Möglich hierfür eine EDS Datei zu erstellen um diese von Codesys direkt anzusteuern?

mfg
Nielscho


----------



## Wichtel (22 Februar 2015)

Die Fage habe ich noch nicht ganz verstanden. Trotzdem hier ein paar Bemerkungen, die vielleicht bei der Inbetriebnahme helfen:
- Eine EDS-Datei sollte normalerweise vom Hersteller des CAN Gerätes mit dem Gerät geliefert, und nicht selbst geschrieben werden.
- Eine EDS Datei beschreibt nur die Default Einstellungen. Es legt nicht die Konfiguration der PDOs fest, wie sie vom Master tatsächlich verwendet wird. Diese müssen im Master konfiguriert werden. Dafür ist eine EDS-Datei in vielen Fällen nicht notwendig, oft aber hilfreich. Es reicht für einfache Anwendungen ein TPDO bzw. RPDO zu konfigurieren und anschliessend per NMT das Netz zu starten.
- Wenn das Gerät gemäß CiA401 implementiert ist, so kann für die Standard CANopen Objekte auch eine beliebige EDS-Datei angepasst werden:
Dazu muss die [DeviceInfo] (VendorName=XXX, ProductName=X) angepasst werden, damit der Master das Gerät erkennt, evtl. auch das 1018 Objekt.

Hoffe, die Anmerkungen konnten etwas für Klarheit sorgen.


----------



## nielscho (14 Juli 2015)

Hat sich für mich soweit erledigt.
Habe vom Hersteller jetzt einen CanOpenStack samt EDS Datei für die Relaisbox erhalten. Hiermit läuft alles wunderbar.

mfg
Nielscho


----------

