Tuyaのミリ波人感センサー ZY-M100

非対応品を使う

Tuyaのミリ波センサーZY-M100を使ってみました。Aqara FP1の半額以下で買いやすいです。コスパが良くて十分に使えますが性能としてはFP1の方が良いです。

ZY-M100

TuyaのZY-M100は、AliExpressで3000円くらいで売られている人検出センサーです。こちらの商品です。

こんな感じのそこそこ綺麗な箱で届きました。

ZY-M100系列呼吸存在器と書いてあります。理解できてしまうのが漢字のすごいところです。人が呼吸する程度の動きをミリ波で検知して、人の存在を検出するセンサーです。1500円くらいで入手できる遠赤外線を使ったモーションセンサと違い、人が静止していても安定して検出します。

ミリ波人感センサとしては、以前にAqara FP1を紹介しました。

ミリ波を使った人感センサーAqara FP1をHomeKitから使う
Aqaraのミリ波を使った人感センサをHomeKitから使いました。Zigbeeで通信するので、Zigbee2MQTTとHomebridgeを使用します。一般的なPIR(パッシブ赤外線)人感センサーと比較して、安定していて非常に使いやすいで...

ZY-M100の方が半額以上安価ですので、いろいろな場面に気軽に使えるかと思います。

ZY-M100のバリエーションには、天井取り付け版(吸頂版)と壁取り付け版(側貼版)があります。天井取り付け版は、天井板に丸穴を開けて嵌め込むタイプです。すっきりと仕上がり、効率的に検知できるので理想的ですが、工事が大変そうです。壁取り付け版は、FP1と同じように壁に面ファスナーや両面テープで取り付けます。今回はお手軽な壁取り付けタイプを選びました。

通信方式としては、WiFiとZigbeeが選べます。(箱の表示にはBLEのチェックボックスもあるので、そのうちに提供されるのかもしれません)Tuyaのアプリから使い、AmazonやGoogleのスピーカと連携するならWiFiでも良いと思います。Zigbeeのハブも不要です。

ただ、Homebridge (HB) やHome Assistant (HA) から使うならばWiFiではなく、Zigbeeを選ぶべきです。HBやHAからWiFiモデルを使用する場合、Tuyaの開発クラウドを利用するのが一般的でした。でも開発クラウドは、1ヶ月ほどで有料になってしまうようになってしまいました。開発クラウドを使用しないでローカルに使うプラグインもあるようですが、設定が面倒です。一方、ZigbeeならばZigbee2MQTTで使用可能です。なので今回もZigbeeモデルを選びました。

箱を開けると、こんな感じで収まってます。サイズは58x58x11mmです。11mmの厚さは、想定した以上に薄い印象です。

箱の中には、充電用のUSBケーブルと、固定用の両面テープ、面ファスナーが入ってました。

本体の裏側はこんな感じです。

ネジの一つが固く蓋されていたので、今回はこれ以上開けませんでした。

Zigbee2MQTTで使う

これをTuyaのハブやクラウドを使用せずに、いつものようにZigbee2MQTTで直接接続して使用します。Zigbee2MQTTサーバ、MQTTブローカー (Mosquitto) 、Homebridgeが動作していて、さらにHomebridgeにZigbee2MQTTを使用するプラグインが入っている必要があります。手元の環境では、これらをRaspbetty Piで動かしてます。

設定の詳細に関しては、以下をご覧ください。

HomeKitでZigbeeを使う:Zigbee2MQTTを導入する
Zigbee2MQTTは、ZigbeeデバイスとMQTTブローカーをブリッジするプログラムです。Zigbeeデバイスと情報交換し、その情報をMQTTに橋渡します。Zigbeeデバイス製品を使用するためには、一般には各社の専用ブリッジ製品が必...
品薄Raspberry Pi 4が買えたのでHomebridgeを引越した
ずっと品切れだったRaspberry Pi 4が入手できたので、 Homebridge本体と Mqttthingプラグイン Zigbee2MQTTプラグイン Mosquitto Zigbee2MQTT をインストールしました。補助記憶にはU...

ペアリングする

USB電源アダプタを別途用意して、付属のケーブルで接続して、電源供給します。本体のリセットボタンを5秒程度長押しすると、Zigbeeのペアリングか始まります。Zigbee2MQTTのwebインタフェースでペアリングを有効にすれば、

10秒くらいでペアリングが完了します。下は、ペアリング後にfriendly nameをZY-M100に変更した様子です。人感センサとして機能してます。webインタフェースに用意された写真は天井埋め込みタイプのもののようです。

動作を確認する

mosquitto_subコマンドでZigbee2MQTTのメッセージを確認すると、毎秒1回くらいの割合で、人の存在、距離などのメッセージが流れています。

% mosquitto_sub -h 192.168.xxx.xxx -t zigbee2mqtt/ZY-M100/# -v
zigbee2mqtt/ZY-M100 {"cli":" ","detection_delay":8.5,"fading_time":589,"illuminance_lux":20,"linkquality":98,"maximum_range":4,"minimum_range":0,"presence":false,"radar_sensitivity":5,"self_test":"check_success","target_distance":0}
zigbee2mqtt/ZY-M100 {"cli":" ","detection_delay":8.5,"fading_time":589,"illuminance_lux":20,"linkquality":58,"maximum_range":4,"minimum_range":0,"presence":true,"radar_sensitivity":5,"self_test":"check_success","target_distance":0}
zigbee2mqtt/ZY-M100 {"cli":" ","detection_delay":8.5,"fading_time":589,"illuminance_lux":20,"linkquality":76,"maximum_range":4,"minimum_range":0,"presence":true,"radar_sensitivity":5,"self_test":"check_success","target_distance":0.42}
zigbee2mqtt/ZY-M100 {"cli":" ","detection_delay":8.5,"fading_time":589,"illuminance_lux":20,"linkquality":80,"maximum_range":4,"minimum_range":0,"presence":true,"radar_sensitivity":5,"self_test":"check_success","target_distance":0.43}
zigbee2mqtt/ZY-M100 {"cli":" ","detection_delay":8.5,"fading_time":589,"illuminance_lux":20,"linkquality":80,"maximum_range":4,"minimum_range":0,"presence":true,"radar_sensitivity":5,"self_test":"check_success","target_distance":0.46}
zigbee2mqtt/ZY-M100 {"cli":" ","detection_delay":8.5,"fading_time":589,"illuminance_lux":20,"linkquality":61,"maximum_range":4,"minimum_range":0,"presence":true,"radar_sensitivity":5,"self_test":"check_success","target_distance":0.4}

毎秒更新するほどの時間解像度は無いセンサですので、ちょっと頻繁すぎると感じました。大したことはないかもしれませんが、ZigbeeとMQTTに不要な負荷をかけている気がします。

Homebridgeを経由して、HomeKitに反映されるのは、このメッセージのうち、人の検知 (presence) と照明 (illuminance_lux) です。ペアリングするとiPhoneとMacのホーム.appに、人感センサと照度のセンサが追加されます。

Aqara FP1には温度センサが内蔵されていましたが、こちらのセンサには照度センサが内蔵されています。

感度などを調整する

MQTTメッセージ経由で感度や応答時間を調整できます。

調整できるのは、感度、検知範囲、検出時間、消失時間です。どれもデフォルトで問題ありませんでしたが、いろいろ変更して様子を見ることにしました。

今までは、Aqara FP1をパソコン机の上方1.5mくらいの壁に設置して、人が居れば照明などをonにする設定にしてあります。部屋に入ると10秒くらいでonになり、退出してもやはり10秒くらいでoffになります。部屋で息を潜めて静止していても、offになることはありません。赤外線方式のセンサに比べると非常に優れてます。

これに対して、コスト半額程度のZY-M100は、以下のような状況でした。まず、検出時間と消失時間は、短く設定しても30秒ほどかかります。また、消失時間を10秒くらいに設定すると、息を止めて静かにした時に検出されなくなります。ただ、消失時間を60秒くらいに設定すると、かなり頑張っても非検出にはなりません。

また設定を変更すると、2-3分くらい非検出状態になり無反応になります。大きく動作しているとそのうちに復帰します。これに気づかないうちは、あまりに長時間無反応なので、電源再投入やリセットを試みてしまいました。

実際に使用する

現在使用しているAqara FP1と同じく、パソコン机の上方1.5mくらいの壁に設置して、人が居れば照明をonにする設定で数日テストしました。

感度調整中は、前述のように不安定な状態もありますが、一旦調整してしまえば、無反応になる問題も無く、ほぼ正確に人の存在を検出してくれます。ただ、入室・退室の検出には30秒くらいかかるので、照明onは壁スイッチで手動で行う必要がありました。それ以外は、ほぼFP1と同じく、安定して使用できました。

ただ、数日で2回ほど、静かにしていると照明が消えてしまうことがありました。FP1では経験したことが無い現象です。これは感度をデフォルトより上げれば改善されるかもしれません。

人の検出に失敗する原因は、感度だけでなく、指向性も関係しているかもしれません。マニュアルには指向性に関して以下のような図がありました。3m先で、人の存在を検出できる範囲が1~3m、「微少な動き(micro motion)」を検出できる範囲が5~7mとのことです。微少というのは誇張した表現で、実際には、人の呼吸が取得できるのが1~3mという意味だと思います。図の縦横比は1:1では無いので、検出範囲が広い印象がありますが、この数値から角度を計算すると、人の呼吸を検出できる範囲 (3m先の1~3m) は角度にして37度から53度になります。

一方でFP1は検出できる範囲がもっと広い印象があります。また、FP1には角度が調整できる機構があることも、安定した検出に寄与していると思います。

まとめ

TuyaのZY-M100は、Aqara FP1の半額のミリ波センサーです。性能と安定性では、やはりFP1の方が良いです。とはいえ十分実用的に使用できると思いますので、コスパを活かしていろいろな場面に使えると思います。

コメント

タイトルとURLをコピーしました