今回は、KNX-IoTサーバーのiConnectをつかって、Node-REDからDALIの個別アドレスに0〜254の明るさの値を送り点灯するようにしてみたいとおもいます。
流れとしては、
- KNX-DALI GatewayでGroup Objectを作成する
- Node-RED側からデータをおくれるように、Group Addressの設定をする
- Node-REDで2で作成したGroupAddressのKNXノードを作成する
という順番です。
*この記事では事前にDALIのアドレッシングが終了しています。 KNX-DALIゲートウェイを使ったDALIのアドレッシングはこちらの記事をご覧ください。
では、やってみましょう。
DALI GatewayのGroup Objectを作成する
*この作業はETSから行います。
![001.jpg 001](https://digital-light.jp/wp-content/uploads/2020/06/001-1.jpg)
ETSでDALI GatewayのParameterタブからDALI Configurationを表示。
Enable DALI ballastsのチェックをいれると、個別器具のGroup Objectが作成されます。
![002.jpg 002](https://digital-light.jp/wp-content/uploads/2020/06/002-1.jpg)
使用する器具(Ballast)のチェックをいれる。
![003.jpg 003](https://digital-light.jp/wp-content/uploads/2020/06/003-1.jpg)
Group Objectは下記の3種類が使えます。
- Switch 1bit (On/Off)
- Relative Dimming 4bit (明るくしたり、暗くしたり)
- Brightness value 1byte (明るさを値で指定する)
![004.jpg 004](https://digital-light.jp/wp-content/uploads/2020/06/004-1.jpg)
あと、ParameterのOutputで、dimming curveはlinearにしておきましょう。そうしないと、値を送ったときの明るさが変わってきます。
以上で、KNX-DALI GatewayでのGroupObjectの作成は終了です。
Node-RED側からデータをおくれるように、Group Addressの設定をする
次はGroup Addressを作成します。
![201.jpg 201](https://digital-light.jp/wp-content/uploads/2020/06/201.jpg)
0/0/1 On/Off
0/0/2 dimming value
を作成。
![202.jpg 202](https://digital-light.jp/wp-content/uploads/2020/06/202.jpg)
0/0/1 On/Offには、Ballast1のswitchのGroupObjectを割り当て
![203.jpg 203](https://digital-light.jp/wp-content/uploads/2020/06/203.jpg)
0/0/2 dimming valueには、Ballast1のBrightness valueを割り当て
![204.jpg 204](https://digital-light.jp/wp-content/uploads/2020/06/204.jpg)
以上でETSでの設定は終了。
内容をデバイスにダウンロードします。
ETS Diagnosticsで検証
Node-RED側の作業に移る前に、正しくETSで設定できたのかをDiagnosticsから確認します。
![205.jpg 205](https://digital-light.jp/wp-content/uploads/2020/06/205.jpg)
Diagnosticsを立ち上げます。
![206.jpg 206](https://digital-light.jp/wp-content/uploads/2020/06/206.jpg)
Startを押すとKNX BUSに流れるテレグラムをモニターすることができます。
![207.jpg 207](https://digital-light.jp/wp-content/uploads/2020/06/207.jpg)
Group Addressの横のドロップダウンボタンを押すと、設定してあるGroup Addressを選択できます。まずは、0/0/1 On/Offでやってみましょう。
![208.jpg 208](https://digital-light.jp/wp-content/uploads/2020/06/208.jpg)
ValueでOnを選び、Writeのボタンを押します。
![IMG_2395.JPG IMG 2395](https://digital-light.jp/wp-content/uploads/2020/06/IMG_2395.jpg)
正しく設定できていれば、DALIのコンフィグレーションでアドレス1にした照明器具が点灯します。(私のは赤)
同様にValueでOffを選び、Writeのボタンを押します。
![IMG_2394.JPG IMG 2394](https://digital-light.jp/wp-content/uploads/2020/06/IMG_2394.jpg)
消灯しました。
![209.jpg 209](https://digital-light.jp/wp-content/uploads/2020/06/209.jpg)
次に、Group Addressで0/0/2 dimming valueをやってみます。
![210.jpg 210](https://digital-light.jp/wp-content/uploads/2020/06/210.jpg)
Valueを50(%)にしてwriteを押します
![IMG_2396.JPG IMG 2396](https://digital-light.jp/wp-content/uploads/2020/06/IMG_2396.jpg)
うまく50%で点灯出来た様子です。
では、Node-RED側の設定をやってみましょう。
Node-RED側でGroupAddressのKNXノードを作成する
![301.jpg 301](https://digital-light.jp/wp-content/uploads/2020/06/301.jpg)
iConnectのNode-REDにブラウザからアクセス。Lightingタブをみてみます。
![302.jpg 302](https://digital-light.jp/wp-content/uploads/2020/06/302.jpg)
ETS側で設定したGroupAddress ”0/0/1 On/Off”がKNXノードで用意されているので、横にあるtoggleノードのボタンをおしてみましょう。ランプが点灯、消灯します。
![303.jpg 303](https://digital-light.jp/wp-content/uploads/2020/06/303.jpg)
Node-REDダッシュボードのボタンを押してもOn/Offがされました。
On/Offは簡単にできたので、次はdimming valueをおくってみます。
![304.jpg 304](https://digital-light.jp/wp-content/uploads/2020/06/304.jpg)
Injectノードを3つ、KNXノードを1つ追加しました。
![305.jpg 305](https://digital-light.jp/wp-content/uploads/2020/06/305.jpg)
Injectノードは0〜100までの明るさのパーセンテージを3つ用意。
![306.jpg 306](https://digital-light.jp/wp-content/uploads/2020/06/306.jpg)
KNXノードはGroup Addressを0/0/2、Data point typeは5.001(percentage)にしました。Injectノードの50%,1%,0%の点灯確認を行います。
試したところ、無事に反映されました。この方法でやりたいことはできそうです。
まとめ
当初は0〜254の値でdimming levelをコントロールする予定でしたが、ETS側で選んだDataPointTypeがパーセントだったので、これはDataPointTypeの修正を次回やってみたいとおもいます。
また、DALI側を1台でためしましたが、同じ流れでRGBWのLEDテープライトの制御もできる見込みがたちました。
ただ、GroupAddressごとにKNXノードをつくらなきゃいけないかもしれないので、もっと簡単な方法があるかどうかも調査していきます。