APP下载

基于RS485的新型矿用报警器设计

2021-09-27攀,牛鑫,陈

宁夏师范学院学报 2021年7期
关键词:主程序数码管子程序

李 攀,牛 鑫,陈 平

(1.济源职业技术学院 信息工程系,河南 济源 459000;2.济源职业技术学院 电气工程系,河南 济源 459000)

语音声光报警器是煤矿安全生产的重要设备.目前国内有很多种类型的语音声光报警器,但存在以下缺点:煤矿一般提供1140 V、660 V、380 V和127 V等交流电源,但大部分产品不能直接使用;一般设备只有一种语言功能,不能满足煤矿实际生产的需求;一般设备只能在井口、风门或弯道中等单一地方使用,一旦环境有所变化需重新采购设备;普通设备因为没有联机功能而无法实现远程控制[1].

本文设计的新型矿用报警系统采用微控制技术,任何场合的信号设备都能适用,并且不需要用户提供单独本安电源;具有语音报警、声光显示、打点信号、通讯联络等功能,语音报警信息可根据不同场合需求任意设置,报警器可以多台联机,沿线报警;如报警扬声器需要提高报警声音,还可以外连大功率扬声器以提高报警音量;采用RS485通信接口,可以方便地与上位机通讯,从而实现远程控制.本设计功能齐全,性能可靠,结构紧凑,是集声光信号、语音报警、通讯为一体的使用方便的煤矿安全设施多功能信号装置.

1 硬件设计

1.1 总体设计

该系统对电网交流127 V电源经过处理后输出直流12 V电压作为其他各本安电路的电源.通过AT89C51单片机系统的按键控制WTV040语音芯片工作,当需要开动绞车或斜坡道下面的人需要开车时语音提示“正在行车,不准行人”“信号已发,严禁入罐”“1000 Hz方波信号”等报警语音信号和红灯闪烁及绿灯指示信号;当按下话筒按钮,即可与其他地方的人员进行对话.八段数码管显示打点信息.采用抗干扰强和通信距离远的RS485通信协议实现其他设备的联络通讯.软件方案主要依靠程序编制完成:主程序、初始化子程序、语音播放模式选择子程序、打点数码管显示子程序、定时器中断子程序、按键子程序等.

1.2 硬件框图

图1是系统硬件框图.本机由单片机最小系统、电源电路、按键输入、麦克风输入、语音输入、声光报警、显示电路、继电器输出电路和RS485通讯电路组成.

图1 语音声光报警器的硬件框图

1.3 电源电路

电网的交流127 V经过变压器降压到交流24 V,经过桥式整流、滤波、LM317、LM7815CT和LM7812三端稳压器后输出直流12 V电压,作为其他各本安电路的电源[2-3].电源电路图如图2所示.

图2 变压器电路图

1.4 语音报警和语音通信电路

此电路采用新型语音芯片WTV040,该芯片语音长达40 s.其内置的16bits DAC数字/仿真转换器、PSG语音合成器和音质优化算法器,保证了音频质量;WTV040同时具备了按键控制、按键组合控制、并口控制及串口控制等多种控制模式[4].因为语音声音较少,本设计中采用并口控制,可用于播出“正在行车,不准行人”“信号已发,严禁入罐”“1000 Hz方波信号”等几种语音报警信号,当出现故障信息时,可循环播放不同的语音提醒人们注意操作安全.

WTV040语音芯片的四种语音信号分别由单片机P10-P13来控制,P14来控制语音芯片的复位信号,当复位信号为低电平时,该语音芯片不处于复位状态[5-6].语音芯片和音频放大电路如图3所示.

图3 语音报警芯片电路

TDA2030音频放大电路的输入信号有两个:语音芯片内存储的语音信号和通过MIC进行通讯广播的声音信号.本设计中还包括一个半双工对讲功能,当按下话筒按钮,即可与其他地方的人员进行对话.其电路如图4所示.

图4 语音通讯功能电路

控制电路采用了CD4066,当摘机信号SA为高电平时,控制U16A、U16B、U16C三个传输门同时导通,此时MIC信号经LM386放大后的信号经A、B、C传输到下台报警电路的交流载波线上,在下台报警器中,SA信号同时串入并打开了U16C传输门,即把MIC过来的声音信号同时经confgb传输到每台报警器的功放前端,完成了语音通讯及播放功能.同时SA信号还打开U16D传输门,把P14拉为低电平,使得语音芯片WTV040复位信号有效,保证功放在同一时间只播放一种语音信号.

1.5 显示电路

显示电路由超亮度红绿两种发光二极管和数码管组成,发光二极管用于显示司机发出的各种信号,而数码管用于显示打点信号的数(当打点信号松开后一秒钟内再次打点,那么这次打点将记为本次打点信号的次数).

发光二极管显示电路具有三种工作状态,即:静态工作状态,红灯熄,绿灯亮(即无打点信号和开车信号);开车工作状态,绿灯熄,红灯闪烁;打点工作状态,绿灯熄,红灯亮.其具体电路如图5和图6所示.

图5 发光二极管显示电路

图6 数码管显示电路

1.6 通信电路

MAX485电路实现联机控制,LED发光二极管的亮灭主要用于显示系统是否连上、是否正在传输数据等信息.MAX485可实现电脑对系统的有效控制,如图7所示.

MAX232主要实现单片机的ISP下载功能,MAX232与串口相连实现烧录功能.MAX232总共有两组,本次只使用一组,如图8所示.

