【阿里云IoT+YF3300】5. Alink物模型之服务下发

2023-12-18 15:20

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

名词解释:

       服务:设备的功能模型之一,设备可被外部调用的能力或方法,可设置输入参数和输出参数。相比于属性,服务可通过一条指令实现更复杂的业务逻辑,如执行某项特定的任务。    -摘自阿里云物联网产品文档。

       1991美国麻省理工学院的Kevin Ash-ton教授首次提出物联网的概念,到如今的各大物联网云平台百花争艳。物联网的前景一直是很乐观的,但是在如此欣欣向荣的背景下,隐含成本(实施成本和维护成本)的问题越来越凸显。物联网项目的实施落地已经远不是工控时代的做法,原因有两点:1.物联网项目对实施速度要求高;2.综合成本敏感。如何在如此高要求的情况下达到工控的项目质量,关键在于如何去减少隐含成本。Alink物模型之服务下发,带你体验如何远程实施与维护。

一、云端配置

  1.           登陆阿里云物联网平台
  2.           设备管理选项中创建产品
  3.           示例

4.          查看相应的产品,进行物模型属性的创建。查看产品细节,选择功能定义,进行自定义属性添加与自定义服务添加

a. 自定义属性添加,创建模板请见1-1

                    b.自定义服务添加。服务类型目前支持两种,参数服务以及控制服务,事件的创建包括服务名称 标识符以及输入输出参数的定义。(根据YFIOs服务引擎定义规则:1.参数服务标识符必须为Server_Parameter_Device控制服务标识符必须为Server_Control_Device。调用方式异步。2.每个事件具有两个输入参数以及两个输出参数:(输入参数:命令字参数信息。命令字(command)为text(字符串)数据长度为32字节;参数信息(parameter)命令字(command为text(字符串)数据长度为32字节;参数信息(parameter)为text(字符串),1024字节。输出参数:执行状态状态描述执行状态(state)为int32(整数型),取值范围为-100~100,步长为1,无单位,状态描述(info)为text(字符串),数据长度为256字节。)创建模板请见图1-2

 

 

 

 

 

 

图1-2

5.         在新建的产品下,设备名称必须为Test,并保存相关的设备证书(即设备三元组Productkey DeviceName DeviceSecret

二、设备连接

       运行环境搭建:Win7系统请下载相关的设备驱动,下载地址为:,请安装VS2010/VS2015及拓展包

准备材料:YF3300设备套装,组态key(购买产品时厂家会附赠一个月体验版)官方下载YFIOsManager组态管理软件。下载链接:

http://www.yfiot.com/content/downsort?current=1&title=1  

         设备连接:a.将组态key插入电脑,将附赠GPRS天线连接好,插入附赠的物联网卡(也可使用自己购买的物联网卡)

                           b.将YF3300通过Type-C连入电脑。

        设备配置:

  1. 打开下载的YFIOsManager软件,选择USB连接方式,连接YF3300
  2. 用户设备中新建设备,点击新建,在驱动支持中,选择other系列中的YFSoft(叶帆科技)中的YF3300官方驱动。设备名称为云端的DeviceName(Test

3.在数据配置新建一个属性(Test:T)

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

5.在策略列表中新建策略,策略文件选择sys >阿里云MQTT客户端(精简版)。服务配置中在相应的地方填入设备三元组,填入产品密钥,服务地址会自动更改,扫描间隔可更改,变化上传可勾选

6.策略列表中新建策略,策略文件选择sys >阿里云服务下发(示例版)

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

三、服务下发演示

  1. 打开阿里云平台,点击监控运维,进入在线调试。
  2. 选择对应的产品名称和设备名称,选择调试真实设备,功能选择对应调试的服务名称,在下方输入框中输入对应的json字符串,选择发送指令,即可完成服务下发。

                     下发控制服务和参数服务

                      说明:1.示例版策略支持两种控制服务命令

A.开灯指令

Json字符串内容为

{

“command”:”Open”,

“parameter”:”1”

}

B.关灯指令

Json字符串内容为

{

“command”:”Close”,

“parameter”:”0”

}

服务下发反馈:

                    组态端:

设备端:根据状态灯的亮灭状态来判断指令是否下发成功

阿里云端:

 

  1. 示例版策略支持一种参数服务命令
  2. 温度校准指令

Json字符串内容为

{

“command”:”校准温度”,

“parameter”:”30”,//此处填写任意温度值(-100~100之间)

}

服务下发反馈:

组态端:

也可在数据监控查看相应的温度数据是否为校准数据

  阿里云端:

想体验阿里云IoT平台的网友,可以单击如下链接:

https://dev.iot.aliyun.com/sale?source=deveco_partner_yefan

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



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

相关文章

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

Java服务实现开启Debug远程调试

《Java服务实现开启Debug远程调试》文章介绍如何通过JVM参数开启Java服务远程调试,便于在线上排查问题,在IDEA中配置客户端连接,实现无需频繁部署的调试,提升效率... 目录一、背景二、相关图示说明三、具体操作步骤1、服务端配置2、客户端配置总结一、背景日常项目中,通常我们的代码都是部署到远程

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4

linux配置podman阿里云容器镜像加速器详解

《linux配置podman阿里云容器镜像加速器详解》本文指导如何配置Podman使用阿里云容器镜像加速器:登录阿里云获取专属加速地址,修改Podman配置文件并移除https://前缀,最后拉取镜像... 目录1.下载podman2.获取阿里云个人容器镜像加速器地址3.更改podman配置文件4.使用po

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

Nginx进行平滑升级的实战指南(不中断服务版本更新)

《Nginx进行平滑升级的实战指南(不中断服务版本更新)》Nginx的平滑升级(也称为热升级)是一种在不停止服务的情况下更新Nginx版本或添加模块的方法,这种升级方式确保了服务的高可用性,避免了因升... 目录一.下载并编译新版Nginx1.下载解压2.编译二.替换可执行文件,并平滑升级1.替换可执行文件