AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

摘要: AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案 1.1 樣品介紹 在工業、農業物聯網布線場景中以MODBUS類型爲主,樣品提供MODBUS類型傳感器硬件和軟件快速接入方案,並將傳感器數據上傳到阿里雲物聯網平臺,在雲端table store數據庫存儲,在datav數據大屏上可視化展示。

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
1.1 樣品介紹
在工業、農業物聯網布線場景中以MODBUS類型爲主,樣品提供MODBUS類型傳感器硬件和軟件快速接入方案,並將傳感器數據上傳到阿里雲物聯網平臺,在雲端table store數據庫存儲,在datav數據大屏上可視化展示。

樣品主要特性

本地支持MODBUS工業控制協議的傳感器,有葉面溼度、葉面溼度、土壤含水率、土壤溫度、土壤酸鹼度、光照、二氧化碳含量、大氣壓力、PM2.5、PM10、風向、風速、降水量等。
AliOS Things物聯網操作系統
阿里雲物聯網平臺
雲端table Store數據庫數據存儲
datav數據大屏實時數據和歷史數據可視化展示
應用場景

氣象監測
農業大棚監測
MODBUS傳感器數據經過下面數據流

MODBUS傳感器->AliOS Things(uData)->阿里雲物聯網平平臺->OTS規則引擎->TABLESTORE->DATAV數據大屏

1.2 樣品展示
數據大屏地址
https://datav.aliyun.com/share/b2eed2f4627cf281022bbb4f23c2b568
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

2 設備端側搭建
2.1 環境準備
Developerkit開發板一套
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
ttl轉485
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
MODBUS傳感器
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
485集線器(非必需)
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
2.2 設備連接
developerkit開發板上TTL串口RX,TX,GND(白線,灰線,黑線)分別連接轉換板的RX,TX,GND。
轉換板上485 A,B兩個端口連接到485集線器A,B端子上(紅線,橙線)

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

傳感器的485 A,B端口(黃線和綠線)連接到485集線器上,電源和地(紅線和黑線)接到電源接口上。
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

將developerkit、ttl轉485轉換板USB供電,傳感器和485集線器12V電源供電,至此硬件連線完畢。
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
2.3 uData傳感器框架

AliOS Things提供一套傳感器uData框架,將MODBUS傳感器抽象驅動節點,通過vfs接口open,read操作。
AliOS Things還提供MODBUS協議庫,MODBUS傳感器驅動調用MODBUS庫接口讀取傳感器數據。

2.4 代碼下載和修改
代碼託管在github上地址: https://github.com/alibabayf/AliOS_modbus
分支weather

git clone https://github.com/alibabayf/AliOS_modbus
git checkout weather
代碼編譯

aos make uDataapp@developerkit
2.4.1 傳感器驅動
MODBUS傳感器驅動添加通過下面配置表修改
device/sensor/drv/sensor_drv_conf.h

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

modbus_sensor_t 中分別指廠商名,型號,名稱,設備節點路徑,傳感器類型,驅動是否支持,從設備地址,寄存器地址,寄存器數量,是否數據反轉,讀數據超時時間。
大部分參數已經配置好了,需要開發者修改的是用戶自己設置的傳感器從設備地址和驅動是否支持。本例中以JHFS-W1、JHFX-W1、JHYL-W1這三款傳感器爲例,可以獲取到風速、風向、總降水、當日降水量等數據。

2.4.2 uData service註冊
在文件framework/uData/service/service_process.c中註冊四類傳感器服務
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
2.4.3 四元組修改
修改framework/protocol/linkkit/iotkit/sdk-encap/imports/iot_import_product.h中四元組信息,爲雲端創建設備後獲得
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
2.4.4 uDataapp-example
文件example/uDataapp/uData-example.c
訂閱四類傳感器數據
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
example中拿到傳感器數據會按照下面json格式發送給雲端。
{"WINDSPD":xxx,"WINDDIR":xxx,"RAIN":xxx,"TODAYRAIN":xxx}

3 雲端配置
3.1 創建產品
阿里雲物聯網平臺創建產品
https://cn.aliyun.com/product/iot?spm=5176.cniot.loT.1.40721ba6VeAQwS
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

在創建的產品中定義新Topic類
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案
3.2 創建設備
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

生成的三元組信息需要和設備端一致。

3.3 創建規則引擎
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.4 編寫規則引擎SQL語句
用於解析topic收到的json payload。
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.5 創建Table Store數據庫實例
https://cn.aliyun.com/product/ots?spm=5176.cniot.cloudEssentials.78.19b81ba6dHx6op

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.6 創建Table Store數據表
設置time爲主鍵,爲字符串

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.7 編寫規則轉發數據目的地

實例、數據表、主鍵和 3.5和3.6中創建的實例、數據表、主鍵對應。

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.8 datav數據大屏添加數據
阿里雲數據大屏地址
https://data.aliyun.com/visual/datav?spm=5176.7968328.dataTechnology.6.69631232y6lNwp

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.9 創建可視化大屏
左側提供一些模板供參考
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

3.10 datav獲取數據實例
創建一個儀表盤組件

AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

以風向數據爲例,用getRange操作方式指定“direction”從後往前查找,“limit”:1 查找最新的一個數據。將WINDDIR字段值給value
AliOS Things+阿里雲 10分鐘搭建智慧農業解決方案

至此就可以實現風向數據實時更新。

原文鏈接

本文爲雲棲社區原創內容,未經允許不得轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章