Lin 통신 예제 | 챕터5 신진호기능장의 Lin통신이해와 진단 5212 투표 이 답변

당신은 주제를 찾고 있습니까 “lin 통신 예제 – 챕터5 신진호기능장의 LIN통신이해와 진단“? 다음 카테고리의 웹사이트 you.tfvp.org 에서 귀하의 모든 질문에 답변해 드립니다: you.tfvp.org/blog. 바로 아래에서 답을 찾을 수 있습니다. 작성자 팀메그 Team MEG 이(가) 작성한 기사에는 조회수 1,904회 및 좋아요 24개 개의 좋아요가 있습니다.

lin 통신 예제 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 챕터5 신진호기능장의 LIN통신이해와 진단 – lin 통신 예제 주제에 대한 세부정보를 참조하세요

LIN통신개요및 고장진단기법

lin 통신 예제 주제에 대한 자세한 내용은 여기를 참조하세요.

LIN 통신의 개요 : 네이버 블로그

LIN 통신은 차량 내에서 도어, 시트, 스티어링 휠, 루프, 엔진 등 제어기가 멀리 있는 센서 및 액추에이터를 동작시킬 때 주로 사용됩니다. CAN 통신이 …

+ 여기에 표시

Source: blog.naver.com

Date Published: 2/9/2022

View: 2733

[스크랩] CAN-LIN 통신 – 다음블로그

[스크랩] CAN-LIN 통신. 진승범. 2013. 8. 10. … [스크랩] 자동차 CAN 통신을 이해하기 위한 쉬운 예제1(1번 LED 작동을 위한 송수신)

+ 자세한 내용은 여기를 클릭하십시오

Source: blog.daum.net

Date Published: 1/27/2021

View: 6144

LIN 통신의 이해 – fescaro

1.1 LIN이란? LIN(Local Interconnect Network)이란, 자동차 네트워크에서 컴포넌트들 사이의 통신을 위한 직렬 통신 시스템입니다. LIN은 CAN과 같이 …

+ 여기에 자세히 보기

Source: www.fescaro.com

Date Published: 9/10/2022

View: 8910

LabVIEW를 활용한 LIN 통신 구현

때문에 LIN통신으로 시스템 제어 및 모니터링 프로그램을 … 예제들을 별도의 설치없이 이용 및 설계 응용이 가능하다는 장. 점이 있다. LIN 통신 관련 함수는 ncopen …

+ 여기에 표시

Source: www.koreascience.or.kr

Date Published: 3/16/2021

View: 4649

LIN (Local Interconnect Network) 버스 소개 – NI

LIN 버스의 통신은 마스터 디바이스의 마스터 태스크가 전적으로 컨트롤합니다. LIN 버스에서 전송의 기본 단위는 프레임이며, 이는 헤더와 응답으로 …

+ 여기에 보기

Source: www.ni.com

Date Published: 6/28/2021

View: 2951

LIN 통신 요약 – I.A.P

LIN 통신 요약. 황상두 2017. 12. 12. 20:16. single master / multi-slave (노드) 저비용 다기능이 필요하지 않는. 마스터 노드에는 마스터 태스크와 슬레이브 태스크 …

+ 더 읽기

Source: 93programmer.tistory.com

Date Published: 6/11/2021

View: 2942

린(LIN) 통신의 특징들 알아보기

그래서 린(LIN) 통신 자체의 라이선스 비용은 없습니다. 그런데 LDF 파일을 이용해서 LIN 스택(Stack)을 만들어 사용하시려면 스택(Stack) 사용료를 내야 …

+ 여기에 자세히 보기

Source: kennyshin.tistory.com

Date Published: 7/1/2022

View: 7725

공부합시다

LIN 통신 (Local Interconnect Network). 저번 글에서는 CAN 에 대해 배워보았습니다. 이번엔 LIN을 배워보자구요. LIN은 자동차 안에서의 장비들간의 시리얼 통신 …

+ 자세한 내용은 여기를 클릭하십시오

Source: johnny1984.egloos.com

Date Published: 3/24/2021

View: 6383

주제와 관련된 이미지 lin 통신 예제

