switchbotシーリングライトをサーバから操作するいくつかの方法(APIの代用)

[参考記事] SwitchBot API v1.1のリクエスト用curlを生成する

2022年7月6日から発売されているswitchbotシーリングライトは、スマホから操作が可能な端末でSwitchbotハブ機能がついています。
またシーリングライトプロには赤外線送信機能が付いていて、家電をリモコン操作することも可能です。

AmazonアレクサやGoogleアシスタントと連携できて、調光に加え調色ができるシーリングライトとしては最安の価格帯となっています。
リモコンで操作することが多いなら、受信の感度も反応も悪いのでおすすめしません。
電波強度の計測では、他のリモコンとあまり変わらないので送信側ではなく受信側の問題のようです。

赤外線リモコンで操作する方法
Node-REDとAlexaで操作する方法
アプリの操作画面
Alexaの操作画面
節電効果

SwitchBotシリーズにはAPIが用意されていますが、現在シーリングライトには対応していません。


AlexaとNode-REDを使用すれば、Alexa対応シーリングライトならどれでもサーバから操作ができます。

おすすめする人
・他のSwitchBotシリーズと柔軟に連携させて使用したい人
・スマートデバイスをSwitchBotでまとめたい人
・多機能なシーリングライトを安い値段で欲しい人
・スマート家電に慣れていてリモコン操作をあまりしない人
Switchbot開閉センサーには人感センサーも付いていて、入室か退室かの判断ができます。

おすすめしない人
・リモコン操作をする機会がある人
・センサー類を自作できてSwitchBotシリーズをあまり使わない人
サーバから操作できること以外のメリットがない場合は、別のAlexa連携ができるシーリングライトを使用したほうがいいです。
SwitchBotシーリングライトにできて、他のAlexa対応シーリングライトにできないことは、SwitchBotシリーズとの連携だけです。
安くLEDシーリングライトに買い替えたいだけなら、自治体の省エネ助成金を利用する方法があります。SwitchBotシーリングライトは3,000東京ゼロエミポイント対象外です。

SwitchBot LEDテープライトと比べると受信の感度は2分の1から3分の1程度です。
LEDテープライトも反応がよくないことがありますが、それよりもはるかに反応が悪いです。シーリングライトは容易に買い替えがしづらいので、一度LEDテープライトで動作の具合を確認してからでよいかもしれません。
Node-REDでの操作はケルビン色温度指定とRGB指定の違いぐらいで、ほとんど変わりはありません。

赤外線リモコンで操作する方法

SwitchBotシーリングライトをサーバから操作するには、BitTradeOneの赤外線リモコンアドバンスなどを使って赤外線送信してリモコン操作する方法があります。
しかしSwitchBotシーリングライトは赤外線受信の感度も反応もとても悪く、確実性が低いです。
・リモコンを的確にシーリングライトに向けないと反応しない。
・連続操作すると反応しなかったり遅延したりします。

シーリングライトプロの赤外線リモコン送信から同端末をリモコン操作することはできません。

Node-REDとAlexaで操作する方法

Alexaとシーリングライトを連携して、Node-REDサーバにnode-red-contrib-alexa-remote2ノードを追加して、Alexaアクションを操作することでサーバから動作させることができます。
この方法であれば操作の遅延がほとんどありません。

Node-REDから行える操作は下記です。
・Turn On:ON操作
・Turn Off:OFF操作
・Set Brightness:明るさを%指定で操作
・Set Color Temperature:色温度を18種類の文字列指定で操作
・Ramp Brightness:不明

Set Brightnessで1を指定すると、1%ではなく100%になります。
(ファームウェアバージョン V0.6-0.4)

Set Color Temperatureで指定できる18種類
Candlelight
Relax
Warm White
Evening
Sunset
Incandescent
Soft
Reading White
Soft White
Reading
White
Daytime
Daylight White
Daylight
Daytime White
Bright White
Cool White
Cool
18段階の指定選択ができますが、反映される状態は5種類です。 (製品仕様では色温度2700K〜6500Kです)

Set Color Temperatureでは2700〜6500の数値指定ができます。
数値で指定した場合も反映される状態は下記の表の5種類です。

candlelight
relax
warm_white
evening
sunset
Kelvin:2700
Name:soft_white
incandescent
soft
reading_white
soft_white
reading
Kelvin:3095
Name:
white Kelvin:4125
Name:white
daytime
daylight_white
daylight
daytime_white
Kelvin:5312
Name:daylight_white
bright_white
cool_white
cool
Kelvin:6500
Name:cool_white

http in => Alexa Smarthome(Action) => http response などで操作を設定します。

Alexa経由の操作では、スマホからの操作と同様に、操作音はしません。

状態の取得はAlexaアプリで見れるものがすべてです。
電源のオン・オフ
明るさ
色温度
6つのシーンのトグル

http in => Alexa Smarthome(Query) => http response などで操作で取得します。

一括取得で得られる値

{
    "brightness":10,
    "colorTemperatureInKelvin":4125,
    "powerState":"ON",
    "connectivity":{
        "value":"OK"
    },
    "colorProperties":{
        "name":"white",
        "localizationMap":{
            "en":"White",
            "en-US":"White",
            "en-UK":"White",
            "de":"Blanche",
            "jp":"白",
            "fr":"Blanc",
            "it":"Bianco",
            "es-ES":"Blanco",
            "es-MX":"Blanco",
            "pt-BR":"Branco",
            "es-US":"Blanco",
            "hi-IN":"????"
        }
    }
}

アプリの操作画面

ライトの明るさや色温度をレンジスライダーで調整できます。
リアルタイムの現在値は反映されません。
(Alexaの操作画面ではリアルタイム反映されます)


シーンに登録するとプリセットでライトの明るさや色温度を調整できます。


設定した時間に自動で動作させることができます。


「おはようモード」は30分で徐々に明るくなる設定ができます。
繰り返し設定では曜日の選択ができます。
祝日の判断はできません。


遅延実行では設定した時間を経過したのちにオン・オフの動作ができます。


スケジュールでは設定した時間にオン・オフの動作ができます。
繰り返し設定では曜日の選択ができます。
祝日の判断はできません。

Alexaの操作画面

Alexaの操作画面ではオン・オフ、明るさや色温度の調整、シーンの選択ができます。
選択できるシーンは固定で、アプリとも連動していません。
明るさや色温度はリアルタイムに現在値が反映されます。

節電効果

蛍光灯シーリングライトが70W、SwitchBotシーリングライトは36〜43W、スマートスピーカー非対応のLEDシーリングライトが28Wなので、蛍光灯からの買い替えであれば年間に2,000円程度の節電になります。
ただし蛍光灯シーリングライトは蛍光灯の寿命となったときには、蛍光灯のみを買い替えればよいのに対して、LEDシーリングライトはLEDの寿命になるとシーリングライトごと買い替える必要があります。
シーリングライト本体を買い替えなくとも、蛍光灯と同サイズのLED蛍光灯もあります。

関連記事

スポンサーリンク

「VCRUNTIME140_1.dllが見つからないため、コードの実効を続行できません」の対処法

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る