0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

M5StickC Plus2で環境センサーの値を取得してMQTTで送信する

Last updated at Posted at 2025-01-19

ラズパイにインストールしたmosquittoへ何かデータを送信したく、M5StickC Plus2に環境センサーを取得して、MQTTで送信するところまで作っていきます。

今回は以下のページを参考にしました。

M5StickC Plus2に環境センサーを繋いだ状態

473651050_677492001279072_8195770564595890915_n.jpg

473558717_1351213632560048_519788459994201000_n.jpg

環境センサーから値を取得

以下のようなプログラムで環境センサーからデータが取得できています。
image.png

環境センサーのブロックを追加するとき

赤枠で囲んだUnitの横にある+をクリックります。
image.png

以下のようなダイアログが開くので、使用するユニットを選択し右下のConfirmボタンを押下します。

今回は、M5Stack用温湿度気圧センサユニット Ver.4(ENV Ⅳ)を使うので、ENV IVを選択しました。
image.png

追加が成功すると以下のように使えるブロックが増えます。
image.png

MQTTのブロックを追加

赤枠のソフトウェアの+ボタンを押下します。
image.png

以下のようなダイアログが開くので、今回はMQTTを選択してConfirmを押下します。
image.png

ソフトウェアのMQTTのブロックが追加されます。
image.png

MQTTの送信処理を作ってみる

前回ラズパイ上に構築したMQTT Brokerは、ユーザ認証でしたので、Setupのブロックに以下の項目を設定しました。

項目 内容
Set MQTT client id 任意
サーバアドレス MQTT Brokerが動作しているサーバのIPアドレス
ポート番号 1883
ユーザ名 brokerで設定したユーザ名
パスワード 同じくbrokerで設定したパスワード
keepalive 0(デフォルト値)
SSL false
MQTTをクリーンセッションで接続 true

LoopのブロックにはトピックとデータとQoSを設定しました。
このループだと1秒おきにMQTTプロトコルで温度、湿度、気圧が送信されます。

image.png

受信確認

Windows上でMQTTXを起動して上記で設定したトピックと同じものでSubscription登録をします。
そうすると1秒ごとに気圧、湿度、温度の順に並んだ状態でデータを受信できています。

{"press": "気圧", "hum": "湿度", "temp": "温度"}

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?