RaspberryPiにアナログ入力のないアナログセンサー
Raspberry Piにはアナログ入力がありませんが、それは一部のタイプのアナログセンサーを使用できないという意味ではありません。いくつかの抵抗とコンデンサを使用して、「ステップ応答」法を使用して抵抗を測定できます。これは、ポット、フォトレジスター、またはサーミスタを使用している場合に最適です。
次のレシピは、私の新しい本「The RaspberryPiCookbook」から抜粋したものです。センサーのこの使用方法は、Adafruitのこの作業に触発されました。このレシピを作成するには、次のものが必要です。
•ブレッドボードとジャンパー線•10kΩトリムポット•2つの1kΩ抵抗器•220nFコンデンサエディター(nanoまたはIDLE)を開き、次のコードを貼り付けます。この本のすべてのプログラム例と同様に、Raspberry Pi CookbookWebサイトのコードセクションからプログラムをダウンロードすることもできます。このセクションはpot_step.pyと呼ばれます。 RPi.GPIOをGPIOとしてインポートしますimporttimeGPIO.setmode(GPIO.BCM)a_pin =18b_pin =23 def Charge():GPIO.setup(a_pin、GPIO.IN)GPIO.setup(b_pin、GPIO.OUT)GPIO.output(b_pin、 False)time.sleep(0.005)def Charge_time():GPIO.setup(b_pin、GPIO.IN)GPIO.setup(a_pin、GPIO.OUT)count =0 GPIO.output(a_pin、True)、GPIO.input( b_pin):count =count + 1 return countdef analog_read():charge()return Charge_time()while True:print(analog_read())time.sleep(1)プログラムを実行すると、次のような出力が表示されます。 $ sudo python pot_step.py1012101016234353677286105123143170トリムポットのノブを回すと、読み取り値は約10から約170の間で変化します。ディスカッション このプログラムがどのように機能するかを説明するために、最初に、ステップ応答技術を使用して可変抵抗器の抵抗を測定する方法を説明する必要があります。この方法は、回路がステップ変化からどのように応答するかを確認することで機能するため、ステップ応答と呼ばれます。出力が低から高に切り替わるとき。コンデンサは電気のタンクと考えることができ、それが電荷で満たされると、その両端の電圧が増加します。 Raspberry PidoesにはADCコンバーターがないため、その電圧を直接測定することはできません。ただし、コンデンサが1.65Vを超える程度まで電荷で満たされるまでにかかる時間を計ることができます。これにより、高いデジタル入力が構成されます。コンデンサが電荷で満たされる速度は、可変抵抗器(Rt)の値によって異なります。抵抗が低いほど、コンデンサはより速く電荷を満たし、電圧が上昇します。詳細:RaspberryPiにアナログ入力のないアナログセンサー製造プロセス
- ラズベリーパイの温度監視
- DHT Tiny Breakout for the Raspberry Pi
- Raspberry Piの1線式温度センサーDS1820(GPIO直接)
- センサーデータとRaspberryPiマイクロプロセッサーの統合
- 超音波センサー(HC-SR04)+ Raspberry Pi
- 1つのGPIOピンでアナログセンサーを読み取る
- Raspberry PiPhotocellログおよびアラートシステム
- Java ME 8 + Raspberry Pi +センサー=IoT World(パート1)
- JAVAのRaspberryPiデジタルホールセンサー
- Raspberrypiを使用してGPIOを介してボタンが押されたことを検出する
- RaspberryPiとZabbixスーパーバイザーで読み取るアナログセンサー