こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

センサーの入力切り替え

PICに関する質問です。

いくつかあるセンサーを切り替えて、PIC16F88で“多チャンネル”A/D変換を行いたい
と考えています。(ひとまず8CHあれば安心です)


タイトルのように、

センサー → マルチプレクサ(センサーを1つ選択) → ボルテージフォロア → PICでA/D変換

   ⇒⇒⇒一定時間ごとに次のセンサーへ切り替える

という流れでセンサーの信号を扱いたいのですが、マルチプレクサ用の74HC153などは
アナログ信号が扱えないようです。センサーはアナログ信号ですので、どのようにして
切り替えを行えばいいものでしょうか?

よろしくお願いします。


なお、PICのA/D変換ポートは入力インピーダンスが最大2.5kΩ(保障されている値、頑張っても10kΩ)程度しかありません。
そのため、十分に高い力インピーダンスを得るためにボルテージフォロアを途中に挿入しようという
心づもりです。(TL072など入力段がFETでできた高入力インピーダンス OPアンプを使用)

投稿日時 - 2010-11-25 07:29:49

QNo.6342494

困ってます

質問者が選んだベストアンサー

入力信号の範囲が 1.5V~3.5V ということなので、TL072 をボルテージフォロアに使った回路図を添付します。アナログ信号のライン(緑色)は、外来ノイズが混入しないように、なるべく短く配線してください。入力選択(b0~b5)の 6bit でチャンネルを選択します。74HC138 は b3~b5 のパターンに応じて Y0 ~Y7 のうちの1つだけを L レベルにするものです。74HC4051 は、INH端子が L レベルのときに、A、B、C入力のパターンに応じたスイッチだけがONになります(INH端子が H レベルのときは全てのスイッチがOFF)。アナログ入力を8chしか使わないときは、入力選択の上位bit(b3~b5)を GND に接続し、9ch 以降の部分のTC74HC4051APは実装しないでいいです。

TC74HC4051AP
   価格(100円) http://www.sengoku.co.jp/mod/sgk_cart/search.php?toku=&cond8=or&dai=&chu=&syo=&cond9=&k3=0&list=2&pflg=n&multi=&code=5Z23-3DHM
   データシート http://www.semicon.toshiba.co.jp/docs/datasheet/ja/LogicIC/TC74HC4051AF_TC74HC4053AP_ja_datasheet_071001.pdf
TC74HC138AP
   価格(60円) http://www.sengoku.co.jp/mod/sgk_cart/search.php?toku=&cond8=or&dai=&chu=&syo=&cond9=&k3=0&list=2&pflg=n&multi=&code=6Z2W-2DG8
   データシート http://www.semicon.toshiba.co.jp/docs/datasheet/ja/LogicIC/TC74HC138AF_TC74HC138AP_ja_datasheet_071001.pdf

大変申し訳ございませんが、この投稿に添付された画像や動画などは、「BIGLOBEなんでも相談室」ではご覧いただくことができません。 OKWAVEよりご覧ください。

マルチメディア機能とは?

投稿日時 - 2010-11-27 09:31:11

お礼

ご丁寧な説明・そして回路図ありがとうございました。
たいへん感謝しております。


昨日回路図をアップするつもりでしたが、結局今日になってしまいました。
申し訳ありません。実は先ほど作ってみたので、せっかくですから掲載させていただきます。
(sky dirive へ リンクしています)

http://cid-6a87cf7910396869.photos.live.com/browse.aspx/meter?permissionsChanged=1&1

投稿日時 - 2010-11-27 14:06:32

ANo.4

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.3

状況は分かりました。
jpegの回路図をお願いします。ソースコードは不要です(mikroCは読めないので)。
その回路図にアナログマルチプレクサ(64チャンネルまで拡張可能)とボルテージフォロアの回路を付け足します。電源電圧は +5V だけですね?

投稿日時 - 2010-11-26 18:59:18

ANo.2

PIC16F88 には最大 7個のアナログポートを使えるので、アナログ信号が7チャンネル以内なら、プログラムで入力を切り替えることができますが、8チャンネル以上の信号をAD変換する必要があるため、外付けのアナログマルチプレクサが必要ということでしょうか。そうであれば、8入力のアナログマルチプレクサ [1] を複数使うことで、8の倍数の入力信号(アナログ)の中から1つの信号を選択することができます。

