はじめに
今回はVS-121-Pという座席占有状態取得センサを使って、座席に人がいるのかいないのかを取得してみたいと思います
以下のサイトを参考にしながら実装に取り組んでいきます
分かりにくい点がある場合は各章に参考にしているサイトを乗せているのでご一緒の見て頂けると幸いです
上から順番に実装をお勧めいたします
①https://smartlight.co.jp/2024/02/16/how-to-send-mqtt-msg-from-vs-121-p
②https://smartlight.co.jp/2023/12/09/how-to-integrate-mqtt-with-comfortclick/
③https://smartlight.co.jp/2024/02/18/how-to-show-presence-status-by-comfortclick/
目次
- VS-121-Pとは
- ComfortClickのKNX視覚&自動化サーバー
- 実装フローイメージ
- VS-121-P
- VS-121-Pからのデータ
- bOS Config
- Node-REDから送られているデータをみよう
- bOS client
- まとめ
VS-121-Pとは

商品サイト:https://www.milesight.com/iot/product/lorawan-sensor/vs121
Milesightが提供するVS-121-Pは、最新のAI職場占有センサです
このセンサは、職場や商業施設のスペース利用を最適化するために
設計されています
主な特徴として、最大98%の高精度な人数カウントを可能にする
AIアルゴリズム、プライバシー保護のための匿名検出機能、LoRaWAN®とEthernet対応のPoEによる柔軟な設置が挙げられます
高さ最大7メートル、範囲126m²までカバー可能な広範囲検出や、
最大16個のカスタマイズ可能な検出領域設定が可能です
ComfortClickのKNX視覚&自動化サーバー

ComfortClickのKNX視覚&自動化サーバー(bOSプラットフォーム)は、スマートホームおよびビルオートメーションのための高度な統合ソリューションです
このシステムは、KNX規格に準拠したデバイスを一元管理し、直感的なビジュアルインターフェースを通じて、照明、暖房、セキュリティシステムなどを簡単に操作できます
実装フローイメージ
以下のイメージで行っていきます

VS-121-P
最初はVS-121-Pがどんな感じで人を認識しているのかをMilesight Workplace Senserで確認しましょう
VSP-121-Pで確認出来た画像
黄色い枠で囲われいるのが人と認識されているということですね

VSP-121-Pの機能でRegion(場所)を決めてその中に人が居るか居ないかを判断出来ます
Regionに人が居る場合

Regionから人が離れた場合(左上のカウントが減る)

①Configarationを押下
②People Countingを押下
③Set Detection RegionをEnableにチェック
④Set Detection Regionのセンサから映し出されている映
像からRegionを囲む
VS-121-Pからのデータ
この章ではこのサイトを参考にしながら実装しています
https://smartlight.co.jp/2024/02/16/how-to-send-mqtt-msg-from-vs-121-p/
VS-121-Pからのデータを確認してみましょう
Node-REDで書いて見てみます
Node-RED側

・MQTT INノード設定
トピック:mqtttest
サーバ:mqtt://public:public@public.cloud.shiftr.io

・Milesight Workplace Senserの設定

・受信したデータ
色々なデータが来ていますが、この「occupancy」がRegionの座席占有状態のデータです
Region1が0です

bOS Config
この章ではこのサイトを参考にしながら実装しています
・https://smartlight.co.jp/2023/12/09/how-to-integrate-mqtt-with-comfortclick/
・https://smartlight.co.jp/2024/02/19/seat-management-system-using-seat-occupancy-status-acquisition-sensor-milesight-ai-vs-121-p/
①bOS Configを開きます
②DevicesにMQTTを追加
Devicesに右クリしてAddでMQTTを追加していきます

③ComfortClickをMQTTブローカする
今回はComfortClickをMQTTブローカにしたいので「Broker Enabled」をTrueにしていきます
そうすると自動的に「Broker IP Address」が決まると思います

MQTTブローカーは、IoTデバイス間の通信を仲介するサーバーです。デバイスがメッセージを送信(パブリッシュ)し、他のデバイスがそのメッセージを受信(サブスクライブ)できるようにします。効率的で低帯域幅の通信を提供し、リアルタイムのデータ交換が可能です。
④Clientを追加

⑤Cilentの設定
「ClientID」を好きな名前にします(今回はswitch)
その後「Enabled」をTrueにします

設定後にMQTTの階層に行くとswitchが見える様になっています

⑥Subscriptionsの設定
Subscriptionsに Subscriptionを追加していきます

⑦Subscriptionの設定
Topic:好きな名前(今回はswitch1)
SubscribeをTrueにします

Node-REDから送られているデータをみよう
この章ではこのサイトを参考にしながら実装しています
https://smartlight.co.jp/2024/02/18/how-to-show-presence-status-by-comfortclick/
Node-REDで受信したセンサデータをcomfort Clickに送ってみましょう
・ノード配置

・mqtt outノードの設定
サーバIPはBroker IP Addressを入れてください

①デプロイをしたらbOS configに行きます
Subscriptionのvalueにいきます
赤枠の部分にメッセージが届いてるので、中身をコピーして見ましょう

メモ帳

②SuscriptionにSEATを追加していく
SuscriptionにParersのBloolenを座席分追加していきます

③Token Nameを追加していく
Tokenに座席のRegionと対応するoccupancy[n]を書いていきます

④Themeにパネルを追加していく
Themeに新しいパネルを作成します

⑤Objectの配置
自分がしたいbackgroundなどの設定が終わったらobjectの配置をしていきます
Add Object Controlに選びます

自分が作成したObjectを入れて配置していきます

今回は人が居る時は青く
いない時は緑にしたいと思います
objectの設定で以下の箇所を変えていきます

bOS client
objectの配置が終わったら動いているかを見にいきます
bOS Clientを開いて自分が設定しているサーバを選択します
動いていることを確認できました
まとめ
今回はVS-121-Pを使っての座席占有状態を取得する実装でした
工程数が多い事を一気に行ったのでなかなか大変でした
他にも色々なセンサなどの情報を表示しても面白いなとも思いました
認証が必要な場合は Enabled Broker AuthenticationをTrue