Difference between revisions of "CAN/개요"
Jump to navigation
Jump to search
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
CAN 통신은 2개의 선을 사용하는 통신 방식입니다. | CAN 통신은 2개의 선을 사용하는 통신 방식입니다. | ||
전원과 분리되어 있고, 전압 차이로 인식하므로 안정적인 통신이 가능합니다. | 전원과 분리되어 있고, 전압 차이로 인식하므로 안정적인 통신이 가능합니다. | ||
하드웨어적인 권장안에서는, 통신칩의 GND 에서 통신선 2개까지의 전위차(전압)는 어느 정도 한계가 있습니다. | |||
각 통신칩의 스펙을 확인해야 합니다. | |||
CAN 패킷은, 11 비트 혹은 29 비트인 CAN ID 와 최대 8 바이트의 CAN DATA, 기타 체크섬 비트 등으로 구성됩니다. | CAN 패킷은, 11 비트 혹은 29 비트인 CAN ID 와 최대 8 바이트의 CAN DATA, 기타 체크섬 비트 등으로 구성됩니다. | ||
* 이 중에 CAN ID, DATA 를 사용자가 마음대로 설정할수 있습니다. | |||
* CAN ID 가 11 비트 인 것이 CAN 2.0A Packet | * CAN ID 가 11 비트 인 것이 CAN 2.0A Packet | ||
* CAN ID 가 29 비트 인 것이 CAN 2.0B Packet | * CAN ID 가 29 비트 인 것이 CAN 2.0B Packet | ||
* CAN 2.0B | * CAN 2.0B 통신 칩은, CAN 2.0A Packet 과 CAN 2.0B Packet 을 발신/수신 할수 있습니다. | ||
* CAN 2.0A | * CAN 2.0A 통신 칩은, CAN 2.0A Packet 을 발신/수신 할수 있습니다. CAN 2.0B Packet 은 발신 할수 없고, 수신시 무시합니다. | ||
* CAN 2.0A 통신 칩과 CAN 2.0B 통신 칩은 같은 네트웍에서 동시에 사용 가능합니다. | |||
각 장치가 자신이 발신하고자 하는 패킷들을 동시에 발신합니다. | 여러 개의 장치가 동시에 패킷을 발신하면서 서로 우선 순위를 따지면서 끝까지 발신되는 패킷이 다른 모든 장치에게 수신되는 방식입니다. | ||
CAN ID 의 각 비트의 값으로 우선 순위를 따지는데, 우선 순위가 낮은 패킷을 발신하는 장치가 발신을 포기하는 방식입니다. | * 각 장치가 자신이 발신하고자 하는 패킷들을 동시에 발신합니다. | ||
CAN ID 상위 비트부터 하위 비트까지 순서대로 발신하는데, 비트가 0 인 패킷이 높은 우선 순위를 가집니다. | * CAN ID 의 각 비트의 값으로 우선 순위를 따지는데, 우선 순위가 낮은 패킷을 발신하는 장치가 발신을 포기하는 방식입니다. | ||
즉, 각 비트를 보내면서 동시에 확인하는 데 자신이 발신한 비트는 1 인데, 읽어보니 0 이라면, 자신이 우선 순위가 낮다는 것으로 인식하여 더 보내는 것을 포기합니다. | * CAN ID 상위 비트부터 하위 비트까지 순서대로 발신하는데, 비트가 0 인 패킷이 높은 우선 순위를 가집니다. | ||
* 즉, 각 비트를 보내면서 동시에 확인하는 데 자신이 발신한 비트는 1 인데, 읽어보니 0 이라면, 자신이 우선 순위가 낮다는 것으로 인식하여 더 보내는 것을 포기합니다. | |||
통신 선로 구성은 | 선로 길이 제한 | ||
* 통신 선로 구성은 메인통신라인(BUS -> A)을 직선으로 그리고, 그 BUS 에서 각 장치까지 선(B)을 그립니다. | |||
* A 의 길이 제한(LA), B 의 길이 제한 (LB) 등을 주의해야 합니다. | |||
* 특히 LB 는 최대 30 cm 입니다. | |||
A 의 양 끝단에는 | 선로의 종단 처리 | ||
* A 의 양 끝단에는 저항을 각각 120 옴씩 달아야 합니다. (종단저항, Termination Register) | |||
더 자세한 내용은 https://www.fescaro.com/ko/archives/249 페이지를 참조해 주십시오. | 더 자세한 내용은 https://www.fescaro.com/ko/archives/249 페이지를 참조해 주십시오. |
Latest revision as of 07:07, 27 July 2023
CAN 통신은 2개의 선을 사용하는 통신 방식입니다. 전원과 분리되어 있고, 전압 차이로 인식하므로 안정적인 통신이 가능합니다. 하드웨어적인 권장안에서는, 통신칩의 GND 에서 통신선 2개까지의 전위차(전압)는 어느 정도 한계가 있습니다. 각 통신칩의 스펙을 확인해야 합니다.
CAN 패킷은, 11 비트 혹은 29 비트인 CAN ID 와 최대 8 바이트의 CAN DATA, 기타 체크섬 비트 등으로 구성됩니다.
- 이 중에 CAN ID, DATA 를 사용자가 마음대로 설정할수 있습니다.
- CAN ID 가 11 비트 인 것이 CAN 2.0A Packet
- CAN ID 가 29 비트 인 것이 CAN 2.0B Packet
- CAN 2.0B 통신 칩은, CAN 2.0A Packet 과 CAN 2.0B Packet 을 발신/수신 할수 있습니다.
- CAN 2.0A 통신 칩은, CAN 2.0A Packet 을 발신/수신 할수 있습니다. CAN 2.0B Packet 은 발신 할수 없고, 수신시 무시합니다.
- CAN 2.0A 통신 칩과 CAN 2.0B 통신 칩은 같은 네트웍에서 동시에 사용 가능합니다.
여러 개의 장치가 동시에 패킷을 발신하면서 서로 우선 순위를 따지면서 끝까지 발신되는 패킷이 다른 모든 장치에게 수신되는 방식입니다.
- 각 장치가 자신이 발신하고자 하는 패킷들을 동시에 발신합니다.
- CAN ID 의 각 비트의 값으로 우선 순위를 따지는데, 우선 순위가 낮은 패킷을 발신하는 장치가 발신을 포기하는 방식입니다.
- CAN ID 상위 비트부터 하위 비트까지 순서대로 발신하는데, 비트가 0 인 패킷이 높은 우선 순위를 가집니다.
- 즉, 각 비트를 보내면서 동시에 확인하는 데 자신이 발신한 비트는 1 인데, 읽어보니 0 이라면, 자신이 우선 순위가 낮다는 것으로 인식하여 더 보내는 것을 포기합니다.
선로 길이 제한
- 통신 선로 구성은 메인통신라인(BUS -> A)을 직선으로 그리고, 그 BUS 에서 각 장치까지 선(B)을 그립니다.
- A 의 길이 제한(LA), B 의 길이 제한 (LB) 등을 주의해야 합니다.
- 특히 LB 는 최대 30 cm 입니다.
선로의 종단 처리
- A 의 양 끝단에는 저항을 각각 120 옴씩 달아야 합니다. (종단저항, Termination Register)
더 자세한 내용은 https://www.fescaro.com/ko/archives/249 페이지를 참조해 주십시오.