陳茜茹, 鐘清華, 張 涵
(華南師范大學 物理與電信工程學院, 廣州 510630)
大型考試對各個考場的考試時間和考場指令的統一性有著嚴格的要求,目前對這兩者的保障主要是依靠考務人員和監考員,難以做到指令播報的統一和規范。在提醒考生注意事項上,有些監考老師講得多,有些講得少,也有一定的隨意性[1]。
為做到各項考務工作時間一致,內容規范,方便各考點的考務管理,實現最大程度上的公平公正,使用統一考試指令播報尤為重要。本文介紹一種基于以太網的考試指令播報系統,依靠校園以太網速度快、覆蓋程度高的優勢,由衛星接收的標準時間信號通過安裝在服務器上的考務系統直接發送至每個考場終端,保證時間的統一性;并且在考試前中后各個重要時間節點統一向終端發送考試指令,使其顯示并播報,確保各考點能夠在統一時間開展各項考務工作,同時提高應對突發情況的能力。
根據指令播報系統需要實現的功能,將系統分為4部分:衛星時間接收裝置、考務系統、校園網和各考場終端,如圖1所示。

圖1 系統組成結構
考務系統是安裝在考務服務器上的軟件,主要通過接收北斗衛星導航系統(BeiDou Navigation Satellite System,BDS)或者全球定位系統(Global Positioning System,GPS)的時間信號同步其自身的時間作為系統時間,同時使用網絡時間協議(Network Time Protocol,NTP)與國家時間服務器進行同步,作為時間同步的冗余備份。同步以后的考場時間通過校園網廣播到各考場終端,由其顯示出來,由于校園網的網絡延遲較小,從而可以保證各考場的時間誤差在考試允許的范圍之內,實現考試時間的同步??紕障到y同時可以將考試指令廣播到各個考場終端,由考場終端將其顯示并使用文本語音合成(Text To Speech,TTS)技術將接收到的文字信息播放出來,實現考試指令的統一、準確。
由圖1所示的系統結構可知,系統的硬件主要由衛星時間接收裝置、安裝考務系統的服務器、校園網絡和考場終端4部分組成。其中,考務系統可安裝在網絡中心的服務器,并且學校的各種信息化軟件、數據庫都安裝在此,便于統一管理?,F有校園網已經在各個課室預留網絡接口,覆蓋面廣、速度快而且節約成本。衛星時間接收裝置和考場終端需自行開發,以下分別闡述。
衛星時間接收裝置由全球導航衛星系統(Global Navigation Satellite System,GNSS)天線、衛星授時電路、USB連接線構成。衛星授時電路由GNSS模塊ATGM331C-5T31和USB轉串口芯片CH340G共同組成,如圖2所示。

圖2 衛星授時電路
ATGM331C-5T31是一種高性能GNSS全星座定位授時模塊,能夠同時支持中國的BDS和美國的GPS,包含32個跟蹤通道[2]。北斗衛星導航系統是由我國自主研制的全球衛星導航系統,成為繼美國“GPS”和俄羅斯“GLONASS”之后的第3個成熟的衛星導航系統,已經在各種領域發揮重要作用。雙模衛星授時模塊極大的提高了授時的精度,增大了系統的穩定性和可靠性[3],具有高靈敏度、低功耗、低成本等優勢,適用于各類授時設備,時鐘服務器,守時設備等。
授時數據由模塊串口輸出,因此需連接USB轉串口芯片進行數據轉換以傳輸到電腦。實際安裝時將專業GNSS天線在非遮擋區域固定好,采用適當線纜連接授時電路板;授時電路板再采用UBS線與PC的USB口相連。
考場終端電路設計采用嵌入式芯片STM32F107為主控制器,通過以太網接口電路接收考務系統傳輸的各種控制指令,實現時間校準、文本顯示、語音播報等功能,硬件電路總體結構如圖3所示。

圖3 硬件電路總體框圖
SPI接口的存儲器芯片SST25VF032用以實現字庫的存儲和調用。時鐘芯片采用實時時鐘RX8025T,通過I2C總線與STM32F107通信。該芯片內部配置高精度的32.768 kHz晶振,相較于一些需要外部配置晶振的實時時鐘而言其精度更高,且具有時鐘精度調整和定時報警功能,非常適合應用在時間精度要求較高的場合[4]。語音播報電路由XFS5051CE語音合成芯片和功放電路共同組成,利用TTS技術將收到的指令文本轉換為語音信號。XFS5051CE是高集成度語音合成芯片,能夠準確、流暢地將文本合成語音,支持中英文發音,并且擁有多種播音風格[5-6]。STM32F107芯片通過USART口和XFS5051實現數據傳輸。以下對以太網電路和LED點陣屏驅動電路做重點闡述。
2.2.1 STM32F107處理器及以太網電路
設計采用STM32F107為控制芯片。STM32F107處理器是32位的ARM 微控制器,采用Cortex-M3 內核,工作頻率為72 MHz。內部集成128 kB的閃存,64 KB的SRAM。外設接口豐富,特別是其內部集成以太網10/100 MAC 模塊(支持 MII 和 RMII),只要連接一個外部以太網物理層接口芯片 PHY 和RJ45接口就能夠實現一個完整的以太網收發器[7-8],非常適合具有網絡功能的設備終端使用。本設計中STM32F107通過RMII接口與網卡接口芯片DP83848完成數據交換,其電路如圖4所示。

