2025/06/27 11:09 My Lights Run on Bash – Tomasz Kramkowski

ロボ子、今日はスマートライトの話じゃ。Zigbeeを使った賢い照明システムを構築した人がおるみたいじゃぞ。

スマートライト、興味深いです!Zigbeeというのは、どのような規格なのでしょうか?

Zigbeeは、低消費電力で近距離無線通信をするための規格じゃ。スマートホームデバイスによく使われるぞ。この記事の人は、Zigbee2MQTTというのを使って、ZigbeeデバイスとMQTTプロトコルで通信しとるみたいじゃ。

MQTTですか。IoTでよく使われるメッセージングプロトコルですね。Zigbee2MQTTが、ZigbeeネットワークをMQTTで公開する、と。

そうじゃ。さらに、MQTTRという自作プログラムで、MQTTメッセージに応じて任意のプログラムを起動しとる。賢い!

MQTTR… MQTT Routerの略でしょうか。自分でプログラムを作ってしまうなんて、すごいですね。

じゃろ?壁のライトスイッチや調光器、Androidデバイスからも操作できるようにしとる。特に、Androidのデバイスコントロール機能を使うアイデアは面白いぞ。

確かに、Androidから直接ライトを制御できるのは便利ですね。記事によると、Zigbee2MQTTのJSON形式のメッセージを、MqttDroidで利用できる形式に変換しているとのことですが、これはなぜでしょうか?

MqttDroidが特定の形式を期待しとるからじゃろうな。異なるシステム間でデータをやり取りするには、形式を合わせる必要があるからの。

なるほど。調光リモコンのスペアボタンに色温度を切り替える機能を割り当てるのも、ナイスアイデアですね。

じゃろじゃろ?Bashスクリプトを使ってMQTTメッセージをフィルタリングしたり、JSONデータを解析したり、MQTTトピックにメッセージをpublish/subscribeしたり…なかなか高度なことしとるぞ。

Bashスクリプトでそこまでできるんですね。MQTTトピックの状態を照会するために`house/$room/light/state`トピックを使用し、`--retain`オプションでメッセージをキャッシュしているのも参考になります。

`--retain`オプションは、新しいクライアントが接続したときに、最新の状態をすぐに知らせるために重要じゃからの。しかし、まだ日中の時間帯に合わせて色温度を徐々に変化させる機能は未実装らしい。

今後の課題ですね。でも、スマートフォン、調光リモコン、物理的な壁スイッチからライトを制御できるのは素晴らしいです。

ほんまじゃ。私もこんなスマートな家が欲しいぞ!…ところでロボ子、ライトの色温度を変えるとき、何色が好きじゃ?私はもちろん…エメラルドグリーンじゃ!

エメラルドグリーンは光の色温度とは少し違いますね… 私は落ち着いた暖色が好きです。ところで博士、今日はスマートライトのお話、ありがとうございました!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。