刘瑞 郑琳 杨丰华
沈阳工学院信息与控制学院
基于单片机的升降机控制及报警系统的设计与实现
刘瑞 郑琳 杨丰华
沈阳工学院信息与控制学院
本文通过单片机对步进电机的控制,用C语言编写出相应的程序,通过相应的按键控制电机,并将工作状态通过液晶显示器显示出来。从而实现步进电机的正转、反转、调速、开始停止,通过红外光电开关实现报警功能。这样系统的模拟升降机的运行控制。
步进电机 单片机 驱动机构 红外开关 转动
在硬件设计上,选择两块万用板,分别作为发送端和接收端。其中,发送端主要有显示屏,键盘等设备,显示器及时显示步进电机的工作状态,键盘作为外部中断源,设置了正转、反转、变速等运行状态,相当于具有显示功能的遥控装置。接收端主要有步进电机和红外报警装置,本系统用步进电机代替升降机的电机,通过步进电机的转动和变速模拟升降机的上升、下降和变速。红外报警装置主要是为了检测障碍物,发出警报并且作用于步进电机使之停止运行。
单片机控制模块是由STC89C52最小系统组成,包括STC89C52单片机、晶振电路和复位电路组成。由于单片机电流太小不可以直接驱动步进电机,直接增大步进电机的电流会损坏单片机,因此需要在步进电机和单片机之间加装一个放大电流的器件来驱动步进电机。因此选择ULN2003A来驱动步进电机。
本系统使用LCD1602字符型液晶显示模块显示步进电机的运行距离。LCD的控制端口RS、R/W、E分别与单片机的P2.4、P2.5、P2.6相连。
本系统采用E18D80NK,一种集发射与接收于一体的光电传感器。发射光经过调制后发出,接收头对反射光进行解调输出。避免了可见光的对其的干扰。当红外光电开关在相应距离内检测到障碍物,红外光电开关有高电平变为低电平,蜂鸣器发出警报。
nRF24L01是工作在2.4GHz~2.5GHz的ISM频段的单片无线收发器芯片。
本系统采用编程较为简单的独立式按键,每个按键占用一个I/O端口。
单片机工作时首先要对系统进行初始化,且LCD1602也要进行初始化,对各变量、各端口初始化。
初始化后,LCD1602进入主界面,系统会进入循环部分。进入循环部分后,单片机会不断检查是否有按键按下,如果没有按键按下,就继续检查;如果检测到有按键按下,则通过nRF24L01将信号传输给接收模块,执行相应的程序。
将接收机的接收地址以及将要发送的数据按时序顺序依次送入NRF24L01;配置CONFIG寄存器,使之进入发送模式;CE置高通过微控制器(至少10us),激发NRF24L01进行Enhanced ShockBurstTM发射;供电于射频前端;打包射频数据(包括加字头和CRC校验码);发射数据包;完成发射,NRF24L01状态为空闲。
步进电机的转动主要是按一定的时间顺序给给电机的各绕组有规律的连续不断的通入电流,步进电机才会转动。根据电流的通入顺序和频率,步进电机实现正转反转以及调速。在这个过程中,时间间隔是通过定时器中断一定次数产生的。所以,定时器中断程序的任务就是判断电机的运行方向,发送下一个脉冲,保存当前的状态。
首先是NRF24L01通信,起初先测试该模块是否能进行通信。
对发送端硬件来说,从左到右的6个按键分别是正向加速、正向减速、反向加速、反向减速、开始和切换。红外报警设备则设置为20cm报警距离,当距离内有障碍物时报警并停止运转,障碍物消失,报警声停止,电机继续转动。打开电源,显示器点亮。按下开始按键后,再按下正向加速键,电机转动,且显示器上显示速度和移动。当红外报警装置在可感应距离内测到障碍物,红外报警发出警报,并且电机停止运转。
采用单片机作为控制核心,利用其强大的功能,将显示电路、控制电路等有机的结合在一起。同时利用nRF24L01作为无线收发设备实现两块不同万用板的通信。构成一个统一的、操作方便的简单系统。
通过系统设计实现了本设计的预期目标,完成了任务。具体功能如下:完成率整个系统的硬件设计和软件编程,能通过按键控制,无线控制另一块万用板上的电机的转速控制,能够实现步进电机的正转、反转、变速;能够实现告警功能,通过光电开关实现对障碍物的报警,并使电机停止转动。
[1]曾庆波,张玉萍,崔妍等.单片机应用技术[M].哈尔滨:哈尔滨工业大学出版社,2010:2-61
[2]刘宝延等.步进电机及其驱动控制系统[M].哈尔滨:哈尔滨工业大学出版社,1997:29-41
[3]高军礼,卢卓权等.步进电机一体化控制系统的设计[J].微计算机信息,2007,4-1:68-70
[4]楼然苗.51系列单片机设计实例[M].北京航空航天大学出版社,2006:30-56
刘瑞、杨丰华,男,沈阳工学院,学生。
郑琳(通讯作者),女,辽宁人,沈阳工学院,教师,讲师,硕士学位。