天天看点

阿里云IOT平台设备的接入与交互(Python)

使用阿里云物联网平台(有免费模式可以用),实现任务一:注册设备、认证烧录设备、最终上线设备。实现任务二:可用Python(或其他语言也行)实现设备的接入,并使用MQTT协议实现与设备的交互~

一、注册阿里云物联网平台

有两种注册方式,第一种是个人注册,第二种公司注册,依自身情况选择。

二、 注册设备

第一步,需要先注册产品,物联网的产品种类繁多,各式各样,产品里面可以选择设备的具体类型,如停车定位卡、烟雾感应器等。

阿里云IOT平台设备的接入与交互(Python)

第二步,根据注册的产品选择新建设备,并起个名字如device1,这样就有了一个该类产品的具体设备,设备名device1。

阿里云IOT平台设备的接入与交互(Python)

建立和注册设备之后,就有了关于这个设备的,四大基础信息,如下所示:

除了ClientId和DeviceName可以自己定义之外,其他二项都是系统提供的设备标识(具有唯一性)

三、认证及烧录设备

由于阿里云物联网套件关于设备认证的文档不够详细,微微老师摸索了很久才搞清楚,需要用到以下参数:

根据以上参数,生成用户名和密码(过程有点复杂,建议大家看文档),据此,设备就可以上线运行了,大家可以使用万物互联的MQTT连接设备,就可以与设备进行交互了。

三、MQTT连接Connect地址和端口

1. mqttClientId

2.mqttUsername

使用&拼接<DeviceName>和<ProductKey>。

3.mqttPassword

把以下参数按字典键名排序,再把键名都拼接起来(没有分隔符)生成content,然后以DeviceSecret,对content进行hma_sha1加密,最后二进制转为十六进制字符串表示。

五、代码示例

运行代码,显示连接成功之后,程序开始向阿里云设备循环发送订阅消息,如下图所示:

阿里云IOT平台设备的接入与交互(Python)

六、最终效果

如图显示,阿里云上的设备已收到了Python程序发来的订阅消息,大家可在设备上设置订阅消息的返回内容,自动回复给Python客户端程序。

阿里云IOT平台设备的接入与交互(Python)