跑偏的根源,多半不在软件,在左右电机的差异。同一批齿轮电机,转速、死区、静摩擦力都未必一致,所以先别急着写代码。第一步做标定:给两边发同样的PWM,用编码器或手指实测左右轮各自空载转数,记下差距,这一步就是配平的底子。第二步处理死区,电机低于某个PWM根本不动,先把起步阈值测出来,或用平滑加减速避免一上来就满舵。第三步才是闭环,装一对编码器,各自闭环起来做速度环,左快右慢就把右边补一点,环建好后直行基本不偏。履带小车还要留意履带松紧和主动轮磨损,跑偏往往还带着打滑噪声,纯软件调不平。最后提醒,转弯别指望一次性就给固定差值,差速转动的增益要跟速度联动,低速转不动、高速又甩尾,经验和实测结合着调才靠谱。