「Lチカ」の次は、アナログ値の読み込みに挑戦してみました。
実は勉強不足で、RaspberryPiには「AD変換器」がついてないことをここで知りました。
「Arduino」では、ADコンバーターが内部に組み込まれているので、直接アナログ値を読むことが出来ました。
Arduinoでは、センサーの出力を直接読み込み、データの換算をすればよかったのですが、RaspberryPiではADコンバーターと通信手段を別途用意する必要があります。
今回はADコンバーターとして、MCP3208-CI/Pをつかい、通信手段はSPIが使われます。
なお、ADコンバーターの詳しい説明や読み込むためのプログラムについては、「RaspberryPiで学ぶ電子工作」に「易しく詳しく」説明がありますので、参考にしていただければと思います。センサーとしては、フォトレジスターを使い、明るさの変化でLEDを点滅させるようになっております。
回路図
全体の状況
通常の明るさで動作中 LEDは点灯しない
フォトレジスターにテープを貼り付け暗い状態を再現するとLEDが点灯する
読み取った値がPython Shellに表示される〈ビニールテープ貼り付け状態)
途中でセンサーに貼り付けたビニールテープを取り外した状況
値が大きく変化している
アナログ値読み込みプログラム(RaspberryPiで学ぶ電子工作より)
サンプルファイルの06-02-led.pyをそのまま利用しております。