国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

遠程升級在節(jié)水灌溉控制器上的應用

2020-02-10 10:52白志峰徐曉丹
中文信息 2020年2期
關鍵詞:無線通訊節(jié)水灌溉單片機

白志峰 徐曉丹

摘 要:本文著重介紹了基于單片機的遠程升級在節(jié)水灌溉控制器上的應用,單片機選用NXP的LPC1763,利用該芯片的IAP功能,采用雙用戶程序區(qū)的設計思路,有效的防止了升級過程中通訊故障或意外斷電等問題造成的遠程升級失敗而導致的產(chǎn)品失控問題,有效的保證了遠程升級的可靠性。

關鍵詞:節(jié)水灌溉 遠程升級 無線通訊 單片機

中圖分類號:TP311.52文獻標識碼:A文章編號:1003-9082(2020)02-000-01

根據(jù)我國的水資源現(xiàn)狀,我國政府部門提出了節(jié)水灌溉的號召,大量的節(jié)水灌溉控制器應運而生。由于我國地域遼闊,不同地方的水資源情況和農(nóng)田分布情況差別較大,統(tǒng)一采用一種控制方式很不實際,要根據(jù)不同的地域設計不同的控制策略;另外,由于國內(nèi)灌溉區(qū)域分布較廣,現(xiàn)場維護升級費時費力[1]。針對這些問題,我們需要在節(jié)水灌溉控制器中設計遠程升級功能。

當前嵌入式設備的程序升級大都利用主控芯片的IAP功能,將Flash劃分為2個區(qū),一個區(qū)存儲引導程序,該引導程序可以實現(xiàn)數(shù)據(jù)通訊及用戶區(qū)程序擦寫操作,另一個區(qū)存儲用戶程序。當設備需要升級時,先擦除用戶程序,然后再接收新的固件代碼并將其存儲在用戶程序區(qū),實現(xiàn)遠程在線升級更新。這種程序升級方法適合于通訊狀況良好的場合,但農(nóng)田罐區(qū)一般都分布在非人口聚集區(qū),網(wǎng)絡通訊狀況較差,且經(jīng)常會出現(xiàn)意外斷電的情況,針對這種情況我們在設計時采用了雙用戶程序區(qū)的設計思路,即設計了兩個用戶程序存儲區(qū),升級程序時不擦除當前運行的程序代碼,而是把新固件放置在另外一個用戶程序區(qū),待固件下載完畢檢驗無誤后再跳轉(zhuǎn)到新的代碼區(qū)執(zhí)行,采用這種方法極大的提高了設備的穩(wěn)定性。

一、硬件設計

節(jié)水灌溉控制器采用NXP半導體公司的LPC1763FBD100作為主控芯片,該芯片采用ARMCortex-M3內(nèi)核,內(nèi)部集成Flash容量為256KB,該芯片支持在線編程和啟動引導功能,可以實現(xiàn)遠程程序升級功能。

節(jié)水灌溉控制器的無線通訊采用了有人科技的USR-GM3無線通訊模塊,支持串口轉(zhuǎn)GPRS的透明傳輸,該模塊與主控芯片LPC1763采用Uart接口連接,通過GPRS與數(shù)據(jù)中心的服務器連接,如圖1所示。

二、軟件設計

將LPC1763的代碼區(qū)域分為四個區(qū),有一個IAP程序區(qū),一個標志存儲區(qū)和兩個用戶區(qū),如表1所示為各區(qū)在Flash中的地址分配情況。兩個用戶區(qū)可以存儲用戶固件,用戶區(qū)和IAP程序區(qū)之間可以相互跳轉(zhuǎn)運行。

IAP程序區(qū)中存儲的代碼主要用于負責管理遠程升級,確定當前運行程序使用第一用戶區(qū)的固件1還是使用第二用戶區(qū)的固件2,程序第一次正常運行時是使用第一用戶區(qū)的固件1運行的,當?shù)谝挥脩魠^(qū)的固件在運行過程中檢測到遠程升級請求時,代碼跳轉(zhuǎn)到IAP程序區(qū)運行,IAP程序負責驗證遠程升級的確定性,檢查當前用戶使用的固件程序所在的區(qū)域位置(稱為當前固件存儲區(qū)),確定非當前固件存儲區(qū),在確保校驗正確的情況下,將遠程升級代碼下載到非當前固件存儲區(qū),下載完畢且校驗正確后,IAP程序?qū)⒆钚孪螺d固件的存儲區(qū)設置為當前固件存儲區(qū),并修改相應的標志位,跳轉(zhuǎn)到最新固件存儲區(qū)開始運行,完成遠程升級,如圖2所示為IAP程序流程圖。

三、通訊協(xié)議

為了確保安全,在通訊協(xié)議中設計了握手、安全認證等環(huán)節(jié),所有通訊都采用CRC校驗方式,確保數(shù)據(jù)準確可靠,具體通訊格式如下表

其中的8字節(jié)地址為控制器出廠時的唯一指定地址,數(shù)據(jù)長度為數(shù)據(jù)域長度,總報數(shù)和包號只對程序包傳輸有效,對于其他指令無效,用0x000x00填充。CRC校驗為數(shù)據(jù)幀所有數(shù)據(jù)的16位冗余校驗,控制器響應指令中的數(shù)據(jù)域主要反映接收數(shù)據(jù)包是否正確,正確為0x1A,否則為0xA1,服務器下發(fā)指令和控制器響應指令中的命令字均相同。

四、測試

對在農(nóng)田灌溉現(xiàn)場應用的節(jié)水灌溉控制器進行遠程程序升級測試,發(fā)現(xiàn)對于網(wǎng)絡狀況不好的地區(qū)的控制器升級需要盡量用比較小的數(shù)據(jù)包一次成功率更高,單包數(shù)據(jù)不超過1Kbyte為宜,經(jīng)過多次對不同地區(qū)的遠程升級測試,沒有發(fā)現(xiàn)因為意外斷電或網(wǎng)絡不暢而出現(xiàn)控制器失靈的問題。

五、結(jié)論

在節(jié)水灌溉控制上采用雙用戶程序區(qū)的遠程升級方法有效的避免了升級過程中意外斷電或網(wǎng)絡中斷造成的控制器完全失靈的問題,由于GPRS通訊的速率相對較低,而且有些偏遠地區(qū)信號狀況較差,需要使用較小的數(shù)據(jù)包傳輸數(shù)據(jù),升級用時相對較長,隨著無線通訊速度和無線通訊質(zhì)量的不斷提高,這些問題都會被解決。

參考文獻

[1]劉曉.節(jié)水灌溉控制技術研究綜述[J].電子世界,2019.

猜你喜歡
無線通訊節(jié)水灌溉單片機
基于單片機的SPWM控制逆變器的設計與實現(xiàn)
基于無線通訊的遠程無線切割分離裝置控制系統(tǒng)
基于單片機的層次漸變暖燈的研究
基于單片機的便捷式LCF測量儀
基于NRF無線通訊技術的自組網(wǎng)互助教學系統(tǒng)研究與開發(fā)
Microchip推出兩個全新PIC單片機系列
成焊機組與飛焊車之間串行無線通訊研究與應用
對超寬帶無線通訊技術的分析探討