18
USB2CAN USB2CAN-VCP USB2CAN-FIFO User’s Manual ver. 1.00 Updated in November 2013

LinKerS USB2CAN User Manual v1.00 - NTREXGO · 2013-11-08 · linkers usb2can 5 2-2. led 상태 표시 [그림 2-5] led 상태 표시 usb2can의 usb 포트가 pc와 연결되면 3개의

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

USB2CAN USB2CAN-VCP

USB2CAN-FIFO

User’s Manual

ver. 1.00

Updated in November 2013

LinKerS USB2CAN

1

1. 사용 전 유의사항 2

2. USB2CAN 개요 3

2-1. 커넥터 3

2-2. LED 상태 표시 5

3. USB2CAN 종류 5

3-1. USB2CAN-FIFO (FT245 USB FIFO) 6

3-1-1. Binary Packets 6

3-1-1-1. Command Packets 6

3-1-1-2. Message Packets 7

3-2. USB2CAN-VCP (FT232 USB UART) 8

3-2-1. Text Packets 8

3-2-2. Text Message 9

3-2-3. Binary Packets 10

3-2-4. HyperTerminal을 사용한 Text 모드 연결 10

4. USB2CAN UI PROGRAM 12

4-1. 장치 드라이버 설치 12

4-2. USB2CANUI 실행 13

5. 제품의 보증 17

LinKerS USB2CAN

2

1. 사용 전 유의사항

제품을 사용하시기 전에 본 설명서를 충분히 숙지하여 주시고, 사용에 항상 주의를 기

울여 안전하고 올바른 사용법으로 취급하여 주시기 바랍니다.

제품의 파손과 고장 그리고 오동작의 원인이 될 수 있으니, 아래와 같은 사항을 주의하

시기 바랍니다.

- 제품의 정격 전압 및 전류 범위 내에서 사용하십시오.

- 제품의 본래 용도가 아닌 다른 용도로 사용하지 마십시오.

- 제품을 분해 조립 및 개조하지 마십시오.

- 볼트 혹은 나사로 기구류에 부착할 때에 주변의 단자와 도전 부분을 주의하십시오.

- 배선작업 등은 반드시 외부에서 전원을 차단하고 실행하십시오.

- 제품 사용할 때 오물 혹은 이물질이 들어가지 않도록 주의하십시오.

- 제품 사용할 때 정전기 또는 외부의 전기적 충격에 민감하니 주의하십시오.

- 제품 사용할 때 금속으로 노출된 부분(도전 부분)을 직접 손으로 만지지 마십시오.

LinKerS USB2CAN

3

2. USB2CAN 개요

일반적으로 CAN은 멀티 마스터 버스 통신으로 자동차 산업이나 실시간 분산제어를 요

구하는 분야에서 주로 이용됐습니다. 그러나 처음 사용하는 사용자는 접근이 쉽지 않으

며, CAN을 사용하기 위해 부수적인 작업들이 많이 요구되었습니다. 게다가 요즘은 여러

개의 모듈로 구성된 제품을 CAN 네트워크로 묶어서 PC에서 제어하는 경우가 많습니다.

LinKerS USB2CAN은 PC에서 USB 포트를 이용하여 CAN bus에 쉽게 접근할 수 있는

USB to CAN Bus 어댑터 모듈입니다.

누구나 CAN에 대한 기본 지식만 있으면 쉽게 사용할 수 있으며 별도의 부수적인 작업

이 필요 없는 제품입니다.

[그림 2-1] LinKerS USB2CAN

2-1. 커넥터

[그림 2-2] LinKerS USB2CAN 커넥터 연결

Mini USB와 CAN에 연결하는 두 개의 커넥터가 있습니다. PC 측은 Mini USB(B Type)으

로 연결되며, CAN bus 단은 일반적으로 사용되는 D-SUB 9핀 타입의 수(male) 커넥터로

연결됩니다. 참고로 전원은 USB의 전원(+5V)를 이용합니다.

LinKerS USB2CAN

4

[그림 2-3] USB2CAN D-SUB 9핀 커넥터

[표 2-1] D-SUB 9핀 커넥터 정보

Pin Function

1 -

2 CAN Low

3 Ground

4 -

5 -

6 -

7 CAN High

8 -

9 -

[그림 2-4]와 같이 보드의 CON4에 단자를 연결하면 CAN L과 CAN H 단자 간에 120Ω

저항이 연결됩니다.

[그림 2-4] USB2CAN D-SUB 9핀 커넥터

LinKerS USB2CAN

5

2-2. LED 상태 표시

[그림 2-5] LED 상태 표시

USB2CAN의 USB 포트가 PC와 연결되면 3개의 LED가 동시에 0.5초 동안 켜졌다가 꺼

지며, 이후 동작상태를 표시하는 LED만 깜박이게 됩니다.

전원이 공급될 때, 3개의 LED가 모두 OFF 상태로 꺼져있거나 ON 상태로 켜져 있다면

USB2CAN이 정상적으로 초기화되지 않은 상태이며, 정상적으로 초기화 되었다면 동작상

태를 표시하는 LED는 1초 주기로 깜박이게 됩니다.

CAN 포트로 데이터 전송 도중 에러가 발생하면 동작상태를 표시하는 LED가 빠른 주기

(0.2초 주기)로 깜박이게 됩니다. 이러한 경우는 주로 CAN 포트가 CAN 네트워크에 연결

되지 않아 발행하는 경우입니다.

3개의 LED가 모두 0.25초 주기로 깜박이는 경우는 USB2CAN의 H/W나 S/W가 오동작

을 일으켜 펌웨어 실행이 중단된 상황이므로, 엔티렉스의 공식 홈페이지(ntrexgo.com)이

나 연구소 메일([email protected])로 연락 바랍니다.

3. USB2CAN 종류

LinKerS USB2CAN은 사용하는 FTDI 칩셋에 따라 USB2CAN-FIFO (FT245 USB FIFO)와

USB2CAN-VCP (FT232 USB UART) 등 두 종류의 제품이 있습니다

USB2CAN-FIFO 는 FT245 칩을 사용하여 USB와 MCU 간 병렬로 데이터를 주고받는

제품으로 데이터 전송률이 최대 1M byte/second입니다. USB2CAN-VCP는 FT232 칩을

사용하여 USB와 MCU간 시리얼 데이터를 주고받는 제품으로 데이터 전송률은 최대

300K byte/second입니다.

사용자는 구매하신 제품에 맞는 내용을 찾아서 숙지하시면 됩니다.

LinKerS USB2CAN

6

3-1. USB2CAN-FIFO (FT245 USB FIFO)

3-1-1. Binary Packets

USB2CAN-FIFO의 바이너리(Binary) 패킷 구조는 명령어와 메시지에 따라 구분됩니다.

3-1-1-1. Command Packets

명령어 패킷의 구조는 아래 [표 3-1]과 같으며, [표 3-2]는 명령어 패킷 구조에 대한 설

명입니다.

[표 3-1] 명령어 패킷 구조

1byte 2byte 3byte 4byte 5~8byte 9~16byte 17byte 18byte

STX Type Not used Command Value Not used Checksum ETX

[표 3-2] 명령어 패킷 설명

STX (0x02) 패킷 전송 시작 문자

Type

패킷의 종류 설정

0x00 - 최상위 비트가 0인 경우 Message Packet 임을 나타냄

0x80 - 최상위 비트가 1인 경우 Command Packet 임을 나타냄

0x10 - Error; Command Packet의 형식이 잘못되었거나 존재하지 않는

command를 전송한 경우에 대한 응답 패킷에 설정됨

0x08 - Command의 읽기 혹은 쓰기 속성을 표시; 0인 경우 Read

Command, 1인 경우 Write command.

0x01 - Command에 대한 Acknowledge 임을 의미

Command

0 – USB2CAN 컨버터는 이 명령에 대하여 어떠한 작업도 수행하지 않으

며, 단지 수신된 값을 그대로 회신함; 컨버터가 연결되어 동작 중인지

확인하기 위해 사용함

1 - CAN Filter Identifier를 읽거나 씀. 범위: 0x0 ~ 0x1FFFFFFF

2 - CAN Filter Mask를 읽거나 씀. 범위: 0x0 ~ 0x1FFFFFFF

3 - CAN 통신속도 읽기 (단위: kBps). 10K Bps ~ 1M Bps까지 설정 가능.

4 - 시리얼 포트 통신속도 읽기 (단위: Bps). 921600 Bps로 고정

5 - PC와 USB2CAN 컨버터간 메시지의 송수신 여부를 읽거나 설정:

0 - PC와 컨버터간 CAN 메시지 송수신 차단

1 - PC와 컨버터간 CAN 메시지 송수신 허용 (Binary 형태)

2 - PC와 컨버터간 CAN 메시지 송수신 허용 (Text 형태)

LinKerS USB2CAN

7

9 - CAN을 새로 초기화; CAN Filter identifier, Filter Mask 등이 변경된 경

우, 이를 적용하기 위해서는 CAN을 새로 초기화하는 명령을 수행

10 - 설정 값을 Flash Memory에 기록; 설정 값을 Flash Memory에 기록

하지 않은 경우에는 컨버터가 재시작 되면서 설정 값을 잃어버리게 됨

11 - 컨버터의 CPU를 소프트웨어적으로 리셋; 컨버터의 펌웨어는 처음

부터 실행

20 - 컨버터의 버전을 읽음

Value Write command일 경우와 Read command에 대한 응답일 경우에 설정

되며, Read command일 경우는 무시됨(0으로 초기화)

Checksum 패킷의 2byte에서 16byte까지 모두 더한 값

ETX (0x03) 패킷 전송 종료 문자

3-1-1-2. Message Packets

명령어 패킷의 구조는 아래 [표 3-3]과 같으며, [표 3-4]는 메시지 패킷 구조에 대한 설

명입니다.

[표 3-3] 메시지 패킷 구조

1byte 2byte 3byte 4byte 5~8byte 9~16byte 17byte 18byte

STX Type DLC Flags ID Data 1~8 Checksum ETX

[표 3-4] 메시지 패킷 설명

STX (0x02) 패킷 전송 시작 문자

Type 패킷의 종류 설정

0x00 - Message Packet

DLC 데이터의 길이 (0 ~ 8byte)

Flags

0x20 - RTR (Remote transmission request)

0x40 - CAN Extended Data Frame을 나타냄; 0x00인 경우 CAN Standard

Data Frame을 나타냄.

ID - CAN Standard Frame Format 인 경우: 0x0 ~ 0x7FF (11bit)

- CAN Extended Frame Format 인 경우: 0x0 ~ 0x1FFFFFFF (29bit)

Data 1~8 DLC가 8보다 작을 때 남는 데이터 영역에는 0x00을 채우도록 함

Checksum 패킷의 2byte에서 16byte까지 모두 더한 값

ETX (0x03) 패킷 전송 종료 문자

LinKerS USB2CAN

8

3-2. USB2CAN-VCP (FT232 USB UART)

3-2-1. Text Packets

본 장은 USB2CAN-VCP의 텍스트 기반 명령에 대해 설명합니다. 텍스트 기반 명령은

명령에 대한 하나의 문자가 할당되어 있으며, 명령의 끝은 8 (ASCII 코드 13; 키보드의

Enter 키)로 끝납니다. 텍스트 기반 명령은 CAN 메시지 전송을 제외하면 읽기와 쓰기

명령으로 구분됩니다. 읽기 명령은 컨버터 내의 각종 변수를 읽는데 사용되며, 간단히

읽고자 하는 변수에 해당하는 문자를 입력하고 엔터를 치면, 변수의 값을 돌려줍니다.

(예 I8 혹은 I=08 ) 그리고 쓰기 명령은 컨버터 내의 각종 변수에 값을 변경하는데 사

용되며, 실제로 변수에 적용된 값을 리턴 합니다. (예 I=08 )

[표 3-5] 텍스트 패킷 명령어 설명

I

- CAN Filter Identifier 값을 읽어오거나 설정;

- 헥사 값으로 0x0 부터 0x1FFFFFFF 까지 사용;

- 필터의 식별자 값을 변경한 경우에는 P 명령으로 CAN 포트를 초기화

하여야 바뀐 값이 적용

M

- CAN Filter Mask 값을 읽어오거나 설정;

- 헥사 값으로 0x0 부터 0x1FFFFFFF 까지 사용;

- 필터의 마스크 값을 변경한 경우에는 P 명령으로 CAN 포트를 초기화

하여야 바뀐 값이 적용

B

- CAN 버스의 통신 속도를 읽어오거나 설정 (단위: kBps);

- 통신 속도를 변경한 경우에는 P 명령으로 CAN 포트를 초기화해야 바

뀐 값이 적용;

10 - 10Kbps

25 - 25Kbps

50 - 50Kbps

125 - 125Kbps

250 - 250Kbps

500 - 500Kbps

800 - 800Kbps

1000 - 1Mbps

C - 시리얼 포트의 통신 속도를 읽거나 설정 (단위: Bps).

T

- PC와 USB2CAN 컨버터간 메시지의 송수신 여부를 읽거나 설정;.

0 - PC와 컨버터간 CAN 메시지 송수신 차단

1 - PC와 컨버터간 CAN 메시지 송수신 허용 (Binary 형태)

2 - PC와 컨버터간 CAN 메시지 송수신 허용 (Text 형태)

LinKerS USB2CAN

9

S CAN 버스로 표준 CAN 메시지를 전송

X CAN 버스로 확장 CAN 메시지를 전송

P

- CAN 버스의 통신속도;

- CAN 필터 값이 변경되었을 때 이 명령을 사용하여 CAN 포트를 초기

F

- 설정 값들을 플래시 메모리에 저장;

- 만약 사용자가 I, M, B, C, T 명령으로 설정 값을 변경하고 전원이 껐다

켜졌을 때도 변경된 값이 유지되기를 원한다면 이 명령을 사용해야 함.

R USB2CAN 어댑터를 소프트웨어적으로 리셋

V 제품 정보와 버전 정보를 표시

H 도움말을 표시

3-2-2. Text Message

텍스트 메시지 구조에 대해서 설명합니다.

[표 3-6] 텍스트 메시지 구조

S

X ID

R

Space Data 1 Data 2 Data 3 … 8

[표 3-7] 텍스트 메시지 설명

S or X S - 표준(standard) CAN 메시지를 의미;

X - 확장(extended) CAN 메시지를 의미

ID

- CAN ID를 16진수(0~9, A~F)로 표시;

- 표준 CAN 메시지의 경우 11bit의 ID를 사용하고 확장 CAN 메시지의

경우는 29bit의 ID를 사용할 수 있음

표준 CAN : 11bit 식별자

확장 CAN : 29bit 식별자

R

- 원격전송요청(RTR; Remote Transmission Request)을 표시

- R이면 CAN 메시지가 RTR임을 의미하고 공백이면 CAN 메시지가 데이

터 프레임 이라는 것을 의미

Data 1~8 - 각각 1byte 데이터를 16진수로 표시

- 전체 데이터는 0에서 8byte로 구성

LinKerS USB2CAN

10

3-2-3. Binary Packets

USB2CAN-VCP에서는 Text Packet과 Binary Packet을 혼용하여 사용할 수 있습니다. PC

에서 컨버터로 Text Packet을 전송한 경우, 이후 컨버터가 PC로 전송하는 패킷은 모두

Text Packet이 됩니다. PC에서 컨버터로 Binary Packet을 전송한 경우, 이후 컨버터가 PC

로 전송하는 패킷은 모두 Binary Packet이 됩니다.

※ USB2CAN-FIFO의 Binary Packets 참조하시기 바랍니다.

3-2-4. HyperTerminal을 사용한 Text 모드 연결

[그림 3-1] HyperTerminal 실행화면

Hyper Terminal을 실행하여 메뉴에서 File – New Connection을 실행합니다. 연결 이름을

지정하고 [OK] 버튼을 누른 후 Connect To 창에서 USB2CAN이 연결된 COM 포트를 선

택하고 [OK] 버튼을 누릅니다. COM 속성 창에서 비트/초를 921600으로 선택하고 흐름

제어를 [없음]으로 선택하여 [확인] 버튼을 누릅니다.

COM 포트가 성공적으로 열린 것을 확인 후 V와 Enter 키를 입력하면 [그림 3-2]와 같

이 USB2CAN의 version 정보가 표시됩니다. 그리고 H와 Enter 키를 입력하면 명령어 목

록에 대한 도움말을 표시합니다.

LinKerS USB2CAN

11

[그림 3-2] HyperTerminal USB2CAN 정보화면

USB2CAN의 설정 값을 읽기 위해서는 해당 설정에 해당하는 문자를 입력하고 Enter 키

를 입력하면 됩니다.

B8

C8

T8

그러면 아래와 같이 해당 설정에 대한 값을 표시합니다

B=1000

C=921600

T=0

설정 값을 바꾸기 위해서는 설정에 해당하는 문자에 바꾸고자 하는 값을 =로 대입하고

Enter 키를 입력하면 됩니다.

B=500

T=1

그러면 아래과 같이 해당 설정에 대한 바뀐 값을 표시합니다.

B=500

T=1

LinKerS USB2CAN

12

4. USB2CAN UI Program

4-1. 장치 드라이버 설치

USB2CAN 어댑터를 연결하고 장치 관리자를 열어보면 [그림 4-1]과 같이 기타 장치에

드라이버가 제대로 설치가 안 되어 있는 것을 확인할 수 있습니다. 느낌표가 있는 장치

에서 마우스 오른쪽 버튼을 눌러 팝업 메뉴를 띄우고 드라이버 소프트웨어 업데이트를

선택합니다. 그리고 장치 드라이버의 경로를 지정하여 드라이버를 설치합니다.

LinKerS USB2CAN 드라이버는 엔티렉스 공식 홈페이지(ntrexgo.com) 다운로드 받을 수

있습니다.

[그림 4-1] USB2CAN 드라이버가 설치 안된 화면

정상적으로 설치가 되면 [그림 4-2]와 같이 범용 직렬 버스 컨트롤러 하단에 [LinKerS

USB2CAN Converter]가 등록되고 USB2CAN-VCP 제품의 경우 [LinKerS USB2CAN

Virtual COM Port]도 등록됩니다.

LinKerS USB2CAN

13

[그림 4-2] USB2CAN 드라이버가 설치된 화면

4-2. USB2CANUI 실행

디바이스마트에서 다운로드 한 USB2CANUI.exe를 실행하면 아래와 같이 초기 실행화면

이 나타납니다.

LinKerS USB2CAN

14

[그림 4-3] USB2CANUI 초기 실행 화면

좌측 상단의 [Search] 버튼을 누르면 PC에 연결된 USB2CAN 장치를 검색하여 사용 가

능한 장치를 리스트 박스에 표시합니다. 그리고 연결속도를 선택하고 [Connect] 버튼을

누르면 장치와 연결이 됩니다.

여기서 Filter identification과 Filter Mask는 USB2CAN 장치가 받아들일 CAN ID와 마스

