このレッスンでは、赤外線レシーバをNodeMCUに接続し、赤外線コントローラのキーが押されると、赤外線信号を送信し、レシーバはこれらの信号をキャッチしてNodeMCUにIRコードを送信します。MQTTクライアントが対応するトピックをサブスクライブすると、ブローカーからメッセージを取得します。
ハードウェア:
ソフトウェア:
ここではD2をデジタル入力ピンとして使用しています。
NodeMCUをUSBケーブルでパソコンに接続し、Arduino IDE(Version1.6.4+)でスケッチを開きます:
以下のように、自分のWiFiやMQTTの設定に合わせてコードを編集します:
1)WiFiの設定:
const char* ssid = “your_hotspot_ssid”;
const char* password = “your_hotspot_password”;
上記のコード行を探し、そこに自分のssidとパスワードを記述します。
2)MQTTサーバーアドレスの設定
const char* mqtt_server = “broker.mqtt-dashboard.com”;
上記のmqtt_serverの値には、自分のMQTTブローカーのURLやIPアドレスを使うことができます。また、”broker.mqtt-dashboard.com”、”iot.eclipse.org “などの有名なフリーのMQTTサーバーを使用してプロジェクトをテストすることもできます。
3)MQTTクライアント設定
MQTTブローカーがclientID、ユーザー名、パスワード認証を必要とする場合は、次のように変更する必要があります。
if (client.connect(clientId.c_str()))
to
if (client.connect(clientId,userName,passWord)) //put your clientId/userName/passWord here
そうでなければ、デフォルトのままにしておく。
その後、以下のように対応するボード タイプとポート タイプを選択し、スケッチを NodeMCU にアップロードします。
MQTTクライアントの設定方法はこちらをご覧ください。
トピックの設定
アップロードが完了し、無線LANホットスポットのIDとパスワードの設定に問題がなく、MQTTブローカーが接続されている場合、シリアルモニターを開くと以下の結果が表示されます:
NodeMCUのシリアルポートにIPアドレスと接続状況が表示され、受信値が表示されます。
アップロードが完了したら、シリアルモニターを開き、適切なボーレート(ここでは115200)を選択します:
赤外線リモコンの異なるボタンを押すと、次のように異なる受信値が表示されますので、各ボタンの赤外線コードを知るために、この方法を使用することができます:
同時に、MQTTクライアントを開き、”OsoyooData “トピックの “Subscribe “ボタンをクリックすると、NodeMCUが発行したメッセージが表示されます:
DownLoad Url osoyoo.com
You must be logged in to post a comment.
Hello Sir
I really liked your this Tutorial. Can you please Complete this tutorial like now we can send ir codes (saved in database of mqtt server) to TV / Air Conditioners to switch it off/on.. please make this tutorial. i will be very happy..
Thanks
I don’t know about you guys. But I had to add below library to get it working
#include
#include
#include // Add this library
#include
…
IRrecv.h
#include