APP下载

基于接口板卡和RS-485的发射机监控系统设计

2010-08-10金莉萍

电视技术 2010年10期
关键词:机系统下位线程

金莉萍

(天津广播电视电影集团,天津 300070)

1 引言

监控系统是广播发射技术的重要分支,对设备稳定、播出安全及降低工作强度具有实用价值。随着计算机控制应用日渐广泛,世界各大工控厂商的DCS和组态软件日趋成熟,但它们对小型或特殊用途装置而言,存在价格昂贵、很多功能无用武之地、不能满足特殊性要求等问题,故仍需自主开发小型化、低成本、具有特殊功能的控制系统。目前,数据采集和传输所用的计算机接口卡已标准化,研华基于计算机(PC)的接口卡价格低廉,总线插槽直接置入PC,软件支持完善,特别适用于工业控制应用。兼顾发射机控制功能复杂、安全可靠、易用易维护及经济性考虑,该系统采用接口卡与串口相结合的方式作为监控系统解决方案。

2 系统配置

系统配置如图1所示,以研华IPC-610H工业PC为上/下位机,作为系统硬件平台,多功能数据采集卡PCI-813B和数字量I/O卡PCL-731作为I/O通道,RS-232/RS-485转换作为发射机串口访问通道,实现监测信号输入与控制信号输出。该配置主要特点为:

1)PCI-813B和PCL-731板卡功能强大、可靠性高、实时性好。前者是12位32通道模拟量采集(A/D)卡,提供高压隔离,软件触发实现模拟量输入。后者提供48路并行数字量I/O,仿真可编程并行I/O接口芯片8255模式0,提供更高驱动能力的I/O缓冲,中断方式实现数字量I/O[1]。

2)数据采集。基于稳定性考虑,模拟量采集和开关量输入均采用光电隔离保护。PCL-731输入端接PCLD-782B,PCL-731输出端接PCLD-785B,继电器输出。难以识别的毫伏级模拟量,通过放大电路处理,确保信号正确采集。

3)PC机拥有众多硬件支持厂商,软件类型繁多。系统硬件允许不同结构类型和不同通信协议设备接入,可灵活组建并扩展系统,系统软件可采用高级语言、友好开发界面和较为复杂的控制算法。

4)该结构安装简单灵活,系统组成比较简单,提供冗余I/O通道,便于扩展和维护。

该系统实际应用在蓟县府君山调频、电视和天塔调频发射机及其附属设备。监控涵盖发射机、天倒及假负载等设备,涉及多变量和多工作流程的实时监测与控制。

3 软件设计思想

控制软件是控制系统的灵魂,就该系统而言,可充分发挥高级语言VC[2]的优势,开发基于Windows 2000平台性能优异的控制软件。控制软件设计要求实时可靠,与功能协调统一。软件结构设计如图2所示,数据库是系统运行核心,可以保存系统运行产生的动态数据和正常运行所需的各种内部信息,各功能模块通过实时数据存取及处理完成各种功能。程序包括监控和界面两部分:监控程序实时采集和输出数据,实现数据处理运算、写数据库及控制功能;界面程序访问数据库实现数据显示、报警等内容,实时更新及操作。该系统采用上位机/监视终端/下位机,即客户机/服务器结构,多线程设计[2],实现界面和程序控制。下位机系统可独立运行,实现监控系统全部功能;上位机系统实现监控系统管理;监视终端实现系统运行监视。基于下位机系统功能设计包括控制、通信、数据访问、短信报警及关机4个线程。控制线程实现发射机及其附属设备控制;通信线程实现发射机串口通信及与上位机以太网通信;数据访问线程实现接口卡及发射机串口数据访问;短信报警及关机线程实现发射机故障短信报警及短信控制发射机断电关机。基于上位机系统显示功能设计包括数据采集及更新2个线程。数据采集提取下位机采集的数据,实现每500 ms更新所有数据,各线程保证了不同任务运行的同步。上述设计使各功能模块既相对独立,又兼顾实时性和协调性,具有结构分级、单点控制、多点监视的特点。

4 软件设计

基于Windows平台的工控软件应用已成为主流,可充分利用Windows丰富的资源,开发界面友好、功能复杂的应用程序。该系统软件开发采用面向对象编程语言VC++6.0,可视化控件及高级技术的应用,使程序开发简单快捷[2]。

4.1 控制设计

控制是监控系统设计的核心与关键。设计要求安全可靠,复杂度较高,且需贴合实际。考虑常规播出和发射机、天线及外电等故障因素对播出的影响,设计假负载试机/关机、开/关假负载、天线播出/关机、时间表开机/关机、开机播出、断电重开、强制拉闸、故障及强制倒机等流程控制。各流程设计为独立控制类。故障倒机判断流程如图3所示。

控制类实现自动和遥控两类控制。自动控制是下位机系统独立运行的根本,按预置时间及发射机等设备状态,自动调用相应控制类实现播出控制。遥控根据手动发送指令,调用相应控制类实现播出控制。具体为上位机系统定义手动遥控类,使用TCP/IP服务类发送控制指令至下位机系统,下位机系统解析指令,调用相应控制类执行播出控制。流程控制所需参数设置为:1)外电重起次数。设置外电故障,重启发射机次数,该次数后,视为设备故障,另行处理。2)故障倒机阈值。发射机输出功率下限低于该值,满足故障倒机条件之一。3)外电恢复时间。该时间内供电恢复正常,重开发射机。4)试机时间。超过该时间,中断试机。

