基于Modbus协议的高压带电显示器设计

2021-01-08 06:17董文华
工程技术研究 2020年21期
关键词:中断显示器串口

董文华

(湖北广播电视台,湖北 武汉 430071)

高压带电显示器是一种直接安装在室内电气设备上,能够直观显示出电气设备是否带有运行电压的提示性安全装置。当设备带有运行电压时,该显示器显示窗发出亮光指示,警示运维人员高压设备带电,若设备无电,则无相应指示。

高压带电显示器通过抽压电容芯棒,从高压带电回路中抽取一定的电压作为显示和闭锁的电源,用于反映装置设置处于带电状态,并能强制闭锁开关柜柜门。

高压带电显示器因其特性被广泛用于进线母线、断路器、主变、开关柜、GIS组合电器等处,但在实际使用过程中也暴露出一定的不足。目前,电力监控系统被广泛应用于变配电站所,用于监视和控制电力生产及供应全过程。但传统的高压带电显示器只能在本地通过指示灯判断系统运行状态,无数据接口提供给后台电力监控系统,这极大地限制了该设备的应用前景。特别是在广播电视供配电系统中,一般采用双电源供电高压母联互倒的运行方式。当一路市电停电时,该侧高压进线断路器处于分断状态,后台系统无法通过有效方式检测该侧市电是否来电。值班人员只能反复检查高压进线柜高压带电显示器,确认是否来电,从而增加了值班人员的工作量。

1 基于Modbus协议的高压带电显示器总体设计方案

1.1 高压带电显示器原理

高压带电显示器原理如图1所示。该系统由传感器和显示器两部分组成。通常,传感器安装在电缆室或母线室,与母线相连,其作用是将高压带电部分的高电压分压,抽取其中一部分低电压提供给显示器使用。显示器一般是电阻和氖管组成,显示设备带电状态。当设备带电时,高压电通过传感器分压使氖管发光,提示设备带电。

图1 高压带电显示器原理图

1.2 设计方案

为使设备带电状态能够传送给后台监控系统,利用原高压带电显示器传感器部分采集低电压,经过整流和降压后再经模数转换(ADC),由单片机保存设备状态。当后台监控系统请求该设备带电状态时,单片机按Modbus协议规范向后台系统发送数据。系统框图如图2所示。

图2 系统框图

2 硬件电路设计

2.1 整流降压

经测量,传感器对地输出电压约为交流25V;无电时,电压约为0V。为便于数据采集,将输入电压转换为直流5V标准电压。为简化设计方案,采用半波整流电容滤波电阻分压电路,如图3所示。

图3 整流与降压电路

(1)电阻选择。该系统选用STC15F2K60S2单片机(以下简称为STC单片机)完成ADC转换功能。该单片机ADC输入口等效阻抗约几十千欧,取分压电阻R2为10kΩ。整流滤波后的输入电压为R2的电压U2应不大于5V,根据欧姆定律可得公式(1)。

式中:U=35V,U2=5V,R2=10kΩ,通过计算可得R1=60kΩ。根据常用电阻规格表,R1选择参数为阻值62kΩ、功率1/8W的电阻,R2选择参数为阻值10kΩ、功率1/8W的电阻。

(2)滤波电容选择。半波整流滤波电容计算公式如下:

式中:Vp为输入电压的峰值,V;VD为二极管的正向导通电压,V;Vr为纹波电压,V;f为交流电频率,Hz;R为负载电阻,kΩ。其中,Vp=35V,VD=0.7V,Vr< 1V,f=50Hz,R≈R1+R2=72kΩ。 经 计 算,C>9uF。根据常用电容规格表,选择参数为容量22uF、耐压50V的电解电容。

因有a、b、c三路独立传感器,故系统有三路相同、独立的整流、降压电路,如图4所示。

图4 系统硬件原理图

2.2 ADC转换与数据采集

为了把设备带电状态发送给后台监控系统,需要把直流电压模拟量转换为数字量。STC单片机集成有8路10位精度ADC转换器,位于P1口。高压带电显示器传感器输出为3路电压量,系统使用STC单片机P1.0~P1.2作为ADC输入口。整流降压电路与STC单片机接线方式如图4所示。ADC转换在单片机内部完成,并将转换数据直接存入单片机内部寄存器。

2.3 串口传输与485接口转换

串口数据传输通过STC单片机集成功能实现,该单片机内部集成3个串口,系统使用串口1。为便于长距离传输、减少数据差错率,将单片机TTL电平串口转换为RS-485接口。

系统使用MAX485芯片实现TTL与RS-485转换。MAX485工作在半双工状态,使用STC单片机P3.2控制MAX485芯片和DE两个引脚,控制发送、接收数据。MAX485芯片RO和DI端分别与STC单片机的P3.0/RXD和P3.1/TXD相连。R7为A和B端之间匹配电阻,电阻参数为阻值100Ω、功率1/8W。MAX485与单片机接线方式如图4所示。

2.4 辅助电路

(1)电源。该系统工作电压为标准5V直流电源,一般电力系统操作电源为220V直流或交流电源,电源模块将220V直流或交流转换为5V直流。电源模块正极与系统VCC相连,负极与GND相连。

