[데브코스 자율주행 TIL] DAY41 (11/15) 🚗🛣

happy_quokka·2023년 11월 16일
0
post-thumbnail

2023.11.15 DAY41

칼만필터를 적용했더니!! 어제보다 잘간다! 그치만 칼만필터로 인해 생기는 문제들도 있었다... 이를 PID로 조절하기는 힘들것 같아서 초기화를 생각했지만 더 안된다ㅠㅠ
생각보다 값을 조절하고 조절하면 점점 이상해지는 경우가 많아서 어렵다... 차선인식 문제도 있겠지만 제어가 생각보다 어렵다ㅠㅠ


🚗 실습 과정 및 어려웠던 점

  • pid 제어중
  • 칼만필터 (클래스로 옮기는 과정에서 빠진 내용이 많았다)
  • 칼만필터의 미분값 조정중
  • u자 구간에서 계속 차선을 잃어버린다ㅠ
  • 회전 구간에서 너무 빨리 회전해버려서 인코스를 밟는다
    • roi를 가장 아래로 내렸다
    • 회전 속도를 조금 높여보았다
  • 칼만필터 변수, 영상 저장명을 yaml로 뺐다

그래도 칼만필터 적용하니까 더 잘된다!!!!

  • 컴퓨터에서 갑자기 roslaunch가 실행안됐다. 메모리 문제였던 것 같은데 지워도 해결이 안되더니 컴퓨터를 껐다켜니까 된다....허허....

칼만 필터

  • 이전에 예측한 값을 계속 사용해여하는데 사용하지 않고 현재의 값으로 계속 계산하는 문제 발생. 기존의 값 사용하도록 변경
  • 한동안 차선을 인식하지 못하면 차선이 없다고 판단하여 0 또는 640으로 초기화해주고 싶었다
    • 이를 적용하니 잘 주행하던 곳도 실패했다ㅜㅠㅠ
    • 아마 '한동안'이라는 시간을 잘못 지정하였거나 초기화로 인해 이전에 학습되는 것들이 날아가서 칼만필터가 이상해 진것 같기도 하다(지금 생각해보니 초기화하면 현재의 기울기, 절편을 사용하는데 이 값이 0이 되어버리니 이상해지는게 당연하네..?)
    • 그런데!!
    • 생각해보니.. 미분값을 조정하여 빨리 0과 640에 수렵하도록하면 된다!!!
    • 아마 절편 미분값을 크게하면 되지 않을까!?!?

칼만필터 state matrix의 원소들의 의미

  • 기울기 미분 : 각속도
    • 기울기가 각도를 의미하고 이를 미분하면 각속도
  • 절편 미분 : 속도
    • 절편은 위치를 의미하고 이를 미분하면 속도
  • 의미는 이해했지만 어떻게 작동되는지는 잘 이해되지 않았다.
  • 그래서 직접 값을 변경해보면 rosbag으로 실험해보았다.
  • 기울기 미분값이 양수이면 안쪽으로 기운다. 그래서 음수 선택 / 절대값이 클수록 기울기가 빨리 변한다.
  • 절편 미분값이 양수이면 차선이 안쪽으로 이동한다. 평행이동 느낌! 그래서 음수 선택!! / 절대값이 클수록 빨리 이동한다.

값 조정 순서

아마 내 생각에...
1. 칼만필터 미분값
2. 속도
3. pid ( p, d, i 순서)

0개의 댓글