주제와 관련된 더 많은 사진을 참조하십시오 챕터5 신진호기능장의 LIN통신이해와 진단. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

챕터5 신진호기능장의 LIN통신이해와 진단
챕터5 신진호기능장의 LIN통신이해와 진단

주제에 대한 기사 평가 lin 통신 예제

  • Author: 팀메그 Team MEG
  • Views: 조회수 1,904회
  • Likes: 좋아요 24개
  • Date Published: 2020. 10. 27.
  • Video Url link: https://www.youtube.com/watch?v=mJMxHfvNB2c

LIN 통신의 개요

LIN 통신은 recessive(열성)과 dominant(우성)에 대한 threshold(임계점)가 존재합니다. TX 제어가 off 상태일 때 LIN 버스의 전압 레벨은 풀업 저항에 의해 배터리 전압과 일치하게 됩니다. 이를 recessive (열성) 상태라고 합니다. 그리고 LIN 트랜시버가 활성화되고, TX 제어가 on이 되면 LIN 버스의 전압 레벨은 GND와 일치하게 됩니다. 이를 dominant(우성) 상태라고 합니다.

송신 측에서는 배터리 전압 레벨의 80%까지를 recessive(열성), 20% 이하를 dominant(우성)로 규정하고 있습니다. 그리고 수신 측에서는 배터리 전압 레벨의 60%까지를 recessive(열성), 40% 이하를 dominant(우성)로 규정하고 있습니다. 차량의 12V 배터리의 변동성과 LIN 케이블의 전압 강하, 필터 등의 요인으로 threshold(임계점) 범위가 다른 것입니다.

LIN 통신의 이해

로딩중…

LIN 통신의 이해

1. LIN 개요

1.1 LIN이란?

LIN(Local Interconnect Network)이란, 자동차 네트워크에서 컴포넌트들 사이의 통신을 위한 직렬 통신 시스템입니다. LIN은 CAN과 같이 다중화되고 있는 네트워크를 보완하기 위해 고안된 저가형 임베디드 네트워킹의 표준이며, 자동차 업계에서 가장 보편적으로 사용합니다. 대부분의 현대식 저가형 8비트 마이크로컨트롤러에 내장된 표준 시리얼 유니버셜 비동기 송/수신기(UART)를 사용하면 비교적 저렴하게 LIN통신을 구현할 수 있습니다. LIN은 보통 CAN의 고대역폭과 다기능이 필요하지 않은 액추에이터와 스마트 센서들 사이의 통신에 사용됩니다. 파워윈도우 기능, 좌식조절기 기능과 같이 그다지 높은 성능을 필요로하지 않는 기능들을 CAN으로 구현하기에는 많은 비용이 요구되므로, 이러한 기능들을 구현할 때에는 LIN을 사용합니다.

1.2 LIN 적용 대상 애플리케이션

Application segments Specific LIN application examples Roof Sensor, light sensor, light control, sun roof Steering Wheel Cruise control, wiper, turning light, climate control, radio Seat Seat position motors, occupant sensors, control panel Engine Sensors, small motors, cooling fan motors Grille Grille shutter Climate Small motors, control panel Door Mirror, central ECU, mirror switch, window lift, seat control switch, door lock Illumination Vehicle trim enhancement, sill plates illuminated with RGB LED

이 외에도 LIN 통신은 주차할 때 갑자기 나타나는 장애물을 감지해 운전자에게 경고하는 전후방 주차보조시스템(PAS, Parking Assist System)과 주변 상황을 위에서 보듯 내려다봄으로써 주차할 때 옆 차와의 접촉 사고를 피하게 해주는 어라운드 뷰 모니터(AVM, Around View Monitor), 핸들 조작 없이 엑셀과 브레이크의 조작만으로 주차를 가능하게 하는 주차 조향 보조 시스템(SPAS, Smart Parking Assist System) 등과 같은 운전자 보조 시스템에 적용되고 있습니다.

1.3 LIN 특징

1.3.1 단일 마스터-다중 슬레이브 구조

LIN 버스는 단일 마스터-다중 슬레이브 구조로 되어있어, CAN 프로토콜과는 달리 LIN 프로토콜은 버스 중재(메시지의 우선순위에 따라 어떤 메시지가 먼저 버스에 전송될지를 결정하는 것)를 하지 않습니다. LIN 프로토콜에서는 하나의 마스터 노드가 LIN 버스 내 모든 통신을 제어합니다. 이 마스터 노드로 인해 LIN 통신이 시작(메시지 전송 초기화)되며, 모든 슬레이브 노드는 마스터 노드의 허가를 받아야만 마스터 또는 버스 내에 있는 다른 슬레이브 노드들에게 응답을 할 수 있습니다.

1.3.2 멀티캐스트 수신

마스터 또는 슬레이브 태스크로부터 메시지 프레임이 전송될 때, 네트워크상에 연결된 모든 노드들은 메시지를 읽을 수 있습니다. 식별자 바이트에 따라, 수신 노드는 동작을 시작할 것인지 여부를 결정합니다.

1.3.3 클럭 동기화 방식

Synch Break에 이어 마스터 노드가 전송한 Synch Field를 이용하여 모든 슬레이브 노드들은 마스터 클럭에 동기를 맞춥니다.

1.3.4 가변 데이터 프레임

식별자 필드(그림 3 참조)의 두 비트(ID4, ID5)는 메시지 필드의 길이를 나타냅니다. 이 비트들을 이용하면 데이터의 길이를 조절 할 수 있습니다. 또한 송수신 데이터의 양이 제한되어 있을 때 데이터의 오버헤드를 줄여줍니다.

1.3.5 데이터 체크섬과 에러 검출

메시지 프레임에 포함된 데이터는 inverted modulo256-checksum으로, 식별자 바이트는 XOR 알고리즘으로 에러를 검출합니다.

1.3.6 네트워크 내 손상 노드 검출

마스터 태스크는 메시지 프레임의 전송을 제어하므로 모든 노드에게 정보를 요청하고, 각 노드들이 올바르게 동작하고 있는지 점검합니다.

2. LIN 버스 동작 원리

2.1 마스터 슬레이브 구조

LIN 버스는 마스터 슬레이브 구조로 되어있습니다. 이 구조에서는 하나의 마스터 노드가 네트워크 내 모든 통신을 제어합니다. LIN 버스는 데이터를 요청하거나 제어 명령을 전송하는 마스터 노드와 마스터 노드로부터의 데이터 요청에 상응하는 데이터를 수집하여 응답하거나 마스터 노드로부터 수신된 제어 명령에 상응하는 동작을 수행하는 슬레이브 노드들로 구성됩니다. 마스터 노드와 슬레이브 노드의 역할은 다음과 같습니다.

구분 역할 마스터 노드 – 통신 속도 정의

– 동기 신호 전송

– 데이터 모니터링

– sleep/wake up mode 전환 슬레이브 노드 – 동기 신호 대기

– 동기 신호를 이용하여 동기화

– 메시지 식별자 이해

LIN 버스는 하나의 마스터 노드와 여러 개(최대 16개까지)의 슬레이브 노드들로 구성되어 있습니다. 또한 아래 그림과 같이 마스터 노드는 마스터 태스크와 슬레이브 태스크로 구성되어 있으며, 슬레이브 노드는 슬레이브 태스크만으로 구성되어 있습니다.

2.2 LIN 메시지 프레임

LIN 버스에서 전송의 기본 단위는 프레임이며, 이는 헤더(header)와 응답(response)으로 나뉘어집니다. 헤더는 항상 마스터 노드의 마스터 태스크가 전송하며, 3개의 필드(SYNC BREAK, SYNC, ID)로 구성됩니다. 응답은 슬레이브 태스크가 전송하며, 데이터 페이로드(DATA 1~n)와 체크섬(CHECKSUM)으로 구성됩니다.

2.2.1 LIN 메시지 헤더

1) 동기 브레이크 필드(SYNC BREAK Field)

메시지 프레임의 시작을 나타내는 필드입니다. 이 필드는 마스터 태스크가 전송(마스터 태스크만 전송 가능)하며, 슬레이브 태스크가 동기 필드를 준비할 수 있도록 합니다.

2) 동기 필드(SYNC Field)