[1] TC74HC4051AP
   価格(100円) http://www.sengoku.co.jp/mod/sgk_cart/search.php?toku=&cond8=or&dai=&chu=&syo=&cond9=&k3=0&list=2&pflg=n&multi=&code=5Z23-3DHM
   データシート http://www.semicon.toshiba.co.jp/openb2b/relateddocument.jsp?did=360&lang=ja&pid=TC74HC4051AP&returnFlag=1

センサ信号の電圧範囲はどれくらいですか?TL072の電源電圧を 5V で使うと、入力できる電圧範囲は 1.5V~3.5V程度になりますが、その範囲の信号なのでしょうか。5Vとか0V付近の信号まで扱うのであれば、入出力がフルスィングのCMOSオペアンプを使うか、TL072の電源を両電源( -2V、7V )とする必要があります。

8チャンネルの入力から1つを選択するためには 3bit(3本)、16チャンネルなら 4bit(4本)のデジタル信号が必要ですが、デジタル出力のポート数は確保できますね?AD変換する信号は1つですから、アナログマルチプレクサの出力に1個のボルテージフォロアを入れるだけで済みます。詳しい情報が分かれば具体的な回路を紹介します。

投稿日時 - 2010-11-25 19:50:41

補足

お返事ありがとうございます。
言葉足らずの部分がありましたので、ご質問と一緒に記載させていただきます。


わたくしは大学の“課外実験”で「水素センサー」を相手にしています。

水素がセンサーに作用すると、電気化学的な反応で電圧が生じるようです。
いかにも電流を取り出せそうにない …測定器のインピーダンスを十分高くしておきたい
タイプののセンサーです。

PICは入力インピーダンスが低いようだったので、心配を抱きつつも、今日初めてマイコンとセンサーを
つなぎました。AD変換の結果はシリアル通信でPCに表示するようにしてあるのですが、センサーの出力が
勝手にゼロとして表示されてしまう時がしばしばありました。


※ちなみに、2本の抵抗(たとえば10kΩ)を2本直列にして電源電圧(5v)を分圧した場合は
途中で勝手に測定値がゼロボルトに落ちることはなく、正常に測定できます。
マイコンのシステム自体はひとまず動いているようです。


考えられる対策として「オペアンプを使ってPICへの入力インピーダンス十分高くしてみる」という
発想に至りました。
もしこれが直接的な原因でないとしても、理想的な電圧計に近づけることは決して損ではないと思って
います。






チャンネルの切替としては、AN0~6を切り替えながらAD変換して、
そのデータをシリアル通信でPCに送っています。

ですがこの場合ですと、アナログ入力の切替―AD変換部はPIC内部で完結しているので、
センサーとADコンバーターの間にオペアンプをはさんでインピーダンス変換をすることができません。

そこで、チャンネル0~6の切り替えをマルチプレクサに任せ、その出力をオペアンプにつなぎ、
インピーダンス変換をしたうえでPICのアナログ入力へとつなげればようのではないかと考えました。

今後使用するチャンネルが増える場合も多少は想定していますが、それよりもむしろ

(1)いくつかのチャンネルの測定をしたい(切替の必要)
(2)インピーダンス変換をしたい

をかなえるためにマルチプレクサの導入を考えております。


チャンネル数としては、今のところ8つもあれば十分ですので、
チャンネル切替での信号線不足に悩むことはないはずです。
もし悩むことになっても、汎用ロジックを使って頑張って増設したいと思います。


入力信号としては3Vまで扱えれば十分です。
>TL072の電源電圧を 5V で使うと、入力できる電圧範囲は 1.5V~3.5V程度になります
というのは確認不足でしたが、幸いにして問題なさそうです。


回路図とソースコード(mikroCで作成)も後ほど掲載いたします。




いろいろと詳細な情報が抜けていてすみませんでした。
他にも何かあれば、よろしくお願いします。

投稿日時 - 2010-11-26 00:18:00

ANo.1

こんばんは。

センサーの種類(出力形態)によると
思います。
どういったセンサーをつかうのですか?
電圧出力、電流出力、PD、ロードセル、熱電対?

あと、切り替えるスピードは?
1秒?1msec?

投稿日時 - 2010-11-25 19:45:51

補足

お返事ありがとうございます。

センサーは電圧出力です。

切替スピードは1mS です。

投稿日時 - 2010-11-25 21:58:18

あなたにオススメの質問