无人自动驾驶共享单车系统设计
2021-03-01梁润智胡梦杰李章诚李欣蓓
梁润智 胡梦杰 李章诚 李欣蓓
摘 要:中国首创的共享单车模式经过短时间发展,改变城市出行方式的全新方案。但是,在这个过程中出现停放秩序、车辆损坏。我们设计了一款无人自动驾驶共享单车系统,该系统通过将摄像头系统、自平衡系统和定位系统,加装在共享单车上,共享单车可以开启无人自动驾驶模式,让共享单车进行短途自主导航前进。
关键词:自动驾驶;图像识别;深度学习
如今,仅哈啰单车的用户注册数量达到4亿+,入住城市460+,累计骑行184亿公里。共享单车因其随取随用和停车“无桩”理念便利了公众的出行,解决了城市出行最后一公里难题,在共享单车的停放问题上。乱停乱放的共享单车大多数会前往“共享单车坟场”,其实就是垃圾场,根据数据统计有51.6%的单车曾被丢弃到“共享单车坟场”,但是在一个“坟场”中大概会有46.4%的单车会被拿出正常使用。本系统对共享单车进行改造,可以大大减少共享单车的损坏率,并且减少人员的调度费用,增加自行车出行的比例。
1方案设计
系统整体设计如图1所示,最核心的部件是MCU中央处理器,我们首选的处理器是STM32,他有着功耗小的优点,可大大提升自行车的续航能力。自行车自动驾驶功能主要是分成三个大类,(1)基于OpenMv或k210深度学习摄像头系统,可以对当前道路进行识别,同时深度学习使用CNN与XGBoost+AlexNet模型,大大提高图像识别精准度。(2)双频北斗定位GNSS与5G NB-IoT窄带物联网,它们可以对自行车位置进行定位,让路线规划更为精准。(3)基于MPU6050自动平衡系统,通过获得角度,可以让自行车进行自动平衡,保持车身不倾斜,为自行车无人驾驶提供保障。通过三个系统的相互协调,达成无人自动驾驶功能。
2.1视觉识别
一、 AlexNet模型
AlexNet模型神经网络使用激活函数为了引入非线性变化,具有ReLU的深度卷积神经网络训练速度比tanh 单元、sigmoid 单元快几倍。传统上卷积神经网络,相邻神经元组的领域是不重叠的,而在AlexNet模型中使用池化时是可以重叠的,提高精确度。
二、 实验步骤及结果
实验步骤:
(1)使用训练好的AlexNet模型,随机抽取cifar-10训练集中的45000图像数据输入到模型。
(2)将后三层特征串行融合,使用PCA算法降维。
(3)使用XGBoost与CNN结合算法训练,最后得到预测模型,仿真结果如图2所示。
2.2位置PID控制。
為了防止单车倾倒,我们结合MPU6050实时返回值 Angle 进行舵机的调整。
PID算法公式:
angle_out = kp * angle + ki*integral + kd*gyro (1)
Kp为比例增益,Ki为积分时间常数,Kd为微分时间常数。
在通过速度环,将自行车自身的速度进行控制,对于期望速度大小的选择并不是越大越好,因为在实践中发现,当给车一定大小的电量,不同的速度所完成的路程长度是不同的。速度快的时候反而路程短,逐渐降低速度后,完成的路程开始增长,当低于一个速度时,完成的路程开始趋于稳定。所以,为保证路径的优化,必须结合车的本身选择一个合理的期望速度。
3自行车自平衡
一、自行车稳定性计算
根据自行车运动学分析,求得角速度与自行车质心加速度,为
根据《自平衡自行车机器人的运动学分析》可设q2为车架横滚角(自行车倾斜角)根据公式,并带入车把转角与车轮转速,并建立公式,得到
根据计算公式得知,车轮有一转动角度的下界,因为车速越慢,车把转角就越大,车速越快,车把转角就越小。
为了验证理论计算结果和实验数据的一致性将对各个数值进行单独抽样,带入实际进行测量,将车辆车轮传动角速度在80度/秒,实验结果如表2所示。
最后得到车架横滚角度(自行车倾斜角)与车把转动角度的一个非线性图表与数值,并把此数据带入到系统,由MPU6050获得车架横滚角度,然后根据此图表,修改自行车转轴舵机,从而达到自行车自平衡功能。
4 总结
如果共享单车装上本系统,可完全做到自主巡航功能,大大减少共享单车乱停乱放的情景出现,从而制止大量共享单车因乱停乱放问题被报废的问题,同时也可以减少共享单车调度人员的支出。
参考文献:
[1]张春晓.一种基于对抗正则化的图像特征提取方法.2019
[2]刘梦雅.面向图像识别的卷积神经网络算法优化与应用.2019
[3]任航.载人自平衡两轮车控制系统的设计.2015