슬레이브가 마스터 클럭과 동기를 맞추는데 필요한 신호가 포함된 필드입니다. 슬레이브들은 이 신호를 이용하여 현재의 bit time을 측정하고, 슬레이브 내부의 baud rate을 다시 계산하여 동기를 맞춥니다.

3) 식별자 필드(ID Field)

메시지의 내용(메시지의 주소)과 길이에 대한 정보를 나타내는 필드입니다. 식별자 필드는 메시지의 목적지를 가리키는 것이 아니라 메시지 프레임의 내용을 설명하여, 궁극적으로 LIN 네트워크에서 어떤 노드가 이 메시지에 어떻게 반응할지(수신, 응답 전송, 무시)를 결정하는 필드입니다.

헤더를 수신하면 모든 슬레이브 태스크는 메시지의 식별자(주소)를 확인하며 패리티를 검증하고, 수신할 것인지를 결정합니다. 만약 이 메시지에 대해 응답을 해야 한다면 슬레이브 태스크는 데이터 페이로드와 체크섬을 LIN 메시지 프레임의 응답부분에 채운 뒤 버스에 전송합니다.

2.2.2 LIN 메시지 응답

1) 데이터 필드(DATA Field)

데이터 필드는 8비트로 구성된 2~8개의 필드로 구성됩니다. 데이터 필드는 헤더의 식별자에 응답하는 슬레이브 태스크에 의해 쓰여집니다. 이 때, 버스 중재가 없기 때문에 단 하나의 슬레이브 태스크만 각 식별자에 대해 응답할 수 있으며, 다른 모든 슬레이브 태스크는 응답을 읽는 것이 제한됩니다.

2) 체크섬 필드(CHECKSUM Field)

모든 데이터 바이트(식별자를 포함하지 않은 데이터 프레임)의 modulo-256 합을 포함합니다. 이를 이용하여 메시지의 유효성을 판단합니다.

2.3 마스터 슬레이브 동작 과정 정리

LIN 네트워크는 마스터 슬레이브 구조로 동작하며, 마스터 노드의 마스터 태스크가 모든 LIN 네트워크 통신을 제어합니다. 마스터와 슬레이브의 동작을 도식으로 표현하면 다음과 같습니다.

3. LIN 버스의 두가지 상태

LIN 버스는 두가지 상태(Sleep 모드, Active)를 가집니다. 데이터가 버스에 있는 동안, 모든 노드는 Active 상태에 놓여집니다. 그러나 특정 시간(4초 이상)동안 버스가 유휴상태이면, 불필요한 전력을 낭비하지 않기 위해 마스터에 의해 LIN 버스는 저전력 동작 모드(Sleep 모드)로 전환됩니다. 또한 LIN 2.0부터 마스터가 첫 번째 바이트가 0이고, 식별자(ID)가 0x3C인 진단 프레임을 전송하면 모든 슬레이브들은 자동으로 Sleep 모드로 전환됩니다. 이러한 진단 프레임을 go-to-sleep-command라 부릅니다. 이후 다시 데이터가 감지되면(WAKEUP 프레임이 LIN 버스에 전송되면) 다시 정상모드(Active)로 복귀합니다.

WAKEUP 프레임은 Sleep 모드를 종료시키고 버스를 활성화시키기 위한 프레임입니다. WAKEUP은 버스가 sleep 모드이고, 노드 내부적으로 WAKEUP에 대한 요청이 있을 때 버스의 모든 노드(마스터, 슬레이브)에 의해 전송될 수 있습니다.

LIN (Local Interconnect Network) 버스 소개

LIN 버스는 단일 마스터 디바이스와 하나 또는 그 이상의 슬레이브 디바이스로 폴링된 버스입니다. 마스터 디바이스에는 마스터 태스크와 슬레이브 태스크가 있습니다. 각 슬레이브 디바이스는 슬레이브 태스크만 보유합니다. LIN 버스의 통신은 마스터 디바이스의 마스터 태스크가 전적으로 컨트롤합니다. LIN 버스에서 전송의 기본 단위는 프레임이며, 이는 헤더와 응답으로 나뉘어집니다. 헤더는 마스터 노드가 항상 전송하며, 세 개의 필드 즉, 브레이크, 동기 (sync) 및 식별자 (ID)로 구성됩니다. 슬레이브 태스크가 전송하며 마스터 노드 또는 슬레이브 노드에 존재하는 응답은 데이터 페이로드와 체크섬으로 구성됩니다.

