Canopen: ⌕㸠⌆Ⱘ Can-Bus 催ሖण䆂
Canopen: ⌕㸠⌆Ⱘ Can-Bus 催ሖण䆂
com
CANopen
CAN-bus
www.zlgmcu.com
1 2 3 CAL
..................................................................................................................................................................... 1 ............................................................................................................................................................ 2
CANopen ............................................................................................................................................................. 3 3 3 3 1 2 CANopen 3 CANopen 8 OD........................................................................................................................................ 3 ..................................................................................................................................... 4 ..................................................................................................................... 6 ......................................................................................................................... 8 ........................................................................................................................ 8 ..................................................................................................................... 9
................................................................................................................................................................... 18 ................................................................................................................................................................... 19
www.zlgmcu.com
1
OSI 7 5 6 1 2 Software CAN CAN 11/29 8 CAN z z z CAN CAN ISO11898 Firmware 1 3 2 4
Application layer Communication profile Device proflile CAN CAN-in-Automation(CiA) CAL : CANopen CAL CANopen CANopen
CANopen
CAN
OSI
CAN
CANopen
CiA DSP-404
CiA DSP-xxx
Chip
CAN 2.0A
Cable
1.1
CAN CANopen
OSI
www.zlgmcu.com
CAL
CAL CAN Application Layer CAL CAN CAN CiA CAN in Automation Philips
CAL z
CMS z
MMS
OSI
NMT z DBT (DistriBuTor) CAN ID z COB-ID DBT LMT (Layer ManagemenT) LMT NMT LMT Master CAN LMT Slave Communication Object Identifier
CMS 0 1761-2031
220
COB-ID
1760
2-1
CAL COB-ID 0 1 221 441 661 881 220 440 660 880 1100 1320 1540 1760 2015 2031
COB-ID(11
CAN
NMT CMS CMS CMS CMS CMS CMS CMS CMS NMT NMT LMT
/ 0 1 2 3 4 5 6 7
DBT
CAN2.0A 29 ID
11
ID 11
[0 2047] 29 COB-ID
[0 2031] 11
CAN2.0B COB-ID
www.zlgmcu.com
CANopen
CAL how CANopen CAL what CAL CANopen CMS
CANopen CANopen OD Object Dictionary CAL OD Object Dictionary CANopen Profibus Interbus-S CANopen
3.1
OD
OD Object Dictionary 8 0x0FFF 0x1000 data types0x9FFF 16 + 3-1
3-1
CANopen
0000 0001 0020 0040 0060 0080 00A0 1000 2000 6000 A000 001F 003F 005F 007F 009F 0FFF 1FFF 5FFF 9FFF FFFF
PDOCommPar SDOParameter
Reserved
PDO
DSP-401 I/O
Reserved
CANopen
EDS Electronic Data Sheet CAN-bus CANopen communication profile CANopen device profile CANopen 5 + CANopen
www.zlgmcu.com
EDS Electronic Data Sheet DCF Device Configuration File CANopen OD CANopen 8 OD EDS
CANopen
2 CANopen
CANopen CANopen COB-ID CANopen 4 CANopen
1 z z CAN 2 z z z 8 SDO 3 z PDO z z z PDO PDO PDO PDO PDO PDO in bits 8 PDO SDO z PDO PDO PDO / PDO 2 COB-ID PDO PDO PDO 64 I/O 4 CAN ID 16 AD PDO Process Data Object 1 8 SDO CAL CMS 4 CAL ID LMT NMT LMT SDO(Service Data Object) CAN SDO NMT DBT DBT
SDO
ID
SDO
www.zlgmcu.com 3-2 8 3-2 PDO PDO (B = both needed SYNC 0 1-240 241-251 252 253 254 255 z z z z z B O B RTR B O O O O = one or both) Event B O O Reserved RTR RTR PDO PDO PDO 1
SYNC-object
240
PDO
SYNC
PDO
PDO L
SYNC z CAL CMS SYNC CAL CANopen CMS COB-ID SYNC SYNC SYNC SYNC PDO
Time Stamp
www.zlgmcu.com z z NMT z Boot-UP NMT NMT 8 NMT NMT NMT NMT Node Guard Node guarding Life guarding NMT / CAL CMS Node/Life guarding
Emergency
3-1
CANopen
z z
CANopen
3 CANopen 8
CANopen 8 ID 3-2 11 CAN ID 4 CANopen / 7 ID(Node-ID) CAN-ID
www.zlgmcu.com
ID Node-ID 1~127 0
PDO
PDO Transmit
PDO
SDO
(Node-Error-Control)ID
3-3
CAN CANopen 8 ID-bits 10-7 / COB-ID 000H 080H 100H OD 1005H 1006H 1007H 1012H 1013H
CANopen
COB-ID ID-bits 10-7 0001 PDO1( PDO1( PDO2( PDO2( PDO3( PDO3( PDO4( PDO4( SDO( SDO( / / ) ) ) ) ) ) ) ) ) ) 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1110 081H-0FFH 181H-1FFH 201H-27FH 281H-2FFH 301H-37FH 381H-3FFH 401H-47FH 481H-4FFH 501H-57FH 581H-5FFH 601H-67FH 701H-77FH
OD
1024H 1015H 1800H 1400H 1801H 1401H 1802H 1402H 1803H 1403H 1200H 1200H 1016H-1017H
PDO/SDO NMT
slave
N Node Guarding
www.zlgmcu.com
4 CANopen
ID ( 8 ID) ID ID CAL CANopen CAL set 127 ID
CMS CANopen z z z CAL 8 PDO ID CAN ID 8 8 ID CAL LMT CAL ID SDO NMT CAL DBT COB-ID 3 PDO
SDO
DBT
ID
PDO
5 CANopen boot-up
CANopen boot-up CAL DBT boot-up ID / / 3-3 boot-up boot-up boot-up 8 boot-up boot-up
3-3 CANopen z z 1
boot-up
a. NMT
Start_Remote_node (0x01) 8
www.zlgmcu.com
5 Reset_Communication (0x82) 6 NMT (COB-ID=0) ID 0 boot-up SDO NMT Stopped COB-ID 8 l Pre_Operational Boot-up NMT CAN CAN
6 CANopen
COB ID CANopen 8
1 NMT NMT-Master
NMT Module Control NMT Module Control NMT NMT-Master NMT-Slave(s) COB-ID 0x000 Byte 0 CS CS NMT 1 2 128 129 130 Start Remote Node Stop Remote Node Enter Pre-operational State Reset Node Reset Communication Byte 1 Node-ID / NMT
Node-ID=0
NMT
2 MNT
NMT-Slave NMT-Master NMT-Slave COB-ID 0x700 + Node_ID bit7 0 0 6 Byte0 Bit 7 : toggle Bit6-0 : / bits0 6 9 0 1
www.zlgmcu.com
Value 0 1 2 3 4 5 127 boot-up Initialising Disconnected Connecting Preparing Stopped Operational Pre-operational 0 * * *
NMT-slave
0 1 2
2 0x60000208 0x64010110
2 0x6000 0x6401
CiA DSP-401 1 16
0x6000
PDO 2 ) 3
10
www.zlgmcu.com PDO-producer PDO-consumer(s) COB-ID 0x280+Node_ID 8 Byte 0 16 8 0x1A01 CANopen 8 PDO LSB little endian PDO CiA DS 301 V 4.02 ID OD 64 16 Transmit-PDOs 16 PDO Byte 1 16 8 Byte 2
5 SDO
CANopen
SDO z z SDO
Client Server / Server Client Byte 0 SDO Command Specifier ** 4 (expedited transfer) 4 segmented transfer Byte 1-2 Byte 3 Byte 4-7 ** block transfer )
Client Server / Server Client Byte 0 SDO SDO z z z z z SDO Domain Segment Abort Domain Transfer CANopen Block transfer B 4 SDO 1 5 / Initiate Domain Upload / / / CAN toggle bit Initiate Domain Download Download Download / upload Request /response Segmented / expedited transfer 7 Byte 1-70 segmented transfer
11
www.zlgmcu.com
Initiate Domain Download Bit Client Server z z z z z z n 7 e s e=0 e=0 s=0 s=1 MSB e=1 download CiA byte 4 LSB byte 7 0= 1= 0= 1= 7 0 0 6 0 1 5 1 1 4 3 n 2 1 e 0 s -
e=1
s=1
Upload Domain Segment Bit Client Server n SDO c t SDO Abort Domain Transfer Bit C/S 7 1 6 0 5 0 4 3 2 1 0 7 0 0 6 1 0 5 1 0 4 t t 3 2 n 1 0 c
12
www.zlgmcu.com
0 3-4
32
3-4
SDO 16
0503 0000 0504 0000 0504 0001 0504 0002 0504 0003 0503 0004 0503 0005 0601 0000 0601 0001 0601 0002 0602 0000 0604 0041 0604 0042 0604 0043 0604 0047 0606 0000 0606 0010 0606 0012 0606 0013 0609 0011 0609 0030 0609 0031 0609 0032 0609 0036 0800 0000 0800 0020 0800 0021 0800 0022 0800 0023 ( ) PDO PDO CRC SDO Client/Server Block Transfer Block Transfer Block Transfer
CRC CRC
0 = no 1 = yes 0 = no 1 = yes
13
www.zlgmcu.com z z z z
0=
LSB
MSB
0<blksize<128
Download Block Segment Bit Client Client etc Server z z z z z 1 / 2 0<blksize<128 blksize / c seqno 7 c c c 1 0 1 6 5 4 3 0 1 seqno 1 0 2 1 0
download 0 0<seqno<128 7
yes 1=no
download 0 1
CRC CRC 0=
no 0=no
1=yes 1=yes 1
4 blksize
LSB
MSB 0<blksize<128
pst 1=
www.zlgmcu.com
Upload Block Segment Bit Server Server ..etc Client z z z z z 1 / 2 0<blksize<128 blksize / 7 c c c 1 1 0 6 5 4 3 0 1 seqno 1 0 2 1 0
c seqno
download 0 0<seqno<128 7
yes 1=no
download 0 1
n bytes1+2 16 CRC cc sc 1
SDO SDO Client Server ( COB-ID 0 602 Client Server( 582 60 SDO 2 Client Server( COB-ID 0 602 Client Server( 582 4B 40 2) 01 18 03 FE 03 1 01 2 18 2) Byte 3 03 4 5 6-7 2B 2) 01 18 03 0x1801 3 1 01 2 18 0x3FE 2 #2) Byte 3 03 4 FE 5 03 6-7 ID 2 0x1801 3
(Emergency Object) 15
www.zlgmcu.com
8 sender receiver(s) COB-ID 0x080+Node_ID 16 3-5 3-5 16 Byte 0-1 Byte 2 Byte 3-7
0x1001) xx
00xx 10xx 20xx 21xx 22xx 23xx 30xx 31xx 32xx 33xx 40xx 41xx 42xx 50xx 60xx 61xx 62xx 63xx 70xx 80xx 81xx 8110 8120 8130
No Error
Mains voltage Voltage inside the device Output voltage Temperature Ambient temperature Device tempearture Device hardware Device software Internal software User software Data set Additional modules Monitoring communication CAN overrun Error Passive Life Guard Error Heartbeat Error
Recovered from Bus-Off Protocol Error PDO no processed Due to length error
16
www.zlgmcu.com
(Error Register)
0x1001
3-6
3-6 8 Bit 0 1 2 3 4 5 6 7 Generic Current Voltage Temperature Communication Device profile specific Reserved(=0) Manufacturer specific
17
www.zlgmcu.com
4 CAN z z z z z z CANopen 3 z CANopen z z CANopen ASCII CANopen OD Object Dictionary EDS DCF
CAL
Stop_Remote_Node
18
www.zlgmcu.com
5
CANopen CAN-bus CANopen CAN-bus : CAN-bus CANopen NIKHEF H. Boterenbrood CANopen CAN-bus CANopen CANopen high-level protocol for
19