999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MicroPython在溫室環境監測中的應用及實現

2019-06-11 09:13:34王立華孫少通
實驗室研究與探索 2019年5期
關鍵詞:環境檢測信息

王立華,孫少通,倪 雪,胡 月

(山東科技大學 電子通信與物理學院,山東 青島 266590)

0 引 言

在資源較為有限的嵌入式硬件平臺上的傳統開發語言是C/C++,存在代碼移植性差,開發周期長、維護成本高等缺點。伴隨著嵌入式硬件平臺計算能力的普遍提高,在嵌入式硬件平臺上MicroPython的開發成為熱點[1],并已經開始應用于教育、智能硬件等設計中。與傳統編程語言相比,MicroPython語言與普通Python語言具有極佳的兼容性和天然的移植優勢。同時Micropython還富有多種高級特性[2],比如閉包函數、列表解析、生成器、異常處理等。通過MicroPython提供的支持庫,開發者可以快速控制硬件對象,而不用太多的關注底層,極大地降低了開發難度,提高開發效率。

現階段我國的溫室農業信息化、智能化程度較低[3-5],雖然在精準農業、環境監控等方面有一定的應用,但與發達國家相比仍存在較大差距[6-9]。溫室大棚環境參數的有效監測可以提高農作物的生產效率,為農業大數據應用提供數據基礎,對于提高我國溫室農業水平具有重要意義[10]。

傳統溫室環境監測節點大都采用有線通信或較為復雜的節點間通信,具有成本高、布線復雜、布局不靈活等缺點[11-13],使用靈活性差。本文以溫室環境監測需求為背景,針對以上監測節點的設計缺陷,對監測節點進行了軟硬件設計,在操作系統的基礎上使用MicroPython語言[14-16]實現快速開發。

1 系統結構與功能

檢測節點的系統結構由檢測節點、云服務器和移動端應用組成,如圖1所示。

圖1 系統結構框圖

一般溫室大棚并不具有良好的WiFi環境,所以與服務器的通信使用NB-IOT模塊實現。檢測節點分為多個節點,其中一個檢測節點作為NB-IOT網關,負責數據的匯總以及與云平臺的通信,兩者之間采用TCP通信協議,節點間通信通過一主多從結構的NRF射頻通信實現,在不進行通信時節點進入休眠狀態以達到低功耗的目的。云服務器使用Onenet物聯網云平臺[17-18],在平臺創建應用發布后可獲得移動端應用。

1.1 檢測節點的功能分析

檢測節點由主控制器系統、傳感器、通信模塊、電源模塊等組成,結構組成如圖2所示。根據檢測需求,有溫、濕度、光照強度、風速和CO2濃度等傳感器,分別用來采集環境信息并傳輸至NB-IOT網關。微控制器系統由單片機和外圍電路組成,負責對采集數據進行傳輸和處理。通信模塊根據節點類型的不同,有NRF射頻模塊和NB-IOT模塊兩種,分別負責節點間通信和與服務器的通信。電源模塊用來給系統提供工作電源,為了實現靈活的配置節點采用鋰電池供電。

圖2 檢測節點結構框圖

1.2 云平臺及移動應用功能分析

云平臺與NB-IOT網關之間依照TCP通信協議進行通信,負責將數據進行處理和可視化,并提供了命令接口以實現對終端的遠程控制。通過PC端網頁的顯示界面可以展示當前的環境參數和設備狀態,支持數據導出,為大數據農業的實現提供了數據基礎,結合大數據處理技術可以分析環境、氣節與生產效率的關系。當環境參數達到設定的閾值時能夠下達命令控制相關設備進行調節,并進行多種方式的通知,避免環境因素造成產業損失,在移動端應用中可以實現同樣的功能。

2 系統功能實現

2.1 硬件設計

檢測節點采用32 bit微控制器STM32F4作為主控,該芯片具有1024K Flash、192K SRAM,通過SDIO接口可擴展內存卡來擴展內存空間。最高運行頻率可達168 MHz,能夠滿足操作系統和MicroPython的運行需求。為了使用方便,通過USB接口獲取電源,將電壓轉換為3.3 V的系統工作電壓,引出SW接口便于連接調試器進行軟件的跟蹤調試。各傳感器的數據接口分別采用SPI、IIC、ADC、One-wire數據接口來實現數據讀取,見表1。