(2)地址选择开关。Modbus协议中设备具有唯一地址,为使不同设备具有不同地址,使用1个4位DIP开关设置设备地址,DIP开关与单片机P2.4~P2.7口相连。DIP开关与单片机接线方式如图4所示。

3 软件设计

系统软件使用C51语言编写,主要包括ADC模数转换、数据采样、Modbus协议的串行通信等。CPU系 统时钟频率为11.0592MHz。

3.1 总体设计与中断分配

系统ADC数据采集、串行通信、定时器均采用中断方式,ADC采样周期为1s。其中,定时器0作为ADC采样计时器,定时器1作为判断帧结构计时器,定时器2作为串口波特率发生器。串口中断优先级设为高,其他中断优先级设为低。

3.2 ADC模数转换与数据采样

STC单片机ADC输入通道使用P1口,通过P1ASF寄存器可将P1口中的任何一路设置为ADC输入通道,该系统使用P1.0~P1.2共3个输入通道。STC单片机ADC模块的参考电压为输入工作电压,该系统中为5V。ADC控制寄存器ADC_CONTR用于选择转换输入通道、设置转换速度及ADC启动等。设置SPEED0=0,SPEED1=0,ADRJ=0。

定时器0中断程序流程如图5所示。定时器0的计时时长为10ms,当时间到产生中断后,先清除计时中断标志TF0,判断计数器是否计满100(1s)。若没计满,则将计数器加1并重新启动计时器;若已计满,则从通道0开始进行ADC转换,并将计数器清零重新开始计时。

图5 定时器0中断程序流程图

ADC模数转换中断程序流程如图6所示。当一路ADC转换完成后,将产生ADC中断。进入ADC中断程序后首先清除ADC_FLAG寄存器,为下次采样做准备。读取ADC_RES寄存器的值,并根据端口号存入40H-42H寄存器,为数据发送做准备。判断端口号是否等于2,是则说明3个通道都已采样完毕,等待下一个采样周期;否则,将端口号和通道号都加1,并重新启动ADC转换,采集下一通道数据。

图6 ADC模数转换中断程序流程图

3.3 Modbus协议通信

系统使用P3.0和P3.1作为串行通信的发送和接收口,P3.2作为控制MAX485芯片的发送、接收控制口。串口工作方式为1,通信波特率设为9600bps。

系统使用Modbus协议,主从模式。后台监控系统作为上位机向系统请求数据,系统作为下位机,响应上位机请求。通信传输方式为RTU模式。

RTU数据帧从头开始依次为起始位、设备地址、功能代码、数据、CRC校验、结束位。因只传输设备带电的状态,系统仅支持功能码03,即读取保持寄存器。

系统的设备地址由DIP开关进行选择,默认地址范围为80H~8FH。若该地址与其他设备冲突,可在软件中改为其他地址段。

Modbus协议传输帧的方式是间隔3.5个字符以上再发送下一帧,按1字符包括1起始位、8位数据位、1校验位、1停止位总计包括11位,照此计算,3.5字符就是3.5×11=38.5位,取40位。帧间隔时间t=(1÷9600)×40=4.2ms。

串行通信中断程序流程如图7所示。系统初始处于监听状态,即串口设置为接收状态。上位机需要获取某一设备状态时,会发送有该设备地址的数据请求帧。若串口中断为接收数据触发,将收到的数据存入接收缓冲区,重置并启动定时器1,继续接收数据。若串口中断为发送数据触发,则判断发送区数据是否已发送完毕,若未发送完毕则继续发送下一数据,若已发送完毕则转为接收状态。

定时器1作为判断帧结构计时器,计时时长为4.2ms。定时器1中断程序流程如图8所示。进入该中断说明一帧信息已接收完毕,中断程序首先关闭定时器1,并进行帧信息处理。先进行CRC校验,然后检验帧地址是否为本机,若CRC校验和地址检查都通过,根据上位机请求,生成反馈数据帧写入发送数据缓存区,延时4.2ms(帧间间隔)后逐字节发送。若发现CRC校验失败或帧地址不是本机,则直接丢弃该帧,清空接收缓冲,重新接收下一帧数据。高压带电显示器的状态数据最终到达后台监控系统,并通过监控界面显示。

图7 串行通信中断程序流程图

图8 定时器1中断程序流程图a

4 结论

该系统的设计目标是基于Modbus通信协议的高压带电显示器后台数据传输。系统采用STC单片机作为核心控制芯片,使用C51语言编写了Modbus通信协议,采用RS485接口作为数据传输方式,实现了高压带电显示器与后台监控系统的相互通信。整个系统具有功耗低、可靠性高的优势,较好地满足了广播电视供配电系统对于设备运行状态的监测要求,并可在类似场景推广,应用前景十分广阔。

猜你喜欢
中断显示器串口
把显示器“穿”在身上
浅谈AB PLC串口跟RFID传感器的通讯应用
IDC发布《2018年PC显示器市场跟踪报告》
一种新型点阵显示器的设计
基于FPGA的中断控制器设计*
Linux中断线程化分析及中断延时测试
跟踪导练(二)(5)
千里移防,卫勤保障不中断
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索