首页 > 其他分享 >物联网开发系列(二)·阿里云平台如何建立设备与平台的连接

物联网开发系列(二)·阿里云平台如何建立设备与平台的连接

时间:2024-07-22 09:29:41浏览次数:13  
标签:查看 单击 模型 平台 联网 mqtt 阿里 设备 SDK

目录

1.  为产品定义物模型

1.1  登陆阿里云平台

1.2  编辑草稿

1.3  物理模型的配置

1.4  查看完整物模型JSON文件        

1.5  发布物模型

2.  建立设备与平台的连接

2.1  准备开发环境

2.2  获取设备端C语言的SDK

2.3  解压本地的C语言SDK文件,修改SDK中的设备证书信息

2.4  登录Linux虚拟机,执行以下命令,安装所需软件

2.5  运行样例程序


1.  为产品定义物模型

        物联网平台支持为产品定义物模型,将实际产品抽象成由属性、服务、事件所组成的数据模型,便于物联网平台管理和数据交互。产品创建完成后,您可以为它定义物模型,产品下的设备将自动继承物模型内容。

本章开始前,请完成:

物联网开发系列(一)·阿里云平台产品的创建以及设备的添加-CSDN博客

1.1  登陆阿里云平台

        首先,在①处输入账号和密码,登录“阿里云”。

        然后按照顺序,在②处点击“产品”,在③处点击“物联网”,在④处点击“物联网平台”,进入如下页面,点击“管理控制台”:

        进入如下页面,点击:

1.2  编辑草稿

        在左侧导航栏,选择设备管理,找打产品,在产品列表中找到已创建的产品,单击操作栏的查看

        在产品详情页,单击功能定义页签,然后单击编辑草稿

1.3  物理模型的配置

        在功能定义页面的默认模块,单击添加自定义功能,进行物模型配置,然后单击确认

        这里我配置了电压以及电流。

1.4  查看完整物模型JSON文件        

        单击物模型TSL,在完整物模型页签下,可看到该产品的完整物模型JSON文件。

1.5  发布物模型

        单击功能定义编辑草稿页面左下方的发布上线

        控制台页面会弹出发布物模型上线?对话框,单击添加发布备注,输入版本号和版本描述。

参数说明
版本号

设置当前物模型版本号。后期可根据版本号管理物模型。

版本号支持英文字母、数字和英文句号(.),长度限制1~16个字符。

版本描述描述当前版本物模型。支持中文汉字、英文字母、日文、数字和特殊符号。长度限制为100个字符。一个中文汉字算一个字符;一个日文算一个字符。

        如果存在已上线的版本,则需要进行比对,确认新版本的修改点。

        单击比对结果,在比对结果对话框中查看修改点。确认无误后,单击确认查阅,回到发布物模型上线对话框,自动选中“确认已查看当前版本与线上版本的比对结果”前的复选框。

        如果不需要比对,您可直接手动选中“确认已查看当前版本与线上版本的比对结果”前的复选框。

        单击确定,完成物模型的发布。

2.  建立设备与平台的连接

        阿里云物联网平台提供设备端SDK,设备使用SDK与平台建立通信。

2.1  准备开发环境

        本文使用Linux下的设备端C语言SDK。该SDK的编译环境推荐使用64位的Ubuntu16.04。SDK的开发编译环境会用到以下软件:make(4.1及以上版本)、gcc(5.4.0及以上版本)。

可以使用如下命令行安装:

sudo apt-get install -y build-essential make gcc

2.2  获取设备端C语言的SDK

        在左侧导航栏单击文档与工具,然后在设备接入SDK区域的Link SDK下,单击SDK定制

        在高级能力下,单击物模型,其他参数使用默认配置,然后单击开始生成后,会在本地下载C语言SDK的ZIP文件。

2.3  解压本地的C语言SDK文件,修改SDK中的设备证书信息

        请单击:

链接: https://pan.baidu.com/s/1V1PbjfJVT-mbykC4HPrcZQ?pwd=h4n4

提取码: h4n4 

        下载data_model_basic_demo.c文件,替换掉2.2生成的SDK文件\LinkSDK\demos路径下的data_model_basic_demo.c文件,然后修改以下参数。

char *product_key       = "a2***";
char *device_name       = "device1";
char *device_secret     = "8c684ef***";
...
...
char  *mqtt_host = "a2***.iot-as-mqtt.cn-shanghai.aliyuncs.com";

参数示例说明
mqtt_host
  • 新版公共实例的示例:iot-cn-***.mqtt.iothub.aliyuncs.com

  • 旧版公共实例的示例:a2***.iot-as-mqtt.cn-shanghai.aliyuncs.com

设备的MQTT接入域名。

  • 新版公共实例:在实例详情页面单击右上方的查看开发配置,在开发配置面板查看接入域名。

  • 旧版公共实例:接入域名格式为${YourProductKey}.iot-as-mqtt.${YourRegionId}.aliyuncs.com

product_keya2***

设备认证信息。即完成添加设备后,您保存至本地的设备证书。

您也可以在物联网平台的设备详情页查看设备的认证信息。

device_namedevice1
device_secret8c684ef***

        对于product_key、device_namedevice_secret数据的获取可以参考下面链接3.3的内容:

物联网开发系列(一)·阿里云平台产品的创建以及设备的添加-CSDN博客

        如下图,找到添加的设备点击查看即可:

        对于mqtt_host,如下:

        将上述数据,复制粘贴到对应位置即可,需要注意的是,对于mqtt_host,并不是完全覆盖掉:

char  *mqtt_host = "实例ID.mqtt.iothub.aliyuncs.com";

2.4  登录Linux虚拟机,执行以下命令,安装所需软件

sudo apt-get install -y build-essential make gcc

        将步骤2.3中已修改完成的LinkSDK文件,上传至Linux虚拟机的开发环境,在SDK根目录/LinkSDK下,执行make命令,完成样例程序的编译:

make clean
make

        生成的样例程序data-model-basic-demo存放在./output目录下。

2.5  运行样例程序

./output/data-model-basic-demo

运行成功后,如下图所示:

        登录物联网平台控制台,进入公共实例页面,查看设备状态和运行状态。

        左侧导航栏选择设备管理 > 设备,找到目标设备,查看设备状态。设备状态显示为在线,则表示设备与物联网平台成功连接。

        单击设备对应操作栏的查看,进入设备详情页面,单击物模型数据页签,然后单击运行状态,查看设备的运行状态。

data_model_basic_demo.c文件中代码示例,上报了工作电流的值,如下图所示。

物联网开发_时光の尘的博客-CSDN博客

标签:查看,单击,模型,平台,联网,mqtt,阿里,设备,SDK
From: https://blog.csdn.net/MANONGDKY/article/details/139839441

相关文章

  • 工业互联网平台应用实训室解决方案
    引言随着工业4.0时代的到来和信息技术的高速发展,工业互联网已成为推动产业升级的重要力量。唯众作为领先的工业互联网解决方案提供商,推出了《工业互联网平台应用实训室解决方案》,旨在通过构建高度仿真的实训环境,帮助学生全面掌握工业互联网技术,为未来的职业生涯奠定坚实基......
  • 2024年技校大数据实验室建设及大数据实训平台整体解决方案
    随着信息技术的迅猛发展,大数据已成为推动产业升级和社会进步的重要力量。为适应市场需求,培养高素质的大数据技术人才,技校作为职业教育的重要阵地,亟需加强大数据实验室的建设与实训平台的打造。本方案旨在提出一套全面、可行的2024年技校大数据实验室建设及大数据实训平台整......
  • ML.NET:一个.NET开源、免费、跨平台的机器学习框架
    前言今天大姚给大家分享一个.NET开源、免费、跨平台(支持Windows、Linux、macOS多个操作系统)的机器学习框架:ML.NET。并且本文将会带你快速使用ML.NET训练一个属于自己的图像分类模型,对图像进行分类。ML.NET框架介绍ML.NET允许开发人员在其.NET应用程序中轻松构建、训练......
  • 基于Django+Python的网易新闻与评论舆情热点分析平台
    一、引言在信息爆炸的时代,人们每天面对海量的信息流,如何从中筛选出有价值的信息并进行深度分析变得尤为重要。基于Django+Python的网易新闻与评论舆情热点分析平台,旨在为用户提供一个高效的数据分析工具,帮助用户快速理解新闻趋势、情感倾向以及公众对特定事件的看法。通过自......
  • 物联网实用小建议:让生活与工作更智能高效
    在当今数字化的时代,物联网(InternetofThings,简称IoT)正以前所未有的速度改变着我们的生活和工作方式。从智能家居设备到工业自动化系统,物联网的应用无处不在。然而,要充分发挥物联网的潜力,我们需要掌握一些实用的小建议。https://ad.pdb2.com/l/CPCeKnK8DHfjEiN 一、明确需......
  • 基于WebGoat平台的SQL注入攻击
    目录引言一、安装好JAVA二、下载并运行WebGoat三、注册并登录WebGoat四、模拟攻击1.第九题2.第十题3.第十一题4.第十二题5.第十三题五、思考体会1.举例说明SQL 注入攻击发生的原因。2.从信息的CIA三要素(机密性、完整性、可用性)出发,举例说明SQL 注入攻击......
  • 【精品资料】大数据可视化平台数据治理方案(626页WORD)
    引言:大数据可视化平台的数据治理方案是一个综合性的策略,旨在确保大数据的质量、安全性、可访问性和合规性,从而支持高效的数据分析和可视化过程。方案介绍:大数据可视化平台的数据治理方案是一个综合性的策略,旨在确保大数据的质量、安全性、可访问性和合规性,从而支持高效的数......
  • Microsoft Endpoint Manager(MEM)是微软的一体化端点管理平台,结合了Microsoft Intune和C
    MicrosoftEndpointManager(MEM)是微软的一体化端点管理平台,结合了MicrosoftIntune和ConfigurationManager(SCCM),为企业提供跨设备、跨平台的终端管理和安全性管理能力。主要特点和功能包括:统一管理控制台:MEM提供了统一的管理控制台,使IT管理员可以从一个地方管理和监控企业中的......
  • 毕业设计&毕业项目:基于springboot+vue实现的在线音乐平台
    一、前言        在当今数字化时代,音乐已经成为人们生活中不可或缺的一部分。随着技术的飞速发展,构建一个用户友好、功能丰富的在线音乐平台成为了许多开发者和创业者的目标。本文将介绍如何使用SpringBoot作为后端框架,结合Vue.js作为前端框架,共同实现一个高效、可扩展的......
  • Java计算机毕业设计老来福平台(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着老龄化社会的加速到来,如何为老年人提供高质量、个性化的养老服务成为亟待解决的问题。传统的养老模式已难以满足老年人日益增长的需求,特别是在信......