Abstract:Aiming at the problems of inaccurate attitude estimation and noise in the estimation of a standing ball robot during slope motion due to the system oscillation orientation, an improved complementary filtering algorithm based on Huber robust estimation is designed. Firstly, the dynamics and kinematic performance of the standing ball robot on the slope are analyzed. Secondly, Huber robust estimation is used to suppress the interference noise caused by the fuselage oscillation during the climbing process of the standing-ball robot, and complementary filtering is improved to solve the attitude. Finally, in order to reduce the interference of magnetometer output instability to attitude calculation, a data smooth switching method is designed. The experimental results show that compared with the complementary filtering algorithm, the proposed algorithm improves the estimation accuracy of pitch Angle, roll Angle and yaw Angle by 24. 82%, 11. 73% and 35. 65%, respectively. The algorithm can effectively suppress the noise caused by the body oscillation during the sloping motion of the standing ball robot, and can ensure the accuracy and real-time performance of the attitude solution.