應(yīng)用

技術(shù)

物聯(lián)網(wǎng)世界 >> 解決方案 >> 物聯(lián)網(wǎng)方案
企業(yè)注冊(cè)個(gè)人注冊(cè)登錄

基于ARM 巡更終端的設(shè)計(jì)與實(shí)現(xiàn)

  引言 

  目前市場(chǎng)上的巡更產(chǎn)品可以分為在線式巡更與離線式巡更兩大類。離線式電子巡更巡檢系統(tǒng)只需巡邏人員手持巡更巡檢器到每一個(gè)巡更巡檢點(diǎn)采集信息后,將信息通過數(shù)據(jù)線傳輸給計(jì)算機(jī),相對(duì)于在線式電子巡更巡檢系統(tǒng)具有以下優(yōu)點(diǎn):安裝簡(jiǎn)單,易攜帶,操作方便,性能可靠;系統(tǒng)擴(kuò)容、線路變更容易。因此目前應(yīng)用的多是離線式巡更系統(tǒng)。 

  對(duì)于網(wǎng)點(diǎn)較多的單位,在巡更值班室使用具有GPRS 功能巡更數(shù)據(jù)采集終端,可以實(shí)現(xiàn)即時(shí)采集數(shù)據(jù)并與監(jiān)控中心通訊,增強(qiáng)了實(shí)時(shí)性的同時(shí),還可以降低成本,是一種很好的解決方案。   

  1 智能巡更系統(tǒng)方案 

  一般來說,巡更系統(tǒng)的工作原理是在每個(gè)巡查點(diǎn)設(shè)一個(gè)可以貯存了巡查點(diǎn)地理信息的模塊,巡查員拿著手持式巡更棒,到達(dá)巡查點(diǎn)時(shí)用手持式巡更設(shè)備采集巡更點(diǎn)的信息, 即把到達(dá)該巡查點(diǎn)的時(shí)間、地理位置等數(shù)據(jù)自動(dòng)記錄在巡更棒上。巡查員完成巡更任務(wù)后,把巡查棒連接巡更主機(jī), 將巡查員的所有巡查記錄傳送到監(jiān)控中心計(jì)算機(jī),系統(tǒng)管理軟件立即顯示出該巡查員巡查的路線、到達(dá)每個(gè)巡查點(diǎn)的時(shí)間和名稱及漏查的巡查點(diǎn),并按照要求生成巡檢報(bào)告。系統(tǒng)原理示意圖如圖1 所示。 

  通過系統(tǒng)原理圖可以看出,系統(tǒng)由巡更手持機(jī)、巡更終端和監(jiān)控中心軟件三大部分組成。巡更手持機(jī)是巡更員執(zhí)行巡更任務(wù)時(shí),用來對(duì)巡更點(diǎn)的電子標(biāo)志進(jìn)行識(shí)別的手持式設(shè)備,同時(shí)還提供與巡更終端通訊的功能。手持式巡更設(shè)備一般體積較小,不好實(shí)現(xiàn)大數(shù)據(jù)量的存儲(chǔ)以及與監(jiān)控中心通訊等功能。
 
  巡更終端主要起到對(duì)巡更手持設(shè)備管理的作用。首先,巡更終端通過RS232 通訊采集手持巡更機(jī)的巡更數(shù)據(jù),然后把數(shù)據(jù)組織為數(shù)據(jù)包,以GPRS 的方式傳送到監(jiān)控中心服務(wù)器,監(jiān)控中心的軟件對(duì)數(shù)據(jù)進(jìn)行處理。巡更終端與監(jiān)控中心服務(wù)器傳輸?shù)臄?shù)據(jù)可以是巡更情況,也可以是巡更計(jì)劃、報(bào)警提示等信息。巡更終端還可以對(duì)巡更手持設(shè)備進(jìn)行初始化、設(shè)置時(shí)鐘、設(shè)置工作狀態(tài)等操作。 

  監(jiān)控中心的巡更管理軟件可以實(shí)現(xiàn)設(shè)置巡更地點(diǎn)、設(shè)置巡更人員、設(shè)置巡更路線與時(shí)間、數(shù)據(jù)采集與分析等多個(gè)功能,能夠?qū)κ占臄?shù)據(jù)與原來設(shè)定的任務(wù)相比較, 然后對(duì)巡更人員的工作進(jìn)行評(píng)價(jià),并把相應(yīng)的處理命令發(fā)送到GPRS 巡更主機(jī),提醒值班人員進(jìn)行相應(yīng)的處理。 

  2 巡更終端的硬件設(shè)計(jì)

  巡更終端主要起到對(duì)巡更手持設(shè)備進(jìn)行管理的作用?;谏厦嫠鲅哺K端的功能,它需要由具備以下功能:GPRS 通訊、顯示、按鍵、串行口通訊、實(shí)時(shí)時(shí)鐘。 

  在系統(tǒng)的各個(gè)模塊中,網(wǎng)絡(luò)通訊是個(gè)重點(diǎn)。因?yàn)楦鱾€(gè)巡更場(chǎng)點(diǎn)并不是在同一個(gè)地方,要把巡更手持機(jī)的數(shù)據(jù)及時(shí)地傳送到監(jiān)控中心服務(wù)器,必須使用網(wǎng)絡(luò)傳輸,因此系統(tǒng)使用GPRS 通訊的方式來實(shí)現(xiàn)無線數(shù)據(jù)傳輸。GPRS[1]是一種新的分組數(shù)據(jù)承載業(yè)務(wù),具有“實(shí)時(shí)在線”、“快捷登錄”、“高速傳輸”、的優(yōu)點(diǎn),特別適合數(shù)據(jù)量比較小、間斷傳輸?shù)倪h(yuǎn)程數(shù)據(jù)傳輸[2]。系統(tǒng)中采用西門子公司的MC55 GPRS 模塊。GPRS模塊與微控制器間是使用串行口進(jìn)行通信的,通信速率最高可以達(dá)到115 200bps。模塊與控制器間的通信協(xié)議使用標(biāo)準(zhǔn)AT 命令集[3]。

