开闭环音频监听系统的设计探究

开闭环音频监听系统的设计探究

摘要:短波发射机系统是将音频信号进行调制、放大后通过天线辐射,用户接收到电磁波以后再经过解调获得音频信号。因此,对短波发射机系统进行音频信号的开/闭环监听是保障“三满”播出的重要手段。本文即重点阐述基于TCP协议的开/闭环音频监听系统的设计与实现。

关键词:TCP;音频监听;矩阵;C#

0引言

我台甲机房经整体更新改造后现有四部DF100A短波发射机,为便于值机和检修工作,保证“三满”播出,发射机系统配套各类监测和监控系统。其中,音频信号的监听是最直接、最有效的一种监控手段,方便值班人员快速准确判断发射机系统是否按照要求发射携带音频信号的已调波以及监测所播出节目源信号是否正确。为此,设计一套满足机房实际需求且能稳定运行的音频监听系统就显得尤为重要。

1系统设计需求分析

音频监听系统的设计与实现是完善发射机系统监控的一个重要手段,使机房监听监看朝着信息化、自动化和智能化方向发展,该系统的设计总体需求如图1所示。具体而言,系统设计需求包括如下几点:(1)实现开环监听。已调波信号经过天线辐射后,在机房内使用短波波段收音机实现监听。为便于集中统一监测,将收音机信号接入音频监听系统。(2)实现闭环监听。闭环监听需要在发射机通路合适位置上对音频信号进行取样监听,包括对送入发射机前的音频节目信号和经过发射机调制、放大后的已调波解调后的音频节目信号进行监听。(3)实现循环监听。上述(1)、(2)所述开/闭环监听合计9路音频监听信号,在音频监听系统中,可单独选择某一路进行监听,也可根据需要选择全部或者其中的几路进行循环监听。(4)系统控制简便且稳定。采用基于TCP协议的上、下位机通讯模式,在客户端电脑即可实现监听选择操作。另外,系统取样、解调、监听与循环均需保证稳定运行,抗干扰能力强。

2系统设计与实现

基于以上系统设计需求,系统由上位机与下位机组成,上位机程序直接安装在控制室电脑,实现与下位机(矩阵)连接、监听频道选择和监听模式选择(单路/循环),简单便捷;下位机以大连捷成Flex系列模拟音频切换矩阵为核心,将9路音频信号统一送入矩阵,输出1路音频信号,同时接受上位机程序的控制。系统总体设计框图如图2所示。

2.1系统硬件设计与实现。音频监听系统硬件设计包括模拟音频切换矩阵、取样/解调系统、收音机及监听音箱等。其中,模拟音频切换矩阵是核心,是音频信号输入、输出及其切换的关键设备。2.1.1模拟音频切换矩阵为保证系统稳定性,系统选用大连捷成Flex系列小型切换矩阵(12X4)作为音频信号输入/输出的核心交换设备。矩阵支持12路输入,4路输出。如图2所示,选择矩阵第1~9路输入相应的音频信号,第1路输出连接至监听音箱。矩阵操作面板可直接选择输入、输出及进行相关设置,但缺点是操作时需到矩阵前面板进行、不能进行循环切换等。为此,在.Net框架下使用C#语言编写其上位机程序,基于TCP协议进行矩阵连接与控制。2.1.2音频信号的取样以下(1)、(2)为闭环音频信号,(3)为开环音频信号:(1)经9400音频处理器和D/A转换器后,相应的音频信号送入发射机,对其进行监听,可判断发射机前的设备及线路是否正常、节目源是否正确。D/A设备输出有L和R路输出,L路送入发射机,R路则作为监听输入,A01~A04依次送入模拟音频切换矩阵的第1~4路输入。(2)在DF100A发射机平衡/不平衡转换器进行已调波取样,取样后送入TS接收机进行解调,A01~A04所取样解调信号依次送入模拟音频切换矩阵的第5~8路输入。接收机工作原理如图3所示,采用一次变频和相干解调方案,使解调出来的音频信号稳定。(3)开环监听采用德生S-2000收音机,值班人员在收音机输入所需监听的频率后,即可收听相应的广播节目。使用收音机EAR口输出至模拟音频切换矩阵的第9路输入。2.1.3音频监听信号输出音频监听信号输出采用漫步者低音炮音箱实现,将Flex模拟音频切换矩阵的第1路输出端接至该音箱即可实现。基于以上,实现开闭环音频监听的硬件系统就已经搭建完成,尚需软件系统对其进行控制,实现所需功能。

