基于VisualC++在发射机自台开路监测系统的设计与应用
王彦洲
(国家新闻出版广电总局五七二台)
摘要:对广播发射机播出质量和效果的监测,是确保广播节目播出不间断、高质量播出的技术保障;本文简要介绍了NRD-545超外差式调幅接收机的工作原理,对该接收机功能、特点及主要电路进行了分析探讨;针对发射机自台播出频率的开路监测,如:发射机出现的停、劣播时声、光、电报警提示,广播节目信号监测、报警信息的获取、存储、查询等,论述了基于Visual C++设计开发的NRD-545接收机监测和记录数据的软件系统的设计与应用,实现了发射台运维模式的转变,以及远程开路监测的需求。关键词:发射机 监测系统 NRD-545接收机 VC++ 串口通信1、引言
自台监测是做好电台安全播出工作的重要环节。通过自台监测可以及时了解设备播出情况,及时发现由于设备故障或人为过错造成的停播、错播和播出质量问题。这对避免或减少停播时间,提高播出质量,起到监督和检查的作用。广播发射机播出质量效果自台监测有闭路自台监测和无线开路监测两种。闭路监测是从发射机输出端通过电缆直接采集输出信号,是对发射机本身输出进行监测;而开路监测是针对发射机通过天线发射出的信号进行的监测,对这种信号的监测会受到大气层、建筑物等外界干扰。因此,通过开路监测的手段可以实时地了解到服务区接收的效果,可以详细地记录发射机播出质量和停、劣播报警信息,并能及时地发出预先设计的声、光、电告警提示值班人员,以保证值班人员在进行其它操作时仍可以实时监测各发射机的播出情况,避免出现长时间的停、劣播而无人发现的情况。本文,笔者基于已具有闭路的自台监测系统的发射台由于远程监测仍存在不足,应用以VisualC++研发建立了一个自台开路监测系统进行论述,旨在提高发射机自台播出质量效果的监测智能化水平。2、NRD-545接收机的工作原理与功能
NRD-545接收机是JRC在1998年推出的产品,这台接收机的最大的特点就是用软件在DSP上处理中放以后的全部电路。我台的NRD-545接收机使用了超外差式调幅收测的方式,对AM广播进行自台监测。2.1 超外差式调幅接收机的工作原理超外差式调幅接收机的工作原理如图1所示,输入回路从天线上的感应信号中选出某一高频调幅广播信号,送入变频器与本机振荡信号混频,产生一个调制内容相同的中频调幅信号,经中频放大器放大,然后由检波器解调,输出音频信号。再经低放和功放,通过扬声器发出声音。2.2 NRD-545接收机各模块组成及功能NRD-545接收机模块组成如图2所示,下面就主要电路进行分析讨论。(1) 输入回路:为了增强接收到高频信号,我们将接收机天线接在一个网面天线上。接收到的高频信号进入输入调谐回路变为高频电流,然后在众多高频信号中,选择与输入调谐回路相同的载波频率的信号进入接收机。(2) 变频和本机振荡:从输入回路接收的调幅信号和本机振荡器产生的高频等幅信号一起送到一个三极管高频放大器。不论原来输入信号的频率是多少,经过变频以后都变成一个固定的中频,然后再送到中频放大器继续放大。以上三种频率之间的关系可以用下式表达:本机振荡频率-输入信号频率=中频(3) 中频放大及检波:NRD-545接收机是一台三次变频的超外差接收机,第一中频70.455MHz,第二中频455KHz,第三中频20.22KHz。经过中放后,中频信号进入检波级,检波级也要完成两个任务:一是在尽可能减小失真的前提下把中频调幅信号还原成音频。二是将检波后的直流分量送回到中放级,控制中放级的增益,使该级不致发生削波失真。 (4) 自动增益控制:由于各发射机的天线方向不同,所以它们在接收机天线中产生的感应电压也相差不同。为了平衡强弱之间的差异,我们必须要使整机的增益能自动地进行控制。(5) 前置低频电压放大电路:低频放大电路由小信号放大器组成,作用是将检波后的信号的电压进行放大。(6) 功率放大电路:低频功率放大电路是由功率放大器组成,用来放大出较大的电压和电流,向扬声器提供所需的推动功率,能安全,高效率,不失真地输出所需信号功率。2.3计算机操控NRD-545接收机NRD-545是配有RS-232C接口的标准化设备,可以由计算机对其进行各种控制。用6ZCJDOO350 RS-232C电缆连接计算机和NRD-545。也可以用商品RS-232C电缆(交叉连接,DSUB-25针公-公接口)。在利用自台监测系统对NRD-545接收机进行控制之前,需要先设置好计算机COM口的通讯参数。通讯波特率:4800bps;数据长度:8bits;停止位:1;奇偶校验:无;X参数:无在设置好这些通讯参数后,便可以对接收机进行控制了。该控制过程是由计算机向NRD-545接收机输入代码来发出操作指令,如“H1CR”,CR是分隔符代表回车,这个操作命令表示计算机控制开。3、自台开路监测系统的关键技术
3.1 系统环境操作系统: Windows XP开发环境: MySQL Server 5.0开发语言: VC++ 8.0.开发工具: Microsoft Visual Studio 2005 3.2 主要关键技术自台开路监测系统中,主要使用了如下关键技术:(1)MFC: MFC(Microsoft Foundation Classes),是一个微软公司提供的类库,以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。MFC实际上是微软提供的,用于在C++环境下编写应用程序的一个框架和引擎。VC++是Windows下开发人员使用的专业C++ SDK(Standard SoftWare Develop Kit,专业软件开发平台),MFC就是挂在它之上的一个辅助软件开发包。MFC作为与VC++血肉相连的部分。(2)MySQL: MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在中小型系统中。MySQL数据库的优点:支持5000万条记录的数据仓库;适应于所有的平台;是开源软件,版本更新较快;性能很出色,数据库与磁盘非常地兼容而不占用过多的CPU和内存。MySQL可以运行于Windows系统而不会发生冲突,在UNIX或类似UNIX系统上运行则更好。正由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多企业选择了MySQL作为服务器数据库。(3)串口通信: 串口是计算机上一种非常通用的设备通信协议。大多数计算机包含两个基于RS232的串口。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现较远距离通信。(4)多线程: 因为程序调度的基本单元是线程,一个单线程应用程序一次只能运行在一个处理器上。在双处理器系统中,对于一个单线程程序来说则放弃了其中一半的空闲CPU资源。从另一方面来看,拥有多个活跃线程的程序可以同时在多处理器上运行。恰当地使用线程时,可以降低开发和维护的开销,并且能够提高复杂应用的性能。线程通过把异步的工作流程转化为普遍存在的顺序流程,使程序模拟人类工作和交互变得更容易了。另一方面,它们可以把复杂、难以理解的代码转化为直接、简洁的代码,这样更容易读写及维护。线程在GUI应用程序中是非常有用的,可用来改进用户接口的响应性,并且在服务器应用中,用于提高资源的利用率和吞吐量。4、自台开路监测系统的功能设计与实现
4.1 系统的主要功能图3 系统功能框图 图4 系统主界面
自台开路监测系统主要由四个功能模块组成,系统功能图如图3所示。⑴广播监测:实时监测自台所有发射机的播音状态,依照节目运行图设置,采用轮询的方式进行采集频率信号强度信息,如果信号强度低于系统设定的报警门限,则采用声光报警两种方式来处理报警信息。⑵运行图设置:根据频调处频率变动通知单,设置自台发射机不同频率不同节目语言的播音时间。⑶参数设置:设置本机连接串口信息和NRD-545监测参数,以达到所需要求的监测效果和指标。⑷日志查询:根据用户要求查询出所对应发射机的报警日志信息。系统主界面如图4所示。4.2 广播监测⑴运行图实时监测运行图实时监测,即按照运行图时间片进行监测任务。现以轮询过程中单部发射机为例讲述监测流程,如图5所示。当监测到某发射机时,首先获取当前系统时间,然后与保存在内存中的播音运行图进行比较,判断此时间是否有播音任务,如果没有,则监测下一部发射机,如果存在播音任务则进入数据采集模块,数据采集模块会向NRD-545接收机发送获取某频率的信号强度请求信息,NRD-545接收机收到请求信息后会把该频率的信号强度作为回复信息传给数据采集模块,回复信息的格式为Mnnn,其中nnn三位为信号强度值。为了保证监测的正确性,数据采集模块将发送五次相同频率的请求信息,获取五个回复信息后进入数据处理模块,此模块的作用是对五个非线性信号强度值进行处理,得出一个均值作为当前的信号强度比对值,然后与用户设定好的报警值继续比较,如果不符合报警范围,则在相应的发射机状态显示为绿色,如图6所示。如果符合报警范围,则进入报警处理模块。报警处理模块会使系统发出报警声,并在系统监测界面上在相应的发射机状态上显示为红色,如图7所示,同时系统会把此次报警的信息显示在系统报警信息记录表格中,如图8所示,并把此报警信息存入数据库以便日后查询。以具有20部发射机的发射台为例,经实测,如全部处于播音状态,系统轮询一周期大约需要25秒钟左右,极大地提高了收测效率。图6 正常状态界面 图7 告警状态界面 图8 报警信息记录界面
⑵临时调度监测当有临时调度任务发生时,用户可在临时监测输入框中输入临时调度频率后点击“临时监测”按钮便可控制接收机收测该频率的播音效果,如图9所示。图9 临时频率监测界面 图10 运行图添加界面
4.3运行图设置⑴运行图增加如图10所示,用户选择所需改变运行图的发射机,按照实际频率变动通知填写频率、开始时间、结束时间、周期、节目信息后进行添加时间片操作,然后系统会校验此时间片的工作,判断频率格式信息是否正确,开始时间和结束时间是否合法,周期是否选中,是否与已存在的时间片信息时间所有冲突,如果校验失败,系统会提示相应的错误信息,如果校验成功,系统把此时间片存入数据库。⑵运行图查询如图11所示,用户选择所需查询发射机,系统将显示出所对应发射机运行图。用户可选择其中某行时间片数据后点击右侧删除按钮进行删除时间片操作。 ⑶运行图合成运行图合成,即把发射机存储在数据库中的时间片按播音时间顺序按实际播音要求合成监测运行图,系统以此来执行实时监测任务。合成的流程如图12所示,系统首先从数据库中取出时间片数据,现以单部发射机运行图合成为例说明,首先把单部发射机时间片进行排序,因为每部发射机时间片数量通常不会超过20,所以在排序算法中选择适合数据量小的直接插入排序算法,排序结束后,进行时间片处理工作。时间片处理,主要针对一个结束时间和一个开始时间相同的两个时间片的处理,即实际情况中的倒频操作,如果两个频率相同,则进行时间片合成处理,如果两个频率不同,则后者的开始监测时间延迟3分钟,3分钟作为发射机正常倒频时间,以防止系统误报警。最后,每部发射机把各自的排序处理好的运行图存入内存,形成运行图内存数据库,这里采用内存数据库的目的,在于减少与数据库的操作,直接从内存中读取以增加系统监测的效率。4.4 参数设置参数设置界面如图13所示。用户可在参数设置中,选择计算机上与NRD-545接收机连接的串口号;可选择NRD-545接收机是否采用衰减器,在欲接收信号收到强信号阻塞时,使用衰减;可设定NRD-545接收机静噪值,即噪声抑制电平,图13 参数设置界面 图14 日志查询界面
其可以消除无信号时的噪声,设定值的范围在0~255之间;可设定报警值,作为监测系统中判断是否报警的一个重要参数。在校验用户报警值合法性上,采用正则表达式判断。正则表达式,在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串,这里判断字符串是否为整数或小数采用的正则表达式为"^\\d+(\\.?\\d+)$|^\\d+$"。4.5 日志查询日志查询功能如图14所示,用户可设定查询条件,查询到某发射机在某段日期内的报警日志信息。
评论 点击评论