關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 溫室中無線執行器節點的設計

        溫室中無線執行器節點的設計

        作者: 時間:2012-11-28 來源:網絡 收藏

        3.2 軟件

        (1)μC/OS-II嵌入式實時操作系統

        隨著傳感器網絡的廣泛應用,構成的變化是巨大的。因此傳感器網絡上的嵌入式操作系統必須具備好的移植性。與通用的操作系統相比,嵌入式操作系統具有如下一些特征:小巧、實時性、可裁減性、固化代碼、穩定性。針對不同的處理器類型,存儲器容量和實時性需求,有不同的嵌入式操作系統。UCB 為Mica 系列傳感器網絡產品開發了一套微型的操作系統TinyOS;清華大學也開發出了一種靈活的低成本傳感器網絡 FLOWS,它的單片機采用TI 公司的MSP430,移植了uC/OS-II 操作系統,無線傳輸芯片采用NRF905。

        μC/OS-II 是一個簡單、高效的源碼公開的嵌入式實時操作系統內核。其大多數函數調用和服務的時間具有可確定性;具有可搶占的實時多任務調度系統功能,而且提供了用于任務間同步、互斥、通信的系統服務。這些功能可以根據不同需求進行裁減,它的最小化內核能編譯到2 KB,目前已經被移植到x86、ARM、PowerPC、MIPS 等眾多體系結構上。基于短小精悍、可移植性強的特點,μC/OS-II 很適用于無線傳感器網絡節點芯片。相比較于TinyOS,uC/OS-II 提供了更加完善的任務調度和任務通信機制,并且采用標準的C 語言,從而可以更加方便的移植與調試。

        (2)μC/OS-II 在LM3S1968 上的移植

        LM3S1968 片上具有高達256KB 的單周期Flash 和64KB 的單周期SRAM,因此,不需要外擴存儲器就可以滿足μC/OS-II 代碼對容量的要求。

        μC/OS-II 在LM3S1968 上的移植,由用戶層、中間件層、μC/OS-II 源碼層、μC/OS-II移植層和驅動庫層等五個層次組成。

        ①用戶層的User 目錄存放用戶代碼與設置。其中Main.C 文件是用戶編寫任務的地方,如通風控制、光照強度控制等任務;Main.H 定義任務的堆棧大小、優先級等。OS_CFG.H是μC/OS-II 的配置文件,用戶可根據需要修改其內容。Includes.H 是總的頭文件,除μC/OS-II的源碼外,所有“.C”的文件都包含它,這樣用戶所需的頭文件和其它聲明只需在Includes.H中聲明一次就行了。

        ②中間件層的Middleware 目錄存放用戶自己編寫的中間件,如Uart0.C、Uart0.H 串口通信中間件等。

        ③μC/OS-II 源碼層的μC/OS-II Source 目錄存放μC/OS-II 的源代碼(除uCOS_II.C 外的全部“.C”和“.H”的文件)。用戶只要把源碼復制到此目錄,不需對源碼作任何的修改。

        ④μC/OS-II 移植層的μC/OS-II Ports 目錄存放μC/OS-II 基于LM3S1968 的移植代碼,包括OS_CPU_C.C、OS_CPU_A.ASM 和OS_CPU.H 等三個必要的文件,用戶應根據處理器來改寫這三個文件,使之能夠移植到相應的處理器上。Target 目錄中的Startup 文件是LM3S1968 的啟動代碼和中斷向量表,用戶要在其中加入需要的中斷服務函數的首地址;Target.C 和Target.H 提供LM3S1968 初始化函數targetInit()和其它外設控制函數。

        ⑤驅動庫層是直接面向硬件目標板的層。一般來說,除μC/OS-II 外,其它代碼都要直接或間接通過它訪問硬件。

        3.3 后臺管理系統、匯聚節點及節點間的通信

        后臺管理系統與節點的通信途徑為:后臺管理系統←→Internet←→匯聚節點←→測量節點或器節點。后臺管理系統以IP 數據包形式通過Internet 傳送到匯聚節點的數據包括目標節點編號、控制命令。測量節點和器節點采取統一編號方式,控制命令為要求測量節點上傳采樣數據,或要求執行器節點執行命令要求的動作(即控制設備的啟動或停止)或要求執行器節點上傳該節點控制設備的運行狀態。

        匯聚節點與測量節點/執行器節點之間采用多跳路由的通信方式,由于監控區域內的節點眾多,采用統一的數據格式有利于節點間的通信,數據格式如下:

        15.jpg

        其中,Preamble 為引導字節,BroAddr 為廣播地址(為0xFF),Final-No 為數據傳輸的目標節點編號,Middle-No 為中間節點編號,Source-No 為提供數據的源節點編號,CtrlData為控制命令,Data 1…Data n 為需發送或接收的有效數據,CRC 為校驗碼。

        nRF905 處于發射模式時,Preamble 和CRC 由nRF905 自動加載,BroAddr 和中間所有數據由微控制器按順序送入射頻模塊 nRF905。接收模式時,nRF905 先接收一數據包,分別驗證Preamble、BroAddr 和CRC 正確后,再將所有數據送入微控制器處理,由軟件比較地址,進行相應處理。

        4 結語

        基于無線通信技術、電子技術和計算機技術,,采用基于ARM® Cortex™-M3 的LMS3S1968 微控制器和無線收發芯片nRF905 設計了無線執行器節點。系統集成度高、性能穩定、可靠性高、實用性強。監控系統由后臺終端根據測量節點的測得數據進行決策,以此控制執行器節點執行任務,系統可以比較方便的擴展通信節點容量,實現較大區域的溫濕度及光照度的監控。可以用于農業等對溫濕度和光照度控制要求比較嚴格的行業。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 辽源市| 南宁市| 洪江市| 永寿县| 潼关县| 肇东市| 敖汉旗| 南岸区| 木里| 乾安县| 敦化市| 梓潼县| 浦县| 茂名市| 余江县| 广宁县| 淮南市| 句容市| 迁西县| 莎车县| 新兴县| 宁安市| 女性| 新田县| 万安县| 民乐县| 长沙县| 大厂| 新野县| 贵阳市| 秦皇岛市| 鱼台县| 普定县| 金湖县| 嘉善县| 信阳市| 宜春市| 明光市| 嘉定区| 逊克县| 安平县|