Ch1 Seminar/IP

LIN overview (5) LIN 검증 (with PLIN)

베린이 2024. 1. 25. 11:18
반응형

- LIN 검증 환경 세팅

이제 LIN 검증의 마지막 파트입니다. 지금까지는 제가 설계한 LIN controller끼리 연결해서 data transfer test를 진행했는데요, 다른 LIN controller랑 연결을 해봐야겠죠?? 저는 PEAK 사의 PCAN USB PRO FD(이하 PLIN)으로 LIN 검증을 진행했습니다.

 

좌: PLIN / 우: Test 환경

 

PLIN이 있어도 제어 프로그램이 있어야 하겠죠?? PEAK 홈페이지에서 설치 파일을 다운로드할 수 있습니다.

https://www.peak-system.com/PCAN-USB-Pro-FD.366.0.html?&L=1

 

 

해당 파일을 다운로드하고 설치를 진행하는 과정에서 LIN device driver 옵션을 반드시 설정해야 LIN 제어 프로그램을 사용할 수 있습니다.

 

 

PLIN을 PC와 연결하면 PLIN의 빨간색 박스의 초록등이 점멸합니다. 점멸을 확인하고 설치된 PLIN-View Pro를 실행하면 아래와 같이 사용할 포트를 선택하고 LIN master or slave를 설정하고 통신속도를 설정한 뒤 connect를 하면 파란색 박스의 초록등이 점멸합니다. 이러면 PLIN을 사용할 준비가 끝난 겁니다.

 

 

- LIN Frame 생성 후 통신

PC와 PLIN connect를 완료하면 다음과 같은 창을 볼 수 있습니다. 여기서 LIN Frame을 생성하고 통신을 시작할 수 있습니다.

 

New frame을 눌러 frame 생성

 

Frame 설정

 

1. Tx Frame

우선 PLIN을 master로 설정하고 PID를 0x20로 설정하겠습니다. Classic checksum과 Enhanced checksum에서 Classic으로 설정하고 Direction을 Publisher로 설정합니다, 이 말은 PLIN이 data를 보내겠다는 의미입니다. Length의 경우에는 PID에 따라 자동으로 바뀝니다.

이렇게 설정하면 Data 입력하는 부분이 활성화되는데 0x33, 0x22, 0x11, 0xCA로 설정하고 프레임 설정을 완료합니다. 

 

2. Rx Frame

Rx로 세팅할 때는 Direction을 Subscriber로 설정합니다. 이럴 경우 Data 입력하는 부분이 비활성화됩니다.

프레임 설정을 끝내면 Frame 목록에 다음과 같이 frame이 생성된 것을 확인할 수 있습니다.

 

 

이렇게 frame을 확인하고 난 뒤 테스트하려는 LIN IP와 LIN bus를 연결합니다. PLIN의 포트는 RS232 형식이며 pin mapping은 다음과 같습니다.

 

 

LIN 연결을 위해서는 4, 5 또는 6, 9번 핀을 사용하면 됩니다.

  • Pin 4: LIN bus
  • Pin 5 또는 6: GND
  • Pin 9: Vref

9번 핀에 넣어줄 Vref는 테스트하려는 LIN IP의 transiver와 같은 voltage를 넣어줘야겠죠?? 이렇게 테스트할 환경 준비가 끝났다면 아까 생성해 준 Frame을 선택하고 spacebar를 누르면 통신이 시작됩니다. 그러면 Receive 부분에 통신 결과가 나옵니다. 아래 사진은 0x21 - master rx frame의 통신 결과입니다.

 

 

이렇게 PLIN과 LIN test를 함으로써 제가 설계한 LIN IP가 LIN 표준에 부합하는지 테스트해 볼 수 있었습니다. 확실히 이 방법으로 테스트하니까 제 LIN controller 2개를 붙여서 테스트할 때는 발견하지 못했던 bug를 찾아낼 수 있었습니다.

여러 가지가 있었는데 그중 하나는 checksum 계산 방법이었는데요, data를 다 더하고 맨 마지막에 invert를 해야 하는데 안 했더라고요;; 찾아서 다행입니다 ㅠㅠ

'Ch1 Seminar > IP' 카테고리의 다른 글

LIN overview (4) LIN 검증 (with transceiver)  (0) 2023.12.27
LIN overview (4) LIN 검증  (0) 2023.12.08
LIN overview (3) Schedule table - 2  (0) 2023.10.30
LIN overview (3) Schedule table - 1  (0) 2023.10.16
LIN overview (2) Sleep, Wake up  (0) 2023.10.11