AV機器とKNXを連動させる相談をいただき、Node-REDが動くKNXのIoTサーバー「iConnect」を提案させていただきました。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09.jpg)
↓ 過去記事
Node-RED内蔵 KNX信号を送受信できるIoTサーバー「iConnect」|デジタルライト(Digital-light.jp)
今回使用するAV機器のひとつで株式会社アイ・ディ・ケイ(IDK)のマルチスイッチャ MSD-62シリーズがありました。これが、Telnetのコマンドで操作できるのですが、Node-REDからTelnetでコマンドを送る方法が、すぐにわからなかったのでこちらにメモとして残しておきます。
Telnetコマンドを送るフロー
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-2.jpg)
フローはこちらのとおり。
最初のInjectノードはトリガーのみ、Telnetのコマンドはその後のfunctionノードでかいています。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-3.jpg)
ここがはまったポイントで、最初はInjectノードから文字列でコマンドをおくったり、templateノードを使ったりしたのですが、うまくいかず。
最終的に、functionノードにて
@コマンド\r\n
このカタチにすることをうまくいきました。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-4.jpg)
tcp requestノードにはMSD-6203(マルチスイッチャ)のIPアドレスをいれ、ポート番号は23にします。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-5.jpg)
マルチスイッチャからレスポンスが返ってくるので、functionノードにtoStringを使ってrawデータを文字に変換します。
MSD-62シリーズの制御について
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-1.jpg)
株式会社アイ・ディ・ケイさんのホームページから、MSD-62シリーズのコマンドガイドはダウンロードできます。
コマンドガイドによると、MSD-62シリーズはRS-232CとTCPにて制御することができます。今回はTCP接続をしてTelnetコマンドを送りました。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-6.jpg)
ためしたのは、@GSVというコマンド。これは、映像入力チャンネルの状態を返します。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-7.jpg)
先程のフローを実行すると、このようにレスポンスがきました。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-8.jpg)
今度は@SSVという映像入力チャンネルを切り替えるコマンドを送ります。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-9.jpg)
無事にコマンドが送れました。
KNXと連携するにはKNX objectを使う
マルチスイッチャをKNXと連動させる場合は、KNXのETSという設定ツールでGroup Addressを設定し、KNX objectノードをフローに追加します。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-10.jpg)
こちらがiConnectにあるKNX objectノードです。
![09-09.jpg 09 09](https://digital-light.jp/wp-content/uploads/2020/09/09-09-11.jpg)
このノードに、グループアドレスやデータポイントタイプの設定をして、TCPノードにつながるフローを作成します。
まとめ
Telnetコマンドを送るやり方ではまりましたが、今回の検証でやり方はわかりました。
あとは、KNXのグループアドレスとつなげて、DALIによる照明制御などと連携していきたいと思います。