APP下载

全国计算机等级考试机房准备工作探讨

2014-06-18罗新

电脑知识与技术 2014年11期
关键词:发射台缓冲区控件

罗新

摘要:该文依据国家广播电影电视总局501电台已经建设的机房运行监控系统、发射机自动控制系统、天线交换自动控制系统为基础,扼要介绍串口通信技术在广播发射台自动控制系统中的应用;并通过具体的实例详细介绍VC++6.0 实现串口通信的编程方法。

关键词:广播发射台自动控制系统;串口通信

中图分类号:TP31 文献标识码:A 文章编号:1009-3044(2014)11-2668-04

Abstract: Based on the Monitoring System of Broadcast transmitting room, the Automatic Control System of Broadcasting Transmitter, and the Automatic Switching System of Antenna, which were established by “The 501 radio station of SARFT”,it introduces the application of broadcast transmitting station in Automatic Control System briefly. Through specific examples, it focuses on introducing that the VC++6.0 programming method of serial communication.

Key words: The automatic control system of broadcast transmitting station; serial communication

广播发射台自动控制系统大致包括机房运行监控系统、节目交换自动控制系统、天线交换自动控制系统、发射机自动控制系统、电力自动化系统和自台质量保证系统。以501台为例,在殊多的自动控制系统中,计算机与底层控制之间常常采用RS-232、RS-485串口通信协议,通过电缆线、串口卡和串口服务器三种方式建立数据通信。

1 应用介绍

1.1 天线交换自动控制系统中串口通信技术的应用介绍

天线交换自动控制系统采用可编程序控制器(简称PLC)与计算机通信技术实现对天线交换开关切换操作的定时控制。该系统由上位机、下位机及执行机构三部分组成。上位机采用工业级计算机,通过网络接收上一级系统下发的运行时间表,并根据运行时间表,下发切换指令给下位机。下位机一般采用AB或OMRON的PLC组成,负责接收上位机下发的切换指令,并通过PLC输出模块向天线交换开关的控制电路发出控制信号,同时返回天线交换开关状态信号。

串口采用三线制接法,即接受数据(RXD)、发出数据(TXD)和信号地线(SG)三脚相连,通过电缆线直接连接RS- 232或RS- 485标准端口。RS- 232与 RS-485两种接口的区别在于:RS-232采取不平衡传输方式单端通信,最大传送距离约为15米;RS-485接口采用平衡驱动器和差分接收器组合,最大传送距离可达1219米。考虑到广播发射台强射频干扰的情况,当上位机与PLC之间连接距离在5米以内时,可采用RS- 232接口;距离在5米~15米之间,采用 RS-485接口;超过15米,建议采用光纤通过光模块实现通信连接。

1.2 机房运行监控系统中串口通信技术的应用介绍

发射机房运行监控系统是广播发射台信息化平台的重要组成部分,包括:调度管理、运行监测、数据处理、指标测试等功能。发射机房运行监控系统接收上一级系统下发的运行图,并解析成带周期的运行时间表下发给发射机自动控制系统和天线交换自动控制系统;同时,发射机房运行监控系统接收发射机自动控制系统及天线交换自动控制系统上传的运行数据及状态数据。

以501台一个短波机房为例,该机房运行监控系统需要同时与六部发射机自动控制系统的串口板连接,来完成系统之间数据交换。在过去的自动化系统中,对于多串口通信采用串口卡来实现连接;随着串口服务器技术的发展和串口服务器在广播行业中的普及,串口卡已逐步被淘汰。如下图所示,根据实际需求,机房选用了MOXA Nport5610串口服务器,采用虚拟串口通信模式来实现一对6的串口数据通信。

Nport5610串口服务器是把串口转换成TCP/IP网络接口,实现发射机自动控制系统串口板与计算机TCP/IP网络接口数据的双向透明传输;可以将其理解为串口链路与以太网之间通信数据的存储控制,它把来自发射机自动控制系统串口板的数据流转换成以太网数据帧,转发给机房运行监控系统;对机房运行监控系统以太网数据帧进行判断、处理,将数据转换成为串行数据流,发送到发射机自动控制系统串口板。

Nport5610集成了ARP、IP、ICMP、TCP、UDP 、DHCP、SOCKET等网络通信协议,支持网关和代理服务器,通过IE浏览器来完成参数的配置。Nport5610串口服务器有三种工作模式,分别为:

1)虚拟串口通信模式(Tcp realport):当串口服务器工作在该模式时,一台计算机与一个或多个转换器建立连接,实现数据的双向透明传输,即在计算机虚拟串口软件的支持下,实现一个虚拟串口对应多个转换器。

2)网络通信模式(Tcp/Udp socket):当串口服务器工作在该模式时,转换器设置选择支持SOCKET 协议,便可编写基于SOCKET 协议的计算机应用通信程序。