表1 傳感器/通信模塊數據接口表

2.2 軟件設計

MicroPython是Python3編程語言的一種精簡而高效的實現,它被優化為在微控制器和受限環境中運行,目前已經在嵌入式系統上完整實現了Python3的核心功能。MicroPython在嵌入式系統上的應用還獲得了一些操作系統的支持,在操作系統的軟件結構中MicroPython作為一個軟件組件存在,具有更好的可移植性。

傳感節點分為采集結點和匯聚節點,分別進行數據的采集和上傳任務。節點通過周期性的采集數據,通過確定的格式進行節點間傳輸。為了保證網絡處于連接狀態,在啟動操作系統前創建用戶任務循環檢測TCP的連接狀態,當檢測到TCP連接斷開時將再次進行連接。檢測系統的軟件控制流程如圖3所示。

圖3 控制程序流程圖

2.2.1 基于RT-Thread的MicroPython實現

通過移植基于STM32F4硬件平臺的實時操作系統,實現操作系統的底層控制,MicroPython作為操作系統的一個軟件組件存在。系統對底層硬件初始化完成后,分別創建定時器線程、用戶線程和空閑線程,在用戶線程中掛載SD卡創建文件系統。初始化文件系統后執行msh_exec(py_main,strlen(py_main))命令,將任務指針指向文件系統的main.py文件,啟動操作系統后開始運行main.py程序。操作系統啟動過程示意圖如圖4所示。

圖4 操作系統啟動過程示意圖

通過MicroPython提供的支持庫可以實現對于基本對象的調用,例如UART、SPI、IIC對象的類方法提供了對于不同對象的具體操作。對于MicroPython支持較好的Pyboard之外的硬件,通常Machine庫能夠提供較好的支持。操作系統提供了很好的POSIX標準支持,所以MicroPython中很多模塊可以在RT-Thread MicroPython上運行。本文以SPI對象為例,通過Machine庫的使用來展示對于SPI接口控制對象的操作,控制過程如圖5所示。

圖5 硬件對象初始化信息圖

2.2.2 MicroPython多線程的實現

其多任務的實現分為兩種方式:①在進入MicroPython環境前創建任務線程,進入MicroPython環境后對線程進行監視和管理。②操作系統啟動后直接進入MicroPython環境,使用thread庫函數_thread.start_new_thread創建多任務并進行調度。在操作系統創建多線程任務后進入MicroPython環境不會影響原任務的運行。

3 實驗分析

3.1 數據通信測試

在STM32F405硬件平臺上移RT-Threa-d操作系統,移植Micropython組件實現主程序的運行環境。通過串口輸出的信息表明能夠在操作系統上運行Micropython程序,并且能夠控制UART、SPI、ADC、One-wire、Pin等硬件對象。NB-IOT模塊作為通信節點的網關,通過控制UART對象,實現對于物聯網平臺的數據匯總。數據展示界面可以在PC端實時查看,如圖6所示。圖6顯示界面清晰簡潔,能夠較為直觀的展示溫室內的環境信息。當環境信息的某項超過設定的參數閾值時將觸發云平臺的閾值報警功能,以郵件或短信方式發出通知報警。

3.2 信息采集測試

以某農業園區黃瓜溫室大棚為例進行應用測試,測試大棚占地面積為2 200 m2,共部署4個采集節點、一個匯聚節點,其中每個節點都配置2個溫度傳感器、濕度傳感器,3個二氧化碳傳感器,2個光照強度傳感器。測試節點實時采集大棚中的環境信息,通過節點間通信傳輸至匯聚節點,最終匯聚節點負責將數據打包傳輸至云平臺,PC端或移動端可以通過訪問云端服務器獲取數據展示界面。對大棚環境信息進行檢測,圖7展示了2018年9月14日11時光強傳感器的測試數據,大棚內的溫度為37 ℃,光照強度為770klx,濕度為74%,CO2濃度為602 mg/m3。根據環境信息記錄可知,在10:40~11:30這段時間內,大棚內的光照強度有平穩變化,CO2濃度較為穩定,溫室內溫度逐漸上升,濕度呈現下降趨勢,與當地的溫室大棚內相應時節環境信息相符合。

