當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于嵌入式WinCE的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)

1 引言

傳統(tǒng)數(shù)據(jù)采集系統(tǒng)一般利用各種數(shù)據(jù)采集卡或是多串口卡,編制相應(yīng)的定制軟件,將外 部信號采集到工控機或普通PC 機。由于硬件結(jié)構(gòu)的限制,傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)體積大、實 時性差、信號衰減嚴(yán)重、外掛設(shè)備數(shù)量有限,無法滿足微型化、大容量、高實時性、多參數(shù) 和高穩(wěn)定性的要求。隨著計算機技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,各種新的數(shù)據(jù)采集的實現(xiàn)方案不斷 出現(xiàn),其中,以TCP/IP 通信機制的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)具有較好的使用前景[1]。本文以基于 WinCE 的嵌入式設(shè)備為核心,取代傳統(tǒng)意義上的PC 機,采用TCP/IP 通信機制搭建的遠(yuǎn)程 數(shù)據(jù)采集系統(tǒng),結(jié)合嵌入式設(shè)備和網(wǎng)絡(luò)技術(shù)的優(yōu)點,將信號采集、信號傳輸和數(shù)據(jù)處理相對 分離,提高了系統(tǒng)的抗干擾能力、實時性和高安全性,特別適用于遠(yuǎn)程、多參數(shù)的數(shù)據(jù)采集, 具有重要的使用價值和應(yīng)用前景。

2 遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)總體結(jié)構(gòu)

基于嵌入式 WinCE 的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)如圖1 所示,主要的組成部分及其功能如下: (1)客戶端PC,主要進行遠(yuǎn)程數(shù)據(jù)采集器的信息配置和數(shù)據(jù)監(jiān)控等;(2)Linux 系統(tǒng)服務(wù) 器,主要負(fù)責(zé)與數(shù)據(jù)采集器通信,進行數(shù)據(jù)的接收、分析、處理、存儲和監(jiān)視,以及采集器 配置文件的傳輸;(3)基于WinCE 的嵌入式數(shù)據(jù)采集器,主要根據(jù)遠(yuǎn)程配置參數(shù),多點、 多參數(shù)動態(tài)采集生產(chǎn)設(shè)備信息、環(huán)境信息以及操作人員信息,包括電流、電壓、壓力、產(chǎn)量、 溫度、濕度、班組號等。在遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)中,利用高可靠性的TCP/IP 協(xié)議完成配置文 件的更新和采集數(shù)據(jù)的傳輸,以及采集器遠(yuǎn)程調(diào)試監(jiān)控;利用嵌入式數(shù)據(jù)庫(SQL Server CE)保存采集數(shù)據(jù)和服務(wù)器傳送的遠(yuǎn)程配置文件;利用SQL Server CE 提供的RDA和Replication (合并復(fù)制)特性,當(dāng)服務(wù)器網(wǎng)絡(luò)斷開后完成數(shù)據(jù)和配置文件的轉(zhuǎn)儲和備份,保證數(shù)據(jù)的完 整性;利用嵌入?yún)R編控制的硬件看門狗技術(shù)保證系統(tǒng)運行的高穩(wěn)定性;利用可擴展的IDE 接口可以保證大容量數(shù)據(jù)的存儲。

基于嵌入式 WinCE 數(shù)據(jù)采集器采用研祥公司EVOC 104-1541CLDN(B)作為硬件平臺。 EVOC 104-1541CLDN(B)是一款可由+5V 電源供電的嵌入式應(yīng)用型的 All-in-one Geode 586 的主機板,能夠提供嵌入式操作系統(tǒng)運行所需的核心硬件資源。主要的硬件資源包括: NS GX1 處理器,工作于 2.2V/333 MHz 時的功率為1.4W,速度最高可達333 MHz; 1 個10M 以太網(wǎng)口,2 個通用異步串行口(UART);2 個USB 數(shù)據(jù)接口;1 個LCD 控制器;1 個 64MSDRAM;1 個CF 卡接口;以及鍵盤接口和IDE 接口等。利用上述的核心硬件資源, 在集成開發(fā)環(huán)境中,可以進行開發(fā)平臺的定制,數(shù)據(jù)采集和傳輸?shù)饶K的開發(fā),實現(xiàn)遠(yuǎn)程數(shù) 據(jù)采集。

3 基于嵌入式WinCE 開發(fā)平臺的定制

WinCE 嵌入式操作系統(tǒng)是一個緊湊、高效和可擴展的操作系統(tǒng),其最大的特點是使用 了分層結(jié)構(gòu)技術(shù),使系統(tǒng)具有更好的可擴展性和定制性,使應(yīng)用程序和操作系統(tǒng)獨立于具體 硬件,以適應(yīng)各種特殊的應(yīng)用環(huán)境。操作系統(tǒng)從邏輯上可以分為硬件層,OEM 層,操作系 統(tǒng)層,應(yīng)用程序?qū)覽2]?;谇度胧絎inCE 開發(fā)平臺的定制主要是對操作系統(tǒng)層和OEM 層進 行定制。

微軟提供了 PB(Platform. Builder)作為定制WinCE 操作系統(tǒng)的集成開發(fā)環(huán)境。PB 環(huán) 境支持多種功能模塊和硬件接口,可以根據(jù)目標(biāo)設(shè)備的具體硬件配置進行WinCE 的裁剪和 定制,定制wince 平臺的流程如圖2 所示。首先,通過安裝和創(chuàng)建設(shè)備驅(qū)動程序?qū)W(wǎng)卡、串 口、顯示驅(qū)動、USB 和電源驅(qū)動等硬件進行定制;然后,定制系統(tǒng)組件和服務(wù),包括TCP/IP, FTP,MFC,Telnet 等,并根據(jù)硬件配置和操作系統(tǒng)的應(yīng)用特性修改配置文件;最后,生成 操作系統(tǒng)映像文件,通過網(wǎng)口或串口將其下載到目標(biāo)設(shè)備中運行。定制完成后,導(dǎo)出應(yīng)用程序開發(fā)工具包SDK。根據(jù)導(dǎo)出的SDK 開發(fā)包,運用EVC 開發(fā)工具可以編制數(shù)據(jù)采集模塊 和數(shù)據(jù)傳輸模塊。[!--empirenews.page--]

4 基于嵌入式WinCE 數(shù)據(jù)采集模塊設(shè)計

數(shù)據(jù)采集模塊是整個數(shù)據(jù)采集器軟件設(shè)計的核心部分,可以采用與設(shè)備連接的PLC、 單片機、工控機以及人機交互界面等,完成生產(chǎn)設(shè)備信息、環(huán)境信息及生產(chǎn)操作人員信息的 采集。在本文開發(fā)的系統(tǒng)中,主要是通過PLC 采集設(shè)備信息,通過單片機采集溫度、濕度、 壓力傳感器的環(huán)境信息,通過基于嵌入式WinCE 采集器的人機交互界面直接采集生產(chǎn)現(xiàn)場 人員信息。

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

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

采集環(huán)境信息時,用AT89C51 單片機、A/D 轉(zhuǎn)換模塊、加外圍電路構(gòu)成的小型單片機 系統(tǒng),通過串口與嵌入式采集器根據(jù)自定義通信協(xié)議進行通信,完成溫度、濕度等數(shù)據(jù)的采 集。生產(chǎn)操作人員信息由嵌入式采集器的人機交互界面直接采集。

5 基于嵌入式WinCE 數(shù)據(jù)通訊模塊設(shè)計

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

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

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

6. 結(jié)束語

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

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