728x90
- Navigation 진행 중 여러 Error 발생
1. Sensor Port Open Error
- Lidar, IMU의 Port가 가끔씩 열리지 않는 문제
- 센서를 뽑았다 꼽으면 해결 됨 (항상 해결되진 않음)
2. Control Loop Error
- Control / Map update Loop가 의도한 주기대로 되지 않는 문제
3. Timestamp Synchronize Error
- Odometry와 IMU의 Timestamp가 1초 이상 차이나는 문제 발생
- Timestamps of odometry and imu are x seconds apart
- Sensor의 Timestapm가 1초 이상 차이날 때 발생하는 Error
- 일치되지 않은 두 Host들의 Clock이 같은 ROS Core에 연결되거나 Message가 높은 System Load로 인해 Delay된 경우 발생
- Filter time older than xxx message buffer
- 두 Sensor의 입력의 Timestamp가 일치하지 않을 때 발생하는 Error
- 모든 Sensor의 입력은 Messgae Buffer에 10초동안 저장됨
- 두 Sensor의 입력이 10초이상 차이나면 Message Buffer에서 Data가 사라지며 해당 Error 발생
- message_filters Package로 해결 가능?
- 현재 IMU Node는 Jetson Nano에서, Odom Publish Node는 Remote PC에서 실행시키고 둘은 SSH로 연결되어있는데, Network Delay나 두 장치간의 통신 Latency가 생겨 위 Error의 원인이 될 수 있음
- ROS Time(ros::Time)을 사용하여 해결 가능
- Node를 launch할 때 use_sim_time Parameter를 true로 설정
- 해결 방안
odom_data_pub_quat = node.advertise<nav_msgs::Odometry>("odom_data_quat", 1);
ros::Rate loop_rate(30);
ros::Publisher imu_data_pub = nh.advertise<sensor_msgs::Imu>("imu/data", 1);
ros::Rate loop_rate(100);
imu data와 odometry의 publishing rate가 달라 이를 100으로 통일시켰으나 Rviz상에서 로봇이 현실에서 움직이는 것보다 훨씬 빨리 움직이는 문제 발생Navigation System은 Odometry 정보에 의존하여 로봇의 위치와 속도를 추종하는데, Odometry의 Publishing Rate를 증가시키면 System이 더 빠른 속도를 인식하게 됨
// Scale down the cycleDistance and cycleAngle by a factor to match the update rate
double updateRateFactor = 30.0 / 100.0; // Scale factor for 30 Hz update rate
cycleDistance *= updateRateFactor;
cycleAngle *= updateRateFactor;
Odometry Velocity가 Motion Update에 쓰이기 전 기존의 주파수를 현재 주파수로 나누고, 나눈 값을 통해 Velocity값을 낮춤
4. Could not get robot pose / local plan
- robot pose와 local plan을 받지 못하는 문제
5.
6. Invalid Trajectory, Rotation cmd in collision
7. 주행 간 문제
- 회전 후 Map 깨짐 현상(회전시키면 자세가 달라짐) + Particle 수렴 속도가 느림
- 직선으로 쭉 갔다오면 위치가 다름
- Encoder 값 문제로 추정
- 장애물에 붙어서 감
- acc_x_lim을 크게 올렸을 때 생기는 경고문
- Local Planner가 Global Plan을 따르지 않고 장애물에 부딪힘
- Local Plan이 너무 장애물에 붙여서 생김
- goal_distance_bias를 기존의 24에서 60으로 올려 해결
- 장애물 근처에 있을 때 회전할 수 없다는 경고
참고 자료 :
http://wiki.ros.org/robot_pose_ekf/Troubleshooting
'Project > KUSMO' 카테고리의 다른 글
[KUSMO] 8/21 (0) | 2023.08.22 |
---|---|
[KUSMO] 8/14~15, 18 (0) | 2023.08.15 |
[KUSMO] 7/24 (0) | 2023.07.24 |
[KUSMO] 7/21 (0) | 2023.07.24 |
[KUSMO] 6/27 (0) | 2023.06.27 |