자동차 임베디드 SW/CAN통신 & LIN통신25 CAN 통신 커넥터(작성중) 하나의 전선으로 통신을 하는 것 처럼 설명했지만 사실 캔통신에서는 두가닥의 전선을 사용한다. 두 개의 전선을 CAN High , CAN Low 라고 부른다. 한편. 전선과 전선을 연결하려면 어떻게 해야할까. 전선의 피복을 벗겨서 구리부분을 직접 닿게하면 되는데, 이것은 불편하다. 전선 피복 벗기는 것도 귀찮고, 구리선 끼리 연결시키는 것도 문제다. 그래서 사용하는게 커넥터다. 일반적으로 D-Sub 9 pin 커넥터라는걸 사용하는게 업계의 국룰이다. 한편 D-Sub 9 pin 커넥터에는 전선을 9개 연결 할 수 있는 핀들이 있다. 그리고 각 핀마다 번호가 붙어있다. 7번 핀에 CAN High 2번 핀에 CAN Low 를 달아서 쓰는 것이 일반적이다. 신입사원이 알아야 할 CAN 통신의 모든 것 강의를 진행.. 2022. 6. 28. CAN 통신 BaudRate과 Bus Load BaudRate는 통신속도를 의미한다. 1초에 몇 bit의 데이터를 전송하는지를 의미하는 단위가 bps 이다. 1초에 1000bit면 1kbps 1초에 1,000,000 bit면 1Mbps 이다. 가장 중요한 사실은 같은 CAN BUS에 통신을 참여하고 있는 대상은 모두 BaudRate을 통일해서 사용해야한다는 것이다. 앞서 말했듯이 CAN 통신은 BUS에 연결된 모든 제어기들이 BroadCast로 동작하기 때문에 모든제어기들의 BaudRate을 통일해서 사용해야한다. ㅡㅡㅡ 그리고 CAN 통신에서 사용가능한 최대 속도는 통신에 사용되는 실제 전선의 물리적인 길이에 따라 달라지게 되는데.. 암튼 일반적으로 250kbps 또는 500kbps를 사용한다. ㅡㅡㅡㅡㅡ 한편 bus load가 무엇인고하니.. 캔.. 2022. 6. 18. CAN 통신에 대하여(3) 시그널의 개념. Factor , Offset 등등 이전 글에서, 캔 메세지의 ID를 통해 각 ID 별로 해당 메세지의 이름은 뭔지, 무슨 데이터를 담고 있는지 정의한다고 했다. 이번에는 다음과 같은 상황을 생각해보자. 보낼때(physival value - offset) / factor받을때(raw data x factor) + offset 예를 들어 unsinged 8 bit 시그널 factor 0.1 offset -12 라면 보내는 측에서 보내려는 physical value가 10 이라면 (10 - (-10) ) / factor = 200 이므로 시그널에 200이라는 값을 담아서 보냄 받는 측은 200이라는 값을 전달받은 후 200x 0.1 +(-10) = 10 이므로 센더가 보내려는 physical value를 10이라고 해석한다. 신입사원이 알아야.. 2022. 6. 15. CAN 통신에 대하여(2). 메세지의 ID 캔통신의 메세지에는 ID 가 있다. 캔 통신에서 송신되는 메세지는 ID가 있으며, 최대 8바이트의 데이터를 담을 수 있다. 그런데 이전 글에서 말했듯이 캔의 메세지에는 source address, destination address가 없다. 근데 메세지는 버스에 연결된 모든 제어기에게 전송된다. 메세지를 수신하는 입장에서 생각해보면, 이 메세지를 누가 쏜건지, 이 데이터에 무슨 정보가 담긴건지 알 수가 없다. 그래서 사용하는 것이 바로 메세지의 ID 이다. 메세지마다 ID를 붙이고, 해당 ID의 메세지는 누가 송신을 누가하는건지, Data는 몇 바이트가 담기는 건지, 그리고 그 Data 영역에 담긴 데이터가 실제로 어떤 정보를 갖는건지 이런 정보들을 사전에 약속해둔다. 해당 CAN Bus로 통신에 참여하.. 2022. 6. 15. J1939 에 대하여 (CAN 진단통신) www.eskorea.net 에 설명이 잘돼있다. CAN 통신 위에서 동작하는 진단통신 스펙의 한 종류. 트럭, 트레일러 같은 상용차에서 사용되는 프로토콜이라고 한다. 주요 특징은 일단 CAN Extendid ID 방식을 사용한다. (ID 길이가 29bit) 그리고 통신에 사용되는 몇 가지 파라미터들이 존재하는데, 특이사항은 그런 파라미터를 메세지의 ID값을 활용해서(파싱해서) 나타낸다는 것이다. 예를 들어 원래 CAN 메세지는 브로드캐스트 방식이라 메세지에 Source Address, Destination Address 같은 개념이 없다. 근데 J1939의 경우 ID의 끝 1바이트를 Source Address를 나타내는 용도로 사용한다. 이런식으로 CAN Extended ID를 적절한 비트필드로 잘라서.. 2022. 6. 2. CAN , CAN FD 종단저항 이슈 CAN통신을 할 때는 버스에 종단저항이 달려있어야 한다. 노이즈, 왜곡 방지 역할을 한다. 근데 인터넷에 정보를 보면 다들 120옴 저항을 달아야한다고 나온다. 이것도 정확히 왜 120옴인지는 잘 모르겠는데 일반적으로 그렇게 알려져있다. 근데 정확한 이유는 모르겠으나 꼭 120 옴이 아니어도 통신이 되기도한다. 특히 CAN FD의 경우 Baud Rate이 빨라서 이러한 저항값에 더욱 민감하다고 한다. 그래서 간혹 같은 HW와 SW인데 High Speed Can은 잘 동작되는데 CAN FD는 동작이 안되는 경우가 있다. 이럴때는 종단저항값이 적절한 값인지 확인할 필요가 있다. 근데 적절한 저항값을 계산하는 방법은 잘 모르겠음 2022. 5. 31. CAN 통신 개요. 캔 통신이란? can통신 기초 Can통신이란 무엇인가? 세상에는 다양한 통신 프로토콜들이 존재하는데 컴퓨터에 랜선을 연결해서 인터넷을 사용할 때 쓰는 TCP/IP 통신, WiFi 통신이 대표적인 예시이다. CAN도 수 많은 통신 프로토콜 중 하나이다. 통신이라는 것은 서로 다른 두 주체가 데이터를 주고 받는 것을 의미한다. 자동차 안에는 굉장히 많은 제어기가 들어가 있다. 여기서 제어기는 일종의 컴퓨터라고 생각하면 된다. 핸들(조향장치)를 컨트롤 하는 제어기, 브레이크를 컨트롤 하는 제어기, 에어백을 컨트롤 하는 제어기, 스마트키 모듈을 컨트롤하는 제어기 등등.. 아주 많은 수의 제어기가 자동차 안에 들어가있다. 그리고 이러한 제어기들은 서로 정보를 주고 받을 필요가 있는데, 이 때 사용하는 통신 프로토콜이 바로 CA.. 2021. 4. 15. 이전 1 2 3 다음