Google cloud platform 与Rasperry PI的物联网核心问题

Google cloud platform 与Rasperry PI的物联网核心问题,google-cloud-platform,raspberry-pi,google-cloud-iot,Google Cloud Platform,Raspberry Pi,Google Cloud Iot,我们一直在遵循本教程: 我们设置了注册表、网关和设备,并验证了网关(笔记本电脑)已连接 我们在网关上收到以下消息: 使用RS256从私钥文件rsa_private.pem创建JWT 连接状态为False on\u连接已接受。 on_订阅:mid 1,qos(1,) 找不到键1 已收到Qos为1的主题“/devices/test gateway/config”上的消息“” 没有人订阅主题/设备/测试网关/配置 已收到Qos为1的主题“/devices/test gateway/config”上的消

我们一直在遵循本教程:

我们设置了注册表、网关和设备,并验证了网关(笔记本电脑)已连接

我们在网关上收到以下消息:

使用RS256从私钥文件rsa_private.pem创建JWT 连接状态为False on\u连接已接受。 on_订阅:mid 1,qos(1,) 找不到键1 已收到Qos为1的主题“/devices/test gateway/config”上的消息“” 没有人订阅主题/设备/测试网关/配置 已收到Qos为1的主题“/devices/test gateway/config”上的消息“” 没有人订阅主题/设备/测试网关/配置


然而,在Raspberry Pi中,它表示“正在等待响应”,而设备正在等待响应,并且没有到达“已接收”步骤。请参阅附加的raspberry pi输出屏幕截图以及显示网关已连接的google cloud Iot核心

正如Gabe和Kolban所提到的,社区教程中的示例非常复杂,这使得您很难理解事情的发展方向。我建议从开始就开始

在您正在运行的示例中,必须先运行网关服务器,然后才能运行恒温器或led灯代码

此外,在Raspberry Pi代码中,如果没有DHT-22传感器连接到Raspberry Pi,您将无法到达读取读数的代码。如果您正在寻找不需要硬件的版本。我已经验证了该说明在演示的led灯部分至少起作用(我能够打开/关闭led灯)

最后,在
automator.py
的第51行的源代码列表中可能存在错误,从而导致UDP协议中出现一些问题。如果我可以验证这是否导致我打嗝,我会更新文章,但是如果您想在重新发布之前修补您的副本,请将代码设置为:

#接收响应
如果记录:
打印('等待响应',file=sys.stderr)
响应,=sock.recvfrom(4096)
如果记录:
打印('received:'{}'.format(response),file=sys.stderr)

正如Gabe和Kolban所提到的,社区教程中的示例非常复杂,这使得您很难理解事情的发展方向。我建议从开始就开始

在您正在运行的示例中,必须先运行网关服务器,然后才能运行恒温器或led灯代码

此外,在Raspberry Pi代码中,如果没有DHT-22传感器连接到Raspberry Pi,您将无法到达读取读数的代码。如果您正在寻找不需要硬件的版本。我已经验证了该说明在演示的led灯部分至少起作用(我能够打开/关闭led灯)

最后,在
automator.py
的第51行的源代码列表中可能存在错误,从而导致UDP协议中出现一些问题。如果我可以验证这是否导致我打嗝,我会更新文章,但是如果您想在重新发布之前修补您的副本,请将代码设置为:

#接收响应
如果记录:
打印('等待响应',file=sys.stderr)
响应,=sock.recvfrom(4096)
如果记录:
打印('received:'{}'.format(response),file=sys.stderr)

根据我的经验,遵循食谱可能会导致错误。如果是我的话,我会从无到有地按照食谱再做一次,然后慢慢地做。我注意到(例如)教程让您编辑文件并插入IP地址。我会确保我遵循了这些步骤,并验证了地址是否正确。查看代码,PI似乎使用UDP,因此如果IP错误,我们不会看到连接错误。我还强烈建议通过流程将Raspberry PI连接到IoT核心(完全去掉网关功能),以确认基本功能是否正常。。。如果你还没有做到这一点,我写了一篇博客文章,这是一个非常基本的步骤,可以让你在Pi上与云通信,而不需要像网关功能那样的任何提示:根据我的经验,遵循一个配方可能会引入错误。如果是我的话,我会从无到有地按照食谱再做一次,然后慢慢地做。我注意到(例如)教程让您编辑文件并插入IP地址。我会确保我遵循了这些步骤,并验证了地址是否正确。查看代码,PI似乎使用UDP,因此如果IP错误,我们不会看到连接错误。我还强烈建议通过流程将Raspberry PI连接到IoT核心(完全去掉网关功能),以确认基本功能是否正常。。。如果你还没有做到这一点,我写了一篇博客文章,这是一个非常基本的步骤,可以让你在Pi上与云通信,而不需要像网关功能那样的任何提示: