▲ 전체 시스템 모습
▲ Display Module (Dashboard)
▲ Engine 및 Clutch 구동부
▲ 적외선 거리 센서 (앞차와의 거리 측정)
▲ CAN BUS 프로토콜.
작품 설명 | 자동차 내부의 통신 버스인 CAN을 중심으로 한 주변 장치들을 그대로 구현한 시뮬레이터입니다. |
---|---|
주요 기능 | * AT90CAN128 보드 3개를 이용하여 BUS를 구성하였으며, CAN Protocol을 통해 필요한 데이터를 주고받습니다. * Display Module : 자동차의 Dashboard에 해당하며, LCD가 장착되어 앞차와의 거리, 엔진 RPM, 연료 잔량, 방향지시등과 같은 상태 정보를 표시합니다. 또한, 핸들에 해당하는 가변저항 및 엑셀에 해당하는 가변저항, 방향 지시등 제어 스위치, 비상등 스위치, 엔진 시작 스위치, 클러치 스위치와 같이 운전석에 존재하는 요소들도 포함하고 있습니다. * Control Module : CAN BUS를 통해 Display Module로부터 수신된 정보를 토대로 조향 모터와 클러치, 엔진을 제어합니다. 두 개의 방향 지시등도 이곳에 포함되어 있습니다. * Sensor Module : Engine RPM, 앞 차와의 거리, 연료 잔량에 대한 정보를 수집하여 CAN BUS를 통해 Display Module로 송신합니다. |
제작 기간 | 약 2주일 (2013.12.10 ~ 24) |
관련 분야 | 전자 공학,임베디드 시스템 |
제작 동기 | * 3학년(2013-2학기)에 수강했던 '임베디드 제어 시스템' 교과목의 Team Project입니다. * 팀원 : 신동헌, 이승준 CAN 통신을 활용한 작품 제작이 팀 프로젝트 주제로 주어졌고, 역시 팀원과 함께 주제를 고민하다가 CAN 통신이 유래되었다는 자동차 내부 통신 시스템을 모방해서 구현해 보기로 하였습니다. |
제작 소감 | CAN BUS Analyzer 없이 펌웨어를 작성해야 하는 상황이었기 때문에, 통신이 되지 않는 등 약간의 어려움도 있었습니다. 게다가 AVR의 CAN관련 Register들이 다소 복잡한 구조로 얽혀 있었으므로 완성됨 펌웨어를 작성하기까지 Data Sheet를 수차례 다시 읽어야만 했습니다. 이러한 어려움을 극복하고 결국 성공적으로 CAN 통신을 구현할 수 있었습니다. 이전까지는 SPI나 I2C, USART와 같은 1:1 혹은 1:N 통신만을 사용해 왔었는데, 이번 기회를 통해 N:N 통신 중 하나인 CAN 통신을 처음 접하고 실습해 볼 수 있었습니다. |
▲ 전체 시스템 모습
▲ Display Module (Dashboard)
▲ Engine 및 Clutch 구동부
▲ 적외선 거리 센서 (앞차와의 거리 측정)
▲ CAN BUS 프로토콜.