Raspberry Pi で水温計を自作する②

Raspberry Pi で水温計を作るシリーズ第二弾!釣りブログ内にあって、若干誰得シリーズ化している気がしないでもないですが…今回も張り切っていきましょう。

今回は「Raspberry Pi にはどんなピンがあるのか」「どのピンにどの部品がつながっているか」を示していきます。プログラム部分も併せて紹介しようと思ったのですが、複雑で長くなりそうな予感がしたので、詳細は次回以降に回します。

ちなみに僕はエンジニアでもなんでもなく、単なる事務系サラリーマンですので、あまり難しいことは知りません…詳しい方は、生暖かい目で見てください。

どこにパーツを接続するか?

注意!!
電子工作では、配線を誤ると思わぬ事故につながります。短絡(ショート)等に十分注意し、安全に楽しみましょう。

Raspberry Pi には、GPIO ポートと呼ばれる針(ピン)の集合体があります。ピンは合計40本あり、それぞれが役割を持っています。ここにセンサやLCDなどのパーツを接続することで、Raspberry Pi が観測機器へと変貌を遂げていきます。

ちなみに、このピンにケーブルを直接はんだ付けするのはやめましょう。ジャンパーワイヤという、はんだ付け不要でピンに取り付けられるケーブルがあるので、これを利用します。

必要な部品は前回の記事で紹介していますので、こちらをご覧ください。

Raspberry Pi のピン配列

GPIO ポートのピンは、左上から番号が割り振られていて、以下の図のように1、2、3、4、…、39、40の名前がついています。ただし、これらのピンを全て使うのではなく、用途によって取捨選択していきます。

僕の温度計で実際に使うのは、2、3、5、6、7、17、18、22、25の合計9本です。

僕の水温計で実際に使う9本

9本の接続先は、それぞれこんな感じです。複数の部品間で共通で使用するピンもいくつかあります。特に電源(5.0V、3.3V)や GND は共通で使用する頻度が高いので、配線を工夫しないとケーブルがごちゃごちゃになって地獄を見ます。

大雑把な接続図

水温計の配線図を超・大雑把に描くとこんな感じです。線が入り組んでいますが、上の図と比べながら見るとなんとなくわかるかと思います。

各部の詳細

LCD との接続

LCDは、I2C 通信に対応しています。Raspberry Pi 本体から信号を受け取って画面に表示するために、I2C SDA と I2C SCL に接続します。I2C は 8bit の信号をやり取りすることができ、LCD に英数字を表示させることができます。したがって、水温や気温を出力するには十分な機能を備えています。

なお、今回使用する LCD は 5V電源で動作します。3.3Vでは電圧が足りませんので注意してください。

温湿度気圧センサ(BME280)との接続

温湿度気圧センサも I2C通信に対応しています。このセンサにも SDA と SCL がありますので、LCD と同じ場所に接続します。

「LCD と BME280 で同じピンを使って大丈夫なの?」という心配をされる方もいらっしゃるかと思いますが、そこは大丈夫です。プログラムで制御できます。というより、I2C 用のピンは 3 と 5 しかないので、ここに繋ぐしかないのです。

SDO は GND に接続しましょう。ネットで調べると 3.3V に接続している例も見られますが、今回は GND で。詳しいことは別の記事で述べます(たぶん…)。

ちなみに、この「BME280」という基板にもいろんな種類があるらしく、物によっては「J3をジャンパ接続せえ」だとか「プルアップ抵抗を使え」だとか色々な約束事があります。僕が使用している基板はたまたまそういう小難しい制約がないようです。うまく動作しない場合は、ご自分が購入した基板がどのタイプなのかを確認し、足りない作業がないか確認してみましょう(無責任ですみません…)。

水温センサ(DS18B20)との接続

水温センサは 1-Wire デバイスと呼ばれるもので、これまで紹介してきた I2C 通信をするものとは別物です。プルアップ抵抗もしくはプルダウン抵抗と呼ばれるアイディアを導入する必要があり、ちょっとクセのある配線になっています。

Raspberry Pi と DS18B20 を利用した水温計の製作については、水槽の温度管理を自動でやりたい!という人が取り組んでいる例が多く、比較的ネットで情報を得やすいと思います。

タクトスイッチとの接続

電源用タクトスイッチは、測定プログラムを終了させ、Raspberry Pi を安全にシャットダウンするためのスイッチです。Raspberry Pi 本体は実質パソコンのようなものですので、電源ブチ切りでは故障の原因になりかねません。この電源用タクトスイッチを押すことにより、シャットダウンコマンドを実行して安全に電源を切ることができます。

モード切替用タクトスイッチは、LCD の表示を切り替えるためのスイッチです。僕の温度計は、日付・時刻を表示する画面と観測値を表示させる画面が用意されており、これらを切り替えるためにスイッチを使用しています。

本来、タクトスイッチの使用にはプルアップ抵抗、もしくはプルダウン抵抗が必要なのですが、Raspberry Pi はプログラム制御により内部プルアップ、プルダウンという機能が使えるので、抵抗を介さずにタクトスイッチを直接ピンに接続しても構いません。ただし、タクトスイッチを直接ピンに繋ぐ際は、プログラムにちゃんとその旨を記述しましょう。

あとは、プログラムと内部設定を済ませれば…

さて、およそ「釣りブログ」とは思えない内容のシリーズ第二弾でした。

次回はプログラム&Raspberry Pi 本体設定編です!いよいよ水温計が動作する…ところまで書けるかな?

にほんブログ村 釣りブログへ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ABOUT US
ポコペンDIY系釣り師
釣り、カメラ、ドライブ、登山、電子工作、プログラミング、料理などなど、興味の赴くままに手を広げています。釣りブログを標榜していますがいきなり何を書き始めるか自分でも予想がつきません…