3210| 1
|
[教程] 树莓派与百度IoT服务器通信实验 |
MQTT简介: 实现MQTT协议需要:客户端和服务器端 MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。 MQTT传输的消息分为:主题(Topic)和负载(payload)两部分 Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload) payload,可以理解为消息的内容,是指订阅者具体要使用的内容 实现目的: 树莓派连接超声波传感器,探测的距离通过MQTT协议将某一主题(Topic)发布(Publish)到百度IoT服务器(Broker),树莓派同时订阅(Subscribe)IoT服务器的相应主题(Topic)实时显示距离数值(payload)。 实验平台: 百度AI:http://ai.baidu.com 古德微编程平台:http://www.gdwrobot.cn 实验器材: 树莓派 超声波传感器 一、搭建百度IoT服务器 1、登录百度智能云平台,选择【物接入】服务 2、创建数据型项目,项目名称:rapi-IoT,得到服务器的地址和端口 tcp://t5iwz5j.mqtt.iot.gz.baidubce.com:1883 ssl://t5iwz5j.mqtt.iot.gz.baidubce.com:1884 wss://t5iwz5j.mqtt.iot.gz.baidubce.com:443 [color=rgba(0, 0, 0, 0.6)] 2、点击项目名称进入该项目,为服务器创建用户,创建身份,创建策略 得到用户名:t5iwz5j/peter 注意:在创建策略时,主题这一项如果是指定主题,那么服务器只接受指定的主题。如果想后续自定义主题,这里可以填写“#”(如图) 最后一步得到IoT服务器密码(建议复制保存,若遗失只能重新生成) 至此,服务器已经创建完毕。可以回到项目首页,进行网页测试。 二、树莓派端发布和订阅 1、树莓派发布超声探测距离到发布(Publish)到百度IoT服务器(Broker) 设置服务器程序 发布(Publish)函数: 超声波传感器的Trig和Echo引脚分别接树莓派的20和21号GPIO口。 代码块中的“test888”是树莓派编号,“dis”是发布主题 2、从IoT服务器订阅(Subscribe)“dis”主题 3、创建子线程执行发布(Publish)函数send 完整代码: 运行效果 三、用蘑菇IoT工具进行测试 注意: 古德微平台在订阅消息时会自动在订阅主题前面加上"树莓派编号/"(如 "test888/dis"),因此,在使用古德微平台之外的第三方工具进行测试时,发布和订阅主题都要加上"树莓派编号/". 蘑菇IoT是一个小巧的手机端Iot测试工具,非常好用 1、添加连接 2、服务器设置 3、发布测试 4、测试效果 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed