一種信息交換及高速傳輸的實現方法及其模塊的制作方法
【技術領域】
[0001]本發明涉及數據采集,特別涉及環境數據采集與高速傳輸。
【背景技術】
[0002]環境數據采集是采集傳感器輸出的模擬環境數據信號并轉換成計算機能識別的數字信號,然后進行相應的計算和處理,得出所需的數據。各種各樣的環境數據采集方法已被廣泛的應用到環保行業。根據不同的采集對象和要求,數據采集系統可以有多種設計和實現方案。這些方案主要有兩大類,一類是以單片機、其他嵌入式系統為基礎進行設計,另一類是以工控機嵌入數據采集卡為基礎進行設計。這些設計中所使用的控制器和傳感器的硬件平臺、參數、接口及軟件結構都不盡相同,尤其是數據的傳輸和處理方式也有很大的差異,這種多樣性的特點雖然可以滿足局部數據采集的要求,但是卻不利于被采集數據的共享、分析和管理。
[0003]因此,針對相關技術中所存在的上述問題,目前尚未提出有效的解決方案。
【發明內容】
[0004]為解決上述現有技術所存在的問題,本發明提出了一種信息交換及高速傳輸的實現方法,包括:
[0005]遠程數據處理服務器通過多個傳輸接口與相應的傳感器網絡連接,從傳感器網絡獲取需要采集的環境數據,所述多個傳輸接口采用不同的數據接口類型,同時遠程數據處理服務器使用多種接口類型與本地客戶端相連接,為客戶端提供數據服務;在使用過程中,上位機確定端口連接的傳感器網絡的傳感器類型、量程參數,通過對環境數據采集進行參數配置以進行數據采集;所述多個傳輸接口的每個接口均接入傳感器網絡中不同的傳感器,對傳感器的環境數據模擬量輸出信號進行采集。
[0006]優選地,所述多個傳輸接口在對多種類型的環境傳感數據進行采集時,采用整流器將各種傳感器輸出的模擬電信號均轉換為恒定的電流信號,然后通過采樣電阻進行電壓采樣,然后通過接口選擇器進行輪詢,在某一時刻只允許某一個傳輸接口的模擬量被采樣保持,再經過模擬數字轉換后傳送到客戶端的顯示器顯示采樣結果,或通過串行接口發送采樣的環境數據。
[0007]優選地,所述遠程數據處理服務器與客戶端之間使用C/S方式進行數據交互;對于所采集環境數據的分析、處理、存儲和更新發布在遠程數據處理服務器上進行;
[0008]利用UDP將客戶端在服務器上注冊,利用TCP進行客戶端與服務器的數據更新,維護一張客戶端在服務器上的注冊鏈表,該數據鏈表對服務器上的數據進行實時的更新,并能通知在其上注冊的客戶端,使其客戶端實時更新其本地數據,其中客戶端注冊和注銷的過程如下:客戶端啟動應用程序時,向服務器進行注冊,即發送UDP數據包表示注冊,服務端接收到此數據包后進行解析,發送當前時間給客戶端并以此作為客戶端所注冊的ID號,同時將客戶端信息抽象成結構體,作為鏈表節點插入服務器所維護的客戶端信息鏈表;注冊之后,客戶端申請與服務器建立TCP鏈接,準備交互數據,數據交互之后,服務端關掉鏈接,當服務端數據有所更新時,服務端會給所有在其上注冊的客戶端發送UDP數據包表示更新;當客戶端關閉應用程序時,會向服務端進行注銷,即發送UDP數據包表示注銷,服務端接收到此報后進行解析,從維護的客戶端信息鏈表中刪除此客戶端的節點;服務器與客戶端傳遞數據時,采用單連接模型,即每次傳遞新建一個TCP連接,服務器把數據全部發過去,客戶端讀取,讀完之后關閉連接,采用多線程創建專門的線程來處理每一個阻塞進程的socket函數,使整個線程組中實現了 socket的并發處理。
[0009]優選地,所述遠程數據處理服務器與各傳輸接口交互并采集數據的同時,還負責完成本地人機界面交互以及與多個客戶端進行數據通信,各傳輸接口負責與相應的傳感器通信;服務器與多個傳輸接口通過四條線采用一對多的方式進行連接,分別是數據信號線、同步信號線、中斷信號線和地線;當需要交互數據時,首先將中斷信號線上的電平拉低并保持足夠長的時間后再將其拉回高電平,即發出一個外部中斷信號,所有傳輸接口接收到這個外部中斷信號后,轉入自己的外部中斷處理過程,然后處理模塊與各傳輸接口通過數據信號線和同步信號線進行數據交互;
[0010]所述數據交互過程包括:1、服務器先將欲訪問的傳輸接口的地址碼以一個字節發送出去,只有與該地址對應的傳輸接口才會發回響應,其他傳輸接口退出中斷處理過程;2、若接收到傳輸接口的響應,則繼續將其他數據發往該傳輸接口 ;3、若所發數據要求傳輸接口返回數據,則在發送完數據之后馬上轉入數據接收狀態;而傳輸接口將數據發送給服務器后結束本次數據交互過程。
[0011]根據本發明的另一方面,公開了一種實現上述方法的模塊,包括:
[0012]遠程數據處理服務器單元,用于通過多個傳輸接口與相應的傳感器網絡連接,從傳感器網絡獲取需要采集的環境數據,
[0013]所述多個傳輸接口,采用不同的數據接口類型,連接傳感器網絡;
[0014]客戶端單元,用于與遠程數據處理服務器單元使用多種接口類型相連接,接收服務器單元提供的數據服務;
[0015]上位機單元,確定端口連接的傳感器網絡的傳感器類型、量程參數,通過對環境數據采集進行參數配置以進行數據采集;
[0016]傳感器單元,由多個傳輸接口的每個接口接入該傳感器單元中不同的傳感器,對傳感器的環境數據模擬量輸出信號進行采集。
[0017]本發明相比現有技術,具有以下優點:
[0018]在參考現有通用數據采集模型的基礎上,設計了一種支持多種數據接口類型的、擴展性和通用性強的數據采集系統架構,支持多種數據接口類型,同時也具有很好的可復用性。
【附圖說明】
[0019]圖1是根據本發明實施例的信息交換及高速傳輸的實現方法的流程圖。
【具體實施方式】
[0020]下文與圖示本發明原理的附圖一起提供對本發明一個或者多個實施例的詳細描述。結合這樣的實施例描述本發明,但是本發明不限于任何實施例。本發明的范圍僅由權利要求書限定,并且本發明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節以便提供對本發明的透徹理解。出于示例的目的而提供這些細節,并且無這些具體細節中的一些或者所有細節也可以根據權利要求書實現本發明。
[0021]本發明的一方面提供了一種信息交換及高速傳輸的實現方法。圖1是根據本發明實施例的一種信息交換及高速傳輸的實現方法流程圖。如圖1所示,實施本發明的具體內容如下:
[0022]本發明首先設置一臺遠程數據處理服務器,該服務器通過不同的傳輸接口與相應的傳感器網絡連接,從傳感器網絡獲取需要采集的數據。不同的傳輸接口可以采用不同的數據接口類型,從而實現了對多種數據傳輸方式的支持。同時服務器可以使用RS232等接口與本地客戶端相連接,為客戶端提供各種數據服務。服務器與客戶端之間可使用C/S方式進行數據交互;若采用以太網卡的方式,則可以將遠程數據處理服務器通過防火墻接入Internet,遠程客戶端可以靈活使用C/S或B/S的方式進行數據訪問。對于所采集數據的分析、處理、存儲和更新發布,可以在遠程數據處理服務器上進行,也可以專門增設一臺數據處理服務器完成這部分工作,新增設的數據處理服務器既可以作為本地客戶端也可以作為遠程客戶端,從遠程數據處理服務器上獲取所需原始數據。
[0023]服務器與客戶端之間使用C/S方式進行數據通信的過程進一步包括:利用UDP將客戶端在服務器上注冊,利用TCP進行客戶端與服務器的數據更新。維護一張客戶端在服務器上的注冊鏈表,從而實現客戶端在服務器上的注冊和注銷功能。該數據鏈表,能對其進行實時的更新,并能通知在其上注冊的客戶端,使其客戶端也能實時地更新其本地數據。利用多進程或多線程模型實現客戶端注冊或注銷,數據更新等功能。其中客戶端注冊和注銷的過程如下:
[0024]1、客戶端啟動應用程序時,須向服務器進行注冊,即發送UDP數據包表示注冊,月艮務端接收到此數據包后進行解析,發送當前時間給客戶端