圖4 以太網接口電路
2.2.2 LED點陣屏驅動電路
根據教室面積有限和考試指令內容一般都不會太長的特點,考場終端采用兩塊16×32的P10工業LED點陣屏單元板拼成一塊作為顯示部件,通過SPI接口與嵌入式處理器STM32F107通信[9],驅動電路如圖5所示。P10工業LED點陣屏使用的是5 V電壓,而STM32F107處理器的邏輯電壓為3.3 V,如果直接將P10點陣屏連接到STM32F107上,將會因電平不匹配而驅動不良,故在兩者中插入一個74HC245做電平轉換,使STM32F107能穩定驅動P10點陣屏顯示信息。

圖5 LED點陣屏驅動電路
系統軟件設計包含兩個方面:上位機考務系統和下位機考場終端的功能實現。考務系統通過校園網與各個考場終端進行通信,控制各個考場終端實現指令播報、時間校準等功能。
考務系統是基于.NET平臺開發的C#窗體應用程序,以校園網為網絡平臺,TCP/IP為網絡協議,采用SQL Sever2008數據庫存儲管理員登陸信息和各個考場終端相關網絡數據[10-11]。系統應用模塊化設計思想,主要包含6個功能模塊:登陸管理、查詢在線考場終端、發送考試指令、考場終端各種參數配置、時間校準、考場終端下位機程序在線遠程升級。
系統軟件設計如圖6所示。登陸軟件后,系統首先接收衛星時間接收裝置傳送來的串行數據,按照NMEA0183協議格式提取世界標準時間(Coordinated Universal Time,UTC)信息,將此時間作為系統標準時間;導出數據庫中存儲的各個考場終端信息列表;全網廣播搜索命令,凡在線的各個考場終端返回本終端的MAC地址。若第一次連接該終端則將其添加至終端列表中顯示,保存MAC地址,并修改IP地址、子網掩碼、名稱等網絡配置;若已經保存過此終端,則在終端列表中點亮該終端在線標志。接下來,系統可以根據用戶需要完成相應功能。雙擊某個在線終端,進入該終端配置界面:進行網絡配置;發送考試指令,如可設置指定時間內顯示并播報考試須知,在對話框中輸入

圖6 考試系統軟件設計框圖
考試須知的文字內容,播報次數等;遠程升級下位機程序;設置在指定時間內打開或關閉遠程終端的LED顯示屏。選中多個在線終端可同時配置考試指令等共同信息,使各個考場考試相關節點時間一致、播報內容一致,大大增強了考試的公平公正。系統采用NTP(網絡時間協議)與考場終端對時:單擊“對時”按鈕,系統將重新從北斗/GPS授時電路傳送的串行數據中提取UTC時間信息,再根據NTP對時協議,向全網在線遠程終端進行時間校準。各個遠程終端以校準后的系統標準時間來配置時鐘芯片RX8025,最終所有考場終端的時間標準一致。
考場終端程序主要接收處理考務系統發送過來的各種指令,如圖7所示。

圖7 考試終端軟件流程圖
考場終端上電以后首先初始化系統,包括初始化STM32F107芯片的定時器、網絡接口等內部資源,初始化存儲器、時鐘芯片、LED點陣屏等外部設備。初始化定時器1,使其定時周期為1ms,作為時間計算的周期信號;初始化以太網MAC、PHY和協議棧,實現以太網數據的收發;LED點陣屏初始化主要是設置掃描速度和數據傳輸DMA緩沖區,使用DMA傳輸數據可以有效降低掃描LED點陣造成的CPU開銷;最后初始化RX8025T,讀取其內部的時間作為本地時間。
在初始化系統完成以后,考場終端檢測考務系統是否發送命令過來,如果沒有命令則向上位機發送本機MAC地址,以告知本機在線;如果接收到命令,則分析相應命令的功能要求,執行該命令。與上位機軟件相對應,考試終端對應有4個命令。
若接收到播報考試指令的命令,則將收到的信息送LED點陣屏的顯示緩沖區,使其顯示在LED屏上,程序設置了從左向右、從上至下、交叉進入等16種動態顯示效果,可根據上位機的命令選擇。再通過USART口將數據發送到語音芯片XFS5051CE上,同步播報LED屏上顯示的考場命令;接收到配置終端命令,根據命令配置網絡參數、本機名稱、地址等;接收到對時命令,則根據NTP協議向上機位發送NPT報文,由上位機計算出系統時間,下位機再根據系統校準后的時間配置時鐘芯片RX8025T;接收到升級終端程序命令,則接收程序數據,擦寫至存儲器芯片。當考試終端處理完各種命令時,待機過程中LED點陣屏將持續顯示當前時間信息,以便學生考試過程中參考,因上位機與各個考試終端進行過時間校準,故各個考場終端顯示的時間信息一致,實現考試的時間統一。
大型考試的各個考場考點采用統一的時間標準對于推進考試信息化建設,提高考務工作效率、實現最大程度上的公平公正具有十分重要的意義。本文設計的考試指令播報系統不僅能夠同步各個考場的時間信息,還能以統一規范的方式顯示和播報考場指令。
考試指令播報系統在我校經過一年的試運行,在全校期末考試、全國大學生四、六級英語等級考試等大型考試中均能正常使用,可有效保證各考場時間與考務辦公室的時間同步,保證考務辦公室的考場指令能夠迅速、準確的發送到各個考場。系統成本低,可靠性高,具有較強的推廣價值。