{$PAGE$}


  系統(tǒng)使用三星公司ARM7 系列的S3C44B0 作為主處理器, 并應(yīng)用uC/OS-II 進(jìn)行系統(tǒng)軟件開發(fā)。S3C44B0 它具有豐富的接口:UART、IIS、IIC、A/D、D/A、LCD 專用接口以及通用I/O 管腳[4]。S3C44B0 芯片內(nèi)部沒有存儲(chǔ)空間,需要通過外接存儲(chǔ)芯片來滿足系統(tǒng)的需要。通常使用NOR Flash 映射到地址0 開始的空間存儲(chǔ)程序代碼, 使RAM 能滿足程序軟件(特別是操作系統(tǒng))運(yùn)行時(shí)的需要。GPRS 的通訊方式通過S3C44B0 使用串口控制GPRS 模塊來實(shí)現(xiàn)。巡更終端需要顯示巡更點(diǎn)的情況時(shí),顯示的數(shù)據(jù)較多,因此使用128*64 的LCD 顯示。鍵盤定義了通訊、請(qǐng)求計(jì)劃、3 個(gè)級(jí)別的報(bào)警等多個(gè)功能鍵。時(shí)鐘使用S3C44B0 片內(nèi)的實(shí)時(shí)時(shí)鐘, 在通訊過程中與監(jiān)控中心服務(wù)器進(jìn)行校時(shí)。巡更終端的系統(tǒng)原理框圖如圖2 所示。


 

  3 巡更終端的軟件設(shè)計(jì) 

  巡更終端的系統(tǒng)軟件使用uC/OS-II 操作系統(tǒng)進(jìn)行開發(fā)。uC/OS-II的源代碼完全開放,是一個(gè)完整的可移植、固化、裁剪的占先式實(shí)時(shí)多任務(wù)內(nèi)核。它是針對(duì)嵌入式應(yīng)用設(shè)計(jì)的,它的大部分源代碼都是用高可移植性的ANSI C 編寫的。uC/OS-II 可以移植到不同類型、不同規(guī)模的嵌入式系統(tǒng),并能在大部分的8 位、16 位、32 位、甚至64 位的微處理器和DSP 上運(yùn)行。由于uC/OS-II 是一個(gè)實(shí)時(shí)操作系統(tǒng),所以使用它進(jìn)行軟件開發(fā),能夠進(jìn)一步簡(jiǎn)化ARM 系統(tǒng)的開發(fā)。 

  首先需要把uC/OS-II 操作系統(tǒng)移植到S3C44B0 系統(tǒng)中。uC/OSII的操作系統(tǒng)代碼包括核心代碼部分、設(shè)置代碼部分、與處理器相關(guān)的移植代碼部分。核心代碼部分的功能包括內(nèi)核管理、事件管理、消息隊(duì)列管理、存儲(chǔ)管理、消息管理、信號(hào)量處理、任務(wù)調(diào)度和定時(shí)管理。設(shè)置代碼部分包括2 個(gè)頭文件,用來配置事件控制塊的數(shù)目以及是否包含消息管理相關(guān)代碼。與處理器相關(guān)的移植代碼部分則是進(jìn)行移植過程中需要更改的部分, 它是與嵌入式處理器密切相關(guān)的, 包含OS_CPU.H、OS_CPU_C.C 和OS_CPU 三個(gè)文件。主要的移植工作包括:修改數(shù)據(jù)類型、進(jìn)入和退出臨界段、設(shè)置堆棧生長方向、任務(wù)的切換和調(diào)度、堆棧的初始化、時(shí)鐘節(jié)拍中斷。

  巡更終端的任務(wù)主要有LCD 顯示、鍵盤掃描、巡更手持機(jī)數(shù)據(jù)采集和GPRS 數(shù)據(jù)通訊,因此在uC/OS-II 的main()函數(shù)中需要?jiǎng)?chuàng)建四個(gè)主要任務(wù), 根據(jù)不同的事件要求進(jìn)行任務(wù)的切換,以
