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分钟搭建智慧农业解决方案

至此就可以实现风向数据实时更新。

原文链接

本文为云栖社区原创内容,未经允许不得转载。

猜你喜欢

转载自blog.51cto.com/13952056/2169709