자율주행 자동차/제어

simscape를 이용한 차량 종방향 제어기 만들기

이게될까 2024. 5. 12. 15:58
728x90
728x90

이것도 네트워크 베이스로 모델링을 진행한다.

각각의 요소를 가져와 주어진 식대로 계산을 한다.

직관적이며 수학을 사용하지 않고 모델링이 가능하다.

기본 simscape를 열었다.

10개 이상의 모델을 사용할 수 있다.

Driveline 내부의 vehicle Body를 가져와서 사용했다.

차량의 다이나믹스를 표현할 수 있다.

입력 - 바람, 경사

출력- 힘, 속도

물리적 네트워크도 연결이 가능하다.

다양한 파라미터 조절이 가능하다.

단순 형태의 타이어를 가져와서 연결해준다.

 

엔진으로부터의 동력을 두 타이어로 전달하기 위해 디퍼런셜이 필요하다. 기어에 있다.

이렇게 나오는데 ctrl + r을 누르면 회전된다.

블록 반전도 진행해줬다. 우클릭 후 형식에 있다.

각각 바퀴에 연결해준다.

이제 디퍼런셜에 연결할 트랜스박스를 단순 기어 형태로 집어넣는다.

디퍼런셜과 연결해준다.

옵션도 변동해준다.

이너시아도 가져온다.

구동력을 전달은 엔진 대신 Mechanical Sources안의

저 친구를 가져온다. 구동력을 전달해준다.

이러한 연결 상태가 된다.

0을 넣기 위해 ref를 넣는다.

전부 연결된 모습이다.

 

시뮬링크에서 계산된 값을 넣기위해 다 연결해준다. (PS Cnverter)

constant블럭을 이용해 생성된 입력을 넣을 수 있다.

속도 출력을 가져오기 위해 연결해준다.

이제 30초동안 시뮬을 진행해본다.

그냥 올라가기만 한다.

이제 제어기를 추가해준다.

Force를 Desired speed로 변경해주고, PID를 추가해준다.

이러한 구조가 된다.

센서딜레이는 Transfer Fcn을 통해 구현할 수 있다.

이렇게 연결해준다.

시뮬을 진행해보면

아직 진동이 크다. - 제어기 튜닝을 진행하지 않았기 때문이다.

이전에 진행한 파라미터 업데이트!

2024.05.12 - [자율주행 자동차/제어] - 시뮬링크 환경에서 자동차 제어하기

 

시뮬링크 환경에서 자동차 제어하기

시뮬링크는 신호 기반의 모델링 방식이다.모델링하기 위해 수식이 필요하다!차량의 종방향 제어를 위해 차량시스템을 모델링한다면 차량의 운동 특성에 따라 진행을 방해하는 힘(무게(1200)와

yoonschallenge.tistory.com

여기 거의 마지막 부분에 있다.

깔끔하게 진행되었다.

https://kr.mathworks.com/videos/dynamic-system-simulation-using-simscape-1602830807878.html

 

Simscape를 이용한 다이나믹 시스템 시뮬레이션

Simscape를 이용한 물리모델링 방식을 소개합니다. 물리 모델링 방식을 사용하여 다이나믹 시스템을 직관적이고 가독성이 높으며 수식없이도 모델링이 가능한 방법을 다룹니다. 특히 차량의 종방

kr.mathworks.com

다음에 진행할 내용

https://kr.mathworks.com/videos/control-design-using-response-optimization-1602830904376.html

 

최적화기법을 이용한 제어 게인 튜닝

최적화기법을 이용한 제어 게인 튜닝

kr.mathworks.com

 

728x90