<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于Windows CE的遠程數據采集與控制系統開(kāi)發(fā)

基于Windows CE的遠程數據采集與控制系統開(kāi)發(fā)

作者: 時(shí)間:2011-11-15 來(lái)源:網(wǎng)絡(luò ) 收藏

隨著(zhù)信息技術(shù)的飛速發(fā)展,數據采集系統在工業(yè)控制、智能儀器以及儀表檢測等領(lǐng)域得到了廣泛的應用[1]。傳統的數據采集系統一般采用兩種方式完成:(1)使用數據采集卡加微機系統; (2)采用各種單片機集成數據采集系統。前者雖然功能較強,但成本高、功耗大、普及性差。后者由于自身的資源有限,無(wú)法滿(mǎn)足多任務(wù)、大容量、高實(shí)時(shí)性和高穩定性的要求。而在遠程控制方面,工業(yè)上一般使用基于TCP/IP的控制模式,該方法雖然引入了網(wǎng)絡(luò )技術(shù),可以快速穩定地傳輸數據,但是成本較高、移動(dòng)性較差且維護困難。因此,本文以Windows CE5.0作為操作系統平臺,基于A(yíng)RM9內核的S3C2440A作為微控制器,引入GPRS無(wú)線(xiàn)技術(shù),實(shí)現了人機交互友好、擴展性強、實(shí)時(shí)性強、低功耗和低成本的與控制系統。本系統能對室內的溫度、濕度等各種物理量進(jìn)行檢測控制,并按照要求進(jìn)行反饋;對若干種家用電器進(jìn)行監控,如電器電壓、熱水器流量等,以便用戶(hù)及時(shí)發(fā)現問(wèn)題(例如很多太陽(yáng)能熱水器容易出現爆裂等情況);此外可以加入視頻采集與發(fā)送擴展模塊,通過(guò)MMS協(xié)議模塊發(fā)送實(shí)時(shí)圖像數據。
1 系統結構
 系統以S3C2440為控制器,由數據采集模塊,GPRS模塊、遠程控制模塊、報警系統模塊、視頻采集與發(fā)送模塊以及其他可擴展的外圍電路等組成。系統的結構框圖如圖1所示。

 首先啟動(dòng)系統,用戶(hù)可以隨時(shí)通過(guò)GPRS網(wǎng)絡(luò )向系統發(fā)出遠程控制指令,例如發(fā)送“開(kāi)始采集”指令,則系統開(kāi)始利用ADC模塊采集電壓、流量、溫度、濕度以及觸摸屏坐標等模擬量,并且轉化為相應的數字量,然后在人機界面上顯示出來(lái)。一旦所采集的數據超過(guò)給定閾值,則系統向用戶(hù)發(fā)出報警信息,以便于用戶(hù)采取進(jìn)一步的控制措施。
1.1 系統硬件設計
 本系統的硬件開(kāi)發(fā)平臺以三星S3C2440為核心。S3C2440是以ARM920T為內核的32 bit高性能微控制器、性?xún)r(jià)比高、功耗低、擴展功能豐富,因此應用非常廣泛。其帶有的MMU(存儲管理單元),可以運行主流的嵌入式操作系統,如Linux以及WinCE[2]等。數據采集模塊使用8路10 bit的A/D轉換器,該轉換器有采樣保持功能,可以實(shí)現獨立轉換和觸摸屏位置轉換兩種模式,最高轉換速率可達500 KS/s[3]。A/D模塊的應用接口電路如圖2所示。其中8路通道除第5路和第7路用于觸摸屏輸入外其余均可使用,本文使用4路分別與溫度采集傳感器、濕度采集傳感器、電阻器以及水流量傳感器相接,因此可以并行采集4路信號互不干擾。

GPRS控制模塊是以西門(mén)子公司TC35i為核心的GPRS modem。GPRS技術(shù)是基于二代移動(dòng)通信技術(shù)的改進(jìn),因此也被稱(chēng)為2.5 G。相對于GSM以電路交換數據的方式而言,GPRS采用分組交換技術(shù),在傳輸費用、傳輸速率以及實(shí)時(shí)性上均優(yōu)于前者。即使與最新的第三代移動(dòng)通信技術(shù)相比,GPRS技術(shù)在成本、速度以及性?xún)r(jià)比等方面,依然具有一定的優(yōu)勢。TC35i提供了標準的9針RS-232接口,因此需要加入MAX232進(jìn)行電平轉換,與S3C2440的串口進(jìn)行全雙工通信[4]。圖3所示為GPRS硬件接口電路,其中GSM基帶處理器是TC35i的核心部件,用來(lái)處理串口指令,J1為SIM卡座。