3)点对点通信模式(PPP):当串口服务器工作在该模式时,转换器成对使用,即一个服务器端对应一个客户端;服务器/客户建立连接,实现数据双向透明传输。这种工作模式常用于两个串口设备之间的总线连接转换为TCP/IP网络连接的情况。endprint

1.3 VC++6.0 实现串口通信的编程方法

串口通信程序的开发环境很多,如VB、VC和Delphi等;在本文中,重点介绍VC++6.0开发串口通信的二种常用方编程方法:(1)采用Microsoft公司提供的MSComm控件实现串口通信。这种方法编程方法相对简单,容易实现,但编程的灵活性稍差。(2)直接调用Windows 32 API函数。这种方法编程方法灵活性强,但原理复杂,要求编程人员对串口的硬件工作原理要有深入的了解。

串行通信程序的工作流程大致可分为四个步骤:(1)串口初始化:打开串口,完成串口通信参数的设置,创建通信事件、读写事件和等待串口接收中断等操作。(2)串口的数据读取:当指定数量的字符串达到串口输入缓冲区时触发EV_ RXCHAR 消息事件,响应函数接收到消息后读取输入缓冲区的数据。(3)串口的数据发送:数据发送函数负责把要发送的字符串写入输出缓冲区。(4)关闭串口:串口缓冲区清零,关团串口。

1.3.1 应用MSComm控件实现串口通信的编程方法

在VC++6.0中调用MSComm控件实现串口通信有两种方法,第一种是绑定一个计时器,定时到MSComm控件缓冲区读取数据或发送数据;第二种方法是采用事件驱动方法来处理串口数据的交互。第一种方法简单,适用于单串口通信的情况;但要注意计时器的设置值应比数据发送、读取时间略长。第二种方法灵活,效率高,适用于多串口通信。本章节重点介绍事件驱动数据交互法。

事件驱动数据交互法就是利用MSComm控件的OnComm 事件和 CommEvent 属性捕捉并检查通信事件和错误的值。发生通信事件或错误时,自动触发 OnComm 事件,CommEvent 属性的值将被改变,应用程序通过检查 CommEvent 属性值并做出相应的反应。以501台上述机房运行监控系统与一部发射机自动控制系统串口通信为例1.3.2 调用Windows 32 API函数自定义串行通信类的编程方法

以下是笔者调用Windows 32 API函数,自定义串行通信类的实例。该例子通过调用Win32 的API 函数,在VC++类中封装了一个名为CCommPort的串行通信类,再利用MFC 编写串口通信应用程序实现串口数据通信。具体步骤如下:

1)首先定义名为CCommPort 的串行通信类2 结束语

随着串口通信技术在广播发射台自动控制系统中的广泛应用,解决了广播设备集中管理、分散控制的问题,跟上网络自动化、信息化的潮流,建立竞争优势。“让全部设备连接网络”、建设“无人值班、有人留守”的中短波广播发射台新运维模式成为现实。为提高发射台维护管理质量和整体的工作效率做出了贡献,为安全播出工作提供了技术保障。

参考文献:

[1] 李景峰,潘恒,杨丽娜.Visual C++串口通信技术详解[M].2版.北京:机械工业出版社,2013.endprint

1.3 VC++6.0 实现串口通信的编程方法

串口通信程序的开发环境很多,如VB、VC和Delphi等;在本文中,重点介绍VC++6.0开发串口通信的二种常用方编程方法:(1)采用Microsoft公司提供的MSComm控件实现串口通信。这种方法编程方法相对简单,容易实现,但编程的灵活性稍差。(2)直接调用Windows 32 API函数。这种方法编程方法灵活性强,但原理复杂,要求编程人员对串口的硬件工作原理要有深入的了解。

串行通信程序的工作流程大致可分为四个步骤:(1)串口初始化:打开串口,完成串口通信参数的设置,创建通信事件、读写事件和等待串口接收中断等操作。(2)串口的数据读取:当指定数量的字符串达到串口输入缓冲区时触发EV_ RXCHAR 消息事件,响应函数接收到消息后读取输入缓冲区的数据。(3)串口的数据发送:数据发送函数负责把要发送的字符串写入输出缓冲区。(4)关闭串口:串口缓冲区清零,关团串口。

1.3.1 应用MSComm控件实现串口通信的编程方法

在VC++6.0中调用MSComm控件实现串口通信有两种方法,第一种是绑定一个计时器,定时到MSComm控件缓冲区读取数据或发送数据;第二种方法是采用事件驱动方法来处理串口数据的交互。第一种方法简单,适用于单串口通信的情况;但要注意计时器的设置值应比数据发送、读取时间略长。第二种方法灵活,效率高,适用于多串口通信。本章节重点介绍事件驱动数据交互法。

