无人小车速度控制系统的设计与实现
2018-01-08马静,张玉
马 静,张 玉
(西安工业大学 计算机科学与工程学院,陕西 西安710021)
无人小车速度控制系统的设计与实现
马 静,张 玉
(西安工业大学 计算机科学与工程学院,陕西 西安710021)
本文提出了一种基于STM32嵌入式微处理器的无人小车速度控制技术。无人小车是以四轮式结构作为机械平台,选择常见的电机驱动模块。根据软硬件的相关配置编写程序,实现无人小车的基本运转及无人小车的调速和测速功能,达到智能控制,完成设计目标。
无人小车;STM32;智能控制;调速;测速
近年来,随着科技的进步,人们在不断的追求高品质的生活,车是人们外出的首选方案,电瓶车、私家车、公共汽车等都和我们的生活息息相关,因此,车辆技术[1]的研究备受关注,人们主要从环保、节能、安全等的方向展开研究。在研究车辆技术的安全性上,车辆速度是否能够精确控制至关重要。
无人小车是实现交通智能化的前提、是高新技术研发的基础和载体,它是完成一项或者多项功能驾驶任务的综合车辆技术的前提条件。无人小车是一个集各种高科技和创新技术为一体的智能系统,包括对不同环境的感知技术、路径规划技术、智能驾驶等技术,结合这些高新技术,使它在遇到障碍物时具有自动识别的功能,通过自动报警装置,系统的采取车速、方向、安全距离等一系列的自动控制。它集中运用了传感器、信息、通信、计算机、导航、人工智能及自动控制等技术,是典型的高新技术综合体[2]。无人小车的应用非常广泛,它的研发将受益于各行各业,包括可以代替人在仓库搬运东西,减轻人的负担;可以运用于无人驾驶的车辆、生产线、服务业,减少人力;应用于航空航天领域,推动航天事业的发展。它的研究对于智能驾驶、抗险救灾、外太空探测等都有重大意义,因此,为了使无人小车在最佳状态下工作,进一步研究及完善其速度的控制是非常有必要的。
本设计运用STM32嵌入式微处理器[3]知识设计了一个无人小车速度控制系统,keil uvision4和JDK作为软件开发平台,选择常见的电机模型车为机械平台,通过细化设计要求,结合传感器技术[4]和电机控制技术相关知识[5],实现无人小车速度控制等一系列的功能,主要体现在无人小车的速度测量和调速两个方面。
1 系统方案
本系统总体框图如图1所示,主要有电源模块,核心处理器模块,电机驱动模块。
图1 系统结构
1.1 无人小车速度控制系统方案
无人小车的核心处理器模块为STM32F103VE,其优点在于性价比较高、配置比较灵活、低功耗等;电机驱动模块是双L298N,其支持PWM调速;电机为ASLONG JGA25-371,其速度稳定,性价比高。
1)电源模块
其功能是提供给驱动模块驱动电机所需12 V的电压。电机驱动模块通过转接器,给核心处理器提供其所需的5 V电压。
2)核心处理器模块
负责采集各模块回传的信息和数据,并进行相应的处理,协调各模块完成它们的预定的任务,起到控制整个系统运作的作用。
3)电机驱动模块
电机驱动模块双L298N支持PWM方式调速[6]。主要功能是驱动电机,使小车能够完成基本的运转。控制器通过对PWM输出的控制,进而通过控制电机驱动模块芯片的管脚来达到对电机速度的控制,并且携带编码器和控制器内的计数器配合使用,完成测速功能。
1.2 无人小车速度控制
这里采用的是直流调速系统 ,直流调速系统[7]的主要优点是启制动性能好和良好的调速性能,速度稳定,维修便宜,经济适用,能够实现平滑而经济的调速。目前常见的直流调速系统有电枢回路串电阻调速系统,晶闸管变流器供电调速系统和脉冲调速系统。
1)电枢回路串电阻调速系统
电枢回路串电阻调速的原理是通过交流发电机的拖动,给直流发电机供电,通过调节励磁电流使输出电压发生改变,进而达到了调速的目的。但这种调速发法所需的外来设备较多,调速范围较小,体积较大,效率较低,适用于小功率的电动机和调速精度要求不高的场合。
2)晶闸管变流器供电调速系统
通过调节触发器的控制电压来改变触发脉冲的相位,这样就改变了整流电压的大小,实现了调速,但是,由于晶闸管它不是双向导电,只是单向导电,所以可逆运行实现起来还是比较复杂,进而导致运行条件高,费用贵,维护不方便。
3)脉冲调速系统
脉冲宽度调制(Pulse Width Modulation),简称PWM。其方法是通过改变电机电枢电压通电时间与导通时间的比值(即占空比)来控制电机速度。在电源电压不变的情况下,电枢端电压的平均值取决于占空比的大小,改变占空比的值可以改变电枢端电压的平均值从而达到调速的目的。如果能够实现占空比的连续调节即可实现直流电机无级调速。其优势有电路损耗小,效率比较高;频率高,因此获得很宽的频带,响应速度快,且抗干扰能力强;系统低速运行时较平稳,调速范围较宽,在等电流下,损耗及发热较小。
1.3 无人小车速度检测
电机速度的检测是整个无人小车控制必不可少的一部分,而速度控制的精度是速度检测的核心部分。目前,具有较高精度控制的系统是基于反馈信号的闭环控制系统[8],即就是增加测量电机转速的传感器。常见的测速方案有霍尔传感器[9]和光电式编码器。
1)霍尔传感器
霍尔传感器是利用霍尔效应和它内部的集成电路进行磁电转换的一种灵敏度高的传感器,它的基本结构是在带动电机转动的转轴上有一个转盘,转盘上装有若干个磁钢,磁钢均匀分布,在距离转盘1~2 mm处装有一个固定的霍尔传感器,当转轴转动时,带动转盘转动,小磁钢通过霍尔传感器时输出相应的脉冲,小磁钢愈多输出的脉冲也越多,即小磁钢越多越精确。通过采纳固定时间内的脉冲数进行相应的减速比转换后计算出转速。
2)光电式编码器
它装在电机的转轴上,电机的转轴转动时随轴一起转动,发光元件光发出的光通过光栅被光敏元件接收后经过转化以脉冲信号形式输出。在转轴的带动下,码盘的位置不的断变化,相继输出一系列的脉冲信号,根据位置变化的方向用计数器对输出来的脉冲信号进行加/减计数,通过采样固定时间内的脉冲数,经过转换后获得转速。此方法灵敏度较高,但容易受外界光源影响。
2 软件测速和手工测速误差分析
2.1 PWM调速设计与实现
采用PWM方式调速,PWM是英文“Pulse Width Modulation”的缩写,即脉冲宽度调制,其方法是通过调节高电平时间和整个周期时间的比值(即占空比)来控制电机速度。也就是说要按固定的频率来接通和断开电源,并且根据实际需要改变固定周期内“接通”和“断开”时间的长短。通过改变直流电动机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。
当电机通电时,速度增加;电机断电时,速度逐渐减少。因此,掌握通、断电时间的变化规律,改变通、断时间即可让电机转速得到控制。设电机一直接通电源时,设占空比为D=t1/T,Vd为电机的平均速度,Vmax是电机全通时的电压,Vd=Vmax·D,式中,Vd为电机的平均速度,Vmax为电机两端的最大电压,D为占空比。平均速度Vd与占空比D的函数曲线如图2所示。
图2 平均速度和占空比的关系
由图2可以看出,在T不变的情况下改变t1就能得到不同的电压,准确的来说,Vd与占空比D并不是完全线性关系(图中实线),理想情况下,可以将其近似地看成线性关系(图中虚线)。在电源电压始终不变的情况下,电枢端电压的平均值取决于占空比的大小,通过改变占空比的值可以改变电枢端电压的平均值从而达到调速的目的。占空比越大,电机转得越快,当占空比为1时,电机转速最大。如果能够实现占空比的连续调节即可实现直流电机无级调速。
具体方法为:在小车行驶期间,电源经过PWM输出控制后会给小车提供一个平均电压。当电源输出的电压为最大值Vmax时,平均电压Vd=Vmax*D=Vmax*(t1/T)。其中t1为高电平持续的时间,T为PWM的周期。在T不变的前提下,通过调高电平时间内的脉冲数与一个周期内的脉冲数的比值来调占空比,从而达到控制无人小车转度的目的。
调速采用的是PWM1模式的向上计数方式,即TIMx_CNT<TIMx_CCR1时通道为有效电平,否则为无效电平;并通过改变CCRX的值来改变占空比来调压,从而实现无人小车的调速。例如:设定CCRX的值为x,PWM1向上计数模式时低电平为有效,则当 TIMx_CNT<TIMx_CCR1时,输出的是低电平,因此在一个周期中,低电平占了x%,而高电平占了(100-x)%,而占空比是一个周期中高电平所占时间比率为占空比,故此时占空比为D为(100-x)%。
通过PWM方式调速,高电平时间和整个周期时间的比值即占空比对速度的影响如表1所示。
表1 占空比对速度的影响
由表1中数据可以得出占空比的值和手工测量速度的值的关系,在电源电压始终不变的情况下,占空比的值越大,速度越大,如果能够实现占空比的连续调节,则可实现电机的无极调速。
2.2 增量式编码器的设计与实现
由于增量式编码器的测速精确,因此,这里采用增量式旋转编码器来测速,它装在电机的转轴上,电机的转轴转动时编码器随之转动,转轴带动车轮的转速情况是以脉冲信号形式输出的。码盘的位置随转轴在不断发生变化,输出一系列的脉冲信号,根据位置变化的方向用计数器对脉冲信号进行加/减计数,通过采样固定时间的脉冲数,经过转换后获得转速。图3为光电式编码器的示意图,一个带光栅的码盘,由发光元件作为光源来发射光,随着码盘的转动,不断地有光通过光栅,光通过光栅时,光敏元件接收到光,即接收到高电平,输出脉冲信号,光敏元件没有接收到光时,没有光通过光栅,接收到低电平,即没有脉冲输出。如果一个码盘的光栅数越多,则它的精度越高。电机旋转一圈,码盘上有多少个光栅,接受管就会接收多少个高电平,进而输出相应的脉冲信号。这里采用的是ASLONG JGA25-371电机,它携带的是334线码盘,即334个光栅,具有较高的测速精度,其电机转一圈输出334个脉冲,芯片上已集成了脉冲整形触发的电路,输出的是矩形方波,将脉冲输出线接在单片机上,通过单片机处理后获得电机的速度。
图3 编码器
增量式旋转编码器利用它的内部两个光敏接受管通过转化角度码盘的时序和及它的相位关系,得到角度码盘角度位移量增加即正转或减少即负转。如图4为编码器的原理图。
图4 增量式旋转编码器原理
A,B两点分别对应的是两个光敏接受管,它们之间的距离是S2,码盘上的光栅间距分别为S0和S1。S0和S1距离的和是S2的四倍。这样保证了A,B波形相位相差90度。旋转的反向不同,锯齿波A,B先到达高电平的顺序就会不同,如图4左侧所示,利用顺序的不同,就可以得到旋转的方向。
测速方法是M法测速,如图5,M法测速即在固定周期的时间Tc内,码盘随位置不断地的变化输出一系列的脉冲信号,计数器对脉冲信号进行计数,计数值为M1,电机每转动一圈输出Z1个脉冲,电机的转速习惯上用r/min为单位,而时间T是以秒为单位,则设转速为n
上式中Z1为码盘的线数是固定值,Tc是自己设定的合理测量周期也是固定值,因此可以得出转速n与脉冲数M1成正比,转速越小误差越大,转速过低时,计数值M1的值可能会小于1,此时电机转轴不能正常运转,所以M法适合高速段[10]。
由于 ASLONG JGA25-371电机在这里选用的是21.3:1的减速比,即是电机轴转动21.3圈,电机输出一圈,即输出一圈光栅数为21.3*334,空载时转速为201 r/min,在固定时间t内计数器对脉冲信号的计数值为i,即编码器输出的值为i,由于是脉冲上升沿和下降沿都会计数,计数器就会在一个脉冲周期内计4次计数原理如图6所示,则t时间内光栅总数为x=i/4,转速 n=60x/(21.3*334*t)。
图5 M法测速
图6 计数器计数原理
2.3 误差分析
为了方便测量和运算,这里采用电机上的车轮每秒转一圈为转速,实际电机转速可以经过相应转化后得出,经过测量,车轮周长为20 cm,编码器测速经过软件测量和手测量值如表2。
表2 误差分析
从2表中数据得出误差范围较大,导致误差较大的原因包括模型车各部分硬件的重量,如电池、螺丝等,电机转轴带动的轮子不够灵活,光电式编码器受外见光的影响以及手工测量受路面摩擦力等的影响等。还有一个重要的原因是这里采用的是M法测速,M法测速适合高速测速,当转速越小的时候误差越大,甚至小到计数值小于1,不能正常行驶。后期应做出的调整主要是从测速方法上,选择M/T法,这种测速方法,即适应高速又适应低速,避免M法在低速时误差大。
3 结束语
本系统基于STM32系列单片机,选择常见的电机模型车作为机械平台,通过细化要求,结合传感器和电机知识对无人小车进行速度控制,实现了基本的小车速度的调控和速度的检测,但是要达到智能控制还有很多地方需要调整和完善,主要从调速稳定性、避障、循迹等方面着手完善。对于这几点的研究有待后期做进一步探讨。
[1]葛广军,杨帆.基于单片机的智能小车控制系统设计[J].河南城建学院学报,2011,3(20):47-50.
[2]丁芝琴.基于霍尔传感器的电机测速装置设计[J].农机化研究,2010(5):81-83.
[3]郭清,王元昔.霍尔传感器在直流电机转速测量中的应用研究[J].传感器与微系统,2011,7(30):54-56.
[4]陈育中.霍尔传感器测速系统的设计[J].科学技术与工程,2010,30(10):7529-7532.
[5]王美丽.霍尔传感器的应用探讨[J].山西电子技术,2010(4):84-86.
[6]张顺星,梁小宜.基于旋转编码器及MCGS的电机测速系统设计与实现[J].自动化与仪器仪表,2014(11):161-163.
[7]丁卫东,朱卫民,曹玲芝.基于增量式光电编码器电机测速系统的设计[J].郑州轻工业学院学报:自然科学版,2013,6(28):95-97.
[8]周维来,裴景斌,徐殿国.基于双PWM控制永磁直驱风电变流器的研究[J].变频器世界,2010(5):60-63.
[9]王瑜,王斌.基于STC系列微控制器的电机数字测速系统设计[J].电气技术,2012(3):69-71.
[10]焦东升,张秀彬,应俊豪.基于正交编码器高精度测速方法的研究[J].微型电脑应用,2010.10(26):13-15.
[11]王文成,李健.基于单片机的电机转速测量系统的设计[J].仪表技术与传感器,2011(8):70-72.
[12]李玲,李洋涛.基于FPGA的相关测速系统[J].微型机与应用,2012,20(31):68-71.
[13]郑隆举,李慧芳,王志全,等.基于单片机的电机测速系统设计[J].自动化与仪器仪表,2015(3):37-39.
[14]王靖.基于FPGA的电机测速系统设计[J].电子设计工程,2013(12):46-49.
[15]郭志勇.单片机应用技术项目教程(C语言版)[M].北京:中国水利水电出版社,2011.
Design and realization of speed control system based on single chip microcomputer
MA Jing,ZHANG Yu
(School of Computer Science and Engineering,Xi'an Technological University,Xi'an 710021,China)
A speed control technology based on STM32 embedded microprocessor is presented was proposed.Unmanned vehicle is a four wheeled structure as a mechanical platform,it choose common motordrive module.A programwrote according to the related software and hardware configuration,realizes the basic operation of unmanned vehicle and control of speed and speed measuring function.The program achieve intelligent control and complete design goal.
unmanned vehicle; STM32; intelligent control; control of speed; speed measuring
TP242.6
A
1674-6236(2017)16-0138-05
2016-07-17稿件编号:201607126
西安工业大学跨学科研究基金无人车自动避障与路径规划技术研究(CXY 1340-6);国家大学生创新创业项目(201410702037);陕西省"面向工程应用的计算机嵌入式技术人才培养模式创新实验区"支持项目
马 静(1980—),女,陕西西安人,硕士,讲师。研究方向:嵌入式系统。