自动控制小车转向机构控制技术研究与实现
2017-05-13隋美丽夏征付贻伟王楠
隋美丽,夏征,付贻伟,王楠
(1.北京电子科技职业学院 汽车工程学院,北京 100176;2.中油管道检测技术有限责任公司,河北 廊坊 065000)
自动控制小车转向机构控制技术研究与实现
隋美丽1,夏征2,付贻伟1,王楠1
(1.北京电子科技职业学院 汽车工程学院,北京 100176;2.中油管道检测技术有限责任公司,河北 廊坊 065000)
文章采用STC12C5202AD单片机来实现PWM输出控制,控制舵机的转动,从而实现线控小车的转向控制。结果表明舵机的转角范围达到-90°到90°,且线性度较好,小车转向稳定,控制精度较高,达到控制目的。
转向机构;舵机;自动控制
10.16638/j.cnki.1671-7988.2017.08.016
CLC NO.:U463 Document Code: A Article ID: 1671-7988 (2017)08-49-02
绪论
舵机英文名称为Servo,也称伺服机,是一种位置伺服驱动器,适用于角度不断变化并可以保持控制系统。其特点是结钩紧凑、易于安装调试、控制简单、扭力大、成本低。舵机的主要性能取决于最大力矩和工作速度(一般是以秒/60度为单位)。舵机通常分为气动舵机、液压舵机、电动舵机,目前电动舵机因其简单可靠、工艺性好、使用方便、成本低廉、易于控制等特点得到广泛应用[1]。目前电动舵机采用DSP芯片的嵌入式控制形式和先进控制策略的PID的控制形式[2],舵机的输入线共有三条,电源线、地线,这两根线为舵机提供最基本的电力,另外一根线是控制信号线,用于脉冲信号的输入。本文采用STC12C5202AD单片机来实现PWM输出控制,控制舵机的转动,从而实现自动控制小车的转向控制。
1、舵机工作原理
舵机主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是由接收机发出讯号给舵机,经由电路板上的IC判断转动方向,再驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回信号,判断是否已经到达定位。位置检测器其实就是可变电阻,当舵机转动时电阻值也会随之改变,藉由检测电阻值便可知转动的角度[3]。
舵机调速是通过对脉冲信号的占空比进行控制,占空比大,相应获得的电压就大,转速快[4];反之亦然。舵机电压通常介于4V~6V,一般取5V。控制线的输入是一个宽度可调的周期性方波脉冲信号,可通过单片机I/O口对其进行控制。方波脉冲信号周期为20ms(频率为50Hz)。当方波脉冲宽度改变时,舵机转轴角度发生改变,角度变化与脉冲宽度的变化成正比。以180°角度伺服为例,对应关系如下:0.5ms~-90°、1ms~-45°、1.5ms~0°、2ms~45°、2.5ms~90°,因此,PWM与舵机转角呈线性变化,即给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供下一个宽度的脉冲信号,才会改变输出角度。
2、单片机控制
对于线控小车系统来说,采用STC12C5202AD单片机来实现PWM输出控制,使端口输出的PWM信号脉冲宽度实现毫秒级甚至微秒级的变化,从而提高舵机的转角精度。单片机系统实现对小车舵机输出转角的控制,要产生20ms的PWM周期信号,并对脉宽进行调整,借以调整占空比。小车舵机如图1所示。
图1 线控小车
2.1 应用两个定时器
当系统中的定时/计数器资源足够使用,所控制的舵机只有一个时,可将20ms定时分为两次中断执行,一次短定时中断和一次长定时中断。如要让舵机左转45°,它的正脉冲为2ms,则负脉冲为20ms-2ms=18ms。首先向控制口发送2ms高电平,中断发生后,在中断程序里将控制口改为低电平,并将中断时间改为18ms,如此往复实现PWM信号输出到舵机。如系统晶振频率选择22.1184MHz,采用T0的方式0实现2ms高电平输出,采用T1的方式1实现18ms低电平定时输出,采用中断方式由P2.5口输出高低电平。
2.2 应用一个定时器
若采用一个定时器T0,系统主频仍为22.1184MHz,可将20ms周期PWM脉冲分成200份,每一份为0.1ms,采用中断方式,定时器T0工作方式1,2ms高电平输出即为中断20次,并输出20次高电平,18ms低电平输出即为中断180次,并输出180次低电平,采用一个定时器如果对定时时间进行细分,可将20ms的PWM周期信号分为2000份,每一份定时时间为0.01ms,这样定时输出的效果更明显,对舵机角度的控制也可做的更精确,也能实现同时对多个舵机的控制。如果系统中需要控制几个舵机的准确转动,可以用单片机和计数器进行脉冲计数产生PWM信号。脉冲计数可以利用5l单片机的内部计数器来实现,但是从软件系统的稳定性和程序结构的合理性看,最好使用外部的计数器实现。
2.3 51计数器初值设定软件
在对定时器的设置中,初始值计算是非常烦琐的一件事情,这时,可以采用“51计数器初值设定”软件,其使用非常简单,界面如图3所示。
该软件支持定时器方式为:方式0~方式3,晶振频率、定时时长根据实际情况输入,则会在软件的顶部显示计数器应装入的16位初值。以上程序中的定时器初始值均由本软件计算产生。
图2 51计数器初值设定
3、结束语
随着控制技术的不断发展,人们对自动控制系统的精度要求越来越高。在小车控制系统中,采用了STC12C5202AD单片机产生PWM信号,方便地实现了舵机控制。对线控小车的测试表明,控制系统工作稳定,PWM占空比(0.5~2.5ms的正脉冲宽度)和舵机的转角(-90°~90°)线性度较好,小车转向稳定,控制精度较高。
[1] 杨平. 双余度无刷直流电机控制系统设计及性能研究[D]. 西安:西北工业大学,2005.3.
[2] 蒋亚峰. 舵机系统控制算法及性能改进[D].西安:西安电子科技大学,2009.1.
[3] 李华进,刘鸣. 机器人关节及转向装置-舵机的原理及应用[J]. 高校实验室工作研究,2010.3.
[4] 田瑶. 基于PC控制的智能小车循迹系统的实现[D]. 武汉:华中师范大学,2011.5.
Research and Implementation of Steering Mechanism Control Technology for Automatic Control Car
Sui Meili1, Xia Zheng2, Fu Yiwei1, WangNan1
( 1.School of Automotive Engineering, Beijing Polytechnic, Beijing 100176; 2.China Petroleum Pipeline Inspection Technologies Co. Ltd, Hebei Langfang 065000 )
This paper realizes the PWM output control using STC12C5202AD microcontroller, rotate steering control, so as to realize the steering control by wire car. The results show that the steering angle range of -90 degrees to 90 degrees, and linearity is good, car steering stability, high control accuracy, to achieve the purpose of control.
Steering mechanism; Steering gear; Automatic control
U463
A
1671-7988 (2017)08-49-02
隋美丽(1978-)女,讲师,博士。就职于北京电子科技职业学院,主要从事汽车电子、车辆工程等方面的研究。