完成系統(tǒng)的要求。Task_data_collect()任務(wù)負(fù)責(zé)采集巡更數(shù)據(jù),即從巡更手持機(jī)的EEPROM 讀取巡更數(shù)據(jù), 每條巡更數(shù)據(jù)16 字節(jié), 包括1 字節(jié)的記錄號(hào)、4 字節(jié)巡更員標(biāo)識(shí)、4 字節(jié)巡更點(diǎn)的標(biāo)識(shí)、6 字節(jié)的時(shí)間、1 字節(jié)的狀態(tài)字(正常巡更/補(bǔ)巡)。終端先給手持機(jī)發(fā)一個(gè)握手信號(hào),得到正確響應(yīng)后,發(fā)送讀取命令讀取數(shù)據(jù),收到正確格式的巡更數(shù)據(jù)則發(fā)送響應(yīng),并讀取下一條,直到采集完成。如果收到的數(shù)據(jù)不正確,返回出錯(cuò)響應(yīng)并進(jìn)行最多三次的重新讀取。 

  Task_GPRS_communication()任務(wù)負(fù)責(zé)與監(jiān)控中心的通訊。終端通過MC55 模塊與監(jiān)控中心建立連接后,監(jiān)控串口的接收數(shù)據(jù),如果收到MC55 接收數(shù)據(jù)的標(biāo)識(shí)“^SISR: 1, 1\r\n” ,則讀取來自監(jiān)控中心的數(shù)據(jù),包括巡更計(jì)劃或通知信息。當(dāng)需要上傳巡更數(shù)據(jù)或者報(bào)警時(shí),終端可以發(fā)起通訊。 

  4 結(jié)束語 

  μC/OS-II 實(shí)時(shí)操作系統(tǒng)是開放源代碼且得到實(shí)際驗(yàn)證的軟件平臺(tái),而S3C44BOx 具有強(qiáng)大的32 位RISC 性能,基于此軟硬件平臺(tái)開發(fā)的巡更數(shù)據(jù)遠(yuǎn)程采集終端, 具有穩(wěn)定可靠的性能, 可以通過GPRS與監(jiān)控中心進(jìn)行實(shí)時(shí)通訊,為整個(gè)巡更系統(tǒng)的安全可靠奠定了堅(jiān)實(shí)的基礎(chǔ),確保巡更單位財(cái)產(chǎn)的安全。