일반적으로 마스터 태스크는 헤더 (브레이크-동기-ID 시퀀스로 구성)를 전송함으로써 루프에서 각 슬레이브 태스크를 폴링합니다. LIN을 시작하기 이전에 각 슬레이브 태스크는 데이터를 버스에 출판하거나 각 수신된 헤더 ID에 대한 응답으로 데이터를 구독하도록 구성됩니다. 헤더를 수신하면 각 슬레이브 태스크는 ID 패리티를 확인한 후 ID를 체크하여 출판 또는 수신이 필요한지를 결정합니다. 슬레이브 태스크가 응답을 출판해야 한다면 태스크는 1~8 데이터 바이트를 버스에 전송한 후 체크섬 바이트가 따라옵니다. 슬레이브 태스크가 구독해야 하는 경우 버스로부터 데이터 페이로드와 체크섬 바이트를 읽고 적절한 내부 동작을 취합니다.

표준 슬레이브-마스터 통신에서 마스터는 식별자를 네트워크로 브로드캐스트하고 단 하나의 슬레이브가 데이터 페이로드에 응답합니다.

마스터-슬레이브 통신은 마스터 노드에서 개별 슬레이브 태스크에 의해 완성됩니다. 본 태스크는 버스에 출판된 모든 데이터를 자가 수신하며, 마치 독립 슬레이브 노드인 것처럼 응답합니다. 데이터 바이트를 수신하기 위해 마스터는 반드시 내부 슬레이브 태스크 응답을 전송하고자하는 데이터 값으로 업데이트해야 합니다. 그 후 마스터는 적합한 프레임 헤더를 출판하고 내부 슬레이브 태스크는 데이터 페이로드를 버스에 전송합니다.

Figure 2. LIN Message Frame

1. 브레이크

모든 LIN 프레임은 브레이크로 시작됩니다. 이는 13개의 우성 비트 (nominal)로 구성되며, 하나의 열성 비트 (nominal) 인 break delimiter가 이를 따릅니다. 이것은 프레임의 시작을 버스의 모든 노드에 알리는 역할을 합니다.

2. 동기 필드

동기 필드는 헤더에서 마스터 태스크가 전송하는 두 번째 필드입니다. 동기는 문자 x55로 정의됩니다. 동기 필드가 있으면 자동 보드 속도 감지를 수행하는 슬레이브 디바이스가 보드 속도의 주기를 측정할 수 있으며 버스와 동기화하기 위해 내부 보드 속도를 조정합니다.

3. ID 필드

ID 필드는 헤더에서 마스터 태스크가 전송하는 마지막 필드입니다. 본 필드는 네트워크에서 각 메시지에 대한 식별을 제공하며 궁극적으로 네트워크에서 어떤 노드가 수신하고 전송에 응답하는지 결정합니다. 모든 슬레이브 태스크는 연속적으로 ID 필드를 확인하며 패리티를 검증하고 특정 식별자에 대한 출판자인지 구독자인지를 파악합니다. LIN 버스는 총 64개의 ID를 제공합니다. ID 0 ~ 59는 신호 운반 (데이터) 프레임에 사용되며, 60, 61은 진단 데이터를 운반하는 데 사용되며, 62는 사용자 정의된 확장을 위해 확보되었으며, 63은 향후 프로토콜 향상을 위해 확보되었습니다. ID는 버스를 통해 하나의 보호된 ID 바이트로 전송됩니다. 아래의 6비트는 원시 ID를 포함하고 위의 두 개 비트는 패리티를 포함합니다.

보호된 ID(7:6) 보호된

ID(5:0) P(1) P(0) ID(5:0) ID(1) ^ ID(3) ^ ID(4) ^ ID(5) ID(0) ^ ID(1) ^ ID(2) ^ ID(4) 0–63

표 2. 패리티 계산 방식

4. 데이터 바이트

데이터 바이트 필드는 응답에서 슬레이브 태스크가 전송합니다. 본 필드에는 페이로드 데이터 바이트 중 1에서 8 바이트를 포함합니다.

5. 체크섬

데이터 바이트 필드는 응답에서 슬레이브 태스크가 전송합니다. LIN 버스는 8-비트 체크섬 필드에서 값을 계산하기 위해 2개 체크섬 알고리즘 중 하나의 사용을 정의합니다. 기존 체크섬은 데이터 바이트를 합하여 계산되는 반면, 향상된 체크섬은 데이터 바이트와 보호된 ID를 합하여 계산됩니다.

LIN 2.0 사양 정의에 따르면 체크섬 계산은 모든 값을 더하고 그 값이 256보다 크거나 256일 경우에 255를 뺀 값으로 계산됩니다. (modulo-255 또는 modulo-256과 다름) LIN 2.0 사양에 따르면 LIN 1.3 슬레이브 노드와 사용하기 위한 일반 체크섬이 있고 LIN 2.0 슬레이브 노드와 사용하기 위한 향상된 체크섬이 있습니다. 또한 ID 60~63이 항상 일반 체크섬을 사용해야 한다는 것을 설명합니다. NI LIN 인터페이스는 체크섬 유형을 일반 체크섬 또는 향상된 체크섬 중 설정할 수 있는 속성을 제공합니다. 기본 설정은 일반 체크섬입니다. LIN 2.0 사양에 따르면, ID 60~63은 체크섬 속성의 설정에 상관없이 항상 일반 체크섬을 사용합니다.

그림 3은 마스터 태스크 헤더와 슬레이브 태스크 응답이 LIN 풀 프레임을 구축하기 위해 통합된 모습입니다.

그림 3. LIN 프레임 구축

글쓰는 엔지니어 :: 린(LIN) 통신의 특징들 알아보기

My Life (158) 재테크 (4) 마계(마진계산기) (1) MCC를 이용한 Curiosity 데모.. (1) 마이크로컨트롤러강좌 (7) 개발환경 – MPLAB X (4) Embedded (23) Automotive (5) MCU Basic (19) CAN (5) LIN (4) I2C (2) SPI (0) SENT통신 (2) etc (0) Tip and Tricks (4) 독후감 (15) 글읽기 (3) 최진기의 생존경제 (16) 영화 (1) 심플리피아노(Simply Piano) (2) 미분류 (16) 여행 (9) 중국하이난 (9) 자동차 (1) 맛집 (1) 다산DIMC 판테온스퀘어 (1)

CAN이 뭔데? 라고 물어본다면, 대답할 수 있어야 겠지요? 자 이제 CAN 버스에 대해서 알아봅시다.

위키 백과사전은 다음과 같이 CAN BUS 를 설명하고 있어요

======================================================================================================================

CAN bus (for controller area network) is a vehicle bus standard designed to allow microcontrollers and devices to communicate with each other within a vehicle without a host computer.

CAN bus is a message-based protocol, designed specifically for automotive applications but now also used in other areas such as aerospace, maritime, industrial automation and medical equipment.

Development of the CAN bus started originally in 1983 at Robert Bosch GmbH.[1] The protocol was officially released in 1986 at the Society of Automotive Engineers (SAE) congress in Detroit, Michigan. The first CAN controller chips, produced by Intel and Philips, came on the market in 1987. Bosch published the CAN 2.0 specification in 1991.

CAN bus is one of five protocols used in the on-board diagnostics (OBD)-II vehicle diagnostics standard. The OBD-II standard has been mandatory for all cars and light trucks sold in the United States since 1996, and the EOBD standard has been mandatory for all petrol vehicles sold in the European Union since 2001 and all diesel vehicles since 2004.[2]

======================================================================================================================

뭐 이렇게 시작이 길어..-,- 대충 한번 찬찬히 보면 이런 내용이에요.

CAN 은 Controller Area Network 의 약자라고 합니다. 깡통 캔인줄 알았더니만 아니군요. 자 CAN 이란 Host 컴퓨터 없이 마이크로컨트롤러와 장치(장비) 들이 서로 vehicle (주로 자동차가 되겠지요) 안에서 통신하는 bus 규격입니다. bus 가 무엇인지 궁금하다면 검색 ! CAN 은 처음에 멀쎄데이스 벤츠의 요구에 따라 로버트보쉬라는 유명한 독일 회사에서 개발이 시작이 되었대요. 그래서 원래 자동차 어플리케이션으로 디자인 된 message-based 통신 방식인데 이제는 항공, 해양, 산업 및 의료장비쪽에서까지 사용이 되고 있답니다. (보쉬 회장님 감사해요)

보쉬에서 개발을 시작했지만 공식적으로 release 가 된것은 196년 SAE 협회에서라고 하네요. 인텔과 필립스가 CAN 컨트롤러 칩을 처음 생산하기 시작했구요. 보쉬는 1991년에 CAN 2.0 규격을 발표하게 됩니다. 참고로 CAN bus 는 OBD 에서 사용되는 5개의 프로토콜 중 하나인데요. 여기서 OBD 란?

OBD: on – board diagnostics vehicle diagnostics standard 라고 합니다. 이게 뭐야? 라고 할지 모르겠지만 자 천천히 보면,

자동차의 진단 규격과 같은 것인데 자동차 내에 탑재된채로 진단을 할 수 있는 규격인 것 같습니다. OBD-II 는 1996년부터 미국에서 필수적으로 모든 차량에 달려야 하는 것이구요. 유럽에서는 EOBD 라고 조금 다릅니다. (이것때문에 미국에서 차를 가져올 때 혼란이 좀 있었습니다. 한국은 미국의 OBD-II를 따르기 때문에 수입차를 가져올 때에 조심해야합니다. 유럽에서 차를 가져올 경우는 전문가와 상담 필수, 다 가져왔다가 항구에서 돌려보낼 수도 있기 때문입니다.)

이젭터의 자료는 다음 출처에서 나왔습니다. 제가 조금씩 수정을 했어요.

그린텍 시스템님 감사해요.

CAN 왜 쓰나요 ? – 장점 및 특징 !!!

1. CAN은 Multi-Master protocol 입니다.

같은 통신 버스란에 엮여 있는 모든 CAN 컨트롤러들은 모두가 마스터가 되어 언제든지 버스를 사용하고 싶을 때 사용할 수 있다고 합니다. 지금은 저도 정확히 와닿지 않지만, 추후에 이야기가 될 것이라 생각하며 살짝 넘어가도록 하겠습니다. 중요한 것은모든 통신 프로토콜이 모든 버스의 컨트롤러가 마스터가 되지 않는다는 것입니다. 보통 1개가 마스터가 되고 나머지는 slave 가 되죠..

2. 노이즈에 강하다 !

RS-485와 전압레벨은 다르지만, RS-485와 같이 twist pair 2선 (꼬임선이라고도 하죠) 을 사용하여 전기적 differential 통신을 하기 때문에 노이즈에 강하다고 합니다. 이 부분 역시 HW 엔지니어가 아닌 이상 넘어가도록 하지요. 노이즈에 강하다는것은 기억합시다.

3. 표준 프로토콜이므로 시장성이 뛰어나다!

범용적이라는 것이지요. 예전에 옥수수 기름으로 자동차를 움직일 수 있다고 뉴스기사가 떴었는데요. 뭔가 획기적이라고 하면서 친환경 어쩌구 저쩌구 하면서 뉴스가 나왔었는데.. 뭐 잘 안보이죠, 범용적이지 않다는 말입니다. 버스커 버스커의 노래는 범용적이어서 많은 연령대에게 인기가 많지요. 네..그만할게요. 암튼! CAN은 시장성이 뛰어납니다. 그러면 뭐가 또 좋으냐, 여러 칩 제조사에서 경쟁적으로 칩들을 만들기 때문에, 가격이 저렴합니다. 가격! 제일 중요하지요.

4. 통신 속도가 빠르다!!

최대 1Mbps 까지 속도가 나온다고 합니다. 그런데 다른 버스들의 속도는 좀 느린가봐요. 빠르다! 라는걸 기억하고 넘어갈게요.

5. 먼거리까지 통신이 가능 !