事件驱动数据交互法就是利用MSComm控件的OnComm 事件和 CommEvent 属性捕捉并检查通信事件和错误的值。发生通信事件或错误时,自动触发 OnComm 事件,CommEvent 属性的值将被改变,应用程序通过检查 CommEvent 属性值并做出相应的反应。以501台上述机房运行监控系统与一部发射机自动控制系统串口通信为例1.3.2 调用Windows 32 API函数自定义串行通信类的编程方法

以下是笔者调用Windows 32 API函数,自定义串行通信类的实例。该例子通过调用Win32 的API 函数,在VC++类中封装了一个名为CCommPort的串行通信类,再利用MFC 编写串口通信应用程序实现串口数据通信。具体步骤如下:

1)首先定义名为CCommPort 的串行通信类2 结束语

随着串口通信技术在广播发射台自动控制系统中的广泛应用,解决了广播设备集中管理、分散控制的问题,跟上网络自动化、信息化的潮流,建立竞争优势。“让全部设备连接网络”、建设“无人值班、有人留守”的中短波广播发射台新运维模式成为现实。为提高发射台维护管理质量和整体的工作效率做出了贡献,为安全播出工作提供了技术保障。

参考文献:

[1] 李景峰,潘恒,杨丽娜.Visual C++串口通信技术详解[M].2版.北京:机械工业出版社,2013.endprint

1.3 VC++6.0 实现串口通信的编程方法

串口通信程序的开发环境很多,如VB、VC和Delphi等;在本文中,重点介绍VC++6.0开发串口通信的二种常用方编程方法:(1)采用Microsoft公司提供的MSComm控件实现串口通信。这种方法编程方法相对简单,容易实现,但编程的灵活性稍差。(2)直接调用Windows 32 API函数。这种方法编程方法灵活性强,但原理复杂,要求编程人员对串口的硬件工作原理要有深入的了解。

串行通信程序的工作流程大致可分为四个步骤:(1)串口初始化:打开串口,完成串口通信参数的设置,创建通信事件、读写事件和等待串口接收中断等操作。(2)串口的数据读取:当指定数量的字符串达到串口输入缓冲区时触发EV_ RXCHAR 消息事件,响应函数接收到消息后读取输入缓冲区的数据。(3)串口的数据发送:数据发送函数负责把要发送的字符串写入输出缓冲区。(4)关闭串口:串口缓冲区清零,关团串口。

1.3.1 应用MSComm控件实现串口通信的编程方法

在VC++6.0中调用MSComm控件实现串口通信有两种方法,第一种是绑定一个计时器,定时到MSComm控件缓冲区读取数据或发送数据;第二种方法是采用事件驱动方法来处理串口数据的交互。第一种方法简单,适用于单串口通信的情况;但要注意计时器的设置值应比数据发送、读取时间略长。第二种方法灵活,效率高,适用于多串口通信。本章节重点介绍事件驱动数据交互法。

事件驱动数据交互法就是利用MSComm控件的OnComm 事件和 CommEvent 属性捕捉并检查通信事件和错误的值。发生通信事件或错误时,自动触发 OnComm 事件,CommEvent 属性的值将被改变,应用程序通过检查 CommEvent 属性值并做出相应的反应。以501台上述机房运行监控系统与一部发射机自动控制系统串口通信为例1.3.2 调用Windows 32 API函数自定义串行通信类的编程方法

以下是笔者调用Windows 32 API函数,自定义串行通信类的实例。该例子通过调用Win32 的API 函数,在VC++类中封装了一个名为CCommPort的串行通信类,再利用MFC 编写串口通信应用程序实现串口数据通信。具体步骤如下:

1)首先定义名为CCommPort 的串行通信类2 结束语

随着串口通信技术在广播发射台自动控制系统中的广泛应用,解决了广播设备集中管理、分散控制的问题,跟上网络自动化、信息化的潮流,建立竞争优势。“让全部设备连接网络”、建设“无人值班、有人留守”的中短波广播发射台新运维模式成为现实。为提高发射台维护管理质量和整体的工作效率做出了贡献,为安全播出工作提供了技术保障。

参考文献:

[1] 李景峰,潘恒,杨丽娜.Visual C++串口通信技术详解[M].2版.北京:机械工业出版社,2013.endprint

猜你喜欢

发射台缓冲区控件
嫩江重要省界缓冲区水质单因子评价法研究
中小功率等级发射台供电设备的维护
浅谈高山发射台播出监控系统
泸州广播电视发射台双回路供电系统改造实践
WIFI技术及在广播发射台的应用
关键链技术缓冲区的确定方法研究
ASP.NET服务器端验证控件的使用
地理信息系统绘图缓冲区技术设计与实现
AVS标准中的视频码流缓冲区校验模型分析
Spreadsheet控件在Delphi数据库系统中的编程与应用