楊洪萬
(山東師范大學 信息化工作辦公室, 山東 濟南 250014)
光纖傳感技術在通信技術發展中起到了重要作用,在光纖傳感技術中,主要將光波作為傳感信號,與傳統的電磁類傳感相比,光纖傳感具有明顯的優勢,由于光纖是絕緣體并且能夠通過光波傳輸信息,這使得光纖傳感可以在各種惡劣環境下使用,具有很高的測量速度[1-3]。這些優點使得光纖通信使用范圍非常廣泛,特別是在遠程人機交互系統中,在實際應用中展現出了光纖傳感技術的突出優勢。
光纖傳感技術應用在各個領域進行數據采集時,遠程人機交互系統作為輔助,實現遠程的交互控制,通過人機交互系統即可實現對數據采集參數的設置及初始化,以及對數據傳輸的控制,同時也能將采集數據的結果通過交互界面展示出來[4-6]。
目前,比較常見的遠程人機交互系統有基于SOC芯片、Qt技術和μC/OSⅢ技術的系統,這些系統在進行光纖數據傳輸時,受到現場電磁干擾比較嚴重,數據存在傳輸異常情況,并且通信質量也受到了影響,其整體應用性能比較差[7-9]。因此,提出光纖高速度數據傳輸的遠程人機交互系統設計,解決上述中存在的問題。
系統硬件主要由兩部分構成:VGA顯示模塊、讀寫控制模塊。系統硬件總體框圖,如圖1所示。

圖1 系統硬件總體框圖
圖1中,系統硬件設計包括VGA顯示模塊和讀寫控制模塊,其中VGA顯示模塊接口協議的顯示模式分為SXGA、UXGA和VGA三種,讀寫控制模塊的光纖數據存儲空間分為兩塊,一塊是從地址0開始的區域,另一塊是地址30′d1000000開始的區域,主要完成DDR數據的讀寫和DDR數據的讀出。
VGA是視頻圖像陣列的縮寫,應用于單色和彩色圖像顯示,在遠程人機交互硬件設計上,設計VGA顯示模塊,通過逐行掃描將數據顯示出來。VGA作為標準顯示接口,有3排共15個針,能夠實現對同步信號、場同步信號和RGB三種顏色信號的處理[10]。其接口協議的顯示模式往往通過刷新頻率及分辨率的差異區分,主要分為SXGA、UXGA和VGA 3種,每種顯示模式按照其時序要求的差別有嚴格的標準。在系統硬件設計上,選用常見的RGB565,VGA圖像顯示采樣1 024×768像數,調用XILINX的PLL IP產生。VGA的行時序和場時序,如圖2所示。
數據顯示程序按照VGA的時序,將數據轉化為像數,再輸出到VGA的紅綠藍數據線上[11]。該模塊輸入端口分別是v_clk,v_rst和ddr_data[127∶0],輸出端是v_hsync、v_vsync、v_r:RGB、v_g:RGB和v_b:RGB。
VGA顯示模塊需要存儲器對數據進行緩存和控制器控制數據的讀寫。在讀寫控制模塊選用FPGA進行開發設計,其核心芯片為xc6slx16,選用Spanrtan-6 LXT高速串行收發器作為輔助,支持多種接口格式,按照數據類型進行獨自的處理,實現數據存儲的高速讀寫[12]。對于數據的緩沖,選擇型號為MT41J64M16LA-187E的高速DDR DRAM作為緩存芯片,具有4個BANK,其中與FPGA芯片相連的是BANK3,通過配置可以使數據讀寫速度達到666 Mb/s。
光纖數據經過轉換后,通過VGA接口轉換成圖像顯示在人機界面上,在數據傳輸中,直接對像素進行計數,像素信息轉換成RGB信號,實現圖像顯示。
設計的讀寫控制模塊主要完成DDR數據的讀寫和DDR數據的讀出,受到光纖高速數據傳輸的要求,其數據讀出為Burst方式,一次讀出64個相同大小的數據[13]。同時,將光纖數據存儲空間分為兩塊,一塊是從地址0開始的區域,另一塊是地址30′d1000000開始的區域,當地址0開始的區域作為光纖數據存儲的時候,地址30′d1000000的區域作為展示圖像的讀模塊,這樣數據讀和寫被分成了兩部分,提高了光纖數據的傳輸速度。
基于設計的VGA顯示模塊和讀寫控制模塊即實現了系統人機交互界面的設計,設計軟件部分。
系統的軟件部分主要包括數據庫用表設計和交互數據傳輸機制設計。系統軟件總體框圖如圖3所示。

圖3 系統軟件總體框圖
在系統設計中,選用MySQL數據庫,根據系統實際內容和功能設計數據庫用表,在設計過程中,針對臨時存儲數據創建臨時表,針對數據進行輸出和其他操作產生的數據創建中間表,針對長期使用的數據或原始數據,創建基本表進行管理,在基本表中字段是不可再劃分的[14]。
在MySQL軟件上創建人機交互所使用的數據表,一種是用來存放光纖數據采集參數的參數配置表,另一種是數據存儲表,主要存放采集的光纖數據[15]。參數配置表如表1所示。

