【阿里云IoT+YF3300】3. Alink物模型之属性上传和下发
【名词解释】属性:设备的功能模型之一,一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持 GET 和 SET 请求方式。应用系统可发起对属性的读取和设置请求。
在上一篇文章《阿里云IoT云端通信Alink协议介绍》中,我们已经简单介绍了Alink属性相关的知识内容。本篇文章将以实际的设备为例,对该部分内容进行实操。以便于网友对这部分内容有一个更深的认知。
首先我们需要做如下几方面的工作:
1、 需要有一个YF3300硬件设备,YF3300自带1路RS485,1路RS232,2路开关量输入,1路继电器(1个常开和1个常闭点),还有1个通信和1个状态灯。
2、 我们在阿里云IoT平台对YF3300进行建模,也就是构建YF3300的物模型。YF3300本身作为网关,一般情况是自身不带属性的,但是YF3300是一个小型复合产品,自带一些除通信口之外的接口,比如继电器。所以需要有针对性的建模。
下面我们就开始这方面的工作。
1.云端配置
登陆阿里云物联网平台。
A. 打开浏览器,在输入框中输入阿里云,点击搜索。
B. 选择阿里云官网,选择登陆,这里对于未申请过阿里云账户的用户,可选择支付宝快捷登录进行扫码,也可选择其他登录方式(例如淘宝 钉钉等)
C. 在阿里云首页选择物联网与云通信>物联网设备接入。
D.在物联网设备接入主界面点击选择管理控制台(初次登录用户须先开通该服务,该服务开通不收取任何费用,具体的收费细则请查询阿里云相关收费标准),即可进入阿里云物联网平台主页
在设备管理选项中创建产品(如下图所示)
查看相应的产品,进行物模型属性的创建。查看产品细节,选择功能定义,进行自定义功能添加,创建如下属性。
在新建的产品下,创建新设备,设备名称必须为Test(便于和我们设备中定义的设备名保持一致),并保存相关的设备证书(即设备三元组Productkey 、DeviceName、 DeviceSecret)。
2.设备开发
运行环境搭建:
Win7系统请安装相关的设备驱动(windows 10设备免驱)。
准备材料:
YF3300设备套装,YFIOs数据组态UKey(购买产品时厂家会附赠一个月体验版)
官方下载YFIOsManager组态管理软件。下载链接:
http://www.yfiot.com/content/downsort?current=1&title=1
设备连接:
a.将组态key插入电脑,将附赠GPRS天线连接好,插入附赠的物联网卡(也可使用自己购买的物联网卡)
b.将YF3300通过Type-C USB连接线连入电脑。
设备配置:
打开下载的YFIOsManager软件,选择USB连接方式,连接YF3300
在用户设备中新建设备
点击新建,在驱动支持中,选择other系列中的YFSoft(叶帆科技)中的YF3300官方驱动-YF3300。设备名称为云端DeviceName(Test,和云端的设备名称保持一致)。
点击保存项目,保存自定义的组态工程。
在策略列表中新建策略,策略文件选择SYS >阿里云MQTT客户端(精简版)
服务配置中在相应的地方填入设备三元组,填入产品密钥,服务地址会自动更改,扫描间隔可更改,变化上传可勾选
IO配置中勾选与云端IO相同的属性变量以及该设备的通信状态
在调试选项中部署YFIOs系统,选择精简版(上云),部署完成之后, 点击部署按钮,部署创建的驱动和策略,选择系统重启,根据当地网络情况,等待5~10s,通信灯常亮,设备与云端通信成功。也可以在YFIOsManager监控上云过程,出现MQTT Connect OK!!! ,证明设备与云端通信成功。
云端属性上传下发调试:
(1) 打开阿里云平台,查看创建的设备,选择运行状态,即可看见设备上传的属性值。点开自动刷新。
(1) 将附赠的设备端子插入设备输入端,插头插在插板上,即可看见开关量输入1的值变为1,插头拔下或者拔掉端子,开关量输入1的值变为0
(3)选择在线调试,点击前往查看。
(4)在设备调试页面,功能选择继电器(Q1),方法选择设置
将属性的值改为1,点击发送指令,看到发送指令成功即为属性下发成功,同时可以看到状态灯是否亮起,亮,则表示指令已经成功下发至设备并完成指令任务。至此,Alink物模型属性上传下发操作完毕。
注意事项:
1.操作YF3300时,因为采用的为官方驱动,云端的产品物模型属性创建时,属性标识符为Q1,数据类型为布尔型。配置正确,数据才能正常上传。
2.测试产品时,根据当地的网络情况向厂家说明,以免因运营商通信信号问题影响调试和使用。
【阿里云IoT+YF3300】3. Alink物模型之属性上传和下发的更多相关文章
- 【阿里云IoT+YF3300】1.时代大背景下的阿里云IoT物联网的现状和未来
“未来十到二十年,大家基本已经形成了一个共识,那便是新格局的奠定将由 AI 和物联网技术来支撑.放眼国内,在这些互联网巨头之中,未来真正成为竞争对手厮杀的,阿里和华为是首当其冲,在这两个领域双方分别暗 ...
- 【阿里云IoT+YF3300】4.Alink物模型之事件触发
名词解释:设备的功能模型之一,设备运行时的事件,事件一般包含需要被外部感知和处理的通知信息,可包含多个输出参数.如,某项任务完成的信息,或者设备发生故障或告警时的温度等,事件可以被订阅和推送. 在工控 ...
- 【阿里云IoT+YF3300】5. Alink物模型之服务下发
名词解释: 服务:设备的功能模型之一,设备可被外部调用的能力或方法,可设置输入参数和输出参数.相比于属性,服务可通过一条指令实现更复杂的业务逻辑,如执行某项特定的任务. -摘自阿里云物联网产品文 ...
- 【阿里云IoT+YF3300】2.阿里云IoT云端通信Alink协议介绍
如果单单只有MQTT协议,也许很难支撑起阿里这个IoT大厦.Alink协议的出现,不仅仅是数据从传感端搬到云端,它就如基因图谱,它勾画了一个大厦的骨架,有了它,才有了IoT Studio,才有了大数据 ...
- 【阿里云IoT+YF3300】6.物联网设备报警配置
纵然5G时代已经在时代的浪潮中展现出了它的身影,但是就目前的物联网环境中,网络问题仍旧是一个比较突出的硬伤.众所周知,在当前的物联网规划中,与其说是实现万物互联,倒不如说是行业指标数据监控.对于一些特 ...
- 【阿里云IoT+YF3300】13.阿里云IoT Studio WEB监控界面构建
Web可视化开发是阿里云IoT Studio中比较重要的一个功能,通过可视化拖拽的方式,方便地将各种图表组件与设备相关的数据源关联,无需编程,即可将物联网平台上接入的设备数据可视化展现. 目前支持的组 ...
- 【阿里云IoT+YF3300】15.阿里云物联网小程序构建
2013年8月,“轻应用”概念提出,但是仅仅活跃四年随后淡出 ,直到2017年1月9号借助微信小程序成功续命.一时间,以微信小程序和支付宝小程序为代表的轻应用解决方案迅速贯穿多个环节,成为“万物互联” ...
- 【阿里云IoT+YF3300】16.云端一体化,天猫精灵操控YF3300
“你好天猫精灵”,“主人有什么吩咐”,“打开灯”,“好的,灯已打开”.对于这样的对话应该大多数人都很熟悉,这就是智能家居的缩影.对于现在市面上层出不穷的智能家居系统,功能越来越繁杂,可是因为开发难度高 ...
- 【阿里云IoT+YF3300】7.物联网设备表达式运算
很多时候从设备采集的数据并不能直接使用,还需要进行处理一下.如果采用脚本处理,有点太复杂了,而采用表达式运算,则很方便地解决了此类问题. 一. 设备连接 运行环境搭建:Win7系统请下载相关的设备驱 ...
随机推荐
- 在windows中使用 nvm 实现node多版本管理
所谓 NVM 就是 Node Version Manager 的缩写,即 node的版本管理工具,我们可以在电脑中安装多个不同版本的node,并借由 NVM 来实现自由切换,详情可点击查看 NVM 官 ...
- thinkphp项目阿里云ECS服务器部署
[日记]thinkphp项目阿里云ECS服务器部署 项目本地开发告一段落.准备上传到服务器上测试 技术组成 thinkphp+mysql+阿里ECS 代码管理方式git 一.阿里ECS服务器配置 ...
- python课堂整理14---函数式编程
一.分类 当下主流的编程方法大体分为三类 1. 面向过程 2. 函数式 3. 面向对象 二.函数式编程:函数式 = 编程语言定义的函数 + 数学意义的函数 特征:1. 不可变数据 2. 第一类对象 3 ...
- jquery实现最简单的下拉菜单
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 用JSP从数据库中读取图片并显示在网页上
<1>先在mysql下建立如下的table. 并insert图像. mysql.sql文件如下: CREATE TABLE photo ( photo_no int(6) unsigned ...
- 05-k8s调度器、预选策略、优选函数
目录 k8s调度器.预选策略.优选函数 节点选择过程 调度器 预选策略 优选函数 高级调度设置机制 node选择器/node亲和调度 pod亲和性 污点调度 Taints 与 Tolerations ...
- java多线程核心api以及相关概念(一)
这篇博客总结了对线程核心api以及相关概念的学习,黑体字可以理解为重点,其他的都是我对它的理解 个人认为这些是学习java多线程的基础,不理解熟悉这些,后面的也不可能学好滴 目录 1.什么是线程以及优 ...
- webupload项目中使用
目前项目需要一个多图上传的功能,使用LayUI并也是可以实现多图上传的,但是没有图片删除功能,参考了一下网上多图上传的插件,选择了WebUpload进行功能开发. 然而不幸的是,官方的插件并不带UI界 ...
- L1005矩阵取数游戏
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define rep(i, a, b) for ( ...
- ext container的使用的场景
container 是 panel 简化,他称之为容器,而panel则是面板. 如果不需要类似Ext.panel.Panel,Ext.window.Window和Ext.tab.Panel 等功能,则 ...