基于MODBUS协议下的智能化双电源配电系统

  • 优秀论文奖
  • 文章作者:中国新闻技术工作者联合会 2021/12/30-04:43 阅读: loading...

    李芳萍 王晓峰

    (国家广电总局722台)

    [摘要]文章详细介绍了722台中控机房智能化双电源配电系统的设计要求、系统组成和硬件实现的方法,重点对基于MODBUS协议下的软件设计方案和主要功能进行了阐述。
    [关键字]中控机房 智能化双电源系统 硬件组成 软件组成 主要功能

     

    1引言 
    随着我台信息化建设的推进,中控机房成为一个台确保安全传输发射工作万无一失的核心节点。要保证中控设备运行的安全可靠,最基础、最根本的是要保证中控机房电力供应的稳定可靠。虽然,目前中控机房运行的设备都配有UPS电源,但是使用UPS电源来解决电力供应的可靠性并非长久之计。同时,我台外电已有两路电源供应,分别通过两条不同的线路给台区供电,在此背景下,中控机房实现低压双电源自动互投便有了基础。为此,我台进行了中控机房配电系统的建设,该项目紧紧围绕智能化管理,采用比较先进的控制系统和可靠的短路器,用以实现智能化双电源配电系统。 智能化双电源配电系统由低压配电柜、双电源互投电路、电流电压传感器、远程通信协议和远程软件监测端等多个部分组成。该系统所涉及的技术包括:电力设计、电路设计、信号通信、电压及电流传感器和计算机等,实际上是多种科学技术在我台中控机房智能化双电源配电系统上的综合应用。

     

    2智能化双电源配电系统的设计与实现 
    2.1设计要求 
     中控机房智能化双电源配电系统由硬件和软件两部分组成,在设计中,要求该系统要具备如下功能: (1)具备常规双电源自动互投的功能,在主用电进线无电压输出的情况下,可以自动切换到备用电进线为中控机房提供电力;主用电恢复后,自动切换回主用电进线,由主用电进线提供电力。 (2)在配电柜面板上,实时测量并显示主用电进线、备用电进线和配电柜中二级断路器上的电压和电流,对电压和电流的显示要精确到小数点后两位。通过对电压的监测,可判断上级变压器输出电压是否正常;通过对电流的监测,可判断某一路负载是否有用电器关闭。 (3)具备智能检测功能。任一时刻,某一路断电(含人工切换),设备会自动切换为另一路,免除因人工切换失误而造成的断电危险;具备手动切换功能,两路电源均正常时,可随意将负载转换到另一路电源供电。 (4)具备数据采集功能。通过电压、电流互感器采集各路电压、电流,具有485通讯接口,在软件界面,可以动态显示各个参数的数值和开关状态。 (5)具备历史存储和查询功能。系统具备高速历史数据存储功能,操作人员可通过软件界面进行历史数据的各种状态信息的查询。 (6)具备报警功能。在双电源回路中,任一路电源断电时,立即报警,同时,设定各个回路中电量高限和底限的报警功能。报警方式可以是界面动态显示、音响声音报警,声音报警可设置延时时间,时间到达后或操作处理后可以自动停止音响。 (7)具备遥控功能。通过计算机软件向智能仪表发送遥控命令,由智能仪表的继电器输出来控制断路器的电动操作机构。 (8)具备逻辑运算功能。根据系统数据,可自动计算出的指定负载的功率,当实际功率超出预设值时,系统自动发送分闸控制指令,使断路器断开并报警。 (9)因为中控设备间与值班大厅有一定距离,要设置远程监测功能,日常值班中,值班员在控制桌上就能对机房低压盘进行操作和监测,为值班工作提供便利;安全传输设备因故障掉电后,通过电流监测可及时发现。

     

    2.2硬件实现 双电源切换开关由4个断路器(9QF、10QF、11QF和12QF)和智能控制器组成(如图1),其中9QF和10QF为储能式断路器,具有过压过流保护;11QF和12QF带有机械联锁的电动机构,与普通的电动机构有所不同,普通型为共用电动机构,而11QF和12QF为独立的电动机构,通过双电源控制系统进行各自的合断。 整个双电源负载设计为8个,安装了8个断路器开关(1QF-8QF)。其中,1到2个为备份断路器开关,1PM-8PM为数字式三相电流表,分别安装在8个断路器的负载端,用于监测8路负载的电流。而9PM和10PM为多功能数字表,接于主、备进线断路器开关后面,用于监测进线的电压、电流,10个数字表(1PM-10PM)都具有RS485通讯接口,带有开关量输入和输出,通过型号为超五类的屏蔽双绞线传送至计算机。电流取样通过1LH-10LH等10个的电流互感器实现,其中C波段KU波段、安全监控、信息化等用电电流由1LH-8LH电流互感器采样,送至1PM-8PM等8个数字表。9PM和10PM数字表通过电流互感器9LH和10LH进行电压和电流的采样,并可自动计量出有功功率、无功功率和功率因数。 双电源配电系统的控制采用比较先进的BA控制系统,控制通过四位波段旋钮开关来设定(见图2),开关的4个位置分别是:自动、强制电源N(某一路)、强制电源R(另一路)和手动。控制器有三个指示灯,分别指示断路器处于ON、OFF和故障脱扣(UN或UR)状态。BA控制系统采用外部信号触点控制,只有当触点闭合时,才能切换到“备用”电源。 
    2.3软件实现 
    中控机房智能双电源配电系统软件控制界面如图3所示,其运行在PC机上,通过RS232接口和MODBUS协议与低压配电柜上的仪表进行通信,完成电流值、电压值和功率因数等信息的读取。由于该软件系统的核心是使用MODBUS协议对指定仪表进行访问,因此下面先简要介绍一下MODBUS协议。 
    2.3.1 MODBUS协议介绍 MODBUS通讯协议是工业控制网络协议的一种,是德国施奈德公司最先倡导的一种通讯协议,经过大多数公司的实际应用,已经逐渐被认可,成为一种标准的应用于电子控制器上的通用协议语言。事实上,它已经成为工业领域通信协议标准,目前是工业电子设备之间相当常用的连接方式。MODBUS协议用于串口、以太网以及其它支持互联网协议的版本,但大多数使用MODBUS协议的设备,其通信都是通过串口EIA-485物理层进行,本系统亦是如此。 MODBUS协议采用串行连接方式,存在两种通信模式,两种模式主要表现在数据表示上不同和协议细节上略有不同。MODBUS RTU是一种紧凑的,采用二进制表示数据的方式;MODBUS ASCII是一种人类可读的,冗长的表示方式,这两种方式都使用串行通信方式。RTU格式后续的命令或数据带有循环冗余校验的校验和,而ASCII格式采用纵向冗余校验的校验和;被配置为RTU模式的节点不会和设置为ASCII模式的节点通信,反之亦然。本系统使用的是MODBUS ASCII通信模式。 MODBUS通讯协议使用主机、从机模式,即由主设备发送命令指令,而从设备返回对命令做出的响应或处理命令所要求的动作,其中一台主机最多可以和255个从机通信。主设备可对各从设备寻址或发出广播信息,从设备则返回信息作为对查询的响应,对于主设备的广播信息,从设备不做响应。MODBUS通讯协议规定由主设备先建立消息格式,格式包括设备地址、功能代码、数据和校验;从设备必须用MODBUS协议建立答复消息,其格式包含确认的功能代码、返回的数据和校验。如果接收到的数据出错或者从设备不能执行所要求的命令,从设备将向主设备返回出错信息。 MODBUS协议通信帧格式见图4。从机地址信息包括2个字符(ASCII)或8位(RTU),因此从机地址的最大值为255。主机把从机地址放入通信帧的地址区,并向从机寻址。从机响应时,把自己的地址放入响应信息的地址区,让主机识别已作出响应的从机地址。 功能码对从机发出动作指令。在从机发出响应主机的帧中,功能代码可说明从机正常响应或不正常响应。正常响应时,从机简单返回原始功能代码;不正常响应时,从机返回与原始代码相等效的一个码,并把最高有效位设定为“1”。此外,还把一个特殊码放入响应信息的数据区中,告诉主机出现的错误类型和不正常响应的原因。 数据区包含需要从机执行命令的附加信息或由从机采集的反馈信息,这些信息可以是数值、参考地址等等。 差错校验位可确保主机和从机设备通信时,不受通信帧被干扰改变的影响,提高MODBUS系统的安全性和有效性。当系统以ASCII模式传送时,差错影响的校验码使用纵向冗余校验LRC;以RTU模式传送时,使用CRC16循环冗余校验。 
    2.3.2智能双电源配电系统软件的设计 该系统软件运行在PC机端,使用RS232接口,通过RS232转RS485接口与双电源配电系统数字表通信,远程控制双电源配电系统中的断路器,其通信协议为上面所介绍的MODBUS串行通信协议,该软件通过MODBUS协议,使用问答方式进行数据通信。软件首先通过轮询的方式向配电盘上的多个仪器仪表发送命令,仪器仪表接收到命令后,根据命令内容返回相应的数值或者执行相应的操作,软件从仪器仪表的响应帧中读取电压、电流等数值或操作结果,然后将结果记录入数据库,并刷新图3所示界面,使其显示的与实际配电盘上的状态保持一致。软件整体结构如图5所示。 软件使用C#.NET语言完成。C#是一种面向对象的编程语言,它使得开发人员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度支持C#语言的使用,加快了开发速度。软件可以分为通信模块、数据库模块和操作界面三个部分。下面对三个部分分别予以介绍: (1)通信模块 通信模块的主要功能是使用串口按照MODBUS协议与指定地址的仪器仪表通信。串口通信功能使用serialPort类完成,serialPort类是Microsoft.NET FrameWork开发包提供的封装好的串口通信类。 serialPort类常用的属性、方法和事件如下:PortName属性是用来获取或设置通信端口,通常情况下为COM1、COM2等;BaudRate、Parity、DataBits和StopBits属性是用来设置通信所使用的波特率、数据位、停止位和校验位;Open和Close方法是用来打开和关闭通信用的串口端口;Write和WriteLine方法是用来从指定串口发送数据;ReadExisting、ReadTo和ReadLine方法是用来从指定串口读取数据;DataReceived事件是用来在工作串口返回数据时,触发该事件,所以可以用此事件实现对仪器仪表返回值的读取。 通信模块每隔5s从数据库模块中读取一个仪器仪表的地址信息,使用MODBUS协议格式封装完成后,用设置好的serialPort类程序将数据发出;指定的仪器仪表收到该软件发出的命令后,返回一个数值,根据仪器的类型,该值可能是电压、电流和断路器状态等;当该值发射到serialPort类监听的串口后,触发serialPort类的DataReceived事件,通信模块在DataReceived事件中完成返回值的提取后,刷新系统界面,并根据需要将数据发送到数据库模块,存入数据库。 (2)数据库模块 数据库模块主要使用LINQ to SQL技术来实现,LINQ to SQL是.NET Framework 3.5版的一个组件,提供了用于将关系数据作为对象管理的基础结构。LINQ to SQL提供了访问数据库的方法,能提供查询、插入、更新和删除的功能,可以在运行的时候,自动生成适合的SQL脚本来进行数据库操作。在 LINQ to SQL 中,关系数据库的数据模型映射到开发人员所用编程语言所表示的对象模型中。当应用程序运行时,LINQ to SQL会将对象模型中的LINQ语言转换为SQL语句,然后将它们发送到数据库进行执行;当数据库返回结果时,LINQ to SQL会将它们转换回所用编程语言的对象。使用VS.NET2008 IDE可以直接创建与系统所用数据库相关的一组LINQ to SQL类,数据库中的每张表都对应一个实体类,实体类是表存储内容的容器,DataContext类中可完成对数据库的各种操作。本系统在数据库操作上比较简单,所以在VS.NET2008 IDE生成类的基础上稍作修改即可实现所需功能,因此对这一部分只做简要描述。 (3)操作界面 操作界面定期通过数据库模块读取数据库中的电压、电流和开关状态信息,刷新界面显示。当主界面有对断路器操作时,使用通信模块对指定断路器发出合、断命令完成操作,并对断路器响应命令的返回信息读取,判断是否成功操作,如果成功,则将在主界面上改变该断路器的状态显示。 
    2.3.3智能双电源配电系统软件的主要功能 系统主界面见图3,其中显示了各个回路所测量的电量参数,比如:进线电流、电压、功率以及出线回路电流等。系统出线的3个出线名称可以更改,但是需要管理员权限。各个回路中的开关位置有“红”和“绿”两种颜色显示,并根据现场开关状态动态改变,“红”色为合闸状态,“绿”色为分闸状态。在此界面中,通过点击各个回路的开关,系统界面会弹出遥控操作界面,可点击分、合闸按钮完成远程操作。 软件的报表功能界面见图6。该界面可分为如下几项: (1)历史趋势曲线报表:可以对所有回路进行历史电流负荷趋势曲线绘制和查询; (2)实时数据报表:可以对各个回路的数据报表进行查询和打印; (3)日数据报表:可以对两路电源每日的数据报表进行查询和打印; (4)月数据报表:可以对两路电源每月的数据报表进行查询和打印; (5)电能报表:可以对两路电源电能数据报表进行查询和打印。 软件的报警功能,可以对任意进线和出线上的电压、电流和功率值设置门限,当不在门限范围内时,则发出报警。

     

    3结束语 该系统与发射台的具体情况结合紧密,是较为适合发射台使用的双电源配电系统,增强了中控机房低压配电系统的智能性。系统具有良好的人机界面,与普通电脑操作完全一致,极大地方便了值班人员和管理人员的使用。
    编辑:中国新闻技术工作者联合会

    评论 点击评论