應用

技術

物聯網世界 >> 解決方案 >> 物聯網方案
企業(yè)注冊個人注冊登錄

基于ARM 巡更終端的設計與實現

  引言 

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

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

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

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

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

  監(jiān)控中心的巡更管理軟件可以實現設置巡更地點、設置巡更人員、設置巡更路線與時間、數據采集與分析等多個功能,能夠對收集的數據與原來設定的任務相比較, 然后對巡更人員的工作進行評價,并把相應的處理命令發(fā)送到GPRS 巡更主機,提醒值班人員進行相應的處理。 

  2 巡更終端的硬件設計

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

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

{$PAGE$}


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


 

  3 巡更終端的軟件設計 

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

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

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

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

  4 結束語 

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