基于单片机的道旁轨距面润滑控制系统设计
2018-06-21张军,李珂
张 军,李 珂
(郑州大学 机械工程学院,河南 郑州 450001)
轮缘与钢轨轨距角间的磨耗主要是由机车运行于曲线路段造成的,并且外轨侧磨损最为严重,正确合理的轨道润滑可以极大程度地减少车轮与钢轨的磨损[1-2].目前国内在空旷开阔环境中大量使用的道旁轨距面润滑装置如图1所示.它包括太阳能供电系统、列车接近传感器、控制系统和机械执行机构等部分[3].这种润滑装置适用于小半径曲线钢轨和编组场道岔曲尖轨润滑,具有涂覆位置准确、设备维护方便等优点.但其控制系统存在无法灵活调节润滑剂量、功耗大等缺点.
本文设计一种基于STM32单片机的道旁轨距面润滑控制系统,根据系统需要选择型号为STM32F103VET的单片机作为控制系统的核心处理器.该单片机功能集成度高,包含多种接口(如多达80个通用IO端口、11个定时器和13路通信接口等),与外界的扩展连接非常方便.它可以通过连接各种传感器获取外部信息,通过连接电机驱动模块控制电机运动,也可以通过通信接口与上位机进行通信,实现数据的交互.以该单片机为基础设计的道旁轨距面润滑控制系统可以实现润滑剂量的灵活调节,同时在检测到没有列车通过时输出关闭机械执行机构电源的控制指令,以降低系统功耗.
图1 道旁轨距面润滑装置
1 润滑控制系统总体设计方案
基于单片机的道旁轨距面润滑控制系统框图如图2所示.STM32F103VET微控制器是该系统的核心,它具有ARM Cortex-M3内核.进行系统设计时可将其工作频率设置为72 MHz,并采用内部FLASH存放运行参数.微控制器通过RS232通信接口与上位机进行通信,实现系统软硬件测试和运行参数的交互.该系统的工作状态指示主要由LED指示灯完成,指示的内容包括运行、欠压、缺料和故障.
图2 润滑控制系统框图
STM32F103VET微控制器通过驱动模块控制电机运动;通过外部继电器切断机械执行机构电源;利用控制器内部的定时器和IO端口,连接列车接近传感器、上下限位接近开关等模块,实现控制系统的智能化运行.
2 润滑控制系统硬件设计
2.1 基于ARM Cortex-M3的控制模块
STM32F103VET微控制器是意法半导体公司在业界最先推出的高性能、低功耗、低成本的嵌入式32位处理器.其内部集成3路具有12位精度的模数转换器(ADC)、脉冲宽度调制(PWM)控制器、高达512 kB的闪存器、13路通信接口等,有利于简化控制系统外围电路设计,可靠性更高,非常适用于功能丰富的智能道旁轨距面润滑控制系统.
2.2 RS232通信模块
RS232是一种串行通信总线标准,是数据终端设备(DTE)和数据通信设备(DCE)之间的接口标准.STM32F103VET微控制器和上位机进行串口通信时,尽管STM32F103VET微控制器具有串行通信的功能,但其提供信号的电平和RS232的标准不一样,因此需要进行电平转换.该润滑控制系统能够通过MAX232电平转换芯片实现微控制器与上位机之间的通信,并通过串口调试助手实现核心处理器与上位机之间的数据交互.
2.3 电机控制模块
电机控制模块硬件部分包括光电耦合器和电机驱动模块L298N.其中,光电耦合器的型号为TLP291-4;电机驱动模块L298N内含两个H桥的高电压大电流全桥式驱动器,用于驱动直流电机、步进电机和继电器线圈等感性负载[4].电机驱动电路如图3所示.STM32F103VET主芯片的两个通用IO端口通过光电耦合器分别与图3中的A和B连接,作为电机驱动模块的输入端,用于控制电机的转向.STM32F103VET主芯片使用内部定时器产生一路PWM输出,通过型号为PC410L0NIP的光电耦合器与电机驱动模块L298N的使能端连接,用于控制电机的停转和速度调节.
图3 电机驱动电路
2.4 列车接近传感器
列车接近传感器是一种电磁传感器,它能够直接从被测对象的机械运动中测出电信号.列车接近传感器通常被固定在铁道上,通过导线将电信号传入控制系统.本设计选用的列车接近传感器输出信号为3~18 V的正弦交流电压.列车接近传感器电路如图4所示.
图4 列车接近传感器电路
在图4中,D10为SMBJ26CA瞬态抑制二极管,用于后续电路保护;MB6S是桥式整流器,列车接近传感器输出的正弦交流电压由它转换为直流电压;PS2805-1是光电耦合器,包含一个砷化镓二极管和一个光电晶体管,对STM32F103VET微控制器的GPIO口实现电气隔离和保护.
2.5 上下限位接近开关
当列车驶入润滑区域时,列车接近传感器检测到列车到达信号,将信号传递给控制器,控制器驱动执行机构开始润滑工作,执行机构将润滑块推入润滑区域,对钢轨内侧实施润滑.随着润滑块的逐渐上升,需要检测润滑块的实际位置,用来监控执行机构的安全运行,同时也为下一步操作发出切换指令.接近开关在控制系统中是常用的传感器元件,主要有以下几种:电感式、电容式、霍尔式和光电式.本设计选用的是三线制的电感式接近开关.
3 润滑控制系统软件设计
3.1 主程序设计
润滑控制的系统软件以美国Keil Software公司的Keil μVision5为开发环境,使用嵌入式C语言编写整个控制程序.根据道旁轨距面润滑装置功能要求设计的系统主程序流程如图5所示.系统开机后,开始运行电机、限位开关、列车接近传感器等模块的初始化程序,并访问内部FLASH,读取系统运行参数(包括运行时间、休息时间和运行速度).初始化程序完成后,系统程序开始在就绪、运行和休眠3个状态之间切换(图6).当系统检测到上限位接近开关信号时,开始运行复位程序;检测到下限位接近开关信号时,开始运行等待换料程序;直到操作人员更换好润滑剂并按下复位按键,新的工作循环才开始.
程序主逻辑中运用了状态机的编程思路,实现了控制系统在就绪、运行、休眠3个状态之间的灵活转换.状态机是软件编程的一个重要概念.思路清晰而且高效的程序中通常有状态机的存在.
图5 系统主程序流程
图6 系统状态切换示意图
3.2 RS232通信设计
STM32F103VET微控制器通过RS232串口与上位机连接,利用其自身的USART控制器完成通信.USART控制器使用之前需要初始化,初始化的主要任务是设置操作每个通道所需要的参数.这些参数包括串口通信时数据串的数据位、停止位、奇偶校验位等.另外,还需要设置通信的波特率及中断方式.在系统设计时,通信设置为接收完成中断方式,波特率设置为常用的115 200 Bd/s;数据串设置为8位数据位、1位停止位和无奇偶校验.
RS232通信主要有两大类:读取运行参数和传感器信息;发送修改运行参数指令.STM32单片机采集到的传感器信息、运行参数和报警信息等经过处理传送给上位机.上位机通过串口调试助手查看STM32单片机发出的数据.该控制系统的监控信息如表1所示.上位机也可以通过串口调试助手发送特定格式的指令来修改控制系统的运行参数.
表1 控制系统的监控信息列表
3.3 PWM电机控制设计
STM32F103VET微控制器具有强大的PWM输出功能.当TIMx_CNT向上(加1)计数累加到寄存器TIMx_CCRx确定的值时,PWM输出通道便会实现电平的翻转;当TIMx_CNT被加载到TIMx_ARR寄存器时便会自动清零.因此,通过TIMx_ARR和TIMx_CCRx寄存器可确定PWM的周期和占空比[5].STM32单片机的PWM可分为模式1和模式2.当模式1向上计数时,一旦 TIMx_CNT=TIMx_CCR1,通道1则为无效电平,否则为有效电平.当模式2向上计数时,一旦TIMx_CNT=TIMx_CCR1,通道1则为有效电平,否则为无效电平.
该润滑控制系统的电机控制采用模式2.定时器4选用CH2通道,频率为200 Hz,占空比为50%.TIM4定时器输出PWM的步骤如下:
步骤1 开启TIM4时钟及复用功能时钟;
步骤2 设置GPIO;
步骤3 设置TIM4定时器的相关寄存器;
步骤4 设置TIM4定时器的PWM相关寄存器;
步骤5 使能TIM4.
完成了以上5个步骤就可以实现PWM的不同输出,但其占空比是固定的.通过修改TIM4_CCR2可控制CH2的输出占空比,从而实现对电机转速的调节.修改占空比的代码如下:
void TIM_SetCompare2(TIM_TypeDef* TIMx, uint16_t Compare2)
{
assert_param(IS_TIM_LIST6_PERIPH(TIMx));
TIMx->CCR2 = Compare2;
}
4 系统实现
所设计的道旁轨距面润滑控制系统以STM32单片机作为控制器,通过专用电缆连接线驱动8路机械执行机构同时工作,对系统的运行状态进行实时监控.其控制面板上带有通用RS232接口,操作人员可以使用RS232连接线完成控制系统与上位机的连接,获取控制系统运行参数、蓄电池电压以及报警信息,并且可以根据车流量的大小,通过发送运行参数修改指令,实现对润滑剂量的灵活调节.
5 结束语
道旁轨距面润滑控制系统以基于ARM Cortex-M3内核的STM32F103VET微处理器为核心,集成了列车接近传感器、限位接近开关、电机驱动控制模块、LED指示灯及RS232通信电路等.在相应的软件程序控制下,该润滑控制系统能够实时监控润滑系统的工作状态及运行参数.在检测到没有列车经过时,控制系统能够通过继电器关闭机械传动机构的电源,有效降低了润滑装置的功耗.在喷涂润滑剂量过多或不足的情况下,操作人员通过上位机可以调节控制系统的运行参数,减少或增加润滑剂的喷涂量,直至喷涂量合适为止.该控制系统具有抗干扰能力强、结构清晰等优点.其设计应用为道旁轨距面润滑装置的智能化控制提供了一种思路.
参考文献:
[1] 李 辉,杨 献,唐冈林.智能化机车轮缘喷油控制器的设计[J].机车电传动,2009(6):29-31.
[2] WANG Wenjian,GUO Jun,LIU Qiyue.Experimental study on wear and spalling behaviors of railway wheel[J].Chinese Journal of Mechanical Engineering,2013,26(6):1243-1249.
[3] 徐凤生.轮轨摩擦管理技术及其应用研究[J].武汉理工大学学报(信息与管理工程版),2017,39(5):643-648.
[4] 赵庆松,苏 敏.基于ARM的直流电机调速系统的设计与实现[J].微计算机信息,2007(2):173-175.
[5] 彭 刚,袁 兵.基于双ARM Cortex架构的移动机器人控制器设计[J].华中科技大学学报(自然科学版),2013,41(S1):284-288.