APP下载

基于神经网络算法电动助力自行车控制器设计

2019-05-24谢良松冯治国

组合机床与自动化加工技术 2019年5期
关键词:助力电动控制器

谢良松,赵 磊,冯治国

(1.贵州大学 机械工程学院,贵阳 550025;2.贵州凯敏博机电科技有限公司,贵阳 550025)

0 引言

电动助力自行车通过提供辅助,使得骑行过程轻松舒适、运动环保,已经广泛被都市人群、户外骑行及山地旅游爱好者接受。它在传统自行车的基础上,搭载的动力系统,以传感器为核心,配有轮毂电机与三元锂电池。其与传统电动车有本质区别,它不是通过转把来调节动力大小而区别于电动自行车,采用传感器去检测骑行者踩脚踏的力度,根据人力的大小进行计算判断,来理解骑行者的骑行意图,提供适当的动力辅助。国内外很多研究机构对此展开研究,如意大利费德里克二世大学[1]、英国不列颠哥伦比亚大学[2]、荷兰阿姆斯特丹自由大学[3]、中国哈尔滨工业大学[4]等,在电动助力自行车的传感系统、电机控制等方面已经取得一系列成果。但速度控制精准度、骑行状态反馈等仍需深入研究。

本文设计以陀螺仪传感器检测路况,霍尔传感器测量速度的动力辅助系统[5],基于神经网络算法对速度进行控制,通过实际骑行验证了此控制器具有实时性、高精度、高稳定性等优势。

1 电动助力自行车动力学模型

由于电动助力自行车受到阻力的情况普遍处于上坡过程中,如路面的摩擦阻力、空气动力学阻力、在上坡过程中克服重力做功等因此,本文主要研究助力自行车上坡骑行的模型,如图1所示。

图1 自行车动力学

(1)

其中,M是骑手的质量,m是自行车的质量,v是自行车的行驶速度,Ft是牵引力,Fm是自行车所有两轮系的机械助力,F空是骑手和车在一定速度下的空气动力学阻力,F轮是轮胎与地面的滚动摩擦阻力,Fγ是在一定坡度下重力产生的分力。Ft是由电机和骑行者一起提供的推力。

轮系机械助力表示为:

Fm=R(M+m)gcos(γ)

(2)

其中,R是综合系数,g是重力加速度。

空气动力学阻力表示为:

(3)

其中,C是空气阻力系数,ρ是空气密度,S是正面的迎风面积,V是助力车与空气的相对运动速度。

F轮是滚动摩擦阻力:

F轮=Cr(M+m)gcos(γ)

(4)

其中,Cr是助力车轮胎的滚动系数,g是重力加速度,γ是路面的斜度。

Fγ是在一定坡度下重力产生的分力:

Fγ=(M+m)gcos(γ)

(5)

由此可以算出施加到后轮的总转矩为:

(6)

其中,d是自行车轮的公称直径(mm)。

由于轮毂电机内带有机械变速箱,所以我们引入前后轮盘的齿轮比参数和机构的传动效率δ。

(7)

其中,Th是人人施加到转轴上的转矩,Tm是轮毂电机提供的转矩。

2 助力自行车控制器及控制算法设计

2.1 控制器硬件平台搭建

电动助力自行车主要由车架、电池、控制器、传感器等部件构成[6],控制器是电动助力自行车的控制核心,它负责上层的传感器的数据处理和控制下层驱动器驱动电机,所以控制器设计的好坏直接影响整车的性能。硬件实物图如图2所示。

图2 硬件实物图

核心控制器主要由STM32及外围电路组成,系统结构如图3所示。

图3 系统结构图

其中STM32F103c8t6是整个系统的主控芯片,它是基于高性能的ARM Cortex-M3的32位RISC内核,工作频率为72MHz。

2.2 控制器算法设计

经典的BP神经网络是由输入层、隐含层和输出层三部分组成。大致结构如图4所示。

图4 BP神经网络

本文所设计的控制算法由三个部分组成:①PID控制器,直接对电动助力车的速度进行闭环控制。②BP网络优化算法,对助力车的数据分类学习并在线调整控制函数。③模糊化控制[7]。

