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

2 设备端侧搭建
2.1 环境准备
Developerkit开发板一套

ttl转485

MODBUS传感器

485集线器(非必需)

2.2 设备连接
developerkit开发板上TTL串口RX,TX,GND(白线,灰线,黑线)分别连接转换板的RX,TX,GND。
转换板上485 A,B两个端口连接到485集线器A,B端子上(红线,橙线)

传感器的485 A,B端口(黄线和绿线)连接到485集线器上,电源和地(红线和黑线)接到电源接口上。

将developerkit、ttl转485转换板USB供电,传感器和485集线器12V电源供电,至此硬件连线完毕。

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 [email protected]
2.4.1 传感器驱动
MODBUS传感器驱动添加通过下面配置表修改
device/sensor/drv/sensor_drv_conf.h

modbus_sensor_t 中分别指厂商名,型号,名称,设备节点路径,传感器类型,驱动是否支持,从设备地址,寄存器地址,寄存器数量,是否数据反转,读数据超时时间。
大部分参数已经配置好了,需要开发者修改的是用户自己设置的传感器从设备地址和驱动是否支持。本例中以JHFS-W1、JHFX-W1、JHYL-W1这三款传感器为例,可以获取到风速、风向、总降水、当日降水量等数据。

2.4.2 uData service注册
在文件framework/uData/service/service_process.c中注册四类传感器服务

2.4.3 四元组修改
修改framework/protocol/linkkit/iotkit/sdk-encap/imports/iot_import_product.h中四元组信息,为云端创建设备后获得

2.4.4 uDataapp-example
文件example/uDataapp/uData-example.c
订阅四类传感器数据

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

在创建的产品中定义新Topic类

3.2 创建设备

生成的三元组信息需要和设备端一致。

3.3 创建规则引擎

3.4 编写规则引擎SQL语句
用于解析topic收到的json payload。

3.5 创建Table Store数据库实例
https://cn.aliyun.com/product/ots?spm=5176.cniot.cloudEssentials.78.19b81ba6dHx6op

3.6 创建Table Store数据表
设置time为主键,为字符串

3.7 编写规则转发数据目的地

实例、数据表、主键和 3.5和3.6中创建的实例、数据表、主键对应。

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

3.9 创建可视化大屏
左侧提供一些模板供参考

3.10 datav获取数据实例
创建一个仪表盘组件

以风向数据为例,用getRange操作方式指定“direction”从后往前查找,“limit”:1 查找最新的一个数据。将WINDDIR字段值给value

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

原文链接

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

原文地址:http://blog.51cto.com/13952056/2169709

时间: 2024-11-05 23:33:23

AliOS Things+阿里云 10分钟搭建智慧农业解决方案的相关文章

阿里云免费服务器搭建学习过程--成功:

2015.11.7整理阿里云免费服务器搭建学习过程:配置lamp环境环境介绍:阿里云免费服务器15天免费试用,我选择的是ubuntu14.04(如果选择的是windowsServer可以切换到Ubuntu,但是会丢失之前的一切文件,项目和配置,当然也可以直接配置wamp环境等) 建议:安装Ubuntu后默认没有图形界面,建议刚开始只是学习体验的话不用去安装图形界面,花时间且用处不大,可以直接在自己电脑上的浏览器利用ip进行访问测试即可. 两步操作1:执行sudo spt-get update,这

[原创]访问未备案的阿里云服务器上搭建的网站

最近租了个阿里云服务器玩,因为没有备案,直接通过IP是无法访问网站的,所以自己摸索出了一种临时访问未备案的阿里云服务器上搭建的网站的方法. 原理很简单,阿里云会判断访问服务器的域名是否已备案,若已备案,则跳转到阿里云内部相应ip的服务器,所以我们只需要找一个阿里云备案过的域名(直接在阿里云的成功案例里面找),这里提供两个:www.php-z.com, www.pipaw.com,然后我们只需更改C:\Windows\System32\drivers\etc下的hosts文件,我的更改如下: #

阿里云上SVN搭建

操作系统centOs6.3 1.安装  #yum install subversion #判断是否安装成功 #subversion -v #或者 svnserve --version #建立SVN库. #mkdir /opt/svn/repos #svnadmin create /opt/svn/repos 执行上面的命令后,自动在repos下建立多个文件, 分别是conf, db,format,hooks, locks, README.txt 2.配置 进入conf目录分别编辑passwd.a

10分钟教你阿里云环境下搭建iredmail邮件服务器

一.ireaqdmail 介绍 RedMail 是一个基于 Linux/BSD 系统的零成本.功能完备.成熟的邮件服务器解决方案. iRedMail 是一个开源.免费的项目.以 GPL(v2)协议发布. 二.使用的核心组件及其对应的功能 Postfix: SMTP 服务器 Dovecot: POP3/IMAP/Managesieve 服务器 Apache: Web 服务器 MySQL: 用于存储其它程序的数据,也可用于存储邮件帐号. OpenLDAP: 用于存储邮件帐号. Policyd: Po

在阿里云centos7上搭建openvpn(未成功)

p { margin-bottom: 0.25cm; line-height: 120% } a:link { } 1.环境: 运行环境:阿里云 系统:centos 7 内核版本:3.10.0-514.21.1.el7.x86_64 各软件版本: iptables-1.4.21-17.el7.x86_64 openvpn-2.4.2-2.el7.x86_64 easy-rsa-2.2.2-1.el7.noarch 2.过程 2.1 准备阶段 (1)安装所需的软件: [[email protect

阿里云服务器上搭建openvpn

为了能从办公室直接连进ECS(阿里云服务器)进行调试,所以这几天断断续续是研究开源翻墙软件pptp和openvpn,直到今天才成功.(这里很鄙视阿里云的客服和售后工程师,一会说能搭建vpn,一会说又不能,我就*了:同时也很鄙视阿里的路由表,弄的我蛋都碎光了) 吐槽到此为止,接下来进入我们今天的正题:openvpn. 一)初识 OpenVPN 是一个基于 OpenSSL 库的应用层 VPN 实现.和传统 VPN 相比,它的优点是简单易用. OpenVPN允许参与建立VPN的单点使用共享金钥,电子证

用基于linux系统的阿里云与xampp搭建网站

前几天看到阿里云啊腾讯云啊什么的都有免费用半年服务器的活动,我每天早上10点都准时去抢,但是奈何抢不到啊啊啊!!!!然后我发现阿里云有9.9元也能体验半年的活动,于是我就很高兴的买了这9.9半年的阿里云服务器.买完之后就确定一个目标,我要用这个服务器做个网站玩玩,于是以下就是我建站之旅. 阿里云给我的免费套餐的配置真是太可怜了,就1核CPU和1G的内存,大神推荐使用Linux的镜像系统,会比较好一点.但是我之前从未接触过linux操作语句,但是我还是只好硬着头皮上了.首先对云服务器的操作分三块,

阿里云Ubuntu环境搭建Docker服务

经过昨天和今天的不断奋战,在阿里云里面搭建Docker并不容易.所以我觉得有必要记录下来,以供后人学习.以及我自己的回顾. 首先,查看我们的系统版本: cat /etc/issue 的到的输出是 Ubuntu 12.04.1 LTS \n \l 我们顺便看一下内核版本,因为Docker需要在3.8以上运行. uname -r 可以得到你的内核版本,我因为要装docker,所以按照docker官网的步骤升级了内核,所以输出是: 3.8.0-44-generic docker 的Ubuntu安装说明

阿里云服务器上搭建tomcat服务器

由于任务需要,而且阿里云服务器上已经有了php运行环境,而且网站已经搭建好,需要在布置一个java web网站, 由于本人菜鸟,不知道如何搭建,而且对能否搭建两个深表怀疑,百度很多资料,没有找到想要的,最终在http://blog.csdn.net/neverever01/article/details/78246337 找到所需,首先在服务器上搭建tomcat服务器,jdk+tomcat 搭建好后,但是却不能访问到tomcat欢迎页面,自己写了一个a.html放在了ROOT目录下,输入ip+端