多站遠程無線控制信號系統通信軟件的開發
摘要:多站遠程無線控制系統是以計算機為中心控制,用多個信號源作為下位機通過無線模塊進行通信,文中介紹了通過無線數傳模塊實現無線通訊以及ActiveX控件的使用方法,提出了使系統應用程序更安全可靠,效率更高,維護更加方便的幾種措施。關鍵詞:串行通信 ActiveX控件 查詢接收 動態數組 最佳化TimeDelay
1 多站遠程無線控制系統組成
多站遠程無線控制系統是以計算機作為中心控制站,用多個信號源作為下位機,通過無線模塊進行數據通信的。系統中的上位機作為數據接收和數據處理的中心站,當下位機實時采集到上位機發送的數據后,便可進行簡單的數據處理并向上位機回送數據。
上位機無線通訊接口使用串行端口與無線數傳模塊相連,數字信號通過天線調制后送到下位機的一臺外置無線模塊,然后通過串口送入單片機進行處理。系統組成框圖如圖1所示。
2 串行通訊控件
利用VB開發通信程序主要有兩種方法,一是利用VB本身提供的控件(CONTRALS),另一種是利用WINDOWS API應用程序接口。在實際應用中,用VB 控件實現通訊的方法比調用SDK的API動態連接庫的方法更加方便和快捷,而且可以用較少的代碼實現相同的功能,這就是用VB 控件實現通訊的優點所在,下面主要介紹一下利用VB 控件實現無線通訊的方法。
VB控件工具箱中提供了一個使用非常方便的串行通訊控件MSComm,它提供了使用RS-232串行通訊上層開發的所有細則。通過它完成串行通訊既可以使用查詢方式,又可以使用事件驅動方式。控件的一些重要屬性及其說明如表1所列。
表1 MSComm控件的屬性說明
屬 性設定值說 明
ComPort1串口號,如果串口1已所用,改用串口2InBufferSize1024接收緩沖區大小InputLen0從接收緩沖區讀取的字節數,0表示全部讀取InputMode1接收數據的類型,[1] [2] [3] [4] [5]