为确保控制安全,系统设计为延时控制,旨在确认有效性。具体为:1)开机延时,以确认天线到位;2)倒机满足保持,故障出现后延时,以确认非自行消除故障发生;3)数据采集延时,开机且工作稳定后,采集有效数据;4)音频报警延时,超过该时间仍无音频,报警。

4.2 通信设计

通信是系统基础,系统采用Mscomm控件定义串口通信类,实现下位机与发射机间串口通信;Socket API定义TCP/IP通信线程,实现下位机与上位机间以太网通信。通信协议设计包括请求和应答命令,主要针对该系统字符型数据设计,其他需转换类型,再做协议传输。该线程调用定义的TCP/IP通信服务类,实现上位机与下位机间实时数据存取命令的发送、接收及解析。

4.3 数据访问

实现发射机控制和运行监视的基础,包括串口数据访问线程和接口数据访问类。

1)串口数据访问线程。定义串口访问类,使用串口通信类,创建和发送命令,接收并解析发射机控制单元串口提供的控制和参数类数据,采集数据写入实时数据库,发射机发生动作时,该线程暂时挂起。

2)接口数据访问类。定义输入/输出控制类,使用接口数据访问底层,采集模拟及开关量,控制开关量输出。底层包括模拟和数字量I/O操作动态链接库,根据接口卡底层I/O操作动态链接库封装而成,更透明、直观、通用,节省内存,易于接口操作和软件升级。

4.4 数据存储

控制系统数据具有多类型特点,主要包括采集数据、控制输出数据、实时数据、长期保存数据(如控制参数等)和操作记录等。根据数据使用情况,采用实时数据库(RTDB)、文件及关系数据库实现数据存储。

1)RTDB。用于接收I/O通道的输入数据并实时更新,为控制、报警、管理及显示等模块提供一致性实时信息,减少数据冗余,避免内存垃圾。兼具实时性、存取高效性及高可靠性特质。通过事务管理解决数据访问和存储冲突。该系统RTDB采用内存存储,采集数据存于数组,定时更新并写入历史数据库。定义RTDB类,使用该类定义的读写函数提供数据给应用对象。RTDB类定义包括初始类和读写函数。初始类创建各种结构体数据对象,并建立数据对象索引,以提高访问速度;读写函数提供数据对象基本操作,如由数据对象ID获取其他属性等。提供数据对象读写操作,将缓冲区存放数据写入RTDB数据对象,读取数据对象当前值。

2)文件存储。鉴于文件存储具有读取速度快、写文件方便、可避免数据库访问失效等优点,适于下位机系统独立运行,以文本、配置及数据文件存于外存(硬盘)。

3)历史数据库。数据访问采用速度快、占用内存少的ADO技术。该系统采用SQL关系数据库。数据库建立和数据存储过程实现如下:

(1)建立数据库。其设计旨在记录发射机运行情况,以备故障分析及设备检修之用。主要设计事件、抄表、操作及时间表修改记录等若干数据表。其中,事件记录存储发射机、下位机及上位机的报警、任务、遥控操作及通信事件;抄表记录存储发射机模拟量指标;操作记录存储操作动作(如遥控开机等动作);时间表修改记录存储修改前/后的时间表。

(2)创建ADO访问控件。建立、控制与ADO数据库连接,OLE DB提供者设为SQL,并使其他ADO控件共享此连接。

(3)建立数据存储过程。创建Datagrid控件,Connection属性指向ADO访问控件,使之与数据库相连,这样既可访问数据库的所有数据表,也可实现数据库查、插、删、改等操作。在监控程序中,根据不同需要建立不同数据表的存储过程,以实现数据库实时更新。

4.5 事件显示

事件是寻找问题根源的重要依据。下位机任务、开关及模拟量报警等事件使用TCP/IP通信服务类送入上位机,上位机系统定义事件显示类,不同类型事件配以不同颜色和报警音。定义严重报警类,对需手动处理的事件,单独给出报警事件及报警音,直至用户处理。采用CS-inglelock与CMutex实现多线程事件资源访问控制,用Lock和Unlock实现互斥占有和释放,以实现资源安全共享。

4.6 用户权限管理及重要操作身份认证

基于用户权限管理,实现发射机控制操作身份认证,具有控制权限的用户可执行发射机控制,确保播出控制安全。

5 小结

通过该系统在蓟县府君山调频、电视和天塔调频发射机及其附属设备的实践表明,控制系统工作稳定可靠,成功实现发射机及其附属设备的实时控制。确保了安全优质播出,提高了工作效率和管理水平。

[1]研华(中国)培训中心.数据采集系统应用与编程[EB/OL].[2010-03-16].http://doc.baidu.com/view/e1b1320203d8ce2f0066233d.html.

[2]KRUGLINSKI D J.Visual C++技术内幕[M].4版.潘爱民,王国印,译.北京:清华大学出版社,2001.

猜你喜欢

机系统下位线程
基于C#线程实验探究
基于国产化环境的线程池模型研究与实现
手持式触摸测试机对闸机系统的维护研究
发射机房监控系统之下位机
浅谈linux多线程协作
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
经济、可靠的自动开关机系统
CAN总线并发通信时下位机应用软件设计
京石高速公路自助发卡机系统的设计与应用