topハードウエァの部屋
 PICオシロスコープの製作

 はじめに
 いよいよPICを使った電子工作を始めましょう。オジサンは何十年も前のアナログテスターしか持っていません。波形をリアルタイムで見る道具が欲しい、でもオジサンはビンボウで買えない。PIC16F88のデータシートを見て、ADコンバータ、RS232Cインターフェース ウンこれなら出来そうだと、最初に製作したのは、簡易オシロスコープ。PIC16F88のADコンバータでアナログ電圧を読み、RS232Cインターフェースでパソコンに送信して、モニター上に波形を描きます。下記ページが大変参考になりました。

http://www11.ocn.ne.jp/~nontomo/egawa/pcosc.html

このページのTOPへ



PICオシロスコープ 表面

PICオシロスコープ 表面


PICオシロスコープ 裏面

PICオシロスコープ 裏面


PICオシロスコープ 内部

PICオシロスコープ 内部
 仕様
PICオシロスコープ 回路図

 アナログ部は標準的なインスツルメンテーションアンプ、5段のロータリースイッチでアンプゲインを切換ます。ゲイン切換用の抵抗は無調整で済むように細かに計算で割り出し、誤差1%の抵抗ならそこそこの精度になるようにしています。PIC内部のRAMが少ないため、2チャンネル分を測定後即通信するしかありません。そのため、VB6でパソコン側のプログラムを作ると、サンプリング周波数は1KHzが限界に近い。パソコンとの通信速度が下記に示すように、20000BPSなのはこのサンプリング周波数(1KHz)を確保するためです。パソコン側は19600BPSですが、誤差範囲で通信が可能でした。ウマクいかなかったら、ゴメンナサイ! PIC内部のRAMに測定値をメモリしてから、通信するモード(ストレージモード)では、10kHzが可能です。但し、一度に測定できる時間は短く制限されます、当然ですが。キャリブレータ信号の500Hzはこのモードでしか正確には測定できません。回路は当たり前のような回路ですから、特別に解説するような点はありません。オッと、インスツルメンテーションアンプ用のオペアンプは、手持ちのテキトーなものを使っていますが、今ならCMOSの良いものがあります。良いものを使ってください。それから、オペアンプの電源は、RS232CインターフェースICのチャージポンプで作られる+9Vと-9Vを使用しています。電源をどうしようかと考えた時、ヒラメイタ苦肉の策ですが、このRS232CインターフェースIC、便利です。回路図には書いてありませんが、電池でなくACアダプタも使用できるように、DCジャックもつけました。トランス式のACアダプタを使用する場合は注意してください。トランス式のACアダプタは定格電流を流した時、定格電圧になるようになっています。負荷電流が少ないと出力電圧が高くなり、三端子レギュレータの発熱が多くなります。6V300mAのACアダプタを使っていますが、約20mAしか消費しないため、出力電圧は8Vでした。パソコン側でソース切換、トリガレベルを設定します。VOLTS/DIVやTIME/DIVはパソコン側のプログラムを変更すれば下記仕様は変更できます。
ストレージモードでは一度に測定できる時間が短く、通常モードではサンプリング周波数が低すぎて、実用にならないと言われれば、まったくその通り。でも、オジサンは満足しています、ビンボウなので?!

  サンプリング周波数 1kHz,10kHz(ストレージモード時)
  入力チャンネル数  2チャンネル
  入力電圧範囲    -25V 〜 +25V(5段切換)
  キャリブレータ   500Hz、5V
  パソコンとの通信  RS232C、20000BPS
  ソース切換     CH1、CH2、CH1 & CH2
  トリガレベル    AUTO、CH1+、CH1-、CH2+、CH2-
  VOLTS/DIV      0.01V 〜 5V(5段切換)
  TIME/DIV      0.1ms 〜 100ms

このページのTOPへ


 製作
PICオシロスコープ 筺体
PICオシロスコープ パターン

 上のリンクは筺体の加工寸法図とパターン図です、参考まで。あまり良い図面ではありません。加工寸法図を縮尺80%で印刷すると、ほぼ原寸になりました。(プリンタによって違うので、各自試してください)これをケースに貼り付けてからポンチを打って、穴を開けます。大きな穴はリーマで、角穴はハンドニブラーを使い、仕上げはヤスリで、表面に傷をつけないよう注意しましょう。ロータリースイッチ、スイッチのつまみ、プローブ用コネクタ、可変抵抗器、RS232Cコネクタ、006P用電池スナップ、抵抗などの電子部品は秋月から購入しました。その他の部品はオジサンの町の唯一のパーツ屋さんから、高い! ケースはタカチのYM-150、タカチのこのシリーズは気に入ってます。但し、ゴム足は良くない。両面テープで貼り付けるため、取れてしまう。ホームセンタでネジ留めするゴム足を買いました。右側の可変抵抗器の下にある黄色と黒の端子は、キャリブレータ信号の出力端子で、クロがGND側です。黄色の端子はケースと絶縁するため、プラスチックのワッシャを使っています。箱内部の配線はあまりに汚くて、参考にしないほうが・・・それでもAD変換のノイズはCH2側に少しだけでした。

このページのTOPへ


 纏め
PICオシロスコープ ソースリスト
PICオシロスコープ HEXファイル
PICオシロスコープ 実行ファイル
PICオシロスコープ ソースファイル(VB6)

 上記リンクは、上から順にPIC16F88のソースリスト、Microchip MPLAB IDEのアセンブラでのHEXファイル、パソコン側の実行ファイル(実行結果は左図)、パソコン側実行ファイルのVB6のソースです、これだけは圧縮してあります。

使用法? 右端の測定ボタンをクリックするだけです。基本的にはホントのオシロスコープと同様な操作で測定を行います。ソース、トリガ、TIME/DIVを決め、PICオシロのロータリースイッチでVOLTS/DIVを設定します。左端のレンジボタンは通常クリックする必要はありません。PICオシロのロータリースイッチを切替えれば、自動でレンジを読み込み画面上の設定が変わります。ストレージモードの場合、TIME/DIVは1msec/DIVに固定されます。画面上のカーソル(赤黒の点線)、電圧側はマウスの左ボタンのみで黒、シフトキーと左ボタンで赤が移動します。赤を基準にして黒までの電圧値を読み取ります。時間軸はマウスの右ボタンのみで黒、シフトキーと右ボタンで赤が移動して、時間を読み取ります。但し、カーソルを移動すると、せっかく描いた波形が消える???? テスト用のプルグラムだけで満足してしまったためで、消えないようにするのは別に難しいことではないのですが・・・・トシヲトッテ、コンキガナクナッタ?!(と言い訳ばかり) カーソルを移動しても、波形が消えないように修正しました。(6月11日)

topハードウエァの部屋このページのTOPへ