王 龍
(作者單位:國家廣播電視總局722 臺)
短波廣播在播音過程中需要隨時切換播音天線,天線交換控制系統可以根據運行圖或調度指令實現天饋線等相關設備自動化運行控制,完成發射機與天線之間的切換,是廣播發射機自動化控制系統的重要組成部分。一套穩定、高效的天線交換控制系統不僅可以在自動模式下按照運行圖自動為每部發射機匹配指定天饋線,而且可以在發射機故障情況下,方便、快捷地手動將需要播音的天線切換至代播機。但是,目前所運行的天線交換開關控制系統開發時間早,技術和架構都比較老舊,自動化程度落后,運行多年來逐漸暴露出諸多問題。第一、軟件設計得不全面,天控系統是基于程序設計語言(Visual Basic,VB)開發的,開發技術相對老舊,且使用單線程技術,一處發生故障或操作緩慢,就會導致整個程序宕機或卡頓。第二、運行圖解析不完善,只能解析24 小時之內的任務,不會判斷第二天的任務,即如果當天后續沒有任務,則系統判斷下一任務時解析的為當天第一個任務,而不是第二天的第一個任務,從而出現用錯天線或正確天線誤報的問題。第三、運行圖接收處理過程慢,天控系統接收機房平臺下發的運行圖時需要等運行圖同步到可編程邏輯控制器(Programmable Logic Controller,PLC)后才能接收信息,該過程比較緩慢,容易導致接收消息滯后,引起機房平臺運行圖重發或判定下發接收失敗。多部發射機的運行圖一起下發天控系統時,天控系統容易死機,從而影響節目的安全播出。另外,天線交換開關控制系統還存在數據傳輸不規范、系統功能不足等問題。
為了解決原有系統存在的不足,增強系統運行的穩定性、安全性,就需要技術人員應用當前先進技術,結合實際使用需求,設計開發出新的天線交換控制系統。
鑒于之前系統面臨的問題,本文以保證廣播節目安全播出為目的,從實際使用需求出發,設計開發了新型的天線交換控制系統,該系統應具備的性能和實現的目標如下:第一,系統穩定,能夠24 小時不間斷可靠運行。拓展性強,適用于多個操作系統平臺,包括win7 和win10 等,并且兼容32 位和64 位的操作系統。第二,響應快速,系統在接收發運行圖時,不接收滯后或消失。同時,系統在接收多部發射機調度指令時,既能保證快速、準確,又不會發生宕機現象。第三、優化每部發射機上任一天線的通道路徑,給信號傳輸提供最優通道。第四、具有記錄功能,在系統發生軟件崩潰時,可記錄崩潰前每個天線通路的情況,并有專門的文件夾進行記錄。第五,使用直觀的圖形化模式,便于校對。系統還要具有日志查詢、存儲、導出功能,導出后為Excel 文件格式。第六,保證系統的穩定性,同時具有良好的可拓展性。按照無線局規范要求進行數據接口開發,保證數據傳輸格式規范、數據正確;完善運行圖接收和解析過程,確保發射機連接正確 天線。
為優化該系統的性能,技術人員在設計該系統時,會使用目前成熟的技術和先進的軟件體系架構,根據面向對象的系統建設和開發理念,更好完成系統的指標要求。
系統的設計開發基于Microsoft.Net,.Net 是微軟公司新推出的軟件開發平臺,它是系統開發的平臺,也是系統的整體框架,同時.NET 也是一個軟件開發集合,包含軟件開發過程中頻繁使用的中間代碼、數據訪問、編程工具和XML 組件等。.NET 平臺可以實現跨設備、跨平臺、跨語言開發,使開發和應用效率得以大幅度提高[1]。
系統開發使用C#語言、客戶端/服務器(Client/Server,C/S 架構),使用特殊的設計方法。技術人員在開發系統時應用多線程技術,不僅可以提高程序的響應速度,而且在部分線程發生短時間阻塞時,系統依然能夠繼續運行,響應其他線程的操作,這有效解決了單線程系統因線程阻塞造成系統崩潰的問題。
系統運行基于Windows 平臺,運行在微軟的.Net Framework4.5.2 框架下,操作系統要求是Windows7 或以上。
天線交換控制系統的硬件主要由上位機用戶操作界面系統(客戶端)和下位機邏輯控制系統組成。上、下位機通過網絡交換機與機房運行監控平臺連接,組成天線交換開關控制系統網。
上位機由工控機、數據庫服務器和觸摸顯示屏組成,觸摸顯示屏設置在發射機房控制室內,屏上顯示交換開關控制系統的用戶操作界面,是整個系統的操作臺,主要負責人機交互和顯示各交換開關、天線(假負載)和發射機的實時狀態和工況。值班人員可以在客戶端上完成對天線交換開關的所有遠程操作,系統設置、日志查詢和系統信息查詢等都在上位機上完成。系統通過上位機與機房運行監控平臺通訊,可以接收機房運行監控平臺下發的運行圖和調度指令。
下位機設置在天線交換開關室的控制柜內,界面是本地操作界面,當上位機出現故障或遠程通訊發生異常時,值班人員可以在本地操作交換開關,完成天線倒換。下位機的主要功能是與上位機通訊,接收上位機的操作指令,按照操作指令,通過系統內規定好的控制邏輯生成對各個交換開關的控制信號,包括定時信號和正反轉信號,并將信號發送至PLC 控制組件,同時接收PLC 控制組件反饋回來的交換開關狀態信息和交換開關操作完成后的轉換到位信號。每次操作完成后,都要將接收到的狀態信息和到位信號上行至上位機。
PLC 控制組件是天線交換控制系統的執行單元,PLC 負責接收下位機的控制指令,按照指令在交換開關矩陣中選擇所需動作的交換開關,控制所選擇天線交換通路上的三相異步電動機,電動機向指定方向轉動,帶動刀閘轉向,形成運行圖所指定的發射機與天線間的射頻通路,實現天線的選擇[2]。另外,PLC 控制組件還要將通過微動開關采集的所有交換開關的到位信息和狀態信息反饋至系統的下位機。
上位機與下位機分別設置在發射機房控制室和天線交換開關室,二者距離較遠,加之發射機房電磁環境復雜,為確保通訊通暢,防止電磁干擾,二者之間的通訊信息要通過光電轉換后由光纖通路完成。
軟件采用插件式框架設計,整個軟件由主程序和各個插件模塊組成,天線交換開關控制系統的軟件體系結構如圖1 所示。
系統的主程序為系統的主體框架,是整個軟件系統的神經中樞,負責配置整個系統,組織和管理系統插件的裝載、組合和有序運轉,為各個插件提供插件契約,插件契約就是插件之間的服務接口,系統內所有插件間的數據傳遞全部通過系統框架統一的契約規范實現,便于有效地組織和管理插件。
系統中包含有網絡通訊接口、運行圖解析、交換開關控制、數據庫存儲、監測告警和狀態顯示,共六個插件模塊。網絡通訊接口模塊配置和初始化系統與機房運行監控平臺和PLC 控制組件間的通訊協議,負責完成機房運行監控平臺、天線交換開關控制系統和PLC 控制組件間的數據通訊。運行圖解析模塊負責解析從機房運行監控平臺接收到的運行圖,生成運行時間表,并將生成的運行時間表存儲到數據庫存儲模塊中,運行時間表中有當天該發射機房需要執行的所有任務,是天線交換開關控制系統的控制依據。交換開關控制模塊訪問數據庫中運行時間表的播音任務和所有交換開關的狀態信息,通過使用提前規定好的控制原則,生成控制交換開關的控制指令。數據庫存儲模塊負責存儲系統中的各類數據信息,包括運行時間表、交換開關狀態、系統運行日志和故障報警信息等。監測告警模塊負責監測發射機、交換開關和天線的運行工況,與運行時間表中的任務進行比對,出現異常時會及時發出聲光告警。狀態顯示模塊可以直觀地將發射機、交換開關和天線的連接路徑以圖形樣式顯示出來,并通過顏色區分設備的工作狀態;同時,狀態顯示模塊具備截屏功能,每次交換開關運行狀態改變后,其就會對交換開關和天線的連接路徑圖進行截屏,并將這些圖片保存在指定的文件夾,用來記錄系統意外崩潰前所有交換開關和通路的狀態。插件模塊就是整個系統的各個器官,各個模塊之間獨立運行,分別發揮自身的功能;模塊之間又相互聯系,互相訪問數據,提供系統的運行條件。
筆者在設計與開發該系統的過程中,使用的數據格式有VARCHAR(M)和NUMBER(M,N)兩種。VARCHAR(M) 用于表示長度可變的字符數據,M 表示該數據類型所保存的字符串的最大長度。NUMBER(M,N)為數字數據,若該數字是整數時,用NUMBER(M)表示,M 表示該數字最大可設置為M 位;若該數字有小數部分,則用NUMBER(M,N)表示,其中M 和N 分別指數字最大是M 位長,其中包含N 位小數。系統的插件契約采用統一的數據格式,不僅有利于系統的維護,而且可以增強系統的拓展性,便于系統日后更新、擴容和升級。
天線交換開關控制系統通過套接字(Socket)與機房平臺進行通訊和數據交互。上行和下行的數據都按照協議中定義好的標識位識別數據類型,通訊協議還規定了每種數據類型傳輸的方式。天線交換開關控制系統與機房平臺間數據交互的明細表如表1 所示。

