● 実験テーマ73

「PIC24F_GCシリーズによる、高速オシロの実験_2」
(前テーマの基板に部品を追加(電圧レンジ切替追加等)して、今迄の自作オシロのように使える形にまとめてみました。)

 

以下、この実験の顛末記です。

■ 2015.12.21
  ・前テーマの時から、最終的には、今迄の自作オシロのように機能を追加し、使える形に
   しようと思い、ある程度は、追加部品を想定して、部品配置を決めていましたし、空きエリアも確保
   していました。
   それでも、かなりの追加になるので、特にアナログ部は、キツキツの実装になってしまいそうです。
   さてどうなることやら・・・

  ・次の2つのステップで実験を進めようと思います。
   Step1: ロータリ・エンコーダ(RE)によるトリガ調整機能の追加実験+HOLD SW 追加実験
   
Step2: アナログ回路全面改造(AC/DC切替・電圧レンジ切替追加)
         シングル・トリガ・モードの追加

  ・まずは、水魚堂で、上Step1,2の追加機能を全て網羅した回路図の作成から開始しつつ、
   REによるトリガレベル調整の仕様を検討することにした。
   REによるトリガレベル調整機能は、モノクロGLCDを使ったオシロ(実験テーマ62)で採用してますが、
   カラーQVGAオシロでは、初めてです。
   アップダウンSWを使った例は、QVGAオシロV4の時にあるが、トリガレベル・マーカー表示の位置は、
   目安程度のものでした。
   今回は、出来るだけ正確な位置に、マーカーを表示したいと思います。


■ 2015.12.22
  ・REによるトリガレベル調整機能仕様を考える。
   Y方向解像度:240dotの制限から、マーカー描画が、近似的な位置(かなり近いが・・)になって
   しまうが、たぶん視覚的には違和感は、そんなに無いと思うので、そのまま進めてみる。

   Y方向の解像度が、256dotあれば、1dot当たり、AD変換値で、1024/256=4になるので、
   0〜3Vまでのトリガ電圧を扱え、マーカーも正確な位置に表示できるが、
   240dotの内、Y座標線を、233dot分使ってフルスケールとしているので、1dot当たりのAD変換値は
   4.395と割切れない。
   なのでレベル分割は、1024を、256分割とし、マーカー表示は、233dot分しかできないので
   その分の表示のみとした。
   よって、中央レベルを、1.5V(512)として、−側は、約0.1〜 +側は、約2.9Vの、トリガレベル範囲
   となる。
   以下に、トリガ仕様をまとめました。
   <トリガ仕様>
    ・
初期値=512(センター:1.5V相当)、1STEP ±4(約12mV相当)
    ・センター:512を中心に、±116テップになる。
    ・
117ステップ目は、+側は、Y座標の上限232をオーバー(233)するので、 
     POT=976(116ステップ目の、トリガ値)とし、
−側も、117ステップ目に、Y座標の上限0をオーバー
     するので、 POT=48(116ステップ目の、トリガ値)とする。

  ・水魚堂による回路図作成完了。
   また、追加部品のリストを作成した。


■ 2015.12.23
  ・
追加部品の手配を済ませる。


■ 2015.12.24
  ・Step1の内容以外で、追加しようと思っていたことがあったので、それをやることにする。
   それは、サンプル周期の低い方のレンジを、いくつか追加することである。
   最初の実験では、高速オシロということで低い方は、省いていたのだが、それでは実用的では
   ないので追加することにした。
   ハード的には、切替SWに使っている、10進のロータリ・ディップSWを、16進のものに
   変更が必要である。
   そして現在割付けられている、0〜9以外の、10〜15に、その低いレンジを割付けることになる。
   低い方の割付けは以下のように、決めた。
    10:20mS/D(SMP= 500u)
    11:50mS/D(SMP= 1250u)
    12:100mS/D(SMP=2500u)
    13:200mS/D(SMP=5000u)
    14:250mS/D(SMP=6250u)
    15:500mS/D(SMP=12500u)
   これを基に、T2の、PR2と、PS2の設定値を決めて行けばよい。


