ÀÎÄÚ´õ CAN ÇÁ·ÎÅäÄÝ »ç¾ç
1. CAN ¼Ò°³
CanÀ» ÄÁÆ®·Ñ·¯ ¿µ¿ª ³×Æ®¿öÅ©¶ó°í ÇÕ´Ï´Ù. µ¶ÀÏÀÇ º¸½¬ ȸ»ç¿¡¼ óÀ½À¸·Î Á¦¾ÈÇßÀ¸¸ç ¼¼°è¿¡¼ °¡Àå ³Î¸® »ç¿ëµÇ´Â ÇöÀå ¹ö½º Áß ÇϳªÀÔ´Ï´Ù.
2. CAN application layer ÇÁ·ÎÅäÄÝ
ÇÁ·¹ÀÓ Á¤º¸ ¼³Á¤:
1. È®Àå ÇÁ·¹ÀÓ ´ë½Å Ç¥ÁØ ÇÁ·¹ÀÓ ¼±ÅÃ
2. ¿ø°Ý ÇÁ·¹ÀÓ ´ë½Å µ¥ÀÌÅÍ ÇÁ·¹ÀÓ ¼±ÅÃ
3. µ¥ÀÌÅÍ ÇÊµå ±æÀÌ (½Äº°ÀÚ Á¦¿Ü)
¾ÖÇø®ÄÉÀÌ¼Ç ·¹À̾î ÇÁ·ÎÅäÄÝ:
µ¥ÀÌÅÍ ±æÀÌ 1 ¹ÙÀÌÆ® | ÀÎÄÚ´õ ÁÖ¼Ò 1 ¹ÙÀÌÆ® | ¸í·É ±â´É 1 ¹ÙÀÌÆ® | µ¥ÀÌÅÍ 0 ~ 4 ¹ÙÀÌÆ® |
ÀÎÄÚ´õÀÇ CAN Åë½Å ÇÁ·ÎÅäÄÝÀº ¸¶½ºÅÍ ¹× ´ÙÁß ½½·¹À̺긦 äÅÃÇÕ´Ï´Ù.
½Äº°ÀÚ Á¤º¸ 2.1
CAN2.0B ´Â Ç¥ÁØ µ¥ÀÌÅÍ ÇÁ·¹ÀÓ¿¡ 11 ºñÆ® ½Äº°ÀÚ°¡ ÀÖÀ¸¸ç ÀÌ ÇÁ·ÎÅäÄÝ¿¡¼ ÅëÈÀÇ ´ë»ó ÁÖ¼Ò·Î Á¤Àǵ˴ϴÙ. µ¥ÀÌÅÍ ¹üÀ§: 0 ~ 255. ±× Áß¿¡¼ 0 Àº ¹æ¼Û, 1 Àº ¸¶½ºÅÍ ½ºÅ×À̼ÇÀÌ°í ³ª¸ÓÁö´Â ½½·¹ÀÌºê ½ºÅ×À̼ÇÀÔ´Ï´Ù. ½Äº°ÀÚ°¡ 0 ÀÌ¸é ¸¶½ºÅÍ ½ºÅ×À̼ÇÀÌ ½½·¹ÀÌºê ½ºÅ×À̼ÇÀ¸·Î ¹æ¼ÛµÇ°í ½½·¹ÀÌºê ½ºÅ×À̼ǿ¡ ¹Ýȯ ÇÒ µ¥ÀÌÅÍ°¡ ¾øÀ½À» ÀǹÌÇÕ´Ï´Ù.
2.2 µ¥ÀÌÅÍ Çʵå Á¤º¸
¸¶½ºÅÍ ½ºÅ×À̼ǰú ½½·¹ÀÌºê ½ºÅ×À̼Ç
µ¥ÀÌÅÍ µµ¸ÞÀÎÀ» ÅëÇØ µ¥ÀÌÅÍ Àü¼Û. 8 ¹ÙÀÌÆ® µ¥ÀÌÅÍ Çʵå ÄÜÅÙÃ÷¿Í °ü·ÃÇÏ¿©,
ÀÌ °è¾à¼¿¡ ÀÇÇØ Á¤ÀÇµÈ Çü½Ä:
[µ¥ÀÌÅÍ ±æÀÌ] + [ÀÎÄÚ´õ ÁÖ¼Ò] + [¸í·É
Fun@@ c] + [µ¥ÀÌÅÍ]:
(1) µ¥ÀÌÅÍ ±æÀÌ: 1 ¹ÙÀÌÆ®, µ¥ÀÌÅÍ ¹üÀ§ 0 ~ 8,
ÀÚü ÃÑ ¹ÙÀÌÆ® ¼ö, ÀÎÄÚ´õ ÁÖ¼Ò, ¸í·É ±â´É Æ÷ÇÔ
¹× µ¥ÀÌÅÍ µ¥ÀÌÅÍ. Âü°í: ÀÌ µ¥ÀÌÅÍ ±æÀÌ´Â
ÇÁ·¹ÀÓ Á¤º¸;
(2) ÀÎÄÚ´õ ÁÖ¼Ò: ÀÎÄÚ´õÀÇ Äµ ³ëµå ÁÖ¼Ò, 1 ¹ÙÀÌÆ®;
(3) ¸í·É ±â´É: Åë½Å ±â´É ÄÚµå, 1 ¹ÙÀÌÆ®;
(4) µ¥ÀÌÅÍ µ¥ÀÌÅÍ: Áöħ¿¡ ÀÇÇØ ¼öÇàµÇ´Â µ¥ÀÌÅÍ, 0 ~ 4 ¹ÙÀÌÆ®.
2.3 ½Äº°ÀÚ ID ¹× ÀÎÄÚ´õ ÁÖ¼Ò Á¤º¸
È£½ºÆ®°¡ ÀÎÄÚ´õ¸¦ È£ÃâÇÏ¸é ½Äº°ÀÚ°¡ ÁöÁ¤ÇÑ ´ë»ó ÁÖ¼Ò´Â ÀÎÄÚ´õÀÇ ³ëµå ÁÖ¼ÒÀÔ´Ï´Ù.
ÀÎÄÚ´õ°¡ È£½ºÆ®¿¡ ÀÀ´äÇÏ¸é ½Äº°ÀÚ°¡ ÁöÁ¤ÇÑ ´ë»ó ÁּҴ ȣ½ºÆ® ÁÖ¼Ò, Áï "1" ÀÔ´Ï´Ù.
¿¹¸¦ µé¾î,
È£½ºÆ® ¹× ÀÎÄÚ´õ No.6:
3. CAN ¹× encodercommunicationÀÇ ÀÀ¿ë:
3.1. ĵ ÀåÄ¡ Äѱâ
(1) Àü¼Û ¼Óµµ¸¦ ¼³Á¤ÇÕ´Ï´Ù. È£½ºÆ®@@ ´Â
ÀÎÄÚ´õ¿Í µ¿ÀÏÇÑ Àü¼Û ¼Óµµ¿Í °øÀå ±âº» ¼Óµµ·Î ¼³Á¤
ÀÎÄÚ´õ´Â 500kbps ÀÔ´Ï´Ù.
3.2. ÇÁ·¹ÀÓ Á¤º¸ ¼³Á¤
(1) È®Àå ÇÁ·¹ÀÓ ´ë½Å Ç¥ÁØ ÇÁ·¹ÀÓÀ» ¼±ÅÃÇϽʽÿÀ.
(2) ¿ø°Ý ÇÁ·¹ÀÓ ´ë½Å µ¥ÀÌÅÍ ÇÁ·¹ÀÓÀ» ¼±ÅÃÇÕ´Ï´Ù.
(3) µ¥ÀÌÅÍ ÇʵåÀÇ ¸ðµç ÄÜÅÙÃ÷¸¦ Æ÷ÇÔÇÏ¿© µ¥ÀÌÅÍ ÇʵåÀÇ ±æÀ̸¦ °è»êÇϸé ÃÖ´ë °ªÀº "8" ÀÔ´Ï´Ù.
3.3. µ¥ÀÌÅÍ Àü¼Û
µ¥ÀÌÅÍ ÇʵåÀÇ ³»¿ë ÀÔ·Â
ÀÎÄÚ´õÀÇ ÇÁ·ÎÅäÄÝ¿¡ µû¶ó. µ¥ÀÌÅÍ ÇʵåÀÇ ÄÜÅÙÃ÷°¡
´ÙÁß ¹ÙÀÌÆ®, ³·Àº ¹ÙÀÌÆ®°¡ ¾Õ¿¡ ÀÖ½À´Ï´Ù.
¿¹: A. È£½ºÆ®°¡
ÀÎÄÚ´õ 2 ¿¡ ´ëÇÑ Áöħ: "Àбâ ÀÎÄÚ´õ °ª", µ¥ÀÌÅÍ ÇÊµå ±æÀÌ´Â 4 ÀÔ´Ï´Ù.
µ¥ÀÌÅÍ Çʵå: 0x04 (µ¥ÀÌÅÍ ±æÀÌ) 0x02
(ÀÎÄÚ´õ ÁÖ¼Ò) + 0x01 (Áöħ ÄÚµå) + 0x00 (µ¥ÀÌÅÍ 1)
ID | µ¥ÀÌÅÍ [0] | µ¥ÀÌÅÍ [1] | µ¥ÀÌÅÍ [2] | µ¥ÀÌÅÍ [3] | µ¥ÀÌÅÍ [4] | µ¥ÀÌÅÍ [5] | µ¥ÀÌÅÍ [6] | µ¥ÀÌÅÍ [7] |
0X02 | 0x04 | 0x02 | 0x01 | 0x00 | - | - | - | - |
¹ÝȯµÈ µ¥ÀÌÅÍ: µ¥ÀÌÅÍ ÇÊµå ±æÀÌ 7;
µ¥ÀÌÅÍ Çʵå: 0X05 (µ¥ÀÌÅÍ ±æÀÌ) 0X02
(ÀÎÄÚ´õ ÁÖ¼Ò) + 0X01 (Áöħ ÄÚµå) + 0x00012345 (µ¥ÀÌÅÍ)
ID | µ¥ÀÌÅÍ [0] | µ¥ÀÌÅÍ [1] | µ¥ÀÌÅÍ [2] | µ¥ÀÌÅÍ [3] | µ¥ÀÌÅÍ [4] | µ¥ÀÌÅÍ [5] | µ¥ÀÌÅÍ [6] | µ¥ÀÌÅÍ [7] |
0X01 | 0x07 | 0x02 | 0x01 | 0x45 | 0x23 | 0x01 | 0x00 | - |
4. BriterEncoder CAN Áöħ ¼¼Æ® V1.0
4.1. CAN ÇÁ·ÎÅäÄÝ
(1) CAN2.0B Ç¥ÁØ ÇÁ·¹ÀÓ Ã¤ÅÃ
Åë½Å ÇÁ·ÎÅäÄÝ,
(2) Åë½Å·ü: 1000kbps, 500kbps,
250kbps, 125kbps, 100kbps ¼³Á¤ °¡´É. 500 kbps´Â ±âº» Åë½Å·üÀÔ´Ï´Ù.
¼³Á¤.
Âü°í: Åë½Å·ü ¼öÁ¤ ÈÄ
ÀÎÄÚ´õÀÇ È£½ºÆ®µµ µ¿ÀÏÇÑ Åë½ÅÀ¸·Î ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
¼Ó@@ µµ!
4.2. Áö½Ã ±¸Á¶
CAN2.0B Áöħ ÄÚµåÀÇ ±¸¼º:
[±æÀÌ ·»] + [ÀåÄ¡ ID] + [¸í·É ±â´É] + [µ¥ÀÌÅÍ µ¥ÀÌÅÍ]
[±æÀÌ ·»]: 1 ¹ÙÀÌÆ®, [±æÀÌ ·»] + [ÀåÄ¡ ID] + [¸í·É ±â´É] + [µ¥ÀÌÅÍ µ¥ÀÌÅÍ]
[ÀåÄ¡ ID]: 1 ¹ÙÀÌÆ®, ¹üÀ§ 0 ~ 255;
[¸í·É]: 1 ¹ÙÀÌÆ®, ¹üÀ§ 0 ~ 255;
[µ¥ÀÌÅÍ]: 0 ~ 4 ¹ÙÀÌÆ®; 2 ¹ÙÀÌÆ®´Â 16 ºñÆ® µ¥ÀÌÅ͸¦ Çü¼ºÇÏ°í, ³·Àº ¹ÙÀÌÆ®´Â ¸ÕÀú 3 ¹ÙÀÌÆ®°¡ 24 ºñÆ® µ¥ÀÌÅ͸¦ Çü¼ºÇÏ°í, ³·Àº ¹ÙÀÌÆ®´Â ¸ÕÀú;
ĵ ¸í·É | ±â´É ¼³¸í | ¿¹ (ÇÏ´Ü ÄÄÇ»ÅÍÀÇ ³ëµå ÁÖ¼Ò ID 02 ÀÔ@@ ´Ï@@ ´Ù) |
0x01 | ÀÎÄÚ´õ °ªÀ» ÀÐÀ¸½Ê½Ã¿À. ¹Ýȯ µ¥ÀÌÅÍ: 32 ºñÆ® ¼¸íµÇÁö ¾ÊÀº ¹øÈ£ | ¹®Á¦:[0x04][0x02][0x01][0x00] ¹Ýȯ:[0x07][0x02][0x01][0x45][0x23][0x01][0x00] ÀÎÄÚ´õ °ª: 0X00012345 (¼Ò¼öÁ¡: 74565) |
0x02 | ÀÎÄÚ´õ ID ¼³Á¤, °ª ¹üÀ§: 0 ~ 255 µ¥ÀÌÅÍ Àü¼Û: 8bit unsigned number. ¹Ýȯ µ¥ÀÌÅÍ: 8bit unsigned number. 0: ¼º°øÀûÀ¸·Î ¼³Á¤, ±âŸ: ¿À·ù ÄÚµå | ¹®Á¦:[0x04][0x02][0x02][0x08] ¹Ýȯ:[0x04][0x08][0x02][0x00] ÁÖ¼Ò ¼³Á¤: 0X08 |
0x03 | CAN Åë½Å Àü¼Û ¼Óµµ ¼³Á¤ µ¥ÀÌÅÍ Àü¼Û: 8 ºñÆ® ¼¸í ¹øÈ£. ¹Ýȯ µ¥ÀÌÅÍ: 8 ºñÆ® ¼¸í ¹øÈ£. 0: ¼º°øÀûÀ¸·Î ¼³Á¤, ±âŸ: ¿À·ù ÄÚµå 0x00:500K; 0x01:1M 0x02:250K; 0x03:125K 0x04:100K; | ¹®Á¦:[0x04][0x02][0x03][0x01] ¹Ýȯ:[0x04][0x02][0x03][0x00] Àü¼Û ¼Óµµ ¼³Á¤ :( 1M) |
0x04 | ÀÎÄÚ´õ ¸ðµå ¼³Á¤: 0: Äõ@@ ¸®, ±âŸ: ÀÚµ¿ ÈÄ@@ Áø | ¹®Á¦:[0x04][0x02][0x04][0xAA] ¹Ýȯ:[0x04][0x02][0x04][0x00] ¼³Á¤ ¸ðµå: 0XAA (ÀÚµ¿ ¹Ýȯ) |
0x05 | ÀÎÄÚ´õÀÇ ÀÚµ¿ º¹±Í ½Ã°£ (¸¶ÀÌÅ©·Î ÃÊ), °ª ¹üÀ§ ¼³Á¤: 50 ~ 65535: µ¥ÀÌÅÍ Àü¼Û: 16 ºñÆ® ¼¸íµÇÁö ¾ÊÀº ¹øÈ£. ¹Ýȯ µ¥ÀÌÅÍ: 8 ºñÆ® ¼¸íµÇÁö ¾ÊÀº ¹øÈ£. 0: ¼º°øÀûÀ¸·Î ¼³Á¤, ±âŸ: ¿À·ù ÄÚµå Âü°í: ³Ê¹« ªÀº ¹ÝÇ° ½Ã°£À» ¼³Á¤ÇÑ ÈÄ ÀÎÄÚ´õ´Â ´Ù¸¥ ¸Å°³º¯¼ö¸¦ ´õ ±æ°Ô ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÖÀÇÇؼ »ç¿ëÇϽʽÿÀ. | ¹®Á¦:[0x05][0x02][0x05][0xE8][0x03] ¹Ýȯ:[0x04][0x02][0x05][0x00] ÀÚµ¿ ¹Ýȯ ½Ã°£ ¼³Á¤: 0X03E8(1000 ¸¶ÀÌÅ©·Î ÃÊ) |
0x06 | ÇöÀç À§Ä¡ °ªÀ» 0 À¸·Î ¼³Á¤ µ¥ÀÌÅÍ Àü¼Û: 8 ºñÆ® ¼¸íµÇÁö ¾ÊÀº ¹øÈ£. ¹Ýȯ µ¥ÀÌÅÍ: 8 ºñÆ® ¼¸íµÇÁö ¾ÊÀº ¹øÈ£. 0: ¼º°øÀûÀ¸·Î ¼³Á¤, ±âŸ: ¿À·ù ÄÚµå | ¹®Á¦:[0x04][0x02][0x06][0x00] ¹Ýȯ:[0x04][0x02][0x06][0x00] À§Ä¡ °ªÀ» 0 À¸·Î ¼³Á¤ |