新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于嵌入式WinCE的遠程數據采集系統

        基于嵌入式WinCE的遠程數據采集系統

        作者: 時間:2009-12-30 來源:網絡 收藏

        4 模塊設計

        模塊是整個器軟件設計的核心部分,可以采用與設備連接的PLC、 單片機、工控機以及人機交互界面等,完成生產設備信息、環境信息及生產操作人員信息的 采集。在本文開發的中,主要是通過PLC 采集設備信息,通過單片機采集溫度、濕度、 壓力傳感器的環境信息,通過 采集器的人機交互界面直接采集生產現場 人員信息。

        通過 PLC 采集設備信息時,數據采集器通過RS-232 接口以Host Link 通信協議與PLC 通訊。Host Link 通信協議采用“主從總線”方式通信,根據主動權的不同有兩種實現形式, 一種是通信主動權在上位機( 的采集器)一方,即方式一;另一種是主動權在 下位機(PLC),即方式二。根據傳輸信號的性質不同,兩種方式可以結合使用。針對本系 統的特點,對需要用戶動態配置的信號,如設備當日產量、運行時間等,采用方式一;對于 經常需要監控的信號,如機器的運行溫度、轉速等,采用方式二。方式二的優點在于,僅當 下位機的數據發生變化時,PLC 才發起通信并上傳數據。這種通信方式可以大幅度減少上 位機的監視時間,提高的實時響應能力。本文僅以方式一為例說明動態信號的采集過程。

        采集器主動向 PLC 發出Host Link 命令幀到PLC,PLC 接收到命令幀后自動向上位機 發送應答信號,完成一次信號的采集過程。在Host Link 協議中,“@”為起始符號;節點號 為PLC 的編號(00-31);識別碼說明Host Link 命令幀的功能;FCS 包含2 個字符,是幀的校 驗碼,即從幀起始到報文結束之前數據的異或運算結果,用來檢查幀的傳送結果是否正確; “*”和“CR”為終止符,表明幀結束[3]。在本中,WinCE 中提供了操作文件IO 函數 和通信函數來操作串口,進行串口通信。為了避免讀線程調用WaitCommEvent()函數時造成 程序阻塞,提高CPU 的利用率和通信程序的實時性,改善系統的整體性能,采用多線程技 術實現異步串口讀寫的模擬[4,5]。串口通信的主要步驟如圖3 所示,(1) 調用函數CreateFile() 打開串口,函數SetCommState()配置串口參數;(2)調用函數CreateThread()創建讀寫線程, 模擬異步讀寫串口(WriteFile()將命令寫入串口緩沖區,WaitCommEvent()等待串口*事件 集發生,ReadFile()讀取串口數據);(3) 關閉串口,將采集的數據進行處理和存儲。

        采集環境信息時,用AT89C51 單片機、A/D 轉換模塊、加外圍電路構成的小型單片機 系統,通過串口與采集器根據自定義通信協議進行通信,完成溫度、濕度等數據的采 集。生產操作人員信息由嵌入式采集器的人機交互界面直接采集。

        5 基于嵌入式WinCE 數據通訊模塊設計

        數據通信模塊用于完成采集器與上層服務器之間的通信,其主要功能包括,接受控 制終端的命令,控制程序的運行狀態,為程序的調試和監控提供方便;傳輸采集數據; 同步更新采集器配置文件。數據通信模塊采用基于WinCE 的TCP/IP 協議,能夠保證在傳輸 過程中數據的準確性和可靠性;嵌入式系統硬件抗干擾能力強,能夠保證系統長期穩定運行。

        在基于 WinCE 的TCP/IP 協議中,當接收到控制終端命令時,采集器處于TCP 服 務器角色,以便多個控制終端向采集器發送命令。其通信實現流程為:TCP 服務器首先調 用socket()函數建立流式套接字,然后調用bind()綁定本地地址,調用listen()函數進行* 客戶終端連接,一旦*到客戶終端連接后,服務器就調用accept()函數接收終端的連接請 求,并建立連接,同時服務器端啟動一個新線程,建立單獨的套接字實例與客戶終端進行通 訊。通信協議格式為:命令名稱,參數表。例如在通信格式“PATHR1, 0”中,PATHR1 命令表示暫停數據采集線程,參數0 表示立即執行。服務器收到此 命令后會立即暫停數據采集模塊,并傳回命令的執行結果。

        采集器與服務器進行數據傳輸和配置文件(主要關于采集信號的類型,名稱以及其它系 統配置信息)更新時,采集器處于TCP 客戶端角色。其通信實現流程為:采集器調用socket() 函數建立流式套接字,然后調用connect()函數,請求與Linux 服務器建立TCP 連接,成功 建立連接后,同服務器進行數據傳輸和配置文件更新。數據傳輸和配置文件更新需要自定義 TCP 通信協議,采集器向服務器傳輸采集數據的通信協議格式為:數據類型,采集 時間,數據名稱,數據值…;校驗值;服務器向采集器更新配置文件的通信協議格式 為:數據類型,名稱,區域,采集點數…;校驗值。

        6. 結束語

        在微軟提供的 PB(Platform. Builder)集成開發環境中,根據分層技術定制了基于WinCE 的開發平臺,分別采用Host Link 協議和自定義協議設計了采集器與PLC 和單片機的數據采 集模塊,并實現了采集器與Linux 服務器的數據通訊模塊。作為一種新型的數據采集系統, 以嵌入式WinCE 為核心的遠程數據采集系統充分發揮了嵌入式硬件設備的特點,系統實時 性強、穩定性好,功耗小,成本低,與傳統的數據采集方案相比,特別適合于多點、多參數 的遠程數據采集,具有廣泛的應用前景。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 孝义市| 健康| 临海市| 云和县| 遂溪县| 吉林市| 金川县| 革吉县| 兰考县| 洛南县| 赫章县| 大港区| 定远县| 钦州市| 台山市| 远安县| 澄迈县| 竹山县| 双城市| 卓资县| 阿克陶县| 通州区| 古浪县| 淮滨县| 江安县| 昆山市| 连南| 耒阳市| 黔东| 桂林市| 乌兰察布市| 邳州市| 万源市| 塔河县| 汕尾市| 比如县| 轮台县| 宁晋县| 永和县| 鄂伦春自治旗| 绥江县|