프로젝트 & 과제/3학년

[센서] 주차장 출차 시뮬레이션

qqlzzb 2022. 1. 20. 21:25

개요

프로그래밍 언어 : 매트랩

과제 수행 날짜 : 2020.05.24

과제 개요 : 주차장에 주차된 차량이 빠져나오는 경로에 궤적을 그리는 시뮬레이션을 구현. (단, 차량의 초기 위치는 (13.75, 2.5, 90º)이고, 최대 조향각은 -40.95º ~ +40.95º이고 최대조향각속도는 24 deg/s 이다.)

 

코드 설명

과제 코드 중 일부(초기 위치 설정) - 해당 코드만 실행시 경로에 해당하는 점만 찍히지만 이해를 위해 주차장 모습을 갖춰 출력

차가 움직이는 경로에 임의의 점을 추가하고 아래의 공식에 각 점들을 대입하여 각도와 거리를 알아낸다.

각도의 초기값을 설정해주고 앞서 구한 값들을 대입하기 위해 보정해 준 후 각 점을 지나기 위한 steering angle값을 구하여 전부 합쳐 배열로 만든다. 이 과정을 통해 시작 지점부터 종료 지점까지의 steering angle을 sta 라는 배열에 저장한다.

sta의 길이만큼 for문을 돌면서 theta와 delta 값을 이용하여 앞바퀴와 뒷바퀴의 궤적을 그린다. 그리고 회전행렬을 이용하여 앞바퀴, 뒷바퀴, 차체의 움직임을 표현한다. 앞바퀴 회전을 위해서는 cs와 ss를, 뒷바퀴 회전을 위해서는 cs3와 ss3를, 차체 회전을 위해서는 cs2와 ss2를 대입하여 회전시킨다.

 

결과