图7 数码管显示电路图8 MAX232通讯电路图

2 软件设计

2.1 主程序

软件部分主要包括:主程序、初始化子程序、打点数码管显示子程序、语音播放模式选择子程序、定时器中断子程序、按键子程序.主程序初始化定时器0、语音报警模块和RS485通信,判断报警及打点信号.主程序流程图如图9所示.

图9 主程序流程图

主程序主要功能是实现定时器、语音报警和RS485的初始化,通过死循环判断是否报警和打点并执行相应的任务,其实现的关键代码如下.

void main ()

{

time0_init(); //定时器初始化

w040_init(); //语音报警初始化

UART485_init(); //RS485初始化

while(1)

{

if(!Key_k) //报警

{

}

else if(!Key_x)//打点

{

}

}

}

2.2 定时器中断

1秒计时,在1秒内的打点认为同一次,不在一秒内显示则为最后打点的次数;定时器在打点按下后开始计时中断,计时时间到后改为计时10秒钟显示次数,然后清0,其实现的关键代码为.

void time0_init()

{

ET0 = 1;

TR0 = 0; //定时器T0中断不允许

TMOD = 0x01; // 设置定时器的工作方式

TH0 = 0x3c; //定时50ms

TL0 = 0xb0;

sec_cou = 20;

sec_num = NUM1;

sec10_num = NUM10;//计时赋值

EA = 1;

}

2.3 语音播放模式选择

{P17,P16}={00,01,10,11 }形成四种语音播放模式,其中模式0表示不准行人,模式1表示禁止入罐,模式2和模式3未用,其实现的关键代码如下.

uchar mode_judge()

{

uchar temp;

temp=P1;

……

}

2.4 通信程序设计

RS485芯片为MAX485.MAX485的1和4引脚分别接单片机的P31和P30引脚,进行数据的发送和接收;2和3引脚接NPN三极管的c极;单片机的P16引脚接三极管b极进行方向控制;实现与上位机通信.芯片程序为UART485_init()函数,即启动UART485接收中断、设置通信波特率、允许接收和启动T/C1产生波特率.在发送函数UART485_T()中将参数中的数据发送给上位机,该函数完成静态、开车和打点工作状态信号传输.RS485串口中断处理函数UART485_R() interrupt 4接收到数据时产生中断,将接收到的上位机数据数组内容进行读取,执行更换语言报警内容、调节发光二极管闪烁频率和变换数码管打点数,其实现的关键代码如下.

void UART485_R() interrupt 4

{

//接收

RI = 0; //接收中断标志位为0(软件清零)

table[j++]=SBUF; //存数据到接收缓存

if(j>=8){bz2=1;} //数组满时,允许发送

}

void UART_T (unsigned char UART_data)

{

SBUF = UART_data;//将接收的数据发送回去

while(TI == 0);//检查发送中断标志位

TI = 0; //令发送中断标志位为0(软件清零)

}

软件部分的程序均通过Keil C51软件进行编写、编译,将生成的十六进制文件通过烧录器写到AT89C51单片机,经过调试最终实现了新型矿用报警器的全部自动控制功能.

3 系统测试

本文通过报警器软硬件的设计,实现了控制语言机自动报警,通过话筒与其他人员进行对话,由超亮度红绿两种发光二极管和数码管组成显示电路.实现了红灯熄、绿灯亮(即无打点信号和开车信号)的静态工作状态,绿灯熄、红灯闪烁(语音提示正在行车不准行人)的开车工作状态,绿灯熄,红灯亮(给司机一个开车信号,数码管显示打点信号,语言机发1000 Hz信号)的打点工作状态,实现了可以随时对讲的双工通信方式,系统实物图分别如图10、图11和图12所示.该系统本安端最高开路电压为DC 12 V;本安端最大短电流为DC 0.5 A;音频输出功率为5 W;灯光闪烁频率为1 Hz;信号频率为1000 Hz±100.该报警器经煤矿实际应用,性能稳定可靠、安全性能好、使用方便,满足了设计要求,取得了较好的效果.

图10 静态工作状态图11 开车工作状态

图12 打点工作状态

4 结束语

本设计采用本安电源供电,整个控制电路由单片机来完成,单片机通过判断按键输入控制预先录音好的语音芯片进行不同的语音播放,经过处理放大后的信号推动扬声器发声.麦克风经过电路处理实现半双工通信,摘下话筒即可与其他地方的人员进行对话,单片机控制警示信息用红绿灯显示,通过单片机进行打点数判断并显示到数码管上,不同设备按照RS485通信协议实现数据通信.济源市是全国的煤炭机电产品的生产基地,该设计具有良好的社会经济效益.

由于现在矿用控制器采用的还是纯数字电路,用单片机代替纯数字电路,处理速度快、性能稳定、具有可编程等优点;采用便宜的WTV040代替较贵的ISD4004语音芯片,节省了硬件成本;采用数码管显示出打点数据,以往产品都无此功能;设计麦克风具有半双工通信功能,按下话筒按钮,即可与其他地方的人员进行对话;用RS485能够直接联网,完成井下设备和上位机的通信.

猜你喜欢

主程序数码管子程序
自动升级程序在船舶监测系统中的应用
基于51单片机的分数计数器设计
浅谈数控铣削技术代码程序的嵌套方式研究
Arduino编程
MC9S08FL16单片机数码管静态显示分析
电控冰箱软件模块化设计
时光倒流 换回PotPlayer老图标
浅谈子程序在数控车编程中的应用
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序