2024 年版

この電子工作を開発した 2016 年頃は、デジタル接続の センサはポピュラーではなかったように思います (私が知らなかっただけかもしれません)。 2024 年現在、ラズパイに I2C 接続できる多種多様なセンサが 販売されています。 温度、湿度、照度はデジタル接続のセンサから取得する方が 簡単です。

2024 年版の回路図を以下に示します。温度、湿度、照度を I2C 接続 のセンサから取得します。Arduino は自作していますが、製品版を シリアル、あるいは USB で接続しても、もちろんかまいません。


クリックすると PDF が開きます

赤外線信号送信だけを Arduino に任せ、それ以外は 全てラズパイに I2C 接続されたセンサを使って行います。

I2C を使うために以下のものをインストールしてください。

   # apt install python3-smbus
   # apt install i2c-tools

Web サーバとして apache2 を使います。 apache2 は www-data というユーザの権限で動作します。 デフォルトでユーザ pi は I2C にアクセスできますが、 www-data はできません。 www-data から呼ばれたプログラムが I2C にアクセスするには、 www-data をグループ I2C のメンバーとして登録することが 必要です。以下の 2 つの作業が必要です。

  1. # raspi-config を実行して I2C を有効にする。
  2. # adduser www-data i2c を実行して www-data をグループ I2C のメンバーに加える
サンプルファイルを以下に示します。 トップにもどる