Dashboard Test#
What you’ll do
GUI(Dashboard)로 UART 연결을 확인하고, 최소 동작(구동/조향/상태/속도)을 검증합니다.
Prerequisites
초기 테스트는 바퀴가 공중에 뜬 상태(또는 아주 낮은 속도)에서 진행 권장
Next
KMC Dashboard는 배포된 GUI 프로그램을 통해 UART 통신 연결 상태 확인, 명령 입력 전송, 속도 요청/보조 명령 모니터링 등을 수행하여 차량이 정상 동작하는지 빠르게 테스트할 수 있는 도구입니다. 패킷 ID 등 바이트 레벨 규격은 UART Protocol Reference에 정리되어 있습니다.
1. Checklist#
하드웨어가 올바르게 동작하는지 확인하기 위한 체크리스트입니다.
포트/baud rate 설정 후 연결이 유지된다
속도 요청으로 속도 (\(\mathrm{m/s}\))를 읽을 수 있다
보조 명령(AllState)으로 온도 (\(^\circ\mathrm{C}\))/전류 (\(\mathrm{A}\))/에러 코드를 읽을 수 있다
명령 입력으로 구동/조향이 기대한 방향으로 동작한다
2. 설치#
KMC Dashboard는 참가자용으로 배포된 실행 파일(GUI)입니다. 대회 안내에서 제공되는 다운로드 링크(Release)를 통해 운영체제에 맞는 프로그램을 받아 설치합니다.
Release 탭에서 OS별 설치 파일 선택
Windows:
.exe또는 설치 패키지Ubuntu:
.AppImage/ 실행 파일 등 배포 형태에 맞게 설치
설치가 끝나면 Dashboard를 실행합니다.
참고
Dashboard가 없어도 UART 프로토콜만으로 제어/모니터링 구현이 가능합니다.
패킷 형식은 UART Protocol Reference을 참고하세요.

3. 연결 설정 (CONNECTION)#
차량과 PC를 USB로 연결한 뒤, Dashboard에서 포트와 baud rate를 설정합니다.
3.1 Port#
운영체제별로 포트 이름이 다릅니다.
Windows
장치관리자 → 포트(COM & LPT)
USB Serial Port (COMx)형태로 표시되는 COM 번호를 확인하여 입력 (exCOM5)
Ubuntu
권장 고정 링크:
/dev/ttyKMC또는 일반 포트:
/dev/ttyUSB0등포트 확인:
ls -l /dev/ttyKMC ls -l /dev/ttyUSB*
설치/연결 방법 문서:
3.2 Baud rate#
하드웨어와 UART 통신에 사용할 baud rate를 설정합니다.
통신이 불안정하면 더 낮은 baud rate로 시도하는 것이 도움이 될 수 있습니다.
반대로 통신이 안정적이고 빠른 응답이 필요하면 더 높은 baud rate를 사용할 수 있습니다.
4. 주행 명령 테스트 (CONTROL)#
Dashboard의 Control 섹션은 차량 주행 명령을 전송하는 기능입니다.
Send Control
차량에 명령 입력을 전송합니다.
일반적으로 선속도 \(v\)와 곡률 \(\kappa\)를 기반으로 Ackermann 주행 입력이 적용됩니다.
Return to Center
조이스틱 입력을 놓았을 때 조향을 중앙으로 자동 복귀시키는 옵션입니다.
직진 안정성 확인 및 실수로 조향이 남는 상황을 줄이는 데 유용합니다.
주의
초기 테스트는 바퀴가 공중에 뜬 상태 또는 아주 낮은 속도에서 시작하는 것을 권장합니다.
5. 시스템 기능 (SYSTEM)#
모터 드라이버의 초기화/리셋 및 엔코더 보정 기능입니다.
5.1 RESET Mx#
선택한 모터 번호의 모터 드라이버를 Reset 합니다.
모터 번호 할당:
왼쪽 모터: 0
오른쪽 모터: 1
5.2 ENC CAL Mx (Encoder Calibration)#
선택한 모터의 엔코더 보정(캘리브레이션)을 수행합니다.
주의
엔코더 캘리브레이션 수행 시 바퀴는 자유 회전 상태여야 합니다.
캘리브레이션 중 바퀴에 힘이 가해지거나(손으로 잡기, 바닥에 닿아 마찰 발생 등) 회전이 방해되면 보정이 잘못될 수 있고, 이후 동작이 비정상일 수 있습니다.
6. 상태/속도 모니터링 (READ STREAMS)#
차량의 상태를 읽어오는 기능입니다.
AllState
보조 명령(AllState)으로 상태 데이터를 읽습니다. (프로토콜에서는
0xAF의ID=0x06)모터 상태(각도/속도/전류/온도/에러 코드 등)를 포함한 데이터를 주기적으로 수신합니다.
Vehicle Speed
속도 요청으로 차량의 현재 속도 (\(\mathrm{m/s}\))를 읽습니다.
7. 송수신 주기 설정 (RATES)#
차량과의 통신 주기를 설정합니다.
명령 입력 송신 주기
속도 요청/보조 명령 주기
8. 그래프 표시 옵션 (DISPLAY FILTER)#
그래프(Plot)에서 어떤 신호를 표시할지 선택합니다.
Show Speed
보조 명령으로 읽어온 각 모터의 속도 (\(\mathrm{rpm}\))를 그래프에 표시
Show Current
보조 명령으로 읽어온 각 모터의 전류 (\(\mathrm{A}\))를 그래프에 표시
Show Vehicle Speed
속도 요청으로 읽어온 차량 속도 (\(\mathrm{m/s}\))를 그래프에 표시
9. 주요 표시 영역 설명#
9.1 VEHICLE SPEED#
속도 요청 응답으로 수신된 차량 속도 (\(\mathrm{m/s}\)) 표시
9.2 BATTERY#
보조 명령(Battery Voltage)로 읽어온 배터리 전압 표시 (프로토콜에서는
0xAF의ID=0x07)
9.3 MOTOR INFO#
보조 명령(AllState) 데이터(각도/속도/전류/온도/에러 등)를 표 형태로 표시 (프로토콜에서는
0xAF의ID=0x06)