■ 2015.12.25
  ・REによるトリガルーチンの書き方は、自作Scope V2のソースにならって進めればよい。(メインループ処理)
   他のSW割込み記述(CN割込み)の記述は、今迄のPIC24F系と同じと考えて良さそう。

  ・部品は全て今日届いたが、計画通り、まずは、REトリガ+SLOPE切替+HOLD SWのところまでの
   プログラムを用意(TEST_2)してから、その部分の改造を行い、チェックを行うことにする。


■ 2015.12.26
  ・Step1までのソース書き上げる。
   コンパイルOK、HEXまで準備できる。


■ 2015.12.27
  ・Step1までの基板改造が完了した。

  ・HEXを書込んで、チェックに入る。
   まずは駄目。トリガレベル・マーカー表示と、実際のトリガレベルのプラス側が大幅に合わない。
   これはイージーミスで、プラス側のステップが、4でなく16になっていた。
   これを直しても、未だおかしい。
   自分の思い違いのせいであった。
   何故か、液晶のY方向:240dotを全て座標軸に使っていると勘違いしてしまった。
   233dot分を座標軸として使っているのであった。(最初の説明の通りである。)
   なのでこの範囲で、レベルと表示を合わせるよう修正してOKになる。

   SLOPE切替と、HOLD SWの機能は問題なかった。
   これで、Step1までの動作はOKとなる。


■ 2015.12.28
  ・Step1までのサンプル取りを行った。


■ 2015.12.29〜 2015.12/31
  ・Step2の準備に入った。
   面倒な、追加改造を行う。
   初めから懸念はあったが、少ないスペースの中に、追加改造分を押し込んだ。
   基板エッジ側にも、リード挿入穴が無いと、とても実装できないので、そこは購入しておいた
   ピンバイスで、0.8φの穴を開けた。
   今回おおちゃくして、ギリギリ穴のあるところでカットしなかったのがいけなかった。
   なんとか、12/31 15:00頃、改造完了となった。

  ・Step2までのソフトを書き上げた。
   コンパイルOK〜 HEXまで準備できた。

  ・まずHEXを書込み、追加ICを実装して、デバッグに入った。
   いろいろ不具合が出た。  


■ 2016.1.1
  ・不具合を抱えたまま、新年を迎えた。(去年もそうだったような・・・)
  ・結果的には、ノイズ問題を除いては、大方OKになった。
   以下に、発生した不具合点と、対処事項について整理し、列記してみた。
   <発生した不具合点と、対処事項>
    (1) アナログ部
      @ 入力ZEROにて、OFFSET VRで、センターレベルに出来ない?
      → 配線ミスだった。
         内蔵初段OPアンプの、−ピンが、AGNDとブリッジしていた。今回の改造の時ブリッジ
         してしまったようだ。
         これを直してOKになる。

    (2) デジタル部
      @ 電圧レンジを切替えても、"50mV/D"表示のまま変化しない。
         また、AC/DC切替スライドSWの読込みがNGで、切替えても、DCキャラクタ表示のままになる。
      → 当該ポート(RD)がデフォルトのアナログピン設定になっていた。
         ANSD= 0;設定追加でデジタルピンにしたらOKになる。

      A AUTO/SINGLE切替スライドSW(RF3)は読込んでいるようであるが、SINGLEにして、
         READY SWを押しても、READY LEDが点灯しない。
      → READY SWと、AUTO/SINGLE切替スライドSWは正しく動作していることを確認した。
         よってLEDの動作がおかしい。
         結局、使っていたLEDのカソード面のカットがはっきりしていなくて、向きを間違えて実装
         していた。修正でOKになる。