2.2系统软件设计与实现。上位机软件(731台甲机房音频监听系统)安装在控制室电脑,负责与模拟音频矩阵进行交互,包括矩阵连接、监听频道选择和当前状态显示等功能,软件界面如图4所示。软件基于.Net框架平台,在VisualStudio2019环境下使用C#语言编写Windows窗体应用,使代码既不依赖于操作系统,也不依赖于硬件环境。窗体应用的界面设计主要包括textbox、groupBox、button、label、timer等控件,界面简洁大方,易于操作。上位机软件与下位机矩阵的交互基于TCP协议,具有以下几个特点:(1)上位机须使用IPv4协议与矩阵进行交互。(2)矩阵监听由上位机主动发起的连接请求,正常情况下由上位机主动发起关闭连接请求。(3)矩阵监听端口号为8000。(4)矩阵支持和上位机跨网段交互。为此,在大连捷成简单协议框架下两者进行通讯,协议框架分为控制层和数据层,如图5所示。控制层用于协议起始和结束标示、数据内容转义及提供基本通讯机制、定义通讯物理形态等,数据层则用于根据业务需求定义命令集。协议规定,一条完整的请求或者应答信息以0x01(SOT)起始,0x04(EOT)结束,CommandKey为2个字节,和Data均由数据层定义。CheckSum(校验和)使用2个字节标示,将一条信息里的【CommandKey】部分和【Data】部分的所有数据进行按位异或运算,将结果的高四位用1个字节表示,低四位用1个字节表示,高四位的字节在前,低四位的字节在后,具体实现代码如下:jy=(byte)(b[0]^b[1]^b[2]^b[3]^b[4]^b[5]^b[6]^b[7]^b[8]^b[9]);jy1=(byte)(ascllchange(jy/16));jy2=(byte)(ascllchange(jy%16));2.2.1连接矩阵根据矩阵通讯协议,软件基于TCP协议与矩阵进行交互。如图4所示,在上位机程序输入相应的IP地址和端口号,点击“连接”按钮,即可完成矩阵连接功能,此后在不关闭程序的情况下,可进行监听频道选择,无需再次连接。上位机连接矩阵功能实现主要代码如下:tcpClient=newTcpClient();tcpClient.Connect(textBox1.Text,Convert.ToInt32(textBox2.Text));//连接矩阵,转换文本框IP数据networkStream=tcpClient.GetStream();//获取网络数据流writer=newBinaryWriter(networkStream);//t=newThread(dxc);//判断是否收到矩阵应答t.Start();textBox3.AppendText(“矩阵连接成功,请选择需要监听的频道!\r\n”);//指示连接成功2.2.2选择输入/输出与循环监听在“监听频道选择”模块,列表显示了需要监听的对应频道,输出频道则固定为1通道(无需选择,故未在上位机软件界面显示)。在监听频道前可选框勾选一路或几路时:(1)选择输入的第1~9路中的某一路监听,矩阵收到指令后,将该输入送入第1路输出;(2)选择输入的第1~9路中的某几路进行监听,矩阵收到指令后,矩阵按照顺序每隔5秒依次输出至第1路输出(输出顺序按照输入通道编号升序输出),实现循环监听。2.2.3当前状态显示为更好的指示当前下位机的工作状态,上位机软件设置文本框显示矩阵连接状态和当前输出情况。如连接矩阵成功,则当前状态显示“矩阵连接成功,请选择需要监听的频道!”;如已选择输入端并切换成功,则当前状态显示“标识为红色的频道正在被监听!”,同时监听频道选择的对应输入端文字变为红色;循环监听时,当前正在被监听的频道的对应输入端文字变为红色。具体实现代码在此不再赘述。

3结语

本系统按照当前广播电视安全播出的实际要求,结合我台甲机房的设备情况,并基于TCP协议而设计开发,有效地对发射机系统的音频信号实现开/闭环监听。系统操作简便,功能齐全,既能实现单路播出,又能实现多路循环播出;既能实现常规的开环监听,又能实现闭环监听,大大的减轻了值班人员的劳动强度,提高了监听监看的效率,保证“三满”播出,对日常检修、故障排查等也大有裨益。

作者:李希才 单位:国家广播电视总局七三一台