Raspberry Pi上のPython3で、温度と日の出、日の入り時刻を使って、BlynkからリモコンとGPIOを制御する

これまで、Raspberry Pi を使い、Python3のプログラムから、下記それぞれの制御は出来るようになってきた。

仕様

これらを活用して、以下の仕様の処理をPython3を使ってRaspberry Pi Zero WH上で動作させることを試みる。

  • RaspberryPiのOS起動後、自動でプログラムが起動する事
  • スマホのBlynkアプリ上の各ボタンステータスと起動時に同期すること
  • 自宅の経度・緯度に基づき、日没30分前にGPIO-24をHighにして、日の出の30分後に、そのピンをLowにすること(経度・緯度はプログラムに書き込む)
  • 日の出、日の入り情報をBlynkアプリに送り、表示させること
  • BMP280の示す温度が設定した温度以下になったら、エアコンの暖房ONのコードを出力すること(リモコンコードや、初期の温度設定は、プログラムに書き込む)
  • 設定温度は、Blynkアプリから変更出来ること
  • 温度・湿度・気圧データを10秒に一回、Blynkに送ること
  • スマホのBlynkアプリに、エアコンの暖房ON・OFFを制御できるボタンを設けて、その指示で対応するエアコンのリモコンコードを出力すること(リモコンコードはプログラムに書き込む)

それなりに複雑になりそうだが、一つ一つ作っていくことにする。Pythonのblynk.run()が、これまで試したようにBlockingなので、別Threadとし、10秒毎の処理は、Timerを使った別Threadで実行する事とする。

ハードウエア

Python3用のライブラリ

ソフトウエア

シェアする

  • このエントリーをはてなブックマークに追加

フォローする