表1 天線交換開關控制系統與機房平臺之間數據交互的明細表
天線交換開關控制系統采用插件式模塊化結構構成,各模塊之間獨立運行,只需經過適當的組合配置,即可實現系統的總體功能。系統的幾個重要功能的實現方案如下:
短波廣播發射機房一般有多個發射機,其同時對應多個不同頻段,不同服務方向的天線交換開關控制系統需要根據運行圖規定的播音任務,在每一播音時段,自動為每個發射機準確配備天線。某發射機的播音任務結束后,系統會通過訪問運行時間表明確該發射機下一播音任務的時間和所需要的天線,再通過查詢其他發射機和交換開關的運行狀態,通過控制邏輯運算得出該發射機天線倒換的時間[3]。控制邏輯如圖2所示。
由控制邏輯圖可以看出,發射機在完成一個播音任務后,首先會判斷距離下一播音任務是否有時間間隙,如果沒有則直接倒換天線開始下一任務的播音;如果有時間間隙,且播音間隙內有其他發射機需要倒換天線,則需要判斷此次天線倒換是否會對其他設備造成影響,若兩臺發射機的天線路由互不影響,則在播音結束后立即倒換至下一任務的天線準備執行下一任務;若此次天線倒換會對其他發射機的天線倒換造成影響,且其他發射機的播音任務先于該發射機,則需要將此發射機空置,等待其他發射機天線倒換完成后,再尋找其他路由為該發射機倒換天線。
天線交換開關的基本控制原理是控制三相異步電機,通過電機的正反轉帶動開關刀體轉動,刀體轉向可以連接饋管內不同的觸點,使高頻信號通過不同路徑去往不同的天線。當多個天線交換開關同時使用時,信號通過的路徑就非常多。在設計和開發系統時,相關人員就需要對路徑進行優化,選擇出方便、快捷及不同發射機之間相互干擾小的路徑。最常用的天線交換開關路徑選擇方法是枚舉法,在開發系統時,相關人員需要提前列舉出全部通路,并根據便利程度和對其他設備的影響程度,為每條通路設置優先級。系統會自動按照優先級從高到低查詢,選出該發射機使用某副天線當前條件下優先級最高的路徑,并按時完成倒換。例如,A01 機上3#天線通過不同交換開關的動作有多條路徑,按照優先級的高低排列為A、B、C 等。當需要完成A01 機上3#天線倒換時,系統首先查詢A 路徑是否滿足條件,如果滿足則按A 路徑倒換交換開關,完成天線倒換;如果A 路徑中有交換開關正在使用,開關在閉鎖狀態不能轉換,則查詢B 路徑,以此類推,直到找出當前條件下最合理的 路徑[4]。
每一個天線交換開關上都有多個微動開關,當開關刀體轉動到位時,微動開關會將到位信號傳遞給PLC 控制組件,系統會通過PLC 控制組件定時上傳的數據得到所有交換開關的位置信息,對整個天線交換開關系統進行巡回監測。巡回監測的結果是天線交換開關路徑的選擇依據。同時,系統還會將巡回監測到的每個交換開關的位置與運行時間表中的任務需求進行比對,如果比對發現異常,系統就會發出告警,幫助值班人員及時發現錯誤和交換開關故障[5]。
天線交換開關上還設置有高壓檢測裝置,其可以檢測交換開關上是否有高壓信號,在設計、開發系統時,相關人員可以根據高壓檢測結果設計系統的連鎖功能。另外,天線自動交換系統必須要與發射機加高壓控制進行閉鎖,不允許帶高壓進行交換開關的切換。而且,當交換開關不到位時,發射機不允許上高壓。
在一年多時間的實際應用中,本系統運行穩定、安全、高效、便捷,解決了原有系統存在的問題,拓展了原有系統功能,能夠滿足現階段短波廣播發射的實際需求,對保障節目安全播出、加強廣播發射機的自動化監測和控制有良好的效果。