照明监控系统通信协议设计
2013-08-26李玮
李玮
【摘要】本文采用ADAM-4000系列的I/O模块和PC机构成RS-485网络结构,要实现相关的通信功能,必需要完成对通信协议的设计。Modbus是工业控制器的网络协议中常用的一种通信协议。本系统以此为基础进行协议设计。
【关键词】串口通信;传输协议;照明监控
引言
本监控系统采用的RS-485总线,对校园照明过程集中监控、操作、管理和分散控制。通信过程是通过RS-485总线和面向字符型的通信协议进行连接。串行通信接口是计算机系统常用的一种串口通信方式,它是一种标准扩展接口,串行接口一般包含RS-232/RS-422/RS-485。它的概念较为简单:即按位(bit)发送和接收字节,常用的串口用于ASCII码字符传输,距离最远可达1200m。由于串口通信采用异步方式,所以端口在一根线上发送数据的同时,还可以在另一根线上接收数据。
一、照明监控系统的总体架构和功能实现
本系统采用研华公司开发的ADAM-4000系列的I/O模块来实现通信功能。首先使用ADAM-4520模块实现RS-232到RS-485通信的转换,再构建一个RS-485网络,使通信距离从15米延伸为1200米,网络能够覆盖整个监控范围。除此外还将使用ADAM-4017和ADAM-4050,分别实现模拟量输入和数字量输出功能。系统构成如题1所示。
硬件功能的具体要求如下:
定时读取电流值和电压值:本系统使用ADAM-4017实时监控电压值,要求以间隔2s的方式读取电流和电压的测量值。
电压报警测量功能:本系统使用ADAM-4017实时监控电压值的同时也监控电压值是否有异常。控制电压的变化通过传感器转换为0V~+5V的电压信号送入模拟通道0通道,当检测电压小于程序设定的下限值,计算机输出控制信号,使得监控值有蓝色变为红色,即电压下限报警;当检测电压大于计算机设定的上限值,输出控制信号,使得监控值有蓝色变为红色,即电压上限报警。
开关量输入输出功能:使用ADAM-4050进行数字量的输出控制。主要是控制灯组的开关灯情况。输出线路中主要用于控制继电器开关转换,当输出为1时开关闭合,灯组打开;输出为0时开关打开,灯组关闭。
在RS-485总线上还要安装一个智能电表,主要目的是读取电量和电费。
二、串行通信协议简介
常用的串口通信速率为:9600或19200或38400B/S。数据格式:1起始位,8数据位,1停止位,校验方式位。校验方式有:无校验、奇校验、偶校验。
ASCII模式的数据帧协议数据包格式如图2所示。在消息中的两个ASCII字符发由8Bit字节构成并发送。消息中字的最大发送时间间隔可以长达1秒,即在相邻字符发送间隔大于1秒后。接收设备才会认为传输出现错误。
ASCII字符采用的代码系统是十六进制,所以消息中的任何一个ASCII字符都用一个十六进制字符组成来表示。
起始位由一个字节构成,使用的是“:”字符(ASCII码表示为:3AH)。
结束符由两个字节构成,使用的回车换行符结束(ASCII码表示为:0DH,0AH)。
地址域由两个字节构成,从设备地址是0…247(十进制),其中0作为广播地址。
功能域由两个字节构成,可能的代码范围是1…255(十进制)。
数据域是由两个十六进制数集合构成的,范围00…FF。
错误检测使用LRC(纵向冗长检测)方法,针对消息内容计算得出检测结果,字符计算中不包括起始使用的冒号符和结束位使用的回车换行符。
字符在标准的Modbus系列网络传输时,如果消息需要连续传输,那么每个字符或字节是以从左到右即从最低有效位到最高有效位开始传输的。
三、系统中传输协议的设计
ADAM-4050主要功能是控制系统中的开关灯情况,在系统设计中每个教室都要使用一个ADAM-4050,因此对其进行设备地址设置:0x01—0xFF。根据教室的实际情况每个教室连接4组灯组,因此使用ADAM-4050的0到3的引脚,如果为1则表示开灯,如果是0则表示关灯。开关灯控制协议设计如表1、表2所示。
ADAM-4017是8脚的模拟量输出控制模块,主要用来监控教室中电压电流的情况,每个教室中安装一个ADAM-4017,其中第一引脚用来检测电压,其余引脚用来检测电流,但是教室中只有4组灯组,因此只使用其中四个引脚,根据实际情况使用第二个到第五个引脚,即1~4编号的引脚。电压检测控制协议设计如表3所示。
电流检测控制协议设计如表4所示。
在本系统中只有一个智能电表用来读取整个校区的电费和电量值,电表只需传输相应的电量帧给上位机,上位机根据要求计算出相应的电费。DLT_645-2007_多功能电能表遵循中华人民共和国电力行业标准的电能表通信协议,其协议设计应用如表5、表6、表7所示。
四、结束语
本文对串行通信技术及其传输协议进行了技术介绍。确定了该照明监控系统使用的通信I/O模块和智能电表。以串口通信协议为基础,设计了本系统中的监控中心与通信模块之间的数据传输协议。