728x90
1. Hardware
1.1 Motor 관련
- 구동 모터 위치를 기존의 중앙에서 앞쪽으로 변경 후 휠을 아래로 내림 : 높은 하중을 더 잘 버티게 하기 위함
- 높은 하중(80kg)을 견디기 위한 모터 변경
- 필요 토크 계산 후 해당 spec을 만족시키는 제품 구입
- 24V 모터드라이버 사용을 위한 기존에 사용중이던 12V 배터리 직렬 연결
- 안정적인 모터 고정을 위한 브라켓 제작
- 캐스터 휠 선정
- 캐스터 휠이 바닥에 떨어지지 않게 하기 위한 설계 방안 고려
- 학부생 수준에서 설계하기엔 무리가 있다 판단해 보류
- 라이다 배치 관련 : 360도 장애물 감지를 위해 라이다 뒷편의 가림막 제거
2. Software
- ROS 기반 자율주행 관련
- TF 문제 해결
- AMCL을 통해 Localization을 수행하기 위해선 AMCL에 Lidar의 scan data와 odometry 값을 줘야 함
- 이때 robot이 움직임에 따라 오차가 쌓이므로 TF 중 map -> odom 간의 관계를 조정하여 오차를 수정했어야 함
- odom은 map상에서 고정되지 않고 움직여야 한다
- 그러나 Navigation Stack의 Launch File에서 이 두 frame을 고정시켜버려 Robot이 움직일수록 두 frame의 충돌이 일어나며 아래 영상과 같이 떨림이 발생했던 것
- 따라서 Navigation Stack에서의 map -> odom TF 정의 구문을 삭제하여 해당 문제 해결
- 주행 관련
- DWA를 통한 Navigation 시 로봇이 제자리 회전을 못함
- laser와 map 사이의 lag 때문?
- 벽에 붙어서 주행함
- Inflation radius보단 scaling factor가 중요 : 낮을수록 빨간색 (장애물 영역)이 커진다
- local costmap의 크기를 기존의 전체 map 크기에서 로봇 주변 일부로 변경 -> Path를 제대로 생성하지 못하는 문제 발생. path는 제대로 나오나 그 경로를 제대로 따라가지 못함
- Localization / Navigation을 PC에서 하면 Map Update Error가 뜨고 Jetson Board에서 하면 Map을 다시 scan하기 위해 로봇이 너무 세게 회전을 함
- 장애물이 있다가 사라져도 Rviz화면에선 로봇이 해당 구역을 지나지 않으면 장애물이 사라지지 않음
- imu_link가 base_link에 비해 2배로 회전을 하여 source code 수정을 통해 해당 문제 해결
- USB 허브를 통해 다수의 sensor를 연결하여 전류가 낮아져 로봇 동작 간에 모터 드라이버가 죽는 문제 발생
- 단일 확장포트를 모터드라이버에 연결하여 해결
'Project > KUSMO' 카테고리의 다른 글
[KUSMO] 5/3 (0) | 2023.05.03 |
---|---|
[KUSMO] 3/26 ~ 4/18 (0) | 2023.04.18 |
[KUSMO] 2/14 (중간 요약) (0) | 2023.02.13 |
[KUSMO] 2/2~3 (Jetson Nano Navigation Stack 구성 완료) (0) | 2023.02.02 |
[KUSMO] 1/20 (Jetson Nano Developer Kit 2GB 설정법) (0) | 2023.01.20 |