おしゃべり温度計
2007-01-01 19:44:28 (17 years ago)
-
カテゴリタグ:
- 未分類
視覚障害者向けに色センサーを作ろうとしていますが、いまだ完成に至りません。
応用として、センサー部分を温度センサーとして「しゃべる温度計」をつくってみました。
温度センサーは定番のナショナルセミコンダクターのLM35です。このセンサーは10mV/℃の電圧を発生するので、PICの12F675のADコンバータで値を読み込みます。
電源はUSBのバスパワーですので、電源電圧は5Vです。ADコンバータの基準を電源電圧とすると、最大500℃ということになってしまいます。シャントレギュレータTL431の2.5Vを分圧して0.5Vをつくりこれを基準として最大50℃としました。
12F675のADコンバータも最大精度の10bitで使います。見かけの精度はおよそ0.05℃あることになります。
PCとの接続はUSB経由で、USBコントローラはFTDI社のFT232BMです。仮想COMポートドライバーによるシリアル転送となります。
PC側で受信データをクリップボードに送り込み、スクリーンリーダで読み上げさせるのは「色センサー」と同じです。
スクリーンリーダに読み上げさせるため、PIC側の処理として、測定された温度データを数字として送るのではなく、文字として送るための変換をしています。21.0℃であれば 0x30+2、0x30+1、0x2E、0x30+0,0x82,0xC7 とすることで「にじゅういちてんぜろど」と読むわけです。
温度が高すぎるときと、低すぎるときは「そくていはんいがいです」のメッセージをPCに送って注意を喚起するようにしてあります。
通常の連続測定のほかに、スイッチを切り替えることにより、測定値の最大値を保持して、読み上げる「体温計モード」をつけてみました。
FT232BMはユニバーサル基板では実装できないので、感光基板をつかって専用基板を起こしました。
ケースは単三2本の電池ケースを使っています。
さて、使い勝手は?
体温計として使うには、絶対精度が不足ですね。相対的にはいいのですが、熱があるとき37℃なのか38℃なのかは非常に重要なのですが、LM35は25℃で0.5℃の誤差があることになっています。
測定ばらつきも問題ですね。平均化の処理はしているのですが、まだ不十分のようです。もともと信号をADコンバートするときのばらつきを減らすことも課題ですね。
普通の温度計とするにはまあまあですが、体温計とするにはまだまだです。
- 前の記事:今年の十大ニュース
- 次の記事:簡易分光器で白色LEDをみる
- Calendar
<< May 2024 >> Sun Mon Tue Wed Thu Fri Sat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
- search this site.
- tags
-
- 未分類 (374)
- archives
-
- 201401 (2)
- 201305 (1)
- 201303 (1)
- 201301 (1)
- 201212 (1)
- 201211 (1)
- 201210 (1)
- 201209 (3)
- 201208 (4)
- 201207 (2)
- 201206 (3)
- 201205 (5)
- 201204 (1)
- 201203 (2)
- 201107 (1)
- 201105 (2)
- 201104 (4)
- 201007 (3)
- 201006 (5)
- 201005 (5)
- 201004 (10)
- 201003 (1)
- 201002 (21)
- 201001 (31)
- 200912 (31)
- 200911 (8)
- 200910 (11)
- 200909 (4)
- 200908 (1)
- 200907 (2)
- 200906 (1)
- 200905 (5)
- 200904 (5)
- 200903 (3)
- 200902 (1)
- 200901 (2)
- 200812 (10)
- 200811 (4)
- 200810 (5)
- 200809 (10)
- 200808 (6)
- 200807 (9)
- 200806 (15)
- 200805 (31)
- 200804 (30)
- 200803 (31)
- 200802 (29)
- 200801 (31)
- 200712 (31)
- 200711 (30)
- 200710 (31)
- 200709 (30)
- 200708 (31)
- 200707 (31)
- 200706 (30)
- 200705 (31)
- 200704 (30)
- 200703 (31)
- 200702 (28)
- 200701 (31)
- 200612 (31)
- 200611 (30)
- 200610 (30)
- 200609 (27)
- 200608 (7)
- 200607 (1)
- recent trackback