表1 參數配置表
在人機交互系統中,考慮到需要處理的數據量比較龐大,因此使用二進制數據類型作為數據存儲類型。數據存儲表的屬性分別是時間、數據、數據個數、屬性和位置[16]。在系統訪問數據庫時,采用最通用的ODBC規范訪問。
遠程人機交互系統的本質是將光纖數據顯示在交互界面上,用戶通過人機交互達到控制數據變化的目的。數據傳輸需要依賴接收方與發送方的通信[17-18]。在系統軟件設計部分,主要針對多方通信的情況,采用MODBUS-TCP協議,規定每個控制器的設備地址,發送方和接收方采用RS485進行通信控制,在TCP/IP協議層中,數據鏈路層具有數據幀的校驗性能,因此在MODBUS-TCP協議的數據幀格式當中省略校驗。在MODBUS-TCP協議的支持下,采用主動數據傳輸機制作為系統的通信機制[19-20],該傳輸機制定義了基于數據幀的傳輸方式,實現了從發送端到接收端的數據復制粘貼。在進行遠程數據傳輸時,該傳輸機制被觸發,從而實現遠程傳感與人機交互系統實時同步動作,此時用戶可通過人機界面操作光纖數據,對于遠程數據,通過遠程幀來實現同步數據的傳輸,從而達到減少實時性傳輸消耗的目的。
將以上軟件設計與硬件設計結合在一起,完成光纖高速度數據傳輸的遠程人機交互系統的設計。
在遠程人機交互系統性能測試中,搭建的測試環境中包含了完整的狀態機邏輯、時鐘產生邏輯、數據傳輸模擬邏輯和復位邏輯等。其中,時鐘產生邏輯用于產生系統測試中所需要的時鐘。測試環境搭建完成后,使用ModelSIM仿真軟件仿真出系統運行的狀態機,考慮到設計的遠程人機交互系統中使用了FPGA硬件,在使用ModelSIM時,采用ISE自身的仿真庫編譯工具進行編譯。仿真庫編譯導向圖,如圖4所示。

圖4 仿真庫編譯導向
在仿真編譯時,分別設置好軟件參數,等待庫編譯完成即可。仿真環境搭建完畢后即可建立相關工程對系統進行功能測試。
對于遠程人機交互系統的實際性能,很難從硬件描述語言上來描述其水平,為了驗證設計的遠程人機交互系統的可靠性,使用Wireshark抓包工具抓取傳輸的數據與原始數據對比,分析在傳輸中數據是否有損失。在進行上述測試的同時,引用傳統的基于SOC芯片的遠程人機交互系統、基于Qt的遠程人機交互系統和基于μC/OSⅢ技術的遠程人機交互系統,將其在相同的測試條件下進行遠程數據傳輸,根據測試結果分析各個系統的實際性能。
通過網線將計算機與開發板連接在一起,使用網絡調試助手發送數據,打開Wireshark開始抓包。待網絡調試助手完成計算機與開發板之間的光纖數據的傳輸后,采用回環結構將接收到的數據發回到計算機,將抓包數據與返回的數據相對比判斷系統數據傳輸性能。測試過程中,開發板IP地址為192.168.1.102,計算機的IP地址為192.168.1.101,端口號為8081。
在測試完成后,整理測試結果,具體內容如圖5所示。對比觀察圖5中結果,可以知道如下信息。
(1) 圖5(a)中顯示,數據發送計數與接收計數并不相同,并且在數據顯示區域,接收的數據與發送的數據不一致,接收的數據不僅缺少數據,而且存在重復數據;

(a) VGA行時序

(a) 基于SOC芯片的人機交互系統
(2) 圖5(b)中結果同樣發送數據與接收數據的計數不相等,只是在接收數據中沒有出現重復數據;

(b) VGA場時序

(b) 基于Qt的人機交互系統
(3) 圖5(c)中顯示,接收數據與發送數據計數相等,但是在接收數據區域中數據接收的順序與發送數據并不一致,數據順序被打亂;

(c) 基于μC/OSⅢ技術的人機交互系統
(4) 圖5(d)中顯示,發送數據與接收數據計數相等,并且接收數據與發送數據內容一致。

(d) 光纖高速度數據傳輸的遠程人機交互系統
綜上所述,提出的光纖高速度數據傳輸的遠程人機交互系統數據傳輸更可靠。
基于抓包結果計算出不同遠程人機交互系統在通信過程中的信噪比,信噪比是通信信號與噪聲的比值,信噪比越大,通信質量越好,反之,通信質量越差。信噪比計算式如式(1)—式(3)。
Pj=E[x2(t)]
(1)
(2)
(3)
式中,SNR表示信噪比;Pj表示信號交流功率;Pn表示噪聲功率;x(t)表示隨機信號;E表示直流分量;u表示量化區間。
計算結果如表2所示。

表2 不同人機交互系統的信噪比測試結果
表中RBM表示分辨率帶寬,在測試前設置不同的分辨率帶寬測試不同的人機交互系統。從表中數據可以看出,隨著分辨率帶寬的增加,人機交互系統的信噪比呈倍數增加;縱向對比各個系統的信噪比可知,提出的遠程人機交互系統信噪比更高,傳統的人機交互系統信噪比比較低。結合Wireshark抓包測試結果可知,設計的光纖高速度數據傳輸的遠程人機交互系統數據傳輸可靠,通信質量高,其整體應用性能遠高于傳統的遠程人機交互系統。
本文就光纖高速度數據傳輸的遠程人機交互系統進行了研究,根據光纖高速度數據傳輸的特點,設計了具有針對性的遠程人機交互系統,取得了一些成果。并在系統設計完成后,設計了多項對比測試,測試結果證明了提出的遠程人機交互系統的可靠性和高應用性。但是由于時間倉促、水平有限,設計的系統尚有進步的空間,如光纖數據的自動轉換問題,這一問題在后續研究中將作為研究重點進行分析與解決。