基于GSM通信的SZF型波浪浮標(biāo)接收系統(tǒng)
此外,顯示界面還提供了加密門限值和安全距離設(shè)置操作。加密門限值以“十分之一大波波高”特征值作為比較參數(shù),當(dāng)標(biāo)準(zhǔn)測量測得的十分之一大波波高大于加密門限值時,自動轉(zhuǎn)為加密狀態(tài);安全距離設(shè)置可以選擇5種報警距離,一旦浮標(biāo)相鄰2次測量時間內(nèi),浮標(biāo)移動距離超過設(shè)置距離,超位報警燈會顯示紅色以示報警。
3.3 數(shù)據(jù)存儲
數(shù)據(jù)接收后存儲選擇Windows的access數(shù)據(jù)庫,access數(shù)據(jù)庫是一種桌面數(shù)據(jù)庫,適合中小型數(shù)據(jù)量的處理,在處理中小量數(shù)據(jù)時效率很高,而且簡潔方便??紤]到SZF型波浪浮標(biāo)作為一種小型海洋監(jiān)測儀器,數(shù)據(jù)量比較小,所以選用access數(shù)據(jù)庫能更好更快的存儲/查詢數(shù)據(jù)。
本文采用ADO方式方式訪問access數(shù)據(jù)庫,ADO使用存取數(shù)據(jù)源的COM組件,它提供了編程語言和統(tǒng)一數(shù)據(jù)訪問方式OLEDB的一個中間層。允許開發(fā)人員直接編寫訪問數(shù)據(jù)的代碼,降低了開發(fā)難度。
為了使用COM組件,必須在CWinAPP::InitInstance()函數(shù)中初始化COM庫:
CWinApp::InitInstance()
{
…
AfxOleInit();
…
}
然后需要引入ADO類型庫,需要在stdafx.h文件中加入:
# import”c:\program files\common files\system\ado\msado15.dll”
no_namespace rename(“EOF”,“adoEOF”)
這樣就可以連接數(shù)據(jù)源了,再對access數(shù)據(jù)庫使用SQL語言操作來進行存儲數(shù)據(jù)。
3.4 數(shù)據(jù)查詢
本系統(tǒng)提供月查詢,在實時顯示界面點擊“數(shù)據(jù)查詢”,會出現(xiàn)數(shù)據(jù)查詢對話框,可選擇一個月份進行數(shù)據(jù)查詢,包含所有的檢測數(shù)據(jù),界面如圖6所示。本文引用地址:http://butianyuan.cn/article/153571.htm
4 結(jié)語
本系統(tǒng)經(jīng)過實踐測試證明,MSComm控件能良好的接收模塊發(fā)送的串行口數(shù)據(jù),通信信號良好,存儲數(shù)據(jù)完整。使用VC++編寫的上位機接收界面友好,方便監(jiān)測人員實時觀測數(shù)據(jù)和查詢歷史數(shù)據(jù)。通過一段時間的運行使用,很好的達(dá)到浮標(biāo)岸站接收系統(tǒng)要求,并預(yù)留了上傳通信接口,以后可以方便的擴展數(shù)據(jù)向高一級數(shù)據(jù)中心傳輸?shù)墓δ埽岣吡讼到y(tǒng)的使用壽命。
評論