2018年08月12日 | 公開。 |
2019年03月24日 | 「等価サンプリング」を「等価時間サンプリング」に書き直した。 |
今回試作したオシロスコープの主な仕様を表1に示します。
チャネル数 | 2チャネル(CH1/CH2) |
サンプリング周波数 | 160ksps(1チャネル時、2チャネル時共) |
等価時間サンプリング機能 | なし |
トリガ | CH1/CH2 RISE(立ち上がりエッジ)/FALL(立下がりエッジ) AUTO/NORMAL |
時間軸レンジ | 50μs/DIV~20ms/DIV、1-2-5ステップ |
電圧レンジ | 100mV/DIV、200mV/DIV、500mV/DIV、1V/DIV、2V/DIV |
入力電圧の範囲 | -16V~+16V |
入力インピーダンス | 約245kΩ |
外部トリガ入力 | なし |
今回試作したオシロスコープのハードウェアについて説明します。
図5と写真5に、今回試作したオシロスコープの構成を示します。
このオシロスコープは、Arduino Dueをベースにして、プリアンプ基板、キーパッド基板、128×64モノクログラフィックLCDシールドを追加する事により、構成されています。
注:写真5の左上にはブレッドボードが写っていますが、ここでは、ステレオミニプラグから来た試験用の信号を、ブレッドボード用のジャンパ線に渡しているだけです。
これらの内、Arduino Dueは、市販している物を購入しました。
またプリアンプ基板とキーパッド基板は、今回自分で設計し、ユニバーサル基板を使って製作しました。
128×64モノクログラフィックシールドは、以前自分で設計した物ですが、中国の業者(Elecrow)で8割方を製造してもらい、残りの部品の取り付けと動作確認を自分で行いました。このシールドは市販もしています。
商品名 | 128×64モノクログラフィックLCDシールド | |
税抜き小売価格 | 3600円 | |
販売店 | スイッチサイエンス | |
サポートページ | 128×64モノクログラフィックLCDシールドサポートページ |
次の節から、オシロスコープを構成する各ブロックの説明をします。
Arduino Dueはクロック84MHzの32ビットARMプロセッサ(Microchip SAM3X8E)を採用した、高性能なマイコンボードです。Arduino Dueの写真を写真6に示します。
参考:SAM3X8Eは元々Atmelの製品ですが、2016年にAtmelはMicrochipに買収されました。
SAM3X8Eは、CPUが高速なだけでなく、A/D変換器(以下ADC)も高速で、12ビットで1MspsのA/D変換ができます。このA/D変換が高速な点が、今回、Arduino Dueをオシロスコープのプロトタイピング用マイコンに選択した一番の理由です。
また、Arduino Dueは2チャネルのD/A変換器も内蔵しており、将来的にはファンクションジェネレータや任意波形発生器の機能を追加する事も考える事ができます。
プリアンプ基板の写真を写真7(表面)と写真8(裏面)に示します。また回路図を図6に示します。
プリアンプ基板では、入力されたアナログ信号の電圧を、A/D変換に適切なレベルにまで減衰させ、ダイオードによる入力保護回路を通したのちに、オペアンプのボルテージフォロワ回路でインピーダンス変換をし、Arduino DueのA0端子(CH1)およびA1端子(CH2)に信号を渡します。
この基板はプリアンプ基板と名前が付いていますが、電圧は増幅されずに減衰します。電流に関しては、ボルテージフォロワ回路で増幅されます。
CH1およびCH2のAC結合とDC結合の切り替えは、プリアンプ基板上のSW1とSW2の2つのスライドスイッチにより切り替えます。これらのスイッチの状態は、GPIO(12番ピンと13番ピン)経由でArduino Dueに伝えられます。AC結合になっているか、DC結合になっているかは、オシロスコープの画面上で確認できる様になっています。
なお、Arduino DueのGND端子と3.3V端子を抵抗(R1とR2)で分圧し、それをボルテージフォロワ回路で低インピーダンス化する事により、1.65Vの中間電位を作っています。この中間電位をアナログ回路のGND(基準電位)とみなし、Arduino Due3.3のV電源をアナログ回路の+1.65V、Arduino DueのGNDをアナログ回路の-1.65Vの両電源として使っています。
Arduino DueのGND電位と、オシロスコープの入力端子のGND電位が異なる事には注意が必要です。Arduio DueをUSBケーブルでパソコンにつないだ場合は、同じパソコンにつながっている全てのUSB機器がGND電位を共有する事になります。そういったUSB機器の電圧を、当オシロスコープで測定する事はできません。
パソコンにUSBケーブルで接続された回路の電圧波形の測定の場合は、ACアダプタでArduino Dueに給電してください。(写真9参照)
注:Arduinoを使って回路を製作する場合、USBシリアル変換器経由で回路がパソコンにつながっている事が多いので注意が必要です。
USBケーブルでパソコンに接続されている回路の電圧波形を測定する場合は、この写真に示す様に、Arduino DueをACアダプタで給電し、Arduino DueとパソコンはUSBケーブルでつながない様にする必要があります。逆に、パソコンにつながっていない回路の電圧波形を測定する場合は、ACアダプタで給電しても、パソコンからUSBケーブルで給電しても結構です。
キーパッド基板は、タクトスイッチを十字に配置し、Arduino DueのGPIO(2~5番端子)に接続した物です。
キーパッド基板の写真を写真10(表面)と写真11(裏面)に示します。また回路図を図7に示します。
現状ではキーが4つですが、将来的にはRun/Stopキーを加えて5つのキーにする予定です。
「オシロスコープをたった4つのキーで操作するのは使いにくそう」と最初は思っていたのですが、使ってみると手の位置を動かさずに使える分、予想外に使いやすかったです。
このモノクログラフィックLCDシールドは、128×64ピクセルのビットマップ表示を行えるディスプレイのシールドで、21桁×8行のキャラクタLCDとしても使える物です。
自分で開発したシールドで、市販もしています。
商品名 | 128×64モノクログラフィックLCDシールド | |
税抜き小売価格 | 3600円 | |
販売店 | スイッチサイエンス | |
サポートページ | 128×64モノクログラフィックLCDシールドサポートページ |
使いやすいMGLCDライブラリにより、簡単にプログラムを開発する事ができます。コストよりも、プロトタイピングの時間の節約が重視されるプロジェクトに向いているLCDシールドです。今回のオシロスコープの試作においても、MGLCDライブラリを使う事で、開発時間を短縮できたと思います。
余談:税抜き3,000円の価格設定は私自身も高いと思うのですが、表面実装基板の一部に、ピンヘッダやピンソケットなどのスルーホール部品を付けると、手作業で半田付け作業をせざるを得ません。3,000円の価格設定の半分くらいは、手作業の多さに由来しています。Arduinoに直接挿せるシールドの形を止める事で、価格を半分くらいに設定できないかと考えた事があるのですが、忙しくてなかなか製品化に至っていません。ピンヘッダやピンソケットがたくさんついたArduino Unoの互換機が500円位で売っている事がありますが、どうしたらあの価格が実現できるのか、私には理解できません。(参考記事:Amazonで激安Arduinoを買ってみた)
次のページでは、今回試作したオシロスコープのソフトウェアについて説明します。
商品名 | 128×64モノクログラフィックLCDシールド | |
税抜き小売価格 | 3600円 | |
販売店 | スイッチサイエンス | |
サポートページ | 128×64モノクログラフィックLCDシールドサポートページ |