■ 2016.1.2
 
 ・残りのノイズ問題を調査し対策を打った。
   毎回、苦労していることであるが、今回はだいじょうぶだろうと、+5VラインのLCフィルタは省いていた。
    @ いろいろやったが、結局、ノイズ源は、+5V(ACアダプタ出力)の電源ノイズ(オシロで見ると0.1Vmax位)
       であった。
       ここにいつもの、LCπ型フィルタを追加した。
    A ただこれだけでは駄目で、このノイズが一番影響している、4051のアナログSWと、後段の
       電圧バッファアンプのパスコンの容量変更と追加を行った。
       ・4051の+5Vパスコン→ 0.1uを10uに変更しさらにパラに10uを追加。
       ・電圧バッファアンプの+5Vパスコン→ 0.1uとパラに、10uを追加。

   尚、チャージポンプ出力(-5V)のノイズの影響は殆どないようなので、今回ここにはLCフィルタを追加してない。 
   ただ、最初から大き目のコンデンサ100uを実装しておいた。

   ※ @、Aの改造で良くなった。
   以下にその様子をアップしました。
   (尚基板を改造している時に誤って、液晶のガラス面(右側)にヒビを入れてしまったため、その補修のために
    黒ビニールテープで補修したのが写真にも写っていますが、ご了承のほどを。→ 後日交換しました。)

   ただ、ちょっと気になる点あり。
   
ハイレンジ(20uS/D, 10uS/D)で、時間軸を、いっぱい使って1周期を表示した場合、多少だが、
   波形が歪んで表示される感じがする。 


■ 2016.1.3
 
 ・昨日のハイレンジの波形表示が、若干歪む現象だが、結局は、初段のアナログSW(4051)
   を、もう一つ余分に購入しておいたものに交換したら、嘘のように? 綺麗な波形表示になった。


   この歪の原因は、はっきりしないが、入力のAC誘導成分のような気もする。
   ともかくこれで良くなったのでOKとした。

  ・未だ矩形波入力の波形確認をしてなかったので、やってみました。
   以下に、矩形波入力時のサンプルをアップします。

  ・DCレンジにて、電池から直流電圧を与え、各電圧レンジの確度を確認した。→ OK

     ・OFFSET調VRが、クリティカル過ぎて、ZERO点が合わせずらい。
   これは最初から分かっていたことなのだが、おおちゃくして改造項目にいれずそのままにしていた。
   いつものように、VRの両端に、20kを追加した。これでほどよい感じになった。


■ 2016.1.4
  ・遅れたが、この時点の電源コンディションを確認した。
   +5V:5.18V
   -5V:-4.96V
   VCC:3.29V
   AVCC:3.26V
   +5V入力電流:0.14A

  ・最後に、SINGLEトリガ・モードをチェックした。
   AUTO/SINGLEの切替え、READY SWの動きはよさそうなのだが、READY LEDの動きがおかしい。
   SINGLEモードにして、READY SWを押し、トリガ待ち(READY LED ON)にした状態で、信号入力
   せず、AUTOに切替えた時、READY LEDが消灯しない?
   これはイージーミスであった。
   AUTOモード処理の最初に、LED OFFと、READYフラグ類のリセットが抜けていた。
   これを追加して、SINGLEモードも、OKになる。

  ※ これで全ての機能がOKになった。
     今回ケーシングは特にしてないが、底板だけは付けて、ハンダ面を保護すると同時に、そこに
     タカチ電機工業の、「TI型チルトスタンド  TI-70S」を取付けて、斜め置き可能にし、操作性を
     よくしました。


■ 2016.1.6
  ・最終的な、外観と波形サンプルを取りました。
   このページトップの写真を参照してください。


<最終回路図>
 ・こちらから、どうぞ→ 「PIC24F_GC_高速オシロ実験回路_2(1/2)」 : デジタル部+アナログ部2
                   「PIC24F_GC 高速オシロ実験回路_2(2/2)」 : アナログ部1


<最終ソース>
 ・こちらから、どうぞ→ High_Speed_Oscillo_Test_2.c 

   ※ この他に、QVGA液晶ライブラリと、フォントデータ(ヘッダファイル)が必要ですが、
    それは、前テーマ72のと同様なので、そちらを参照してください。


← 実験テーマ1に戻る   TOP PAGEに戻る   実験テーマ74へ →