借助Google Cloud Platform进入物联网
大家好,这是我的第一篇文章,如果有任何错误,请多多包涵。 只是为了在开始之前弄清楚,以免让您感到浪费时间,本文仅简要介绍您对使用GCP(Google Cloud Platform)进行物联网的期望。
Google Cloud Platform是云计算服务的集合,其运行在与其其他服务(例如YouTube等)相同的基础架构上。因此,在GCP下可用于IoT的云服务是Cloud IoT核心。 您可以认为它类似于来自亚马逊AWS的称为AWS IoT Core的服务。
现在,让我们深入了解用于访问GCP的Cloud IoT Core服务的更多技术。 现在,如果要使用GCP,还需要记住另一件事,需要有有效的借记卡或信用卡。 您必须使用该借记卡或信用卡创建一个GCP帐户,以便所有结算过程都能顺利进行。
建立GCP帐户并完成所有设置后(这是一个简单的过程,因此,我无需解释),您会发现自己进入GCP控制台,只要您登录帐户即可。 现在,我将逐步介绍所有内容,以使其更加方便。
步骤1:
- 打开您的GCP控制台。
- 创建一个新项目。
- 启用它进行计费(没什么大不了的,这是为了让您可以使用GCP提供的各种服务并为任何付费服务付费)。
- 然后为您的项目启用Cloud IoT Core API。
现在,您可以通过多种方式访问GCP帐户,一种方式是使用GCP控制台,我们可以将CLI用于GCP。 对于CLI,您必须在设备上安装Cloud SDK和节点开发环境。 同样在这里,我们将看到如何在设备上的python库paho.mqtt上发布或订阅(例如:树莓派等)。
第2步:
- 转到IoT Core,然后创建一个新的设备注册表。
- 首先输入注册表ID,选择区域。
- 选择MQTT作为协议。
- 给出主题名称
- 可以保留设备状态主题和证书值,因为它们是可选的。
步骤3:
下一步是生成设备密钥对,我们将为此使用OpenSSL。 现在,如果您从未使用过OpenSSL,只需下载轻量级的OpenSSL,然后将其直接解压缩到C驱动器中的“ openssl”文件夹中,即可在终端中运行以下命令:
openssl req -x509 -newkey rsa:2048 -keyout rsa_private.pem -nodes -out rsa_cert.pem -subj“ / CN =未使用”
如果您的CLI指出无法找到openssl.config文件,请再次打开终端,然后键入:
设置OPENSSL_CONF = c:/openssl/openssl.config
步骤4:
下一步涉及将设备添加到注册表。 只需打开您先前为设备注册表页面打开的页面即可。 看起来像这样。
- 然后转到导航栏中的设备,然后单击添加设备。
- 输入任何设备ID,例如“ my-device”。
- 允许进行数据通信。
- 在系统中找到rsa-cert.pem文件,并按原样复制其所有内容,然后将其粘贴到公钥值空间中。
- 选择RS256_X509作为密钥格式。
- 设备元数据字段是可选的,最后单击添加。
现在,当我们要使用paho-mqtt软件包的帮助发布时,在GCP中,我们将使用网关。 网关所涉及的关键概念是:
- 绑定/取消绑定:创建或删除设备与网关之间的任何关联。
- 附加/分离:MQTT通过网关启用或禁用设备与IoT核心之间的身份验证之间的通信。
当订户使用任何基于GCP的IOT设备订阅主题时,我们将使用paho.mqtt,python库来订阅主题,并且python程序可以在任何树莓派或Windows计算机上运行。 编写此python程序涉及的步骤是:
- 启用SSL / TLS支持。
- 然后致电client.on_connect = on_connect
client.on_publish = on_publish
client.on_disconnect = on_disconnect
client.on_message = on_message - 连接到Google MQTT Bridge
- 定义要订阅的主题名称。
- 订阅该主题。
正如我在开始时提到的,本文只是为了向您简要介绍事物,而没有详细介绍。 在接下来的文章中,我将尝试详细解释该主题。 希望我对你的时间公道。
- 使用UIGraphicsGetImageFromCurrentImageContext时正确的GraphicsContext
- iOS设备上安装的所有应用程序列表及其在主屏幕上的位置(跳板)
- UIWebView中的字体大小不符合iOS字体大小
- ios保存GPUImagevideo
- QTMovieLayer具有非零“内容”的iOS替代品?
- WWDC18:在Xcode 10中优化Swift构建时间的现代技巧
- UIImagePickerController mediatype kUTTypeMovie运行时exception
- 删除uitabbar控制器
- 当您需要挽救旧照片并进行数字化处理时,“不褪色”应用程序会很方便。