自学内容网 自学内容网

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

目录

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博客


原文地址:https://blog.csdn.net/MANONGDKY/article/details/139839441

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!