首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何入门使用腾讯云物联网开发平台 IoT Explorer,开发一盏智慧城市的智能灯?

如何入门使用腾讯云物联网开发平台 IoT Explorer,开发一盏智慧城市的智能灯?

作者头像
LIYI
发布2020-08-25 10:13:05
1.6K0
发布2020-08-25 10:13:05
举报
文章被收录于专栏:艺述论专栏艺述论专栏

IoT 的使用还是有一些坑。按照一些教程或文档操作,一不注意,可能就会出现无法理解,令人抓狂的错误。

今天我试用了一下 IoT,将实验过程记录了一下,希望对你帮助。

文档上讲,可以使用 MQTT 快速开始。

可以从这里( http://www.jensd.de/apps/mqttfx/1.7.1/ )下载这个软件。

MQTT.fx 是目前主流的 MQTT 桌面客户端,它支持 Windows、Mac、Linux 操作系统,可以快速验证是否可与 IoT Cloud 进行连接,并发布或订阅消息。

但是试用了一下,这个软件是方便我们 setup 起一个客户端,以连接腾讯云的 IoT 服务器,以便测试我们在腾讯云网站上创建的产品和设备是否可用。

但这个测试功能,本身腾讯云网站上就可以提供了,所以这个 MQTT,对于想编程入门的人,意义不大。

接下来,我们看如何以编程的方式入门。

首先,到这里(https://console.cloud.tencent.com/iotexplorer)新建 IoT 项目。

在新建项目页面,填写项目基本信息。例如项目名称:输入“智能灯演示”或其他名称。项目描述:按照实际需求填写项目描述。

项目创建好了,单击项目,下一步便是创建产品。在新建产品页面,填写产品基本信息。

产品名称:输入“智能灯”或其他产品名称。

产品类型:选择“智慧城市”>“公共事业”>“路灯照明”。

设备类型:选择“设备”。

认证方式:选择“密钥认证”。

通信方式:随意选择。

其他都为默认选项。

在这里地方,如果产品品类选择智能城市的路灯照灯,它将为我们自动生成该分类所需要的基本数据模板。这个数据模板,相当于我们在 Socket 通讯中定义的包数据结构。

在这个地方,LoRaWAN 是 LoRa 联盟推出的一个基于开源的 MAC 层协议的低功耗广域网(Low Power Wide Area Network, LPWAN)标准。这一技术可以为电池供电的无线设备提供局域、全国或全球的网络。LoRaWAN 瞄准的是物联网中的一些核心需求,如安全双向通讯、移动通讯和静态位置识别等服务。该技术无需本地复杂配置,就可以让智能设备间实现无缝对接互操作,给物联网领域的用户、开发者和企业自由操作权限。

在创建了产品之后,接下来单击产品,进去还需要创建设备。例如 dev001。由于之前选择了路灯照明,这里系统会我们自动生成一个功能字段,是 power_switch,代表开关。

我们还可以加上别的一些功能,例如 brightness、color、name。这三个功能,是示例中都有的字段。我们还可以添加其它名称的字段,但相应的 C 代码也要做对应的处理。

创建了设备之后,接下来需要前往这里(https://github.com/tencentyun/qcloud-iot-explorer-sdk-embedded-c.git)下载源码,这是 IoT 的 C SDK 源码,同时里面有 sample 示例。

这个源码下载后,编译,Mac/Linux 环境下出现 cmake: command not found 这样的错误。

在 Mac 上可以前往这里( http://www.cmake.org/ )下载安装 cmake。

但是这个网址今天很难下载,要几个小时。这与带宽无关,200Mb 宽带也是这样。在这里地方( https://www.macjb.com/mac/4670.html )有一个国内版本可以安装。

安装了以后,Mac 仍然缺少其它 Linux 类库,会有其它编译错误出现。所以这个 C SDK,如官方文档所讲,它就是需要在一台 Linux 机器上编译的。

一般我们工作不使用 Linux 系统,可以找一台 Linux 云服务器,使用 ssh 指令远程上去操作。云服务器的系统,可以选择 ubuntu。

在 Linux 系统上,也会遇到 cmake 找不到的错误。可以使用 apt 安装:

sudo apt install cmake

安装了 cmake 依赖之后,就可以运行./cmake_build.sh 指令进行编译了,这时候大概率就要编译成功。如果想要运行 demo,还需要修改 device_info.json 文件。这里面放置的是配置,不然每个 demo 它怎么区分连接哪个服务器呢。

这个配置文件很关键。

{    "auth_mode":"KEY",    "productId":"K0ALCCZPL7",    "productSecret":"jDBCZB8UPY9lnTnqmSmzhN8b",    "deviceName":"dev001",    "key_deviceinfo":{        "deviceSecret":"BqKurFuGaxASOZUIJhMpFQ=="    },}

在此之前,没有人告诉你,这个地方的 deviceSecret,是设备的密钥,是以“==”结尾的。而上面的 productSecret,是产品密钥,默认它是不存在的,它需要我们单击产品属性面板中的“动态注册”开关,然后就能可以看到一个 ProductSecret 值了。

如果上面的配置文件没有配置,或者将 productSecret 与 deviceSecret 写反了位置,连接的时候,终端会一直报 ssl_conf_psk fail: 0x7100 error 这样的错误。

如果以上步骤都没有搞错,终端作为一盏假想的“灯”,现在已经可以连接上 IoT 服务器了。我们在腾讯云网站上,此时将能看到设备日志,这里面有终端里的“灯”定时 push 来的数据。

绝对不能写错配置字段,否则头发会出许多油。有问题欢迎留言。

2020年08月23日

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 艺述论 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
物联网
腾讯连连是腾讯云物联网全新商业品牌,它涵盖一站式物联网平台 IoT Explorer,连连官方微信小程序和配套的小程序 SDK、插件和开源 App,并整合腾讯云内优势产品能力,如大数据、音视频、AI等。同时,它打通腾讯系 C 端内容资源,如QQ音乐、微信支付、微保、微众银行、医疗健康等生态应用入口。提供覆盖“云-管-边-端”的物联网基础设施,面向“消费物联”和 “产业物联”两大赛道提供全方位的物联网产品和解决方案,助力企业高效实现数字化转型。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档