USB-シリアル変換モジュールのRX/TXを1-Wireセンサーのデータ線に接続してPCから安価にセンサーを利用する、というプロジェクトを見つけました。
この記事によれば、下記のパーツを揃えればUSB接続の温度計が完成することになります。
- USB-シリアル変換モジュール(CP2102, PL2303, CH340などを利用したものが安価です)
- 温度センサ DS18B20
- ダイオード 1N4148
- 4.7kΩ抵抗
海外通販で最安で揃えれば総額250円くらいで調達できそうです1。秋葉原で揃えても500円付近ではないでしょうか。
このアイデアの良いところは、各OSのデバイスドライバを自作せずとも、既存のシリアル変換モジュールのドライバが利用できる点です。OSとシリアル変換モジュールの組み合わせ次第では、最初からドライバがインストールされているパターンまでありそうです(鉄板はFTDIなのですが、この用途には少々お高い…)。
もちろん、Raspberry PiなどGPIOが使える環境ならその方が安上がりですが、そうでない環境で気軽に温度が測れるのは魅力だと感じます。個人宅のLinuxサーバで温度測定するのに1個いかがでしょうか。
言うまでもありませんが、シリアル通信経由で1-wireから値を読み取る部分は自分でプログラミングする必要があります。上記プロジェクトにサンプルコードがあるので、それを改造すれば何とかなるはずです。
後日談:実際に作ってみました
-
fake品には注意しましょう。1個1ドル付近のチップのfake品があるとか恐ろしい世界やで… ↩