圖6 PC端環境信息展示界面

圖7 溫室大棚光照強度信息記錄

4 結 語

本設計使用MicroPython編程語言完成了對溫室大棚內的溫、濕度、光照強度等環境信息的采集,系統通過NB-IOT網關將數據傳輸至物聯網云平臺,實現了在PC端和移動端的遠程查看和環境量超閾值報警,能夠準確監測環境信息數據。通過創建操作系統層基礎任務循環檢測TCP連接狀態,可以在設備出現故障或斷網時進行自動重啟,較好地保證了網絡連接的穩定性。通過本應用證明了MicroPython語言在嵌入式平臺的實用性,與其他設計方案相比具有軟件構建簡單,開發周期短的優勢,對于物聯網應用的快速開發具有借鑒意義。

猜你喜歡
環境檢測信息
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
長期鍛煉創造體內抑癌環境
一種用于自主學習的虛擬仿真環境
孕期遠離容易致畸的環境
環境
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
小波變換在PCB缺陷檢測中的應用
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 久久国产精品无码hdav| 国产91视频免费观看| 毛片在线播放a| 国产SUV精品一区二区| 2024av在线无码中文最新| 久久永久视频| 国产97色在线| 五月天久久综合国产一区二区| 久久综合色视频| 成人久久精品一区二区三区 | 美女被狂躁www在线观看| 国产高清国内精品福利| 日韩天堂视频| www.亚洲国产| 成人午夜精品一级毛片 | 午夜日b视频| 久久99国产乱子伦精品免| 91区国产福利在线观看午夜| 国产91在线|日本| 尤物视频一区| 青青草原偷拍视频| 97青青青国产在线播放| 国产主播喷水| 久久精品最新免费国产成人| 免费看的一级毛片| 国产午夜不卡| 亚洲成人一区二区| 综合亚洲色图| 亚洲大学生视频在线播放| 久久美女精品国产精品亚洲| 国产成人91精品免费网址在线| 国产精品欧美日本韩免费一区二区三区不卡 | 免费精品一区二区h| 四虎永久在线精品影院| 人妻夜夜爽天天爽| 99久久精品国产麻豆婷婷| 国产福利2021最新在线观看| 国产永久在线视频| 色婷婷成人| 国产精品免费福利久久播放| 国产精品女在线观看| 午夜不卡视频| 亚洲人成色77777在线观看| 日韩成人免费网站| 久久午夜夜伦鲁鲁片不卡| 成人韩免费网站| 国产成人高清精品免费软件| 亚洲91在线精品| 一区二区在线视频免费观看| 国产亚洲男人的天堂在线观看| 日韩欧美视频第一区在线观看| 成人福利在线观看| a级毛片毛片免费观看久潮| 亚洲欧美综合精品久久成人网| 91麻豆精品视频| 最新国产你懂的在线网址| 亚洲一区二区三区中文字幕5566| 午夜色综合| 1024国产在线| 亚洲 日韩 激情 无码 中出| 婷婷成人综合| 国产无人区一区二区三区| a毛片在线播放| 无码综合天天久久综合网| 国产欧美日韩综合一区在线播放| 久久久久国产一区二区| 欧美精品啪啪一区二区三区| 国产精品久久久久婷婷五月| 99热在线只有精品| 精品国产免费第一区二区三区日韩| 91综合色区亚洲熟妇p| 久久天天躁狠狠躁夜夜2020一| 喷潮白浆直流在线播放| 国产噜噜在线视频观看| 精品伊人久久久大香线蕉欧美 | 日日摸夜夜爽无码| 亚洲一级无毛片无码在线免费视频 | 日韩av在线直播| 欧美激情视频一区二区三区免费| 国产草草影院18成年视频| 亚洲国内精品自在自线官| 日本一区中文字幕最新在线|