APP下载

一种新型司控道岔遥控器的设计

2012-04-26苗轶如华泽玺李国胜

沈阳理工大学学报 2012年3期
关键词:服务程序遥控器道岔

苗轶如,华泽玺,李国胜

(西南交通大学电气工程学院,四川成都 610031)

道岔是矿井下运输线路的重要组成部分,道岔搬动速度也影响着煤矿的生产效率。目前道岔控制方式主要有三种,分别是现场操作式、司机遥控式和调度员集控式[1-2]。其中司机遥控式在现阶段煤矿生产中是主导方式,通常是以PT2272无线接收芯片、单片机、继电器为核心的司控道岔系统,该控制系统采用单向通信,即只能由遥控器向控制器发送数据,在出现道岔控制异常时很难判断是通信故障还是控制器故障[3],无法快速准确定位故障点,不利于故障检测和处理。

遥控器是矿车司机发送道岔搬动指令的工具,文中设计一种新型遥控器,在遥控器上增加键盘数量,扩充遥控器的功能。在遥控器上增加显示设备,能够将信息呈现给司机。采用CC1100模块作为遥控设备和控制器的无线数据收发装置,从而实现遥控器与控制器的双向通信,同时也扩充了信息传输的容量,建立较完善信息帧,构成设备和通信的安全机制,使司机能够完成对道岔的控制以及对道岔状态的检测。当控制异常时,也可对通信故障和设备故障及时定位。

1 遥控器系统总体设计

遥控器系统主要由单片机、键盘、LCD液晶显示屏和以及无线数据发送模块构成。系统框图如图1所示。键盘是系统的输入设备,司机通过键盘完成对道岔的控制和检测,每触发一次按键,LCD都会显示该按键,能够有效减少司机的误操作。CC1100模块既是输入设备,也是输出设备,能将司机的命令发送出去,同时也接收控制器回复的信息,接收到的有效信息经过解析后会在LCD上显示,给予司机正确的提示。

图1 系统总体框图

2 遥控器系统硬件设计

遥控器硬件电路由 ATmega16L单片机、CC1100无线收发器、键盘以及带有背光的FM0802B型LCD组成,硬件电路图如图2所示。

图2 遥控器的硬件电路图

系统外接8M石英晶体振荡器Y1,单片机的PB2到PB7引脚与无线收发模块CC1100连接,通过 SPI接口(CSN、MOSI、MISO、CSN)对 CC1100模块的寄存器进行读写,从而实现无线数据的接收和发送[4]。LCD用来显示司机输入的数字、信息发送的结果以及从接收器收到的信息。PC口作为LCD的数据输入端,PD5与FM0802B的RS连接,当单片机对LCD进行写操作时,PD5用于控制写命令还是写数据,PD6与RW引脚连接,用于选择数据的读或者写,PD7是LCD的使能控制端,高电平有效。

键盘是遥控器系统的输入设备,遥控器上一共有14个按键和1个电源开关S14。遥控器由3.6V蓄电池供电,由于功率比较大,所以在电源回路上增加开关,当司机不使用遥控器时可以关闭电源。各按键的功能如表1所示。

表1 遥控器按键功能表

数字键和清除键采用3×4矩阵方式由单片机检测,可以减少I/O口的占用,由PA口实现矩阵键盘的检测,如图2所示。PA0到PA2设置为输出模式,PA3到PA6设为输入模式,每一个按键都对应一个独立的输出引脚和输入引脚,输入的按键都会在LCD上正确显示。S10键是清除键,当司机发现道岔编号输入错误时,可以通过按下S12键清除前面输入的数字,同时也对LCD清屏,纠正输入错误。S11是发送键,它的状态被外部中断INT0检测,当点击发送键后,INT0引脚会检测到下降沿,从而进入INT0的中断服务程序,此时单片机会通过CC1100模块将道岔搬动的控制命令发送给控制器。S12按下触发INT1的中断服务程序,用于发送道岔检测命令[5]。

3 遥控器与控制器的通信帧格式设计

遥控器与接收器之间通信的帧格式如表2所示。一共有6位,起始码固定为02H,结束码为03H。帧类型位用于表示该报文是遥控器发给控制器的命令帧还是控制器回复给遥控器的信息帧,31H表示该信息帧是遥控器发送给控制器的,32H表示此信息帧是控制器发给遥控器。

表2 遥控器和控制器的信息帧格式

指令码用于区分信息帧,设定了6个指令码,它们所表示的内容如表3所示。31H和32H是遥控器发送的,31H为搬动当前道岔命令,32H为读取道岔的状态。当控制器接收到道岔控制命令后,会立即给遥控器发送指令码为33H的信息帧,表示道岔控制命令收到,可以确定通信故障是否存在。当控制器收到遥控器发送的道岔检测指令后,会将道岔的道岔位置发送给遥控器,道岔左侧发送指令码为34H的信息帧,道岔右侧发送指令码为35H的信息帧。如果控制器在规定时间内未能将道岔搬动到位,则发送指令码为30H的信息帧,提示司机道岔搬动异常。

表3 指令码的含义

当控制器接收到遥控器发送的有效道岔搬动指令后,先立即向发送命令的遥控器发送指令码为33H的信息帧,通知司机道岔命令已收到,这样可以确定通信故障是否存在。当道岔搬动成功后,再向遥控器发送当前道岔状态,失败则发送道岔搬动失败的信息。

