Bug描述:机器人发射弹丸时,云台抖动,导致弹道不稳;
1)恢复现场,发现每次开启摩擦轮之前云台稳定,开启摩擦轮后,开始逐渐抖动并且加剧;
2)分析出关联变量是开启摩擦轮,而不是发射弹丸,也不是拨弹机构;
3)控制变量,换一个机器人,同样的程序,发现发射弹丸时,云台不抖动;
说明是硬件和结构引起的问题;分析云台抖动相关的变量:云台PID位置反馈,云台速度环反馈,云台PID输入角度,用jscope 调试,发现开启摩擦轮后云台PID速度环反馈数据周期性抖动,而速度环反馈是陀螺仪反馈的数据,这时保证其他环境不变,更换陀螺仪模块,发现抖动依然存在;至此可以定位问题不在软件,也不在硬件,开始从结构方向去寻找问题产生原因,检查机构是否稳固,最后发现是有一个结构件螺丝松动,摩擦轮开启后,产生共振,导致陀螺仪数据抖动,从而出现bug,最后优化结构件固定方式,解决该问题。 |