Help us understand the problem. What is going on with this article?

Google Cloud IoT CoreにpublishするNode.jsとPythonのチュートリアルを試してみた

はじめに

いまさらかもやけど、Google Cloud IoT Coreでどんなことできるか知っとこうと思って、チュートリアルを試してみることにした。

Cloud IoT Coreって?

データを収集するときのデバイスの管理するサービス。
デバイスとかエッジ側のゲートウェイとクラウドをつなぐ部分。
IoTサービス全体の中では、ほんの一部。
集めたデータは他のサービスにつないで使うっぽい。
認証とかのセキュリティをサポートしてる。
MQTTとHTTPをサポートしてる。
いわゆるMQTTのブローカー的に使う。
デバイスの登録とかモニターもREST API使って管理できる。

Cloud IoT Core  |  Cloud IoT Core  |  Google Cloud

モノのインターネットの概要  |  ソリューション  |  Google Cloud

環境

クラウド側とローカル(デバイス)側の環境。

クラウド

  • Google Cloud IoT Core

ローカル

  • Chrome OS Version 77.0.3865.56 (Official Build) beta (64-bit)
$ gcloud --version
Google Cloud SDK 263.0.0
bq 2.0.47
core 2019.09.13
gsutil 4.42

したこと

Quickstart

まず、公式のチュートリアルにそって作業した。
日本語と英語が混在してるから、混乱する。
うごいてそう。

Quickstart  |  Cloud IoT Core Documentation  |  Google Cloud

  • プロジェクト作る
  • レジストリ作る
  • トピック作る
  • Key作る
  • デバイス登録
  • デバイスとKey交換。
  • gcloudでsubscriptionを作成
  • node.jsでMQTTでpublish
  • gcloudでpull(subscribe)してデータ取得
  • Clean upってのは保留。

Python Client for Cloud IoT API

node.jsとgcloudだけじゃいまいちわからなかったので、Pythonでやってるのないかしらべてみた。
pipでgoogle-cloud-iotってのをインストールしたら割りと簡単にdeviceの情報をとれそう。管理用?
publish/subscribeのコードではなさそう。

Python Client for Cloud IoT API — google-cloud 9289c52 documentation
Python Client for Cloud IoT API — google-cloud-iot 0.1.0 documentation

Google Cloud IoT Core Python Samples

Pythonでpublishするサンプル。
中身はpaho.mqtt.client使ってる。
その気になったら、これを変更してセンサーデータとかもっとチープな別の端末から送られてきた情報をpublishしたらよさそう。

Google Cloud IoT CoreでMQTTを試す - Qiita

python-docs-samples/iot/api-client/mqtt_example at master · GoogleCloudPlatform/python-docs-samples · GitHub

その他

gcloud使うときの認証
Authentication — google-api-core 0.1.0 documentation

わかったこと

デバイスはレジストリで管理。
データはトピックで管理。
そのあとのサービスにつなぐ方法も調べないと使えなさそう。

Quickstart  |  Cloud IoT Core Documentation  |  Google Cloud

所感

すこし、雰囲気がわかってきた。
認証とかをうまいことサポートしてくれてるの安心感ある。
IoTって言葉がついてるけど、機能的にはすごく狭いところやった。
Google、チュートリアル的にvirtualenvおしやった。しらんかった。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away