各社空調機器メーカーのインターフェースであるCoolAutomation社のCoolMasterNetは、KNX,Modbus,BACnetからだけではなく、APIを使って制御や状態取得を行うことができます。
今回はCoolMasterNetのAPIを使って弊社に設置されている東芝製業務用エアコンの操作と、状態を取得する方法をご紹介します。
CoolMasterNetでAPIを使えるようにする

まずはWSL(Windows OS Linux)からCoolMasterNetに接続してコマンドを送ります。
CoolMasterNetのIPアドレスは本体に表示されるのでそれで確認してください。

これで接続

>rest
と打つと、REST APIの状態が表示されます。
上記はdisabledになっているので使えない状態です。

>rest enable
と入力してREST APIを使えるようにしますが再起動を促されます。

>boot 2
と入力すると再起動がかかります。
一旦、Ctrl+cで接続を解除してから、再度接続します。

REST enabledになりました。
これでAPIが使えます。
APIのサンプル
CoolMasterNetのAPIはV1とV2があります。
ON/OFF

V1を使ったON/OFFです。URLの書式は上記の通り。Postmanを使ってAPIをたたいてみます。

L1.101は室内機の番号です。

このようにレスポンスが返り、空調機のリモコンを目視でON状態となったことを確認しました。

OFFのURLです。こちらもOFF状態となりました。
V2コマンド
V2コマンドは一括で空調機の状態を取得できます。

http://192.168.1.100:10103/v2.0/device/283B961109C1/ls2&L1_101
室内機L1_101の状態を取得するコマンドを送ります。
このようにレスポンスが返ってきます。
レスポンスの項目は下記のとおり
JSON Key | 内容 |
uid | 室内機UID |
onoff | ON/OFF Status |
st | 設定(セットポイント)温度 |
rt | 部屋温度 |
fspeed | ファンスピード |
mode | 動作モード(Auto, Heat, Cool,Dry,Fan) |
flr | 故障コード |
filt | “#”が表示されたらフィルタークリーニング |
dmnd | デマンド(詳細不明) |
このレスポンスを使って空調機の状態を取得できます。
設定温度の変更
設定温度を22℃にします。
http://192.168.1.100:10103/v1.0/device/283B961109C1/raw?command=temp&L1.101&22.0

このURLで送ると

レスポンスはこのとおり。
今度は現状の設定温度を1℃高くします。

高くする場合は”+”、低くする場合は”-”をいれてURLを作成します。

レスポンスです。

ステータスを取得します。

設定温度は23℃になりました。
まとめ
CoolMasterのAPIを使って空調を制御する方法を紹介しました。
上記以外にもモード変更やファンスピード変更などもできるので次回の記事で紹介します。