![見出し画像](https://assets.st-note.com/production/uploads/images/85731405/rectangle_large_type_2_93477092d8bf9c3ecf9370ea2183b378.png?width=1200)
MQTT通信にチャレンジ(前編)
ここ数年、より軽量なプロトコルであるMQTTを使用してIoT機器からデータ収集を行うケースが増えているようです。今回はIoT機器であるADVANTECH社のWISE-4050が検出する信号をMQTTプロトコルを使用して、ノートPCで受信するシステムを構築してみます。
■システム構成
MQTTで通信するためには、最低限、以下の機能が必要。
MQTTブローカー(中継サーバ)
MQTTパブリッシャー(送信)
MQTTサブスクライバ(受信)
よって、今回は以下の構成で実施する。
ADVANTECH WISE-4050のDI0~DI3のON,OFF状態をMQTTで監視する。
なお、PCはWindowsを使用する。
![](https://assets.st-note.com/img/1661497069374-lbK07uiBuc.png?width=1200)
■MQTTブローカーの構成~Windows版Mosquittoのインストールと設定~
mosquittoをインストールする。
mosquittoのサイトから「mosquitto-2.0.14-install-windows-x64.exe」をダウンロードする。
![](https://assets.st-note.com/img/1661499622510-xCIuDv735D.png?width=1200)
対象端末にインストールする。
このとき、C:¥Program files以下に保存するとUACの影響でファイルの編集がし辛くなるため、C:¥Mosquittoなどのフォルダにインストールすること。
間違えてインストールした場合は、コントロールパネルのアプリケーションの追加と削除から、「Eclipse Mosquitto MQTT Brocker(64bit」を削除すること。
![](https://assets.st-note.com/img/1661500241106-pyNaCmnGzx.png)
インストールフォルダ\mosquitto.confをメモ帳で開き、下記のように追加して上書き保存する。
![](https://assets.st-note.com/img/1661500342046-9MoEEhZB7B.png?width=1200)
listener 1883
allow_anonymous true
allow_zero_length_clientid true
protocol mqtt
Mosquitto brokerサービスを「開始」する。
![](https://assets.st-note.com/img/1661500406765-pLbCzWKC6h.png?width=1200)
ここで開始できなかった場合はインストールに失敗しているか、confファイルの編集に失敗している。
その他注意点:
confファイルを編集しないとローカルモードとなり、他PCからネットワーク接続ができない。
また、Windowsの場合はサービスでの動作が基本となる。サービス動作させたくない場合はサービスを無効とし、mosquitto.exeを手動実行すること。
confファイルのうち、「allow_zero_length_clientid true」については、ADVANTECH側にClient ID設定が見当たらなかったため記述。後述する「MQTT Box」ツールではClient IDを指定できるため不要と思われる。
ファイアウォールの1883ポートは開けておくこと。
MQTT通信にチャレンジ(中編)につづく
この記事が気に入ったらサポートをしてみませんか?