크를 설정합니다. [그림 4-3]에서는 Filter identification과 Filter Mask 둘 다 공란으로 설

정(0으로 설정)되어 있는데, 이러한 경우는 모든 CAN 메시지를 수신합니다. 만약 예를

들어 ID 0x10부터 0x1F까지의 노드가 보내는 데이터만 받아들이고자 할 경우는 Filter

identification 0x10, Filter Mask를 0x1F로 설정하면 됩니다.

LinKerS USB2CAN

15

[그림 4-4]는 Read Messages 화면으로 표시되는 CAN Messages의 구조는 다음 [표 4-1]

과 같습니다.

[그림 4-4] CAN Messages 화면

[표 4-1] CAN Messages 구조 설명

Time - 프로그램이 실행된 이후의 초 단위 시간을 표시;

- 3768.360564로 표시된 경우, 3768초 360564마이크로초를 의미

ID - CAN ID를 16진수로 표시

Format

- CAN 메시지의 표준/확장을 표시;

Std – Standard;

Ext - Extended

Flags

- CAN 메시지의 각종 상태를 표시;

Self - USB2CAN 장치가 내보낸 메시지

Rtr - 리모트 프레임

dlc = ? - 데이터 길이 (0 ~ 8)

Data - CAN 메시지의 데이터를 16진수로 표시

[그림 4-5]는 Write Message 화면으로 CAN 망에 연결된 제어기에 메시지를 보내기 위

해 사용합니다. 아래 그림과 같이 각각 3종류의 메시지를 미리 설정해 두고 보낼 수 있

습니다.

LinKerS USB2CAN

16

[그림 4-5] Transmit Message 화면

메시지를 보내는 방법은 먼저 ID 입력 박스에는 메시지를 수신할 제어기의 CAN ID를

16진수로 입력한 후 Data(Hexa) 입력 박스에는 제어기로 보낼 데이터를 16진수로 입력

합니다. 그리고 [Send] 버튼을 누르면 제어기로 CAN 메시지를 보냅니다. 이때 □RTR은

리모트 프레임을 의미하며, □Ext는 CAN Standard와 CAN Extended를 사용할지 결정해

줍니다.

데이터 입력 형식은 아래 [표 4-2]와 같이 사용할 수 있으며, 입력된 데이터에서 8byte

를 초과하는 데이터는 전송되지 않습니다.

[표 4-2] 데이터 입력 형식

1 2 3 AA BB - 1byte씩 끊어서 입력

01 02 03 AA BB - 1byte씩 끊어서 입력

010203AABB - 모든 바이트를 연결하여 입력

LinKerS USB2CAN

17

5. 제품의 보증

1. 본 제품은 엄정한 품질관리 및 검사과정을 거쳐서 만들어진 제품입니다.

2. 제품 구매 후 6개월 이내에 제품 고장 발생 시에 무상으로 A/S를 해드립니다.

3. 소비자의 정상적인 사용 상태에서 고장이 발생하였을 경우 보증기간 동안은 무상으로

A/S를 해드립니다.

4. 제품 보증기간이 지난 후에 고장이 발생할 경우 유상으로 A/S를 해드립니다.

5. 보증기간 이내라 하더라도 본 보증 이내의 유상 서비스 안내에 해당하는 경우 서비스

따라 유상으로 A/S를 해드립니다.

6. 오용, 남용 및 인가되지 않은 인력에 의한 수리, 부적절한 보관상태 자연재해로 인한

파손은 유상으로 A/S를 해드립니다.

회 사 명 (주)엔티렉스

본 사 주 소 인천 남구 주안동 5-38 (주)엔티렉스

전 화 번 호 070 - 7019 - 8887

팩 스 번 호 02 - 6008 - 4953

E – Mail 기술문의 - [email protected]

영업문의 - [email protected]

홈 페 이 지 www.ntrexgo.com

www.devicemart.co.kr