수신 메세지와 그 신호를 정의하여 실제 메세지가 수신했을 때 정의한 것으로 표현되게 하는 방법과 그 정의한 메세지들을 DBC파일로 만드는 방법에 대해서 소개합니다. DBC파일을 가지고 있다면 그대로 사용할 수 있지만 DBC파일이 없고 그 정보만 가지고 있거나 DBC파일을 만들고자 할 때 해당 방법을 이용하면 손쉽게 사용할 수 있습니다.
신호의 위치와 크기를 정하는 방법에는 2가지가 있습니다. 첫 번째 방법으로 신호의 위치는 위 에서와 같이 파란색으로 표시된 중앙부분을 마우스를 누른 상태에서 이동하여 정할 수 있고 크기는 파란색 끝부분을 눌러서 크기를 정할 수 있습니다. 두 번째 방법으로 버튼을 눌러서 시작점과 크기를 입력하는 곳에 직접 숫자를 입력하여 설정할 수 있습니다. 그리고 이곳에서 이 신호의 Format, 최대 최소값, 단위 값 등 다양한 정보 들을 입력할 수 있습니다. 또한 ‘Scaling’으로 이동하여 Scaling Type을 ‘Linear mX + b’로 선택하면 원하시는 대로 스케일링 작업도 하실 수 있습니다. (현재 왼쪽 그림은 실제 들어오는 값에 0.2를 곱하고 10을 더하여 신호의 값이 표현되도록 되어 있고 아래 항목에서는 소수점 한자리의 값으로 신호를 표시하고 단위는 %로 설정되어 있습니다.)
이렇게 원하는 설정대로 다 선택한 뒤 ‘Online’을 눌러 ‘Messages’ 창에서 확인해 보면 해당 메세지와 신호가 설정한 대로 보여지게 될 것입니다.
먼저 ‘Messages Editor’에서 로 이동합니다. 메세지를 생성하기 위해서 상단의 버튼을 누릅니다. 그곳에서 해당 메세지의 이름과 ‘Arbitration ID(ArbID)’, 메세지 데이터의 크기 등을 입력하거나 아래의 항목에서도 입력할 수 있습니다. (아래 그림 참조)
신호를 생성하기 위해서는 먼저 아래 버튼을 누르면 신호가 하나 형성이 되고 그 신호의 이름과 타입을 설정 할 수 있습니다.
마지막으로 DBC파일을 만들려면 일단 위와 같이 DBC파일에 들어갈 모든 메세지와 신호들의 정보를 설정한 다음 ‘Messages Editor’창의 상단에 있는 버튼을 누르면 됩니다.
메세지를 송신하는 방법을 소개합니다.
메세지에 들어갈 모든 정보를 입력한 후 ‘Spy Networks’에서 ‘Tx Panel’로 이동합니다. 이 창은 메세지를 송신하는 창으로 ‘Message Editor’ 창에서와 동일하게 ‘Description’과 ‘ArbID’의 값을 수정할 수 있으며 ‘B1’-’B8’의 항목에 직접 숫자를 입력할 수도 있습니다. 먼저 ‘Online’상태에서 원하는 메세지의 ‘Tx’항목에 있는 버튼을 누르게 되면 메세지가 보내지게 됩니다. 즉, 버튼을 한번 누를 때마다 한 번씩 메세지가 보내지게 됩니다.
버튼을 눌렀을 때 특정 주기로 메세지가 보내지도록 설정 하고자 한다면 ‘Auto Tx’항목에 기본으로 설정되어 있는 ‘Periodic’을 ‘Periodic On/Off’로 바꾼 다음 ‘Rate’항목에 ‘None’으로 되어있는 곳에 원하는 주기 값(초)을 입력 해줍니다. 그러면 ‘Online’한 후 ‘Tx’버튼을 누르게 되면 버튼이 눌려진 형태로 계속 유지가 되면서 설정한 주기마다 메세지가 나가게 됩니다.
또한 해당 메세지의 신호 값들은 ‘Tx Panel’의 오른쪽에 ‘Signals’항목에 보여지게 되고 아래와 같이 ‘Value’값에 직접 입력하거나 ‘In’(+)와 ‘Dc’(-)버튼을 이용하여 Step에 값만큼 증가시키거나 감소시킬 수 있습니다.
그리고 ‘Sg’의 항목을 이용하여 특정 주기로 된 신호를 보내실 수도 있습니다. (위에서 보시면 현재 ‘Periodic On/Off’로 선택되어 있고 주기가’0.01’초로 설정되어 있습니다.)
여기에서 편리하게 사용하기 위해 두 가지 창을 동시에 보는 방법은 원하는 창의 이름 부분을 마우스로 클릭한 상태에서 원하는 쪽으로 이동하면 됩니다.
위와 같이 하면 아래 그림처럼 ‘Messages’ 창과 ‘Tx Panel’ 창을 한 화면에서 사용할 수 있습니다.
먼저 ‘Messages Editor’에서 으로 이동합니다. 그리고 나서 이전 과정에서 설명한 수신 메세지 생성 및 DBC 파일 생성을 참고하여 동일한 방법으로 송신할 메세지와 신호를 생성하여 설정합니다.
다양한 신호들을 가진 메세지를 전송하거나 수신하기 위해서 해당 메세지를 정의하여 사용하거나 직접 DBC파일을 만들어 사용하는 방법을 소개합니다. 먼저 ‘Spy Networks’에서 ‘Messages Editor’로 이동합니다. 관련 방법을 소개하기 전에 꼭 알아두셔야 할 4가지 항목을 소개하겠습니다
on Network: 어떤 채널에서 메세지를 만들 것인가를 선택합니다. 즉 내가 사용하는 통신을 정확하게 선택해 주셔야 합니다.
: 수신 메세지를 정의할 때 이곳에서 메세지와 신호를 만들 수 있습니다. 또한 DBC파일을 생성할 때에도 이곳에서 작업이 이루어 집니다.
: 송신할 메세지와 신호를 만들 때 사용하는 곳입니다.
: DBC파일을 등록한 상태에서 DBC의 정보를 확인 하는 곳입니다.
메세지 데이터를 저장한 파일(*.csv, *.vsb, *.snp, *.log, *.asc, *txt, *.dat, *.img, *.blf)을 저장된 메세지의 순서대로 저희 장비에서 송신메세지를 보내주는 방법을 소개합니다. 즉, 실제 차량의 데이터를 사용하게 되면 차량에 연결된 것과 동일한 메세지를 개발중인 장비로 보내 테스트할 수 있습니다.
먼저 ‘Scripting and Automation’에서 ‘Function Blocks’로 이동합니다. 이동 후 ‘+’버튼을 누르고 ‘Playback’을 선택합니다. 그러면 Function Block이 생성되면서 Type에 ‘Playback’으로 표시됩니다. 그리고 아래 부분에 있는 ‘buffer’라는 항목에 ‘Browse…’버튼을 눌러 메세지 데이터를 저장한 파일을 등록해 줍니다. 그리고 시작을 어떻게 할 것인지 설정할 ‘Start’ 항목으로 이동합니다. 그러면 기본적으로 아래와 같이 ‘Start Immediately’로 설정 되어 있습니다.
각 항목이 의미하는 바는 다음과 같습니다.
Start Immediately: Online과 동시에 등록한 데이터파일 메세지가 전송되는 방식
Manual Start: 내가 직접 시작하는 시점과 끝나는 시점을 정하는 방식
Use Start Expression: 아래와 같이 특정 수식이 참이 되었을 때 동작하는 방식
Start Immediately Embedded Only: 장비에 직접 이 Function Block을 넣은 후 장비에서만 전원이 들어 왔을 때 바로 동작하는 방식(PC에서는 동작하지 않음) ‘Manual Start’에서 직접 동작 시키는 방법에는 아래처럼 시작 버튼과 멈추는 버튼을 눌러서 직접 제어할 수 있고 ‘Start/Stop Hotkey’를 이용하여 해당 키를 눌러서 제어하거나 ‘Graphical Panels’에서 제어하는 방법이 있습니다.
그래서 Playback Function Block이 실행이 되면 ‘Running’항목이 위의 그림처럼 ‘Running’으로 표시가 되고 ‘Messages’ 창에서 보면 아래와 같이 메세지들이 송신되고 있는 것을 확인하실 수 있습니다.