Only Available on April 1st

今天下午从主楼出来,看到自动化系赵明国老师的 研究生正在测试他们的自动驾驶自行车在低速下形式的性能。

这辆自行车,在刚刚过去的日内瓦国际发明展上连同其他几个项目获得了银奖。现在他们继续对自行车低速行驶的稳定控制进行进一步的研究。

看到此时,让我想起了在几个月前在网络上传播的Google Self-Drive Bicyle一段视频。

其中影片采用了很多特技,展示了未来自动驾驶的自行车很多令人遐想的应用前景。

但当前,影片中的自行车还只能在愚人节才能够出售。

在第十届智能车比赛的创意组,有很多队伍设计了双轮电轨车模(自行车,摩托车)参加比赛。当时的赛题是考察车模的控制精度。车模运行一周,看返回起始点的位置精度。

在第八届智能车创意组比赛中,来自于哈尔滨工业大学车队的车模单侧形式也给在场的观众带来了惊喜。

去年,在清华大学校内赛中,高阶组的同学对于北京科宇公司制作的单轨车模进行了测试,发现该车模由于结构设计的不合理,很难进行控制平衡和正常运行。如下使他们总结了这款车模的特性和缺点。

智能车比赛高阶组参赛回顾

余文卓 柴瑞樱 曹天乐

    本次高阶组采用的是两轮车模型,但与上届两侧平行的平衡轮不同,本次比赛采用的是前后两轮式的车模,并装有惯性轮。一共有两个马达:惯性轮马达、后轮马达。两个马达均采用同一规格。前轮不配备马达,但有一舵机,用于控制平衡车前进方向。

    经过讨论,我们认为保持前后轮小车平衡的方法主要有两个:依靠惯性轮通过角动量守恒保持平衡;通过前进时转弯利用进动保持平衡。而在静止的情况下,由于前轮舵机转动与小车产生速度需要较长时间,所以静止时的平衡保持我们认为主要靠控制惯性轮来保持。


    第一步:测倾角

利用加速度计与陀螺仪确定车模的倾斜角度。理论上,静止时加速度计可以测出精准的倾角情况,但在车模运动(尤其是转弯)时可能因为离心力的引入导致测得结果有偏差。陀螺仪可测量角速度,且数值不会受车模运动情况影响。但角速度值转为角度值需要积分,从而引入误差。综上,我们采取的是综合两传感器数值的做法:陀螺仪的计算结果占90%的权重,加速度计结果占10%权重。这样的话,在小车处于稳定状态时,倾斜角数值能迅速收敛至加速度计数值;而非稳定状态下,陀螺仪的结果占更大的权重。

    陀螺仪与加速度计最初使用的是由组委会提供的l3G4200D与MMA7455,集成在一个PCB上,利用SPI协议进行通信。然而使用时发现,所提供的传感器模块故障率很高,3个模块中只有一个模块是正常工作的。且正常工作的那个模块存在较大的零点漂移情况。最终我们自行购买的MPU6050六轴传感器解决了上述问题,建议组委会将来考虑。


第二步:硬件设计

    电池采用的是组委会提供的7.2V锂电池。采用lm2941生成6V用于舵机的电源,LM2940生成5V电源,采用LM1117生成3.3V电源为单片机供电。

    驱动板上,最初使用的l298n芯片,但发现电流不够用。后改为btn7971b直流电机驱动芯片,在7.2V下可输出4A的最大电流。

单片机采用的是K60单片机。

    此外,购买了碳素杆、电感模块等元件,用于对方向的探测。


第三步:静态平衡尝试

    硬件电路搭建完毕后,首先编写的代码是静态平衡。代码采用的是包含微分积分的PID控制算法,通过旋转惯性轮将车模保持平衡。

    在实际操作中,遇到了两个很大的问题。第一个问题依然出现在驱动芯片上,btn7971在驱动惯性轮时电流依然不够用,电池直接接惯性轮的转速,与经驱动板接惯性轮的转速差别比较大。经过驱动板后,由于电流不足,惯性轮旋转的反应非常迟缓,无法帮车模保持平衡。个人认为驱动芯片已经是几乎最优的水平,且电池的发热与压降非常明显,所以怀疑惯性轮的电机不能满足要求。

    第二个问题在车模的自身重量上。车模被设计得非常重,以至于产生倾斜后,需要很大的角动量使其重回平衡,但惯性轮却非常轻。后来我们放弃驱动板,用电池直连惯性轮,让车身倾斜一点点,观察惯性轮能否扭转倾斜的倾向。结果表明,惯性轮几乎不能扭转倾斜趋势。


    由于静态平衡无法实现,后面的工作也就无法再进行下去。回想过程,不甘心却又很疑惑,感觉惯性轮在车模中没有起到一个非常重要的作用。或许,利用进动平衡可能是更重要的方法,但由于时间原因,相关的尝试没有再进行下去。

将来,或许有一款适合智能车竞赛的单轨车模行驶在智能车比赛的场地上。

你可能感兴趣的:(Only Available on April 1st)