4 遥控器系统软件设计

在遥控器软件程序中定义了几个关键的全局变量和数组,如表4和表5所示。

表4 遥控器程序中的变量及含义

表5 遥控器软件程序中的数组及含义

num的初始值设置为0,yaokong_num的初始值为此遥控器的编号,在程序中不会被改变。rec_buffer的初始值全设置为0,它用于存放CC1100无线收发模块接收到的数据。send_control和send_check数组的初始值按照3中规定的遥控器的命令帧格式设置,其中表示道岔号的第四位初始值设为0。

遥控器的软件程序设计包括主程序和两个外部中断服务程序,主程序流程图见图3。

图3 遥控器主程序流程图

首先进行初始化,包括设定引脚的数据方向寄存器和数据寄存器的初始值。使能SPI接口将单片机设置为主机模式,16分频。开全局中断,使能INT0和INT1的外部中断,下降沿触发。初始化CC1100模块、FM0802B。然后程序进入查询状态,不断检测是否有键按下,是数字键,则改变变量num,表达式如公式1

式中key表示当前输入的数字。并用LCD显示其值。如果按下的不是数字键,就是清零键,该键将num置零,并对LCD写入清零指令。主程序还要不断检测CC1100模块是否接收到数据,接收到数据后对该rec_buffer进行校验,校验过程分三步:校验起始位和结束位是否为02H和03H;校验帧类型是否为32H;校验遥控器位是否为 ID号yaokong_num。以上三步都正确则根据rec_buffer的第4位和第5位进行解析,用LCD显示该数据代表的内容[6-7]。例如,收到了2号道岔在左侧的信息帧,则LCD会显示出“switch2 left”,如图4所示。无效则丢弃数据,初始化 rec_buffer。

图4 遥控器实物图

当按下发送键时,INT0引脚由高降至低,从而进入INT0的外部中断服务程序,程序流程图如图5所示。进入中断服务程序后,先关中断。即在中断服务程序中禁止其它中断响应。之后对num进行检测,如果值为零,LCD显示“input error”,提示司机道岔号没有输入或输入错误。如果值不为零,将num装载入道岔控制命令数组的第四位,向遥控器发送道岔控制命令帧send_control,并在 LCD上显示“send ok”,然后将 num清零,再次允许INT0和INT1中断。

图5 外部中断INT0的中断服务程序流程图

当司机不清楚前方道岔状态时,可以通过发送道岔检测命令读取当前道岔的状态,即触发检测按键,此时进入INT1的中断服务程序。程序流程基本相同,唯一的区别是将send_check数组发送给控制器,而不是send_control。

5 实验结果

该系统已经经过现场测试,实验数据如表6所示。逐渐扩大遥控器与控制器的距离,观察并记录对转辙机控制成功的次数。由表6可见,在30m范围内,控制器能够对遥控器发送的控制命令成功接收并对转辙机做出控制,当距离增加到40m时,会出现控制失败的情况,成功率为82%。

表6 实验数据

6 结论

文中设计一种新型遥控器,实验结果表明:该遥控器系统的有效控制距离至少为30m,且控制时间低于3s,达到了煤矿运输的要求。同时还能对道岔状态进行有效检测,无论道岔搬动正常还是异常,都能够有效提示司机道岔当前的状态。此遥控器可以在其它的控制领域作为遥控器使用,具有很好的可移植性。

[1]姚玉钦,丁莹亮.基于单片机的无线遥控式直流电动道岔控制系统设计[J].矿山机械,2008,36(19):64-67.

[5]中华人民共和国建设部.GB50388-2006煤矿井下机车运输信号设计规范[M].北京:中国计划出版社,2006.

[2]中华人民共和国建设部.GB50388-2006煤矿井下机车运输信号设计规范[M].北京:中国计划出版社,2006.

[3]胡智宏,卢中宁.新型煤矿道岔无线控制系统设计[J].煤矿机械,2008,8(29):105 -107.

[4]王俊荷,高飞,吴节林.基于CC1100点对点无线数据采集[J].计算机科学,2011,10A(38):212 -214.

[5]王东,盛强,何小刚.基于ATmega16散射光式浊度仪的设计[J].太原理工大学学报,2010,1(40):80-82.

[6] Hua Ze-xi,Chen Xiang-dong,Yin Zhong-ke.Reliability and Real-time of Data Transfer of Operation Control System for High-speed Train[C].The Eighth International Conference Chinese Logistics and Transportation Professionals,2008:2485 -2490.

[7] Yanuarsyah Haroen,Tri Desmana R.Design of Remote Controller of Multiple Unit Locomoltives for Coal Freight rain in South Sumatera Indonesia[J].Power E-lectronics and Drive Systems,2003,11(2):978 -981.

猜你喜欢

服务程序遥控器道岔
我是“糊涂虫”
SylixOS系统的中断嵌套机制研究与实现
时间遥控器
爸妈有个“遥控器”
基于C#的进程守护程序的设计
UDP穿透NAT技术实现数据唤醒车联网T-Box设备的方案
中低速磁浮道岔与轮轨道岔的差异
场间衔接道岔的应用探讨
行走的飞行遥控器
既有线站改插铺临时道岔电路修改