电动助力车的目标速度与电动助力车的实际速度对比后把速度误差样本归入神经网络的样本中,然后通过三层神经网络对速度误差的样本数据进行学习分类,来在线调整权值w,从而精确控制PID的3个参数,来达到对电动助力车速度的准确控制与精确响应,保证助力车速度的流畅稳定。

图5 速度控制部分结构原理图

2.2.1 PID控制器部分

本文使用增量式PID控制过程,其数学模型如下:

P=Kp×(current_error﹣last_error);

D=Kd×(current_error﹣2×last_error﹢prev_error);

I=Ki×current_error;

PID_OUT=Pwm_value+P﹢I﹢D;

式中,PID_OUT是PID控制器的输出,current_error是当前车速误差,last_error是上一次的车速误差。

2.2.2 BP神经网络优化算法

本文采用三层神经网络来训练,输入层包含2个节点,隐含层4个节点,输出层包含3个节点,结构如图4所示。网络节点启动函数使用非负Sigmoid函数[8],网络训练函数采用Levenberg-Marquardt反向传播算法(trainlm)[9],网络学习函数使用动量梯度下降权值和阈值学习函数(learngdm)[10]。通过电动助力车实车测试得到速度误差和误差变化率,依据筛选后的经验数据进行大样本数据训练,直到能在误差允许范围内对所有输出进行模拟。训练流程图如图6所示。

图6 训练流程图

2.2.3 模糊化控制

采用二维的模糊控制器不仅能满足实时性也能保证精度,输入量采用速度范围u(t)和速度变化率u(dut/dt)。输出量采用三输出,分别是Kp、Ki、Kd。从而完成双输入三输出的模糊规则的建立。对输入输出变量归一化处理后,确定其输入基本论域:[-3m/s,3m/s]、[-0.7m/s2,0.7/s2],输出基本论域:[-10,10]、[-2,2]、[-20,20]。选定模糊集合论域[-20,-10,-3,-2,-0.7,0,0.7,2,3,10,20]。根据输入输出量的变化范围分为5个等级,形成一个模糊集合:[NB、NS、ZO、PS、PB],隶属函数是经过大样本经神经网络训练后得到,逐渐得到一个最佳的隶属函数,待神经网络训练完成后的可以准确快速的找到模糊子集中的隶属。

3 助力控制算法实验测试

对设计的电动助力自行车控制器,进行了实验室模拟测试,其关键性能测试结果如下:

(1)用函数信号发生器产生5V的方波分别模拟测试中轴传感器的信号和车速传感器的信号,激发控制器输出,实验数据见表1。

表1 控制器输出实验观测值

由表1可知,测量值与理论值之间的误差在允许的范围内。

(2)模拟测试之后,进行了实际骑行测试,数据处理结果如图7~图9所示。

图7 起伏路面的运行情况

图8 平路的运行情况

图9 速度跟踪曲线图

由图7、图8可知,在实际的行驶条件下,电机的输出曲线与骑行者脚踏速度曲线变化基本一致,这证明了电机的输出对骑行者的脚踏速度有很强的跟随性。并且当脚踏速度与车身角度变化时,电机输出同样做出瞬时变化,反应迅速,说明该控制器对路面情况有很强的控制器,能够起到对骑行速度有效控制的作用。如图9速度对比可知,使用神经网络PID时,速度变化平稳,波动性小。

4 结论

本文基于神经网络算法, 设计了一种新型电动助力自行车控制器,把增量式PID、模糊控制和神经网络相结合,该控制器具有反应速度快,误差小,精度高等特点。具有较强的自适应能力。在实际骑行测试中,该控制器骑行速度控制流畅,波动性小,能在复杂路况下稳定工作,为后续电动助力自行车控制器设计方面提供了一定的参考价值。

猜你喜欢

助力电动控制器
助力成功七件事
工商业IC卡控制器改造为物联网控制器实践
电动自行车
助力“一方水土养一方人”
“自能”学习助力有机化学的学习
PLC可编程控制器相关外置的选择计算研究
纯电动重卡展会遇冷
MINI 电动概念车
基于Cruise的纯电动客车动力系统匹配
为更适宜的阅读之地助力