1000미터 (1km) 까지도 40kbps 로 통신이 가능하다고 합니다. 하지만 자동차 내부에서 1km 까지의 버스선은 없겠지요? 그러고 보니 궁금하네요. 자동차 버스선의 가장 긴 길이가요. 우리 몸의 창자인가? 거기가 굉장히 길다고 들었어요. 꼬여있잖아요. 근데 CAN 버스선은 굳이 꼬을 이유가…..네 알겠습니다.

CAN 통신은 아래 그림과 같이 연결됩니다.

통신 방법의 개요는 다음과 같다고 합니다.

1) 각각의 메시지는 자신의 고유 ID를 갖는다 (CAN 2.0A = 11bit, CAN 2.0B = 11+18= 29bit) -> 저 그림 위에 11-bit identifier 보이시죠?

2) 모든 node는 bus idle 상태에서 데이터 전송가능 (multi master)

3) Message 충돌의 중재는 ID를 통하여 우선 순위 결정

4) 수신 node는 message ID를 check 하여 무시 또는 저장

5) 수신 node는 message 수신 후 acknowledge 신호를 발생

6) Message format error를 판단하면 bus에 error 신호를 발생

이렇게만 되서는 잘 머리에 와닿지 않지요. 더 설명이 잘 되어있는 블로그를 발견하였습니다. 아래를 읽어봅시다.

출처: http://electronicsdo.tistory.com/entry/CAN%ED%86%B5%EC%8B%A0%EC%9D%98-%EA%B8%B0%EC%B4%884

예를들어, CAN 통신을 통해 데이터를 액세스하는 과정은 아래와 같습니다.

① 먼저 CAN 버스라인이 사용 중인지를 확인한다.

② CAN 버스라인이 사용 중이 아니면, CAN 네트워크상의 모든 노드(ECU)는 메시지를 수신하여 자신에게 필요한 메시지인지를 식별자를 통해 확인한다.

③ 자신에게 필요한 메시지일 경우 입력받아 데이터를 분석하게 되고, 불필요 한 메시지는 무시하게 된다.

④ 여러 노드의 데이터가 동시에 자신의 노드로 유입되는 경우에, 식별자의 숫자를 비교하여 먼저 취할 메시지의 우선순위를 정한다. 식별자의 숫자가 낮은 경우가 우선순위가 가장 높다.

⑤ 각각의 CAN 메시지는 11비트의 식별자(CAN 2.0A) 또는 29비트의 식별자 (CAN 2.0B)를 가지며 CAN 메시지의 맨 처음 시작부분에 위치한다.

⑥ CAN 프레임의 식별자(ID)는 메시지의 내용을 식별시켜 주는 역할과 메시지 의 우선순위를 부여하는 역할을 한다.

⑦ 각 노드로부터 출력되는 데이터 메시지는 송신측이나 수신측의 주소를 가지 고 있지 않다. 대신 각 노드(ECU)를 식별할 수 있도록 각 노드마다 고유한 식별자를 가지고 있다.

같은 말도 이렇게 설명을 잘하시는 분이 있네요. 모두가 마스터이니까 누가 누구에게 보내는 주소가 없다는 뜻이랍니다. 내가 뭔가를 보내고 싶으면 그냥 CAN 버스에 올려버리는 것이지요. 그러면 그 메세지르 받아야 하는놈은 그냥 알아서 선별해서 받게 됩니다. 무책임하죠? ㅎㅎ

다음은 CAN 버스 커넥터에 대한 설명입니다. 커넥터를 제작해야하는 경우 참고하면 좋겠습니다.

출처: file:///C:/Users/7010master/Downloads/CAN_%ED%86%B5%EC%8B%A0%EC%9E%90%EB%A3%8C%201.pdf

키워드에 대한 정보 lin 통신 예제

다음은 Bing에서 lin 통신 예제 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 챕터5 신진호기능장의 LIN통신이해와 진단

  • 동영상
  • 공유
  • 카메라폰
  • 동영상폰
  • 무료
  • 올리기

챕터5 #신진호기능장의 #LIN통신이해와 #진단


YouTube에서 lin 통신 예제 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 챕터5 신진호기능장의 LIN통신이해와 진단 | lin 통신 예제, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

Leave a Comment