close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

Bedienungsanleitung (Software) - Trafag

EinbettenHerunterladen
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Bedienungsanleitung (Software)
Deutsch
Trafag AG
Industriestrasse 11
CH-8608 Bubikon
Tel +41 44 922 32 32
Fax +41 44 922 32 33
www.trafag.com
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Inhaltsverzeichnis
Übersicht3
Stecker6
Messwertaufbereitung7
Principle of PDO-Communication (TX)
8
PDO‘s (Process Data Objects)
9
SDO-Communication-Object-Dictionary12
Fehlermeldungen18
NMT (Network Management, LSS & Errorhandling)
19
Beispiele zur CANopen-Kommunikation
22
2
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Übersicht
Anleitung
In diesem Dokument werden gerätespezifische Besonderheiten sowie Ergänzungen zur CANopenFunktionalität erläutert. Die allgemeine Funktionsweise des Protokolls „CANopen“ ist den Normen
DS-301 V4.02 und DS-404 V1.2 zu entnehmen. (www.can-cia.org).
Gerätebeschrieb
Der CMP (CANOpen miniature Pressure Transmitter) ist ein Präzisions-Druckmessumformer mit CANopen-Schnittstelle nach CiA (CAN in Automation)-Spezifikation DS-301/DS-404. Die physikalische
CAN-Schnittstelle entspricht der DIN-Norm ISO 11898.
Ein Sensor mit Dünnfilm-auf-Stahl-Technologie misst den Druck mit einer Auflösung von 20Bit/s
(∆∑-Wandler), die Temperatur mit einer Auflösung von 10 Bit. Jede 1ms werden die Druckmessdaten
erfasst, rechnerisch linearisiert und temperaturkompensiert. Je ein stufenlos einstellbares „MovingAverage-Filter“, eines für Druck (0.1s...65.5s) und eines für Temperatur (0.1s...1.82h), erlauben es bei
jeder Anwendung eine optimale Messwertfilterung zu konfigurieren. Die mappbaren Messwerte (siehe
„Mapping Mode“) stehen in sämtlichen Datentypen (Float, Integer32/24/16) und in allen üblichen
Messeinheiten (bar, Pa, psi, mmHg, atm, at, °C, °F, K) zur Verfügung.
Der Knoten unterstützt alle CiA Baudraten von 10kbit/s...1Mbit/s und Formate CAN 2.0 A/B. Der CMP
ist mit 4 PDO‘s ausgerüstet, die alle 1ms versendet werden können. Alle in der CANopen-Norm „DS301“ definierten „Transmission Types“ können angewendet werden. Neben diversen anderen Features,
wie z.B. Permanent-Self-Test, Auto-Zero-Funktion, Auto-Start etc., stehen noch 4 Schaltschwellen mit 8
frei konfigurierbaren CAN-Botschaften zur Verfügung. Kommunikations- und Applikationsparameter
lassen sich separat speichern und auch wieder auf die ursprüngliche Fabrikeinstellung zurücksetzen.
CANopen
CANopen ist ein offenes und standardisiertes Kommunikationsprofil, das auf der Basis des Bussystems
Controller Area Network (CAN) aufsetzt. CAN wurde von der Firma R. Bosch für die Datenübertragung in Kraftfahrzeugen entwickelt.
CANopen ist ein weit verbreiteter CAN-Applikationslayer, entwickelt von der Nutzerorganisation CiA
und ist international genormt. Zu CANopen gehören die Protokolldefinitionen für die Kommunikation
(communication profile) und vordefinierte Geräteprofile (device profile), welche die Geräte-Klassen
spezifizieren.
CANopen definiert eine Anzahl „Transmission Types“ für das Versenden von Prozessdaten (PDO):
– Zeit gesteuert: Telegramme werden in definierten Zeitabständen versendet.
– Ereignis gesteuert: Telegramme werden versendet sobald ein Prozesswert ändert (beim Auftreten eines spez. Ereignisses).
– Zyklisch synchron: Ein SYNC-Telegramm löst eine Messung aus und/oder bewirkt ein Senden der Prozessdaten.
– Auf Anfrage: Ein CAN-Remote-Request-Telegramm löst ein Senden des Messwertes aus.
Der CMP wird azyklisch über Service-Daten-Objekte (SDO) parametriert.
9 Übertragungsraten von 10 kBaud bis 1 MBaud stehen für verschiedene Buslängen zur Verfügung.
Durch die effiziente Nutzung der Busbandbreite ergeben sich mit CANopen kurze Reaktionszeiten bei
relativ tiefen Übertragungsraten.
Eine Betrachtung des CAN-Bus nach dem ISO-OSI-Modell zeigt, dass nur die beiden unteren Layer
(physical und data link layer) definiert sind. CANopen ist im obersten (application layer) definiert.
3
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Die CANopen Communications- und Deviceprofile wurden von der internationalen CAN-Organisation
CAN in Automation e.V. (CiA, www.can-cia.de) als Profil DS-301 und DS-40x veröffentlicht.
Das Kommunikationsprofil DS-301 definiert das „WIE“ der Kommunikation, während das „WAS“ (die
Dateninhalte) in den Geräteprofilen spezifiziert ist. Für Mess- und Regelgeräte kommt das Geräteprofil
DS-404 zur Anwendung.
Device Profile
A
Device Profile
B
Device Profile
DS-40x
OSI Layer 7:
CANopen Communication Profile
Application Layer
OSI Layer 2:
CAN Data Link Layer
OSI Layer 1:
CAN Physical Layer
Device Profile
Bus-Line
Der Trafag CANopen-Drucksensor CMP hat eine umfangreiche Implementation des CANopen-Protokolls und ist zertifiziert durch die CiA (CAN in Automation). Durch die aktive Mitgliedschaft bei der CiA
(CAN in Automation) trägt Trafag zur weiteren Entwicklung dieses Bussystems bei.
Object Dictionary, PDO und SDO
Das CANopen-Kommunikationsprofil basiert auf einem „Object Dictionary“. Im „Communication Profil
DS-301“ sind zwei Daten-Objekt-Arten, sowie einige Spezialobjekte definiert. Die „Process Data Objects“ (PDO) dienen zur Übertragung der Echtzeitdaten, während die „Service Data Objects“ (SDO)
den Zugriff auf das „Object Dictionary“ ermöglichen. Das „Object Dictionary“ beinhaltet sämtliche
Einstellungen des Gerätes. Die Parameter werden über einen Multiplexor (Adresse) gelesen, bzw. geschrieben. Der Multiplexor besteht aus einem 16-Bit-Index und 8-Bit-Subindex, die die entsprechenden
Einträge im „Object Dictionary“ adressieren. Spezialobjekte werden für „Synchronisation“ (SYNC),
„Emergency“ (EMCY) sowie „Nodeguarding“, „Heartbeat“ und „Network Management“ (NMT) benötigt.
Object Dictionary
4
Service Data Objects
(Parameterizing)
Communication Profile
Process Data Objects
(Measure values)
Device Profile
Measuring data
acquisition and
conditioning
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Topologie
CAN basiert auf einer parallelen Topologie. Die Anzahl der Teilnehmer pro Netz ist dabei von CANopen logisch auf 128 Knoten begrenzt, physikalisch erlaubt die aktuelle Treiber-Generation bis zu 110
Knoten in einem Netzsegment. Die bei einer bestimmten Datenrate maximal mögliche Netzausdehnung ist durch die auf dem Busmedium gegebene Signallaufzeit begrenzt. Bei 1000 kbps ist z.B. eine
Netzausdehnung von 25 m, bei 10 kbps eine Netzausdehnung von 5000 m möglich.
CAN_H
120 Ohm
120 Ohm
CAN_L
CMP
CANopen Master
CANopen miniature Pressure
Transmitter
CANopen Display
CANopen Controll-Unit
Buszugriffsverfahren
CAN arbeitet nach dem Verfahren „Carrier Sense Multiple Access“ (CSMA), d.h. jeder Teilnehmer ist
bezüglich des Buszugriffs gleichberechtigt und kann auf den Bus zugreifen, sobald dieser frei ist (Multi-Master-Buszugriff). Der Nachrichtenaustausch ist dabei nicht teilnehmerbezogen, sondern Nachrichtenbezogen. Dabei ist jede Nachricht mit einem priorisiertem Identifier eindeutig gekennzeichnet.
Damit beim Verschicken der Nachrichten von verschiedenen Teilnehmern keine Kollisionen auf dem
Bus entstehen, wird beim Start der Datenübertragung eine bitweise Busarbitrierung (mit dem Identifier)
durchgeführt. Dabei wird die höchstpriorisierte Nachricht, also diejenige die mit dem tiefsten Identifier,
die Arbitrierung gewinnen und seine Daten über den Bus senden. Alle anderen anstehenden Nachrichten werden somit danach, in der Reihenfolge ihrer Priorität, gesendet.
Konfiguration und Parametrierung
Zur Parametrierung und Konfiguration des CANopen Busses liefern Hersteller verschiedene SoftwareKonfigurationstools. Diese greifen über die SDOs auf das Objektverzeichnis zu. Die Konfigurationstools
erhalten die Information der Geräte-Parameter, mit einer vom Gerätehersteller gelieferten EDS-Datei
(electronic data sheet), welche im wesentlichen die Einträge des Objektverzeichnisses enthält.
Für weitere Hinweise kontaktieren Sie bitte die Trafag AG (www.trafag.com).
5
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Stecker
1
(CAN_SHLD)
Shield / Housing
2
+24 VDC
Positiv supply / 8...32V
3
GND
Ground / 0V
4
CAN_H
CAN_H bus line (dominant high)
5
CAN_L
CAN_L bus line (dominant low)
Male
&L$VWDQGDUGELWWLPLQJ
6
7DEOH
,QGH[
%DXGUDWH
K
K
K
K
K
K
K
K
K
K
0%LWV
N%LWV
N%LWV
N%LWV
N%LWV
N%LWV
N%LWV
N%LWV
N%LWV
$XWRPDWLFELWUDWHGHWHFWLRQ
,QGH[+
%DXGUDWH
G
G
G
G
G
G
G
G
G
G
7DEOH,QGH[IRU/667DEOH6HOHFWRU &L$VWDQGDUGELWWLPLQJ
(K
K
)K
)$K
'K
K
K
K
$K
K
LEGEND:
U/T
SensorTemperature
U/P
Pressure
Meas
Capt.
Event
Freq.
Object dictionary entry
A
m
p
Internal Value
T_TauMovAvg
T_ADC_Capture
Freq.
Moving-Average
A
m
p
Moving-Average
Measured Value
TS_Tick
(0...12'500)
<< 1
@100ms
ASIC
1ms/0.1s
Meas
Capt.
P_TauMovAvg
P_ADC_Capture
Measure Cylce
P_Tick
(0...2'000) <<
3
@1ms
ASIC
O
U
T
IN
T_Mov
Avg
O
U
T
IN
IN
O
U
T
IN
Temp. Coefficient
Calculation
O
U
T
Lookup-Table
Linearisation
Input Scaling & Calibration
P_Mov
Avg
Input Scaling &
Temp. Comp.
T_ZeroOffset
T_Normalized
P_ZeroOffset
T_Normalized
(100% = 2000H)
0% = -40°c
100% = 125°c
P_Normalized
P_Normalized
(100% = 2000H)
0% = Range Start
100% = Range End
OUT
OUT
T_Hysteresis
T_LowerLimit
T_UpperLimit
T_Delta
+
P_T_LimitState
</>
T_Normalized_
LastDelta
Delta and Limit-Event
T_DecimalPointDigits
IN
Unit-Conversion
T_Unit (+Prefix)
P_Hysteresis
P_LowerLimit
P_UpperLimit
P_Delta
+
P_T_LimitState
</>
P_Normalized_
LastDelta
Delta and Limit-Event
P_DecimalPointDigits
P_Unit (+Prefix)
IN
Unit-Conversion
FLOAT 32
to
INTEGER 16
FLOAT 32
to
INTEGER 16
T_LimitEventType
T_LowerLimitEvent
T_UpperLimitEvent
T_DeltaEvent
T_Status
T_Int32
T_Int24
T_Int16
T_Float
P_LimitEventType
P_LowerLimitEvent
P_UpperLimitEvent
P_DeltaEvent
P_Status
P_Int32
P_Int24
P_Int16
P_Float
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Messwertaufbereitung
7
8
T_LimitEventType
P_LimitEventType
Bit 6
-
Bit 7
-
PDO1...4
EventTimer
TX
Bit 4
P_DeltaEvent
Bit 5
T_DeltaEvent
T_UpperLimitEvent
Bit 3
Note: PDO's may be delayed by SDO’s
PDO 3
TX
T_LowerLimitEvent
Bit 2
COB-ID = (380H
+ Node-ID)
PDO 2
COB-ID = (280H
+ Node-ID)
TX
PDO 1
COB-ID = (180H
+ Node-ID)
TX
PDO 4
P_UpperLimitEvent
Bit 1
COB-ID = (480H
+ Node-ID)
Bit 0
WaitTimer
COB-ID = (80H)
RX
Spec.Msg
_Us0..64_T
Spec.Msg
Us0..64_P
PDO-Mapping
Table
PDO1...4
MappingMode
NMT Sync
EventTimer
Count1...4
PDO1-..4
SyncCount
P_LowerLimitEvent
PDO1...4
EventMask
Transmission
Update
Send
Transmission
Send
Update
Type
PDO
PDO
Update
Send
Transmission
Type
PDO
Update
Transmission PDO
Send
PDO
PDO
Sync & P/T_Event
0 Type every 1ms
PDO
PDO
0 Type every 1ms
Sync & P/T_Event
1-240 0
every 1ms
every 1ms
Sync & P/T_Event
Sync(1-240)
1-240 0
every 1ms
Sync(1-240)
Sync & P/T_Event
every 1ms
Sync
252 1-240
every 1ms
RTR Sync(1-240)
only
Sync
252 1-240
every 1ms
RTR Sync(1-240)
only
253 252
every 1ms
Sync
RTR only
RTR only
253 252
every 1ms
Sync
RTR only
RTR only
254 253
every 1ms
every 1ms
P/T_Event
RTR only
254 253
every 1ms
every 1ms
P/T_Event
RTR only
255 254
every 1ms
every 1ms
TimerEvent
P/T_Event
only
every 1ms
255 254
every 1ms
TimerEvent
P/T_Event
only
255
every 1ms
TimerEvent only
255
TimerEvent only
every 1ms
PDO1..4-Send-Procedure
PDO1...4
TransmissionType
PDO1..4_EventMask-Bit-Alocation:
1ms
Task Cylce
T_SpezMsg_LowerLimitDown
T_SpezMsg_LowerLimitUp
T_SpezMsg_UpperLimitDown
T_SpezMsg_UpperLimitUp
P_SpezMsg_LowerLimitDown
P_SpezMsg_LowerLimitUp
P_SpezMsg_UpperLimitDown
P_SpezMsg_UpperLimitUp
01H = measuring value not valid
02H = positiv overload
04H = negativ overload
T_Status
P_Status
T_Int32
T_Int24
T_Int16
T_Float
P_Int32
P_Int24
P_Int16
P_Float
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Principle of PDO-Communication (TX)
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
PDO’s (Process Data Objects)
Transmission Type
Der „Transmission Type“ gibt vor, wann ein Messwert (PDO) versendet wird. Der „Transmission Type
254“ ist gerätespezifisch und wird nachfolgend spezifiziert. Alle anderes „Transmission Types“ sind
gemäss Kommunikationsprofil DS-301 definiert.
Beim „Transmission Type 254“ wird das entsprechende PDO bei einem Druck- oder Temperaturereignis gesendet. Ein Ereignis (Event) wird dann generiert, wenn der Druck oder die Temperatur um den
vorgegebenen Delta-Wert geändert hat oder eine der zwei Schaltschwellen über- oder unterschritten
wurde.
Welches Ereignis zu einem Versenden des PDO führt, kann über die „Event Mask“ eingestellt werden.
Wird hier der „Event Timer“ eingesetzt, erfolgt ein zyklisches Senden nur dann, wenn der aktuelle
Messwert die obere Schwelle über- oder die untere Schwelle unterschritten hat.
Zu beachten ist, dass sich die definierbare Hysterese bei der oberen Schwelle immer unterhalb davon
befindet und bei der unteren Schwelle sich immer oberhalb davon befindet.
Event Mask
Die „Event Mask“ gibt bei den „Transmission Types 0 und 254“ vor, welches Ereignis ein Senden des
PDO‘s auslösen soll. Man hat für Druck und Temperatur die Möglichkeit über einen Delta-Wert oder
über zwei Schaltschwellen (Limiten) ein Ereignis auszulösen. Das Ereignis wird im Parameter „Event
Mask“ durch eine „1“ im entsprechenden Bit aktiviert.
Achtung: Beim Umstellen des „Mapping Mode“ wird die „Event Mask“ automatisch neu definiert. Dabei werden nur Delta- Ereignisse freigegeben, und nur jene, bei welchem ein entsprechender Messwert
gemappt ist (siehe „Standard Value“ in PDO-Mapping-Tabelle).
Delta- und Limit-Event-Triggering & Transmission Type 254
UpperLimitEvent
(LimitEventType = UpperLimitUp)
UpperLimitEvent
(LimitEventType = UpperLimitDown)
Upper-Limit-Threshold
Pressure /
Temperature
Lower-Limit-Threshold
= no event !
Hysteresis
Time
LowerLimitEvent
(LimitEventType = LowerLimitUp)
DeltaEvent
LowerLimitEvent
(LimitEventType = LowerLimitDown)
9
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Mapping Mode
Der „Mapping Mode“ gibt vor, was im PDO versendet wird. Das Mapping kann beim CMP in begrenztem Umfang dynamisch eingestellt werden, d.h. es stehen nur die Einträge der vordefinierten MappingTabelle zur Verfügung. Die Auswahl ist eine Zusammenstellung sinnvoller Kombination. Die MappingEinstellungen können konform zu DS-301aus den Mapping Parametern ausgelesen werden.
In der Tabelle „PDO-Mapping-Table“ sind alle möglichen Konfigurationen für PDO‘s aufgelistet.
Die „Mapping Modes 27...37“ sind im CMP speziell definiert. Die Modes 27...36 weisen dabei den
PDO‘s frei definierbare und ereignisdynamische CAN-Botschaften zu. Der Mode 37 hat darüber hinaus zusätzlich einen 8bit Wert, welcher jede ms inkrementiert wird.
Es können vier CAN-Botschaften für Druck und vier CAN-Botschaften für Temperatur frei definiert werden. Diese werden über die Ereignisse der zwei Druck- und Temperaturschaltschwellen zugeordnet:
 untere Druck-Schwelle über- bzw. unterschritten
 obere Druck-Schwelle über- bzw. unterschritten
 untere Temperatur-Schwelle über- bzw. unterschritten
 obere Temperatur-Schwelle über- bzw. unterschritten
Sobald ein solches Ereignis auftritt, wird die dem aktuellen Schwellwertereignis entsprechende CANBotschaft versendet. Der Inhalt des PDO‘s wird somit dynamisch und variiert je nach Ereignis. Jede dieser acht CAN-Botschaften wird grundsätzlich vom Anwender immer mit 8 Daten-Bytes definiert (siehe
Objektverzeichnis). Wie viele dieser Bytes gesendet werden (die Länge der CAN-Botschaft), ist über
den entsprechenden „Mapping Mode“- Eintrag bestimmbar. Wie in der Mapping-Tabelle ersichtlich,
kann zwischen 0 (keine Daten), 8, 16, 32, oder 64 Bit gewählt werden.
Die „Mapping Modes 27...31“ weisen dem PDO die „Special Messages“ für Druck, die „Mapping
Modes 32...36“ dem PDO die „Special Messages“ für Temperatur zu.
PDO Mapping Mode 27...36
P/T_Event
P_LowerLimitEvent
P_UpperLimitEvent
T_LowerLimitEvent
T_UpperLimitEvent
P_DeltaEvent
T_DeltaEvent
P/T_LimitEventType
Sended object when
"Spec.Msg_xxx_P" is mapped
LowerLimitUp
LowerLimitDown *
UpperLimitUp *
UpperLimitDown
LowerLimitUp
LowerLimitDown *
UpperLimitUp *
UpperLimitDown
(actual LimitEventType)
(actual LimitEventType)
P/T_SpezMsg_LowerLimitUp
P/T_SpezMsg_LowerLimitDown
P/T_SpezMsg_UpperLimitUp
P/T_SpezMsg_UpperLimitDown
P/T_SpezMsg_LowerLimitUp
P/T_SpezMsg_LowerLimitDown
P/T_SpezMsg_UpperLimitUp
P/T_SpezMsg_UpperLimitDown
(actual Special-Message-Object)
(actual Special-Message-Object)
* Only this events can be periodically generated by the Timer Event !
10
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
PDO-Mapping-Tabelle
Prepared variable mapping
Event Mask
PDO
MappingMode
Entry 1
Entry 2
Entry 3
Entry 4
Size [Bytes]
1
P_Int32
P_Status
-
-
5
00010000
2
P_Int24
P_Status
-
-
4
00010000
3
P_Int16
P_Status
-
-
3
00010000
4
P_Float
P_Status
-
-
5
00010000
5
P_Int32
-
-
-
4
00010000
6
P_Int24
-
-
-
3
00010000
7
P_Int16
-
-
-
2
00010000
8
P_Float
-
-
-
4
00010000
9
T_Int32
T_Status
-
-
5
00100000
10
T_Int24
T_Status
-
-
4
00100000
11
T_Int16
T_Status
-
-
3
00100000
12
T_Float
T_Status
-
-
5
00100000
13
T_Int32
-
-
-
4
00100000
14
T_Int24
-
-
-
3
00100000
15
T_Int16
-
-
-
2
00100000
16
T_Float
-
-
-
4
00100000
17
P_Int32
T_Int32
-
-
8
00110000
18
P_Int24
T_Int24
-
-
6
00110000
19
P_Int16
T_Int16
-
-
4
00110000
20
P_Float
T_Float
-
-
8
00110000
21
P_Int24
T_Int24
P_Status
T_Status
8
00110000
22
P_Int16
T_Int16
P_Status
T_Status
6
00110000
23
P_Int24
P_Status
T_Int24
T_Status
8
00110000
24
P_Int16
P_Status
T_Int16
T_Status
6
00110000
25
P_Float
P_Status
T_Int16
T_Status
8
00110000
26
P_Int32
P_Status
T_Int16
T_Status
8
00110000
27
Spec.Msg_NIL_P
-
-
-
0
00000011
28
Spec.Msg_Us8_P
-
-
-
1
00000011
29
Spec.Msg_Us16_P
-
-
-
2
00000011
30
Spec.Msg_Us32_P
-
-
-
4
00000011
31
Spec.Msg_Us64_P
-
-
-
8
00000011
32
Spec.Msg_NIL_T
-
-
-
0
00001100
33
Spec.Msg_Us8_T
-
-
-
1
00001100
34
Spec.Msg_Us16_T
-
-
-
2
00001100
35
Spec.Msg_Us32_T
-
-
-
4
00001100
36
Spec.Msg_Us64_T
-
-
-
8
00001100
37
P_Int16
WaitTimer
Spec.Msg_Us8_P
-
4
00010011
(standard value)
PDO1...4 EventMask-Bit-Alocation:
Bit 7
Bit 6
-
-
Bit 5
T_DeltaEvent
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
P_DeltaEvent
T_UpperLimitEvent
T_LowerLimitEvent
P_UpperLimitEvent
P_LowerLimitEvent
11
12
Description
1800H
1200H
1018H
1014H
1017H
1011H
1010H
Guard Time
Life Time Factor
Store Parameters
0H
largest subindex supported [3]
save all parameters
1H
save communication param.
2H
save application parameters
3H
Restore default Parameters
0H
largest subindex supported [3]
1H
restore all default parameters
2H
restore communication par.
3H
restore application par.
COB-ID EMCY
Producer Heartbeat Time
Identity Object ( Identity [23] )
0H
number of entries [4]
1H
Vendor ID
2H
Product Code
3H
Revision Number
Serial Number
4H
Server SDO1 Parameter ( SDO Parameter [22] )
0H
largest sub-index supp. [2]
1H
COB-ID Client -> Server (rx)
COB-ID Server -> Client (tx)
2H
Transmit PDO1 Parameter ( PDO CommPar [20] )
0H
largest sub-index supp. [5]
1H
COB-ID used by PDO
2H
transmission type
event timer
5H
Manufacturer Software Version
100AH
100CH
100DH
Manufacturer Device Name
Manufacturer Hardware Version
1009H
Device Type
Error Register
Manufacturer Status Register (Calib. Date)
Pre-defined Error Field
0H
number of errors [0..1]
1H
standard error field
COB-ID SYNC
ro
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED8
UNSIGNED16
0000'0180h + Node_ID (on)
255 d (timer event)
1000 d (1000ms)
600h + Node_ID
580h + Node_ID
ro
ro
ro
UNSIGNED8
UNSIGNED32
UNSIGNED32
PDO1_ID ( PDO = on/off )
PDO1_TransmissionType
PDO1_EventTimer
( PCS_rxSDO_ID + Node_ID )
( PCS_txSDO_ID + Node_ID )
VendorID
ProductCode ["8270.21.10"]
RevisionNumber
SerialNumber
0000'003D h
8270'0000 h
0001'0002 h
00000000 d
ro
ro
ro
ro
ro
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
(Restore all Parameter) ["daol"] [64 61 6F 6C]
(Restore com. param. from EEProm) ["daol"]
(Restore appl. param. from EEProm) ["daol"]
EMCY_ID
HeartbeatTime
GuardTime
LifeTimeFactor
ManufacturerSoftwareVersion
ManufacturerHardwareVersion
ManufacturerDeviceName
( Generated by NodeErrorCode )
LastNodeErrorCode + ( NodeSubErrorCode )
SYNC_ID
80 h + Node_ID (on)
0000 h
ro
rw
rw
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED16
Annotation
( DS 404 V1.2 )
ErrorRegister
ManufacturerStatusRegister
(Save all Parameter) ["evas"] [65 76 61 73]
(Save com. param. to EEProm) ["evas"]
(Save appl. param. to EEProm) ["evas"]
ro
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
0000 h (off)
00 h
"CMP V1.2 " __DATE__ " : " __TIME__
"8270.xx.xxxx.xx.xx.xx.xxxx.xxxx "
"CMP Pressuresensor Trafag AG"
00000000 h
80 h
00020194 h
00 h
e.g. 20070712 (12. July 2007)
Initial Value
-
rw
rw
const
const
const
rw
ro
rw
ro
ro
ro
Acc.
UNSIGNED16
UNSIGNED8
VISIBLE_STRING32
VISIBLE_STRING32
VISIBLE_STRING32
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED8
UNSIGNED32
Index Type
CAN-Open DS 301 V4.02 / *) DSP 302-2 V4.0
1008H
1005H
1003H
1000H
1001H
1002H
Index
Sub
Ind.
Communication Profile Area
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
SDO-Communication-Object-Dictionary
Sub
Ind.
Description
(R: 40H)
(W: 22H)
Index
1
LSB
0
SDO
Command
2
3
Sub
Index
LSB
4
NMTStartup *)
5
Data
6
7
Transmit PDO2 Parameter ( PDO CommPar [20] )
0H
largest sub-index supp. [5]
COB-ID used by PDO
1H
transmission type
2H
5H
event timer
Transmit PDO3 Parameter ( PDO CommPar [20] )
0H
largest sub-index supp. [5]
1H
COB-ID used by PDO
2H
transmission type
5H
event timer
Transmit PDO4 Parameter ( PDO CommPar [20] )
0H
largest sub-index supp. [5]
1H
COB-ID used by PDO
2H
transmission type
5H
event timer
Transmit PDO1 mapping ( PDO Mapping [21] )
0H
numb. of mapped object [1..4]
1H
PDO mapping for the 1-th obj.
2H
PDO mapping for the 2-th obj.
3H
PDO mapping for the 3-th obj.
4H
PDO mapping for the 4-th obj.
Transmit PDO2 mapping ( PDO Mapping [21] )
0H
numb. of mapped object [1..4]
1H
PDO mapping for the 1-th obj.
2H
PDO mapping for the 2-th obj.
PDO mapping for the 3-th obj.
3H
PDO mapping for the 4-th obj.
4H
Transmit PDO3 mapping ( PDO Mapping [21] )
0H
numb. of mapped object [1..4]
1H
PDO mapping for the 1-th obj.
2H
PDO mapping for the 2-th obj.
3H
PDO mapping for the 3-th obj.
4H
PDO mapping for the 4-th obj.
Transmit PDO4 mapping ( PDO Mapping [21] )
numb. of mapped object [1..4]
0H
1H
PDO mapping for the 1-th obj.
PDO mapping for the 2-th obj.
2H
3H
PDO mapping for the 3-th obj.
PDO mapping for the 4-th obj.
4H
Initiate SDO UP/Download Data:
1F80H
1A03H
1A02H
1A01H
1A00H
1803H
1802H
1801H
Index
rw
rw
rw
rw
rw
rw
rw
rw
rw
rw
rw
rw
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
rw
91300120 h
91500108 h
-
rw
rw
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
UNSIGNED32
8000'0480h + Node_ID (off)
255 d (timer event)
0 d (EventTimer4 off)
ro
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED8
UNSIGNED16
TX
COB-ID = 580H+Node-ID
SDO
RX
Normal Start:
0C h
Autostart without NMT Msg. sending:
08 h
Autostart with NMT Start Msg. sending (after 250ms): 02 h
(see also Index 2200 h)
PDO4_MappingMode
-
PDO3_MappingMode
-
PDO2_MappingMode
-
PDO1_MappingMode
-
PDO4_ID ( PDO = on/off )
PDO4_TransmissionType
PDO4_EventTimer
PDO3_ID ( PDO = on/off )
PDO3_TransmissionType
PDO3_EventTimer
PDO2_ID ( PDO = on/off )
PDO2_TransmissionType
PDO2_EventTimer
Annotation
SDO
COB-ID = 600H+Node-ID
0000'000C h
91300120 h
91500108 h
-
91300120 h
91500108 h
-
91300120 h
91500108 h
-
8000'0380h + Node_ID (off)
255 d (timer event)
0 d (EventTimer3 off)
ro
rw
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED8
UNSIGNED16
8000'0280h + Node_ID (off)
255 d (timer event)
0 d (EventTimer2 off)
Initial Value
ro
rw
rw
rw
Acc.
UNSIGNED8
UNSIGNED32
UNSIGNED8
UNSIGNED16
Index Type
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
13
14
6/7/8/
9133H
6132H
6131H
6/7/8/
9130H
6127H
6126H
6125H
6/7/8/
9149H
6/7/8/
9148H
6110H
7100H
Index
Description
AI_Autozero_2
2H
[T]
[P]
Al_Input_Proc._Val._2
2H
[T]
[P]
Al_Physical_Unit_Process_Value
0H
Number_of_entries [ 2 ]
1H
AI_Physic_Unit_Pro..._1 [ P ]
2H
AI_Physic_Unit_Pro..._2 [ T ]
Al_Decimal_Digits_Process_Value
0H
Number_of_entries [ 2 ]
1H
Al_Dec._Digits_Pro..._1 [ P ]
Al_Dec._Digits_Pro..._2 [ T ]
2H
Al_Interrupt_Delta_Input_Process_Value
0H
Number_of_entries [ 2 ]
1H
Al_Input_Delta_Net..._1 [ P ]
2H
Al_Input_Delta_Net..._2 [ T ]
Al_Input_Proc._Val._1
1H
AI_Scaling Factor
0H
Number_of_entries [ 2 ]
1H
AI_ScalingFactor_1 [ P ]
AI_ScalingFactor_2 [ T ]
2H
AI_Scaling Offset
Number_of_entries [ 2 ]
0H
1H
AI_ScalingOffset_1 [ P ]
2H
AI_ScalingOffset_2 [ T ]
Al_Input_Process_Value
0H
Number_of_entries [ 2 ]
AI_Autozero_1
1H
AI_Input_Field_Value
Number_of_entries [ 2 ]
0H
AI_Input_Field_Value_1 [ P ]
1H
2H
AI_Input_Field_Value_2 [ T ]
AI_Sensor_Type
0H
Number_of_entries [ 2 ]
1H
AI_Sensor_Type_1 [ P ]
2H
AI_Sensor_Type_2 [ T ]
AI_Sensor_Range_Start
Number_of_entries [ 2 ]
0H
1H
AI_Sen._Range_Start_1 [ P ]
2H
AI_Sen._Range_Start_2 [ T ]
AI_Sensor_Range_End
0H
Number_of_entries [ 2 ]
1H
AI_Sen._Range_End_1 [ P ]
2H
AI_Sen._Range_End_2 [ T ]
AI_Autozero
0H
Number_of_entries [ 2 ]
Sub
Ind.
Standardised Device Profile Area
ro
rw
rw
ro
rw
rw
ro
rw
rw
UNSIGNED8
UNSIGNED32
UNSIGNED32
UNSIGNED8
UNSIGNED8
UNSIGNED8
UNSIGNED8
Float / Integer16/24/ 32
Float / Integer16/24/ 32
ro
Float / Integer16/24/ 32
ro
UNSIGNED8
ro
ro
rw
rw
UNSIGNED8
Float
Float
Float / Integer16/24/ 32
ro
rw
rw
UNSIGNED8
Float
Float
wo
ro
UNSIGNED8
UNSIGNED32
ro
ro
ro
UNSIGNED8
Float
Float
/ Integer16/24/
/Interger32 32
Float
Float
/ Integer16/24/
/Interger32 32
wo
ro
ro
ro
UNSIGNED8
Float
Float
/ Integer16/24/
/Interger32 32
Float
/ Integer16/24/
Float
/Interger32 32
UNSIGNED32
90 d
100 d
ro
ro
ro
UNSIGNED8
Float
UNSIGNED16
/Interger32
Float
UNSIGNED16
/Interger32
(bar)
(°C)
Temperature no Delta (0 C°)
Pressure no Delta (0E5 pa)
-
Press. Decimalpoint Digits (3)
Temp. Decimalpoint Digits (1)
004E0000 h
002D0000 h
( Measured )
( Measured )
( Measured )
( Measured )
-
-
-
-
-
Temperature Range End (125)[c°]
Pressure Range End (100E5)[pa]
-
Temperature Range Start (-40)[c°]
Pressure Range Start (0)[pa]
-
( Measured )
( Measured )
Initial Value
ro
ro
ro
Acc.
UNSIGNED8
INTEGER16
Float
/Interger32
INTEGER16
Float
/Interger32
Index Type
CAN-Open DS 404 V1.2
P_Delta
T_Delta
P_DecimalPointDigits
T_DecimalPointDigits
P_Unit
T_Unit
P_Float
P_INT16/24/32
T_Float
T_INT16/24/32
P_ConversionOffset
T_ConversionOffset
P_ConversionFactor
T_ConversionFactor
( Done by Subroutine when ["orez"] )
[ 6F 62 65 7A ]
( Done by Subroutine when ["orez"] )
[ 6F 62 65 7A ]
-
P_SensorRangeEnd
T_SensorRangeEnd
P_SensorRangeStart
T_SensorRangeStart
P_SensorType
T_SensorType
P_Normalized (0000h = 0%, 2000h = 100%)
T_Normalized (0000h = -40°C, 2000h = 125°C)
Annotation
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Sub
Ind.
Description
micro = FA
milli = FD
centi = FE
deci = FF
MSB
Prefix
(e.g. 03h = „k“)
ro
rw
rw
ro
rw
rw
ro
ro
ro
ro
ro
ro
ro
rw
rw
UNSIGNED8
Float / Integer16/24/ 32
Float / Integer16/24/ 32
UNSIGNED8
Float / Integer16/24/ 32
Float / Integer16/24/ 32
UNSIGNED8
Float
UNSIGNED8
/Interger32
Float
UNSIGNED8
/Interger32
UNSIGNED8
Float
UNSIGNED8
/Interger32
Float
UNSIGNED8
/Interger32
UNSIGNED8
Float
UNSIGNED16
/Interger32
Float
UNSIGNED16
/Interger32
°F = AC
Kelvin = 05
Pa = 22
at = A1
mWg = A2
mHG = A3
atm = A4
PSI = AB
Reserved
(00h)
LSB
SI_none = 00
°C = 2D
Bar = 4E
Physical Units supported
ro
rw
rw
Acc.
UNSIGNED8
Float / Integer16/24/ 32
Float / Integer16/24/ 32
Index Type
SI-Denumerator
(00h)
P/T_Unit
SI-Numerator
(e.g. 22h = „Pa“)
Physical units representation:
Mega = 06
Kilo = 03
Hecto = 02
Deca = 01
Prefix supported
Al_Interrupt_Lower_Limit_Input_Process_Value
0H
Number_of_entries [ 2 ]
6/7/8/
9134H
1H
Al_Lower_Limit_1 [ P ]
2H
Al_Lower_Limit_2 [ T ]
Al_Interrupt_Upper_Limit_Input_Process_Value
Number_of_entries [ 2 ]
0H
6/7/8/
9135H
1H
Al_Upper_Limit_1 [ P ]
Al_Upper_Limit_2 [ T ]
2H
Al_Interrupt_Limit_Hysteresis_Input_Process_Value
0H
Number_of_entries [ 2 ]
6/7/8/
9136H
Al_Hysteresis_1 [ P ]
1H
2H
Al_Hysteresis_2 [ T ]
AI_Status
Number_of_entries [ 2 ]
0H
6150H
1H
Al_Status_1 [ P ]
2H
Al_Status_2 [ T ]
AI_Filter_Type
0H
Number_of_entries [ 2 ]
61A0H
1H
Al_Filter_Type_1 [ P ]
2H
Al_Filter_Type_2 [ T ]
AI_Filter_Constant
0H
Number_of_entries [ 2 ]
61A1H
1H
Al_Filter_Constant_1 [ P ]
2H
Al_Filter_Constant_2 [ T ]
Index
(valid)
(valid)
(moving average)
(moving average)
-
3
5
TX
4
LSB
COB-ID = 580H+Node-ID
Sub
Index
COB-ID = 600H+Node-ID
2
SDO
Index
1
LSB
RX
(R: 40H)
(W: 22H)
SDO
Command
0
Initiate SDO UP/Download Data:
P_TauMovAvg
T_TauMovAvg
P_FiterType
T_FilterType
P_Status
T_Status
P_Hysteresis
T_Hysteresis
P_UpperLimit
T_UpperLimit
P_LowerLimit
T_LowerLimit
Annotation
SDO
100 d (100ms)
10 d (10 * 0.1s = 1s)
1b
1b
00 h
00 h
Temperature no Hysteresis (0 C°)
Pressure no Hysteresis (0E5 pa)
-
Temperature Range End (125 C°)
Pressure Range End (100E5 pa)
-
Temperature Range Start (-40 C°)
Pressure Range Start (0 pa)
-
Initial Value
Data
6
7
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
15
16
2123H
2122H
2121H
2120H
2111H
2110H
2103H
2102H
2101H
2100H
2000H
2001H
Index
Description
Index Type
Node-ID
UNSIGNED8
Baudrate
UNSIGNED16
PDO1 Application Parameter
UNSIGNED8
0H
largest subindex supp. [ 2 ]
1H
Mapping_Mode
UNSIGNED8
2H
Event_Mask
UNSIGNED8
PDO2 Application Parameter
largest subindex supp. [ 2 ]
0H
UNSIGNED8
1H
Mapping_Mode
UNSIGNED8
UNSIGNED8
2H
Event_Mask
PDO3 Application Parameter
0H
UNSIGNED8
largest subindex supp. [ 2 ]
1H
Mapping_Mode
UNSIGNED8
2H
Event_Mask
UNSIGNED8
PDO4 Application Parameter
0H
largest subindex supp. [ 2 ]
UNSIGNED8
1H
Mapping_Mode
UNSIGNED8
2H
Event_Mask
UNSIGNED8
Aktual Special Message Value Pressure
UNSIGNED8
0H
largest subindex supp. [ 4 ]
1H
S.Msg_Us8_P [ Byte 0 ]
UNSIGNED8
S.Msg_Us16_P [ Byte 0..1 ]
USIGNED16
2H
S.Msg_Us32_P [ Byte 0..3 ]
3H
USIGNED32
S.Msg_Us64_P [ Byte 0..7 ]
USIGNED64
4H
Aktual Special Message Value Temperature
largest subindex supp. [ 4 ]
0H
UNSIGNED8
UNSIGNED8
1H
S.Msg_Us8_T [ Byte 0 ]
2H
S.Msg_Us16_T [ Byte 0..1 ]
UNSIGNED16
3H
S.Msg_Us32_T [ Byte 0..3 ]
UNSIGNED32
4H
S.Msg_Us64_T [ Byte 0..7 ]
UNSIGNED64
Special Message Data 1 (Spez Msg_LowerLimitDown) for Pressure
0H
largest subindex supp. [ 2 ]
UNSIGNED8
OCTET_STRING4
1H
Special_Message [ Byte 0..3 ]
2H
Special_Message [ Byte 4..7 ]
OCTET_STRING4
Special Message Data 2 (Spez Msg_LowerLimitUp) for Pressure
0H
largest subindex supp. [ 2 ]
UNSIGNED8
Special_Message [ Byte 0..3 ]
OCTET_STRING4
1H
2H
Special_Message [ Byte 4..7 ]
OCTET_STRING4
Special Message Data 3 (Spez Msg_UpperLimitDown) for Pressure
largest subindex supp. [ 2 ]
0H
UNSIGNED8
OCTET_STRING4
1H
Special_Message [ Byte 0..3 ]
OCTET_STRING4
2H
Special_Message [ Byte 4..7 ]
Special Message Data 4 (Spez Msg_UpperLimitUp) for Pressure
0H
largest subindex supp. [ 2 ]
UNSIGNED8
OCTET_STRING4
1H
Special_Message [ Byte 0..3 ]
2H
Special_Message [ Byte 4..7 ]
OCTET_STRING4
Sub
Ind.
Manufacturer Specific Profile Area
01 h
(depend. on Mapping_Mode)
01 h
(depend. on Mapping_Mode)
01 h
(depend. on Mapping_Mode)
01 h
(depend. on Mapping_Mode)
( Measured )
( Measured )
( Measured )
( Measured )
( Measured )
( Measured )
( Measured )
( Measured )
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
ro
rw
rw
ro
rw
rw
ro
rw
rw
ro
rw
rw
ro
ro
ro
ro
ro
ro
ro
ro
ro
ro
ro
rw
rw
ro
rw
rw
ro
rw
rw
ro
rw
rw
Initial Value
1 d (Node-Id = 1)
20 d (20kbps)
rw
rw
Acc.
Annotation
P_SpezMsg_UpperLimitUp (0..3)
P_SpezMsg_UpperLimitUp (4..7)
P_SpezMsg_UpperLimitDown (0..3)
P_SpezMsg_UpperLimitDown (4..7)
P_SpezMsg_LowerLimitUp (0..3)
P_SpezMsg_LowerLimitUp (4..7)
P_SpezMsg_LowerLimitDown (0..3)
P_SpezMsg_LowerLimitDown (4..7)
-
-
PDO4_MappingMode
PDO4_EventType
PDO3_MappingMode
PDO3_EventType
PDO2_MappingMode
PDO2_EventType
PDO1_MappingMode
PDO1_EventType
Node_ID_New
Baud_New
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Sub
Ind.
Description
Index Type
Start_Mode_Selection
Object can not be mapped to the PDO
The number and length of the objects to
be mapped would exceed PDO length
0602 0000h
0604 0041h
0604 0042h
80H
Index
1
LSB
0
SDO
Command
2
Sub
Index
LSB
Abort Code
7
Object does not exist in the object
dictionary
0601 0002h
6
0800 0020h
Attempt to write a read only object
0601 0001h
5
0800 0000h
Attempt to read a write only object
0601 0000h
4
0609 0032h
Unsupported access to an object
0504 0005h
3
0609 0031h
Out of memory (Internal Buffer 32 Bytes)
0504 0001h
Abort SDO Transfer Data:
0607 0012h
Client/server command specifier not valid
or unknown
0503 0000h
0609 0030h
0609 0011h
0607 0013h
0607 0010h
Description
Toggle bit not altered
Abord Code
Abord Code
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
00 00 00 00 h
ro
rw
rw
ro
rw
rw
Description
Value range of parameter exeeded
Sub-index does not exist
Data type does not match, length of
service parameter too low
Data type does not match, length of
service parameter too high
Data type does not match, length of
service parameter does not match
Data cannot be transferred or stored to the
application
General error
Value range of parameter written too low
3
5
Data
TX
4
LSB
COB-ID = 580H+Node-ID
Sub
Index
COB-ID = 600H+Node-ID
2
SDO
Index
1
LSB
RX
(R: 40H)
(W: 22H)
SDO
Command
0
Initiate SDO UP/Download Data:
6
( Selected by Subr. when ["otua" / "mron"] )
[ 6F 74 75 61 / 6D 72 6F 6E ]
(see also Index 1F80 h)
T_SpezMsg_UpperLimitUp (0..3)
T_SpezMsg_UpperLimitUp (4..7)
T_SpezMsg_UpperLimitDown (0..3)
T_SpezMsg_UpperLimitDown (4..7)
T_SpezMsg_LowerLimitUp (0..3)
T_SpezMsg_LowerLimitUp (4..7)
T_SpezMsg_LowerLimitDown (0..3)
T_SpezMsg_LowerLimitDown (4..7)
Annotation
SDO
6D 72 6F 6E h
00 00 00 00 h
00 00 00 00 h
ro
rw
rw
rw
00 00 00 00 h
00 00 00 00 h
Initial Value
ro
rw
rw
Acc.
Value range of parameter written too high
UNSIGNED32
Special Message Data 5 (Spez Msg_LowerLimitDown) Temperature
0H
largest subindex supp. [ 2 ]
UNSIGNED8
Special_Message [ Byte 0..3 ]
OCTET_STRING4
1H
Special_Message [ Byte 4..7 ]
OCTET_STRING4
2H
Special Message Data 6 (Spez Msg_LowerLimitUp) for Temperature
UNSIGNED8
0H
largest subindex supp. [ 2 ]
1H
Special_Message [ Byte 0..3 ]
OCTET_STRING4
2H
Special_Message [ Byte 4..7 ]
OCTET_STRING4
Special Message Data 7 (Spez Msg_UpperLimitDown) for Temperature
largest subindex supp. [ 2 ]
0H
UNSIGNED8
OCTET_STRING4
1H
Special_Message [ Byte 0..3 ]
OCTET_STRING4
2H
Special_Message [ Byte 4..7 ]
Special Message Data 8 (Spez Msg_UpperLimitUp) for Temperature
0H
UNSIGNED8
largest subindex supp. [ 2 ]
1H
Special_Message [ Byte 0..3 ]
OCTET_STRING4
2H
Special_Message [ Byte 4..7 ]
OCTET_STRING4
Abort Codes supported
2200H
2127H
2126H
2125H
2124H
Index
7
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
17
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Fehlermeldungen
Emergency Send-Procedure
Emergency Error Codes
LastNode
ErrorCode
0000h
1000h
2000h
3000h
3100h
4000h
*4200h
5000h
6000h
Error
Register
ErrorType
description
No Error
Generic Error
Current
Voltage
generic Error
0 (01h)
generic
ErrorRegister
Main Voltage
Temperature
Device Temperature
Device Hardware
Device Software
Data Set
*6300h
generic & voltage 0 & 2 (05h)
voltage
temperature
generic & temp.
0 & 3 (09h)
generic Error
generic
0 (01h)
SubErrorCodes of Data Set Error
0x0000
EEProm_VirginByte
bit 0
0x0001
EEPromUserCommPage_ValidByte
bit 1
bit 2
0x0004
bit 4
0x0010
EEPromUserApplPage_Checksum
bit 5
0x0020
EEPromFactoryCommPage_Checksum
bit 6
0x0040
EEPromFactoryApplPage_Checksum
bit 7
0x0080
EEPromSpecialPage_Checksum
bit 8
0x0100
EEPromCommPage_InvalidBase
bit 12
0x1000
EEPromApplPage_InvalidBase
bit 13
0x2000
* supported node error codes
NodeSubErrorCode
0x0002
EEPromUserApplPage_ValidByte
EEPromUserCommPage_Checksum
Additional Modules
Monitoring
CAN Overrun (Objects lost)
CAN in Error Passive Mode
Life Guard Error
recovered from bus off
External Error
Additional Functions
LastNodeErrorCode
NodeSubErrorCode
No bit
NoError
7000h
8000h
8110h
8120h
*8130h
8140h
9000h
F000h
Bit
-
Monitoring
Monitoring
Monitoring
Monitoring
generic & com.
generic & com.
generic & com.
generic & com.
0 & 4 (11h)
0 & 4 (11h)
0 & 4 (11h)
0 & 4 (11h)
Emergency Object Data:
ERROR FREE
1
0
LastNode
ErrorCode
2
Error
Reg.
(Emerg. Error Code)
Err.Reg.
3
n.u.
5
6
4
NodeSubErrorCode
7
LSB
(Manufacturer specific Error Field)
Clear 'error code'
Send 'error recovery '
Error indication No Error indication
ERROR OCCURED
Set 'error code and error register '
Send 'emmergency error code'
Startup
(Initial)
18
Error
indication
EMERGENCY
COB-ID = (80H+Node-ID)
Permanent
Autotest
(Hard and Softwaretest)
P_Status
T_Status
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
NMT (Network Management, LSS & Errorhandling)
Emergency Send Procedure
Als zusätzliche Sicherheit ist der CMP mit einem „Permanent Autotest“ ausgerüstet. Diese Funktion
überprüft ständig die Betriebstemperatur des Sensors, den CAN-Bus mit „Life Guard“ und „Heartbeat“.
Ebenfalls wird beim Aufstarten der Inhalt des Speichers (EEProm) überprüft. Tritt beim „Permanent
Autotest“ ein Fehler auf, wird dieser über den CAN-Bus gesendet. Die Bedeutung dieser Fehlermeldungen sind in diesem Dokument im „Emergency Send Procedure“ aufgelistet und entsprechen dem
Kommunikationsprofil DS-301.
Im Fehlerfall geht der Knoten sofort in den Zustand „PRE-OPERATIONAL“ und bleibt in diesem Zustand,
bis der Fehler behoben ist und zusätzlich vom Bus-Master eine „Start-Node_Indication“ gesendet wird.
Soll der Knoten nach der Fehlerbehebung automatisch starten, muss „Auto-Start“ eingestellt werden.
Wird der Fehler nicht behoben, kann der Knoten in keinem Fall (auch nicht vom Master) gestartet
werden.
Network-Management (NMT)-State-Machine
Die State-Machine ist durch einen zusätzlichen State ergänzt worden (siehe Grafik „NMT-State-Machine“). Ansonsten ist die „State-Machine“ gemäss Kommunikationsprofil DS-301 definiert. Die erweiterte
„State-Machine“ ermöglicht einen Betrieb ohne die „NMT Start-Node-Indication“ eines CANopenMasters. Wenn man im Objektverzeichnis den Parameter „Auto_Start“ auf „auto“ konfiguriert wird der
Knoten nach der Initialisierung automatisch in den Zustand „OPERATIONAL“ gehen. Somit startet der
Knoten automatisch. Bei einem Fehler wird in den Zustand „AUTO-PRE-OPERATIONAL“ gewechselt
anstatt in den Zustand „PRE-OPERATIONAL“. Wird dann der Fehler aufgehoben, wechselt er automatisch in den Zustand „OPERATIONAL“. Diese Funktionalität kann auch mit dem Setzen des entsprechenden Wertes in „NMTStartup“ aktiviert werden. Zudem kann zusätzlich auf Wunsch 250ms nach
dem selbstständigen erreichen des „OPERATIONAL“ Zustandes eine „NMT Start-Node-Indication“ vom
CMP abgesendet werden (siehe dazu Index 1F80h).
LSS
Der CMP ist mit dem „Layer setting services“ (LSS) gem. DSP305 V2.0 mit allen zur Verfügung stehenden Befehlen ausgestattet. Dadurch kann der Drucktransmitter ohne vorherige Konfiguration direkt
im Netzwerk mit anderen Geräten zusammen eingestellt werden. Standardmässig wird der CMP mit
Node-ID = 1 und Baudrate = 20kpbs ausgeliefert. Bei Verwendung mit LSS ist aber ein Aufstarten mit
Auto-Baudrate-Detection von Vorteil. Bitte daher bei der Bestellung dies angeben.
Eine Erleichterung betrifft noch den Befehl „Switch state selective“. Um in den Konfigurationsmodus zu
kommen braucht nicht die gesamte LSS-Adresse bekannt zu sein. Falls gewünscht kann die Revisionsnummer mit 0000’0000h ignoriert werden. Hingegen „Vendor ID“, „Product-code“ (in hex) und die
„Serial-number“ müssen angegeben werden. Näheres dazu siehe „LSS State-Machine“.
19
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
20
mode
cs =
04H
2
3
4
res.
5
6
1
LSB
2
data
3
2
table
index
3
4
1
LSB
2
MSB
switch_delay [ms]
3
Node-ID
cs =
11H
2
3
1
2
3
1
2
1
2
3
3
res.
4
res.
4
res.
4
4
4
res.
5
5
5
5
5
res.
5
res.
cs =
4CH
0
1
2
3
res.
4
5
Request: identify none-configured remote slave
cs =
5EH
0
Request: inquire node-ID
inquire LSS address:
cs = 5AH: vendor-ID
cs = 5BH: product-code
cs = 5CH: revision-number
cs = 5DH: serial-number
cs
0
Request: inquire LSS address
cs =
17H
0
Request: store configuration
1
0
Request: configure node-ID
cs =
15H
0
Request: activate bit timing parameters
table selector:
00H = standard CiA bit timing table (see Baudrates)
1
table
selector
0
cs =
13H
5
identify remote slave:
cs = 46H: vendor-ID
cs = 47H: product-code
cs = 48H: revision-number-low
cs = 49H: revision-number-high
cs = 4AH: serial-number-low
cs = 4BH: serial-number-high
4
MSB
Request: configure bit timing parameters
switch state selective:
cs = 40H: vendor-ID
cs = 41H: product-code
cs = 42H: revision-number
(can be ignored with 0000'0000 H)
cs = 43H: serial-number
cs
0
6
6
6
6
6
6
6
res.
6
Request: switch state selective / identify remote slave
00H: switches to waiting state
01H: switches to configuration state
1
0
Request: Switch state global
7
7
7
7
7
7
7
7
7
1
2
3
4
identify slave:
cs = 4FH
res.
1
2
spec.
error
3
error code:
00H = OK
01H = bit timing not supported
error
code
spec.
error
2
error code:
00H = OK
01H = Node-ID out of Range
error
code
1
3
3
error code:
00H = OK
02H = storage media access error
2
spec.
error
1
error
code
1
LSB
2
data
3
1
Node-ID
2
3
4
4
MSB
4
4
4
res.
cs =
50H
0
1
2
3
res.
4
Response: identify none-configured slave
cs =
5EH
0
Response: inquire node-ID
inquire LSS address:
cs = 5AH: vendor-ID
cs = 5BH: product-code
cs = 5CH: revision-number
cs = 5DH: serial-number
cs
0
Response: inquire LSS address
cs =
17H
0
Response: store configuration
cs =
11H
0
Response: configure node-ID
cs =
13H
0
5
5
5
5
5
res.
5
res.
5
res.
Response: configure bit timing parameters
switch state selective:
cs = 44H
cs
0
Response: switch state selective / identify slave
Layer setting services and protocols (LSS) DSP305 V2.0
6
6
res.
6
6
6
6
6
7
7
7
7
7
7
7
COB-ID = 7E4H
LSS
LSS Response
switch state selective
NMT Operational state
activate/configure bit timing paramters
configure node-ID
store configuration
inquire LSS address
inquire ndoe-ID
identify (remote) slave
identify non-configured (remote) slave
Activity
switch state global
LSS configuration
switch state global
switch state global
(waiting_switch) (configuration_switch)
identify (remote) slave
identify non-configured (remote) slave
Activity
switch state global
switch state selective
LSS waiting
NMT Operational state
NMT PreOperational state
NMT Stopped state
NMT reset communication state with node-ID = FF h
COB-ID = 7E5H
LSS
LSS Request
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
21
8270/8826
CANopen Miniature Pressure-Transmitter CMP
Version 1.2
Beispiele zur CANopen-Kommunikation
COB-ID = 0
COB-ID = 0
COB-ID = 0
COB-ID = 0
COB-ID = 0
Data = 01 00
Data = 02 00
Data = 80 00
Data = 81 00
Data = 81 0A
N=1, P als FLOAT auslesen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 40 30 61 01 00 00 00 00
Data = 43 30 61 01 XX XX XX XX
N=1, T als INT_16 auslesen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 40 30 71 02 00 00 00 00
Data = 4B 30 71 02 XX XX 00 00
N=10, P-Einheit auf kPa umstellen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 60A
COB-ID = 58A
Data = 22 31 61 01 00 00 22 03
Data = 60 31 61 01 00 00 00 00
N=11, T-Datenformat auf zwei Nachkommastellen setzen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 60B
COB-ID = 58B
Data = 22 32 61 02 02 00 00 00
Data = 60 32 61 02 00 00 00 00
N=1, P-Filter-Konstante auf 1000ms setzen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 A1 61 01 E8 03 00 00
Data = 60 A1 61 01 00 00 00 00
N=1, PDO4 einschalten, COB-ID=485h einstellen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 03 18 01 85 04 00 00
Data = 60 03 18 01 00 00 00 00
N=1, bei PDO1 [P_Int32] mappen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 00 21 01 05 00 00 00
Data = 60 00 21 01 00 00 00 00
N=1, PDO1 auf zyklisch senden einstellen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 00 18 02 FF 00 00 00
Data = 60 00 18 02 00 00 00 00
N=1, PDO1 Zykluszeit auf 100ms einstellen:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 00 18 05 64 00 00 00
Data = 60 00 18 05 00 00 00 00
N=1, alle Einstellungen speichern „save“:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 10 10 01 73 61 76 65
Data = 60 10 10 01 00 00 00 00
N=1, Fabrik-Setup wiederherstellen „load“ 1):
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 11 10 01 6C 6F 61 64
Data = 60 11 10 01 00 00 00 00
N=1, Versuch ein Read-Only-Eintrag zu schreiben:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 601
COB-ID = 581
Data = 22 00 10 00 78 56 34 12
Data = 80 00 10 00 02 00 01 06 2)
N=1, PDO1 via Remote-Transmission-Request Anfrage:
Antwort vom Netzwerk-Knoten (CMP):
COB-ID = 181
COB-ID = 181
RTR = 1, Data = [ ] (Datalength = 4)
Data = XX XX XX XX
N=4, Fehlerfall: Auftreten eines Nodeguard-Fehlers:
COB-ID = 84
Data = 30 81 11 00 00 00 00 00 3)
Erst nach erfolgtem Reset wird das Gerät mit den Fabrikeinstellung gestartet. Sofern danach nicht der Befehl
„Save all“ ausgeführt wird, werden beim nächsten Gerätereset wieder die vorherigen Einstellung verwendet.
2)
Abort Code = 0601 0002 h (Attempt to write a read only object)
3)
LastNodeErrorCode = 8130 h, ErrorRegister = 11 h, NodeSubErrorCodes = 0000 h (Monitoring, Life Guard Error)
1)
22
We reserve the right to make alterations as technical progress may warrant.
Alle Knoten starten (OPERATIONAL):
Alle Knoten stoppen (STOPPED):
Alle Knoten anhalten (PRE-OPERATIONAL):
Alle Knoten zurücksetzen (INITIALISING):
Nur Knoten 10 zurücksetzen (Reset):
H73616b Trafag AG 08/2008
Hinweis: Alle Zahlen sind im HEX-Format, P steht für Druck, T für Temperatur, N für Netz-Knoten-Addresse (Node-Identifier)
23
Document
Kategorie
Automobil
Seitenansichten
12
Dateigröße
2 042 KB
Tags
1/--Seiten
melden