外圍報警設備通過(guò)S3C2440提供的PWM定時(shí)器,由通用輸入輸出GPIO口來(lái)控制。
1.2 系統軟件設計
1.2.1 AT指令集

本系統使用的GPRS模塊采用的是GSM07.05規范,它規定了SMS的DTE-DCE接口標準,即AT指令集。AT(Attention AT)命令集是從TE(Terminal Equipment)或DTE(Data Terminal Equipment)向TA(Terminal Adapter)或DCE(Data Circuit Terminating Equipment)發(fā)送,并通過(guò)TATE 發(fā)送AT 命令來(lái)控制MS(Mobile Station)的功能,實(shí)現與GSM 網(wǎng)絡(luò )業(yè)務(wù)的交互。用戶(hù)可以通過(guò)AT 命令進(jìn)行控制[4]。本文主要使用短消息相關(guān)的AT命令集。如發(fā)送AT+CMGF=n,其中n為0,選擇PDU格式,n=1,選擇文本方式。如發(fā)送AT+CSCA=string>來(lái)選擇運營(yíng)商,string=+8613800270500;即選擇中國移動(dòng)。在文本格式下發(fā)送AT+CMGS=“string”(string)為對方手機號碼,成功則返回“>”然后輸入要發(fā)送的內容以“^Z”結束。本文的GPRS類(lèi)都是通過(guò)調用串口驅動(dòng)來(lái)實(shí)現相關(guān)的功能。
1.2.2 Windows CE下的驅動(dòng)編寫(xiě)
 Windows CE是微軟公司推出的嵌入式實(shí)時(shí)操作系統,憑借其簡(jiǎn)單易用,功能強大,在智能手機、PDA以及汽車(chē)電子領(lǐng)域有廣泛的應用。本文系統中的驅動(dòng)編寫(xiě)是軟件設計的核心內容。
 基于Windows CE的2種驅動(dòng)模型是流接口驅動(dòng)和本機驅動(dòng)模型,本機驅動(dòng)模型是操作系統本身的一部分,例如電源管理,這些驅動(dòng)是通用的驅動(dòng)。流驅動(dòng)則是指一般的驅動(dòng),具有可定制的接口和功能,是專(zhuān)用的驅動(dòng)。本文所有驅動(dòng)都是流驅動(dòng),流驅動(dòng)將外部設備當作文件進(jìn)行操作,因此應用程序可以很方便地使用系統API文件進(jìn)行操作。流驅動(dòng)由一組標準的函數集合來(lái)實(shí)現,在Windows CE中定義的流接口函數有12個(gè),主要包括XXX_Init、XXX_Deinit、XXX_Open(由應用程序調用CreateFile()函數打開(kāi)驅動(dòng))、XXX_ Close(由應用程序調用CloseHandle()函數關(guān)閉驅動(dòng))、XXX_Read(由應用程序調用ReadFile()函數打開(kāi)驅動(dòng))、XXX_Write(由應用程序調用WriteFile( )函數打開(kāi)驅動(dòng))、XXX_Seek、 XXX_Power
Up、XXX_Pow-erDown、XXX_IOControl。其中,XXX是驅動(dòng)程序的設備名稱(chēng)[5]。
 本文的流驅動(dòng)需要具備3個(gè)功能:(1)驅動(dòng)數據采集模塊;(2)驅動(dòng)報警器電路;(3)驅動(dòng)GPRS模塊。
1.2.3流驅動(dòng)的實(shí)現
(1)將驅動(dòng)取名為RDA(Remote Data Acquisition)。由于要在操作系統層面調用設備,因此首先應該完成對硬件,尤其是寄存器的虛擬地址分配,在函數RDA_Init()中實(shí)現。通過(guò)調用Windows CE提供的VirtualAlloc()和VirtualCopy()訪(fǎng)問(wèn)物理內存,其中前者負責保留虛擬內存,后者負責綁定物理內存和虛擬內存。實(shí)際上最終是通過(guò)訪(fǎng)問(wèn)虛擬內存來(lái)完成訪(fǎng)問(wèn)物理內存的,主要部分代碼如下:
v_pAdcPreg=(volatileADCreg*)VirtualAlloc(0,sizeof(ADCreg),MEM_RESERVE,PAGE_NOACCESS);
…if (!VirtualCopy((PVOID)v_pAdcPreg, (PVOID)(ADC_
BASE_PHY_ADD>>8),sizeof(ADCreg),PAGE_PHYSICAL| PAGE_
READWRITE | PAGE_NOCACHE))
 v_pIOPregs=(volatile IOPreg*)VirtualAlloc(0,sizeof(IOPreg),MEM_RESERVE,PAGE_NOACCESS);…
 接著(zhù)系統通過(guò)v_pAdcPreg和v_pIOPregs來(lái)調用各自的寄存器進(jìn)行初始化,其中ADC_BASE_PHY_ADD和IOP_BASE_PA是硬件物理地址。
 隨后完成RDA_IOControl(),這個(gè)函數負責完成修改設備的功能,例如本文的數據采集模塊有8路通道,因此每次采樣時(shí)都需要轉換通道,同時(shí)采樣頻率也是可以轉換的,所有的控制碼都在頭文件中完成。通過(guò)控制碼用戶(hù)可以自由選擇通道,這與本文的要求完全一致。
  最重要的是讀函數RDA_Read(),應用程序通過(guò)讀函數與底層驅動(dòng)聯(lián)系,應用程序通過(guò)ReadFile()函數讀出ADC寄存器的值。
PUBLIC DWORD RDA_Read(DWORD Handle, LPVOID pBuffer, DWORD dwNumBytes)
 最后,在驅動(dòng)程序關(guān)閉時(shí),應用程序通過(guò)CloseHandle( )函數來(lái)調用RDA_Close ( )關(guān)閉。
1.2.4應用程序的實(shí)現
 在流驅動(dòng)編寫(xiě)完成后,通過(guò)PB完成編譯,加入注冊表信息,然后定制專(zhuān)有系統,這樣就可以在自己定制的系統中調用驅動(dòng)。應用程序的編寫(xiě)步驟如下,首先利用PB生成所需的SDK,并且安裝,其次編寫(xiě)界面利用模擬器進(jìn)行仿真,最后連接硬件,打開(kāi)驅動(dòng)測試程序。本文的所有程序已經(jīng)在EVC4.0中編寫(xiě)實(shí)現。
 本系統需要完成觸摸屏的功能、視頻采集模塊功能以及用戶(hù)自定的四路數據采集功能,因此窗體主線(xiàn)程中加入了:ADC采集、觸摸屏控制、視頻采集以及反饋模塊等4個(gè)子線(xiàn)程。圖4是應用程序的基本流程圖。
2 實(shí)驗結果
 在測試過(guò)程中,系統會(huì )根據用戶(hù)發(fā)送的短信內容,實(shí)時(shí)控制與顯示所采集的數據。系統采集到的電器電壓、室內溫度、濕度以及熱水器流量與實(shí)際情況完全相符。而系統的控制功能也很好實(shí)現,當系統采集到的數據大于閾值時(shí),例如當室內溫度過(guò)高、濕度過(guò)大、流量過(guò)大等異常情況發(fā)生時(shí),報警信息都會(huì )由遠程系統實(shí)時(shí)傳遞到用戶(hù)的手機;視頻采集系統主要由主機控制采集,用戶(hù)可以方便地通過(guò)系統進(jìn)行監控。因此通過(guò)實(shí)際測試,系統可以實(shí)現所需要的功能且具有良好的人機交互界面,實(shí)用性很強。
 本文基于A(yíng)RM9內核以及Windows CE嵌入式操作系統,同時(shí)結合GPRS技術(shù),提出一種和控制的方法。利用嵌入式系統的低功耗、低成本、多任務(wù)以及高可靠性和高實(shí)時(shí)性等特點(diǎn),通過(guò)設計、調用核心的流驅動(dòng)函數,實(shí)現了一個(gè)具有和控制功能的應用系統,擴展相應的外圍設備可以將該系統應用于更多領(lǐng)域。在后續的工作中,將繼續研究利用另一個(gè)嵌入式系統作為客戶(hù)機,通過(guò)MMS協(xié)議模塊發(fā)送實(shí)時(shí)圖像數據,從而增強系統的功能,進(jìn)一步加深在物聯(lián)網(wǎng)和智能家居控制等領(lǐng)域的應用。
參考文獻
[1] 凌有鑄,徐曉光,潘偉.基于WinCE的嵌入式遠程實(shí)時(shí)監控系統[J].計算機技術(shù)與發(fā)展,2007,17(2):204-206.
[2] 王黎明,陳雙橋,閆曉玲,等.ARM9嵌入式系統開(kāi)發(fā)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008.
[3] Samsung Electronics.S3C2440A User Manual[Z].2004.
[4] TC35i AT Command Set[Z].2006
[5] 劉彥峰,李崢. Windows CE和桌面Windows 2000/XP設備驅動(dòng)開(kāi)發(fā)的區別[J].電子技術(shù)應用,2010,36(3):127-132.

土壤濕度傳感器相關(guān)文章:土壤濕度傳感器原理
燃氣報警器相關(guān)文章:燃氣報警器原理


關(guān)鍵詞: 遠程數據采集

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>