【阿里云IoT+YF3300】3. Alink物模型之属性上传和下发

2023-12-18 15:20

本文主要是介绍【阿里云IoT+YF3300】3. Alink物模型之属性上传和下发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【名词解释】属性:设备的功能模型之一,一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持 GET SET 请求方式。应用系统可发起对属性的读取和设置请求。

在上一篇文章《阿里云IoT云端通信Alink协议介绍》中,我们已经简单介绍了Alink属性相关的知识内容。本篇文章将以实际的设备为例,对该部分内容进行实操。以便于网友对这部分内容有一个更深的认知。

首先我们需要做如下几方面的工作:

1、 需要有一个YF3300硬件设备,YF3300自带1RS485,1RS232,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。设备名称为云端DeviceNameTest,和云端的设备名称保持一致)。

点击保存项目,保存自定义的组态工程。

在策略列表中新建策略,策略文件选择SYS >阿里云MQTT客户端(精简版)

 服务配置中在相应的地方填入设备三元组,填入产品密钥,服务地址会自动更改,扫描间隔可更改,变化上传可勾选

IO配置中勾选与云端IO相同的属性变量以及该设备的通信状态

 

 

 

在调试选项中部署YFIOs系统,选择精简版(上云),部署完成之后, 点击部署按钮,部署创建的驱动和策略,选择系统重启,根据当地网络情况,等待5~10s,通信灯常亮,设备与云端通信成功。也可以在YFIOsManager监控上云过程,出现MQTT Connect OK!!!       ,证明设备与云端通信成功。

云端属性上传下发调试:

  1.     打开阿里云平台,查看创建的设备,选择运行状态,即可看见设备上传的属性值。点开自动刷新。

 

    2.    将附赠的设备端子插入设备输入端,插头插在插板上,即可看见开关量输入1的值变为1,插头拔下或者拔掉端子,开关量输入1的值变为0

(3)选择在线调试,点击前往查看

(4)在设备调试页面,功能选择继电器(Q1),方法选择设置

      

将属性的值改为1,点击发送指令,看到发送指令成功即为属性下发成功,同时可以看到状态灯是否亮起,亮,则表示指令已经成功下发至设备并完成指令任务。至此,Alink物模型属性上传下发操作完毕。

注意事项:

1.操作YF3300时,因为采用的为官方驱动,云端的产品物模型属性创建时,属性标识符为Q1,数据类型为布尔型。配置正确,数据才能正常上传。

2.测试产品时,根据当地的网络情况向厂家说明,以免因运营商通信信号问题影响调试和使用。

 

这篇关于【阿里云IoT+YF3300】3. Alink物模型之属性上传和下发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/508889

相关文章

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati

Java反射实现多属性去重与分组功能

《Java反射实现多属性去重与分组功能》在Java开发中,​​List是一种非常常用的数据结构,通常我们会遇到这样的问题:如何处理​​List​​​中的相同字段?无论是去重还是分组,合理的操作可以提高... 目录一、开发环境与基础组件准备1.环境配置:2. 代码结构说明:二、基础反射工具:BeanUtils

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

MySQL 事务的概念及ACID属性和使用详解

《MySQL事务的概念及ACID属性和使用详解》MySQL通过多线程实现存储工作,因此在并发访问场景中,事务确保了数据操作的一致性和可靠性,下面通过本文给大家介绍MySQL事务的概念及ACID属性和... 目录一、什么是事务二、事务的属性及使用2.1 事务的 ACID 属性2.2 为什么存在事务2.3 事务

GitLab文件的上传与下载方式

《GitLab文件的上传与下载方式》:本文主要介绍GitLab文件的上传与下载方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录GitLab 项目拉取到本地GitLab 项目上传方法方法 1:本地项目未初始化Git方法 2:本地项目已初始化GitGitLab 上

Spring Cache注解@Cacheable的九个属性详解

《SpringCache注解@Cacheable的九个属性详解》在@Cacheable注解的使用中,共有9个属性供我们来使用,这9个属性分别是:value、cacheNames、key、key... 目录1.value/cacheNames 属性2.key属性3.keyGeneratjavascriptor

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1