一種為鋼筋混凝土檢測儀設(shè)計的遠程監(jiān)控系統(tǒng)
實現(xiàn)Socket通信,通常采用C/S模式,即大家熟知的客戶機和服務(wù)器結(jié)構(gòu),至少需要一組Socket程序。在本系統(tǒng)中,將Socket服務(wù)器設(shè)置在開發(fā)板上,可以自定義接受來自哪些客戶端的連接請求,以實現(xiàn)更靈活的使用。而且將其設(shè)置為開機自動啟動,以隨時待命,接受連接請求,不需要手工啟動。Socket客戶機設(shè)置在PC客戶端上,可以從PC上發(fā)送指令,實現(xiàn)遠程控制。四鍵模擬鍵盤如圖7。
本文引用地址:http://butianyuan.cn/article/248892.htm每一個按鈕對應(yīng)一條指令,每按下一個按鈕,相應(yīng)的指令被發(fā)送給開發(fā)板上的客戶機程序,客戶機接收到指令后再由處理程序進行相應(yīng)的處理,然后通過開發(fā)板的接口把指令輸出到檢測儀的鍵盤接口,實現(xiàn)相應(yīng)的操作。經(jīng)過測試,點擊按鈕之后,開發(fā)板能夠立即接收到指令,并做出相應(yīng)的反應(yīng),基本做到零延遲,能夠滿足遠程實時控制對低時延的要求。
2 視頻監(jiān)控
視頻監(jiān)控有很多種實現(xiàn)方式,但是考慮到實現(xiàn)難度和PC客戶端的開發(fā)難度,在MJPG-streamer開源項目的基礎(chǔ)上進行進一步開發(fā)來實現(xiàn)是一個簡單易行的方法。MJPG-streamer是一個輕量級的視頻服務(wù)器軟件,使用C語言開發(fā),運行于Linux操作系統(tǒng)上,可以從攝像頭獲取jpeg圖像,然后從PC上通過網(wǎng)絡(luò)瀏覽器實時查看攝像頭內(nèi)容。
通過修改MJPG-streamer的源代碼,進行交叉編譯后,其可以運行在嵌入式Linux開發(fā)板上。運行后便可以通過PC的網(wǎng)絡(luò)瀏覽器瀏覽攝像頭的內(nèi)容。并且對攝像頭進行一些簡單的控制(需要攝像頭支持)。
在PC客戶端開發(fā)中,通過使用WebBrowser控件調(diào)用開發(fā)板上的包含視頻的網(wǎng)頁來顯示監(jiān)控畫面。顯示效果如圖8。
可以看到監(jiān)控畫面的質(zhì)量較好,經(jīng)過測試,在局域網(wǎng)環(huán)境下,VGA(640×480)分辨率時,畫面平均時延50ms左右,平局幀率18幀左右,畫面流暢清晰,完全能夠滿足需求。
3 數(shù)據(jù)回傳
需要實時地將檢測儀獲取的數(shù)據(jù)傳回到橋面上的計算機中進行分析,所以需要設(shè)計一個文件傳輸系統(tǒng)。在本系統(tǒng)中,以FTP協(xié)議為基礎(chǔ),編寫一個FTP系統(tǒng)。該FTP系統(tǒng)采用被動式FTP,在這種方式的FTP系統(tǒng)中,命令連接和數(shù)據(jù)連接都由客戶端發(fā)起。系統(tǒng)中服務(wù)器設(shè)置在嵌入式開發(fā)板上,客戶端集成在PC客戶端中。
開發(fā)板已安裝FTP服務(wù)器,開機后一直處于偵聽狀態(tài),等待客戶端的連接。當PC客戶端中的FTP啟動時,會向服務(wù)器發(fā)送連接請求,服務(wù)器首先驗證用戶名和密碼,驗證成功后則建立連接,然后客戶端發(fā)起傳輸數(shù)據(jù)請求,服務(wù)器響應(yīng)請求,從而完成數(shù)據(jù)傳輸。
評論