編集部では,通巻555 号を記念して,アナログ性能の高いUSB マイコン基板を付属した増刊「今すぐ使える! パソコン計測USB マイコン基板」(好評発売中)を制作しました.●主な部品付属基板に搭載される主な部品は次のとおりです.(1)USB とA-D コンバータをインターフェースするPIC マイコン PIC18F14K50(2)アナログ信号を1600 万分の1 に分解しディジタル信号に変換する 24ビットA-D コンバータ AD7793
本付属基板の特徴を決めているA - D コンバータは,温度センサやセンサ励起用の電流源,可変ゲイン・アンプを内蔵しています.増刊にはCD - ROM も付属する予定です.CD - ROM には,パソコン計測用のアプリケーション・ソフトウェアが収録されます.記事では,A - D コンバータに内蔵された温度センサを動かすところから解説をスタートするので,増刊から付属基板を取り出してパソコンのUSB に接続して,このアプリケーション・ソフトウェアをインストールするだけで始めることができます.本誌では活用例を紹介する連載「センサ&計測教室」をスタートしました.●良い道具を使えば本格的な計測も簡単になるちょっと計算するだけで,付属基板に搭載されるA - D コンバータは,汎用のワンチップ・マイコンに多い分解能8 ~ 10 ビットのA - D コンバータとは比べ物にならない性能をもっていることがわかります.8 ビット= 2 8 = 25624 ビット= 2 24 = 16777216このように,アナログ信号をきざむ能力(分解能)が65536 倍もあります.そんなに本格的な性能は要らないと思われるかもしれませんが,実は,この高性能がアナログ信号の分析をとてもやりやすくしてくれます.変化の大きい信号,例えば1 g ~ 1 トンの重さ信号を読み込ませた場合を考えてみると, ・ワンチップ・マイコン: 3.9 kg きざみ ・AD7793 の場合: 0.0596 g きざみとなり,ワンチップ・マイコンでは,1 g の重さを読み取ることができません.読み取るためには,A-Dコンバータの前段にアンプを挿入して,測る重さに合わせてゲインを変えなければなりません.でも,AD7793 なら,そんなこと面倒なことをしなくてもOKです.丸ごと読み込ませてしまえば,1 g の重さを0.0596 g 単位にきざんでくれます.つまり,信号の変化幅が大きくても,まるで野菜ジューサのように丸ごと読み込ませると,形の整った細かい信号に刻まれたディジタル信号を出力してくれるわけです.細かいことを気にする必要はありません.難しそうなことは良い道具で解決すればよいのです.●汎用のUSB マイコン基板としても使えるもちろん付属基板は,汎用のUSB マイコン基板としても利用できます.搭載されているUSB PIC マイコンPIC18F14K50 のピンの一部は次の用途に利用されています. ・USB とA - D コンバータをインターフェースする ・AD7793 のコントロールそれ以外のピンはすべて付属基板の周囲にあるピン・ヘッダ挿入穴に引き出されており,最大7 チャネルまでの入出力制御が可能です.ICDやPICkitなどの書き込み器をつなぐ端子もあるので,カスタマイズも可能です.本稿では,計測にも使える高性能な付属基板の概要をお伝えします. 〈編集部〉付属基板を使ってできること● センサを直結していろいろな物理量をPC で測定温度,明るさ,長さ,重さなど,この世に存在するものはざまざまな物理的な量を持ちます.その量は基準と比較して,測定が行われます.物理的な量を測定できる信号に変換するのが,センサ(sensor)です.身近なセンサとして温度計を挙げてみましょう(図1).寒暖計や理科の実験で使う棒温度計は,人間の目で目盛りと比較して値を判定するセンサです.記録としては残らないので,通常は見やすい位置や被測定物に設置して使います.一方,気象測定の現場では温度の記録をとるために記録紙に直接書き込むセンサが使われています.バイメタルという温度で変位する金属のわずかな変化を機械的に増幅して直接ペンを動かし,ゼンマイの原理で記録紙を送るという電気をまったく使わないオール機械式もあり,いまでも現役で活躍しています.無人でも記録が取れることが大きな利点ですが,記録の利用には手作業での文書化が必要です.そして,産業用では,無人での測定や遠隔監視,そしてパソコンで直接利用できるデータ形式が求められ,それを可能にするセンサが使われています.それらは電気信号に変換して出力され,パソコンの入り口となるA- D コンバータに入力できます.付属基板に搭載しているA - Dコンバータには低速直流~低い周波数で出力するセンサが適しています.例えば,温度や湿度,圧力,ひずみ,ガス濃度などのセンサが向いています.● 24 ビット= 1/ 1600 万きざみなので誰でも高分解能測定が可能付属基板に搭載されているA - D コンバータは24 ビットの分解能を持ちます.換算すると,1600 万分の1 ものとてつもない分解能です.実質的には20 ビット(100 万分の1)ぐらいが上限となります.なお,電源部には低ノイズの電源IC を採用しました.この分解能があれば,例えるならば富士山(約3800 m)の全貌を見ながら4 mm の小石が判別できることになります.8 ビット分解能の場合4 mm を測ろうとすると,全体としては1 m しかとらえられません(図2).言い換えれば,分解能はデジカメの画素数に似ています.8 ビットA - D コンバータを6 万画素に例えると,24 ビットでは300 兆画素に相当します.拡大すればいくらでも細かく表示できるので,まるごと撮影して細部を拡大表示する手段が可能になります.6 万画素(8 ビット相当)で山頂の小石を撮影するには富士山に登って近くからの撮影が必要です.ところが登ってしまうと今度は全体の大きさが判らなくなるので一度に測定できないことになります.電気信号でも同じことが言えます.これまでブリッジ回路などの駆動回路で検出信号を拡大する工夫がされてきましたが,高分解能を利用すれば丸ごと読み込んでから微小変化分を取り出す,という芸当ができるのです.● USB 経由でパソコンからA - D コンバータを操作できるA - D コンバータIC は,初期のパラレル出力から,SPI やI2C などのシリアル・インターフェース方式をとりDSP に直結できるものが多くなっています.操作方法も内蔵のレジスタに値を書き込む方式が普通になっており,マイコンによる制御が必須です.コマンド方式のA - D コンバータを使うには,内部レジスタや内蔵機能の理解が要求され,また,使うためのマイコン回路やファームウェアの作成が必要です.図3 に付属基板の回路ブロックを示します.USB - SPI 変換機能をプログラムしたPIC マイコンを搭載し,24 ビットΔΣ型A - D コンバータAD7793 をパソコンから直接制御できます.A - D コンバータのコマンドと対応した文字列により操作することで,専用API やドライバが不要になり,汎用のターミナル・ソフトからでも操作できます.付属基板と搭載部品の仕様● 仕様仕様を表1 に示します.アナログ入力1(AIN1)は,アンチエイリアス・フィルタや,端子台を簡単に実装できるパッドを設けています.信号線は600 mil (15.24 mm)幅のDIP コネクタ(36ピン相当)に出力しており,連結コネクタでベース・ボードやブレッドボードへ拡張できます.増刊付属CD - ROM に収録したWindows 用ソフトウェアを使えば,A - D コンバータIC のレジスタを操作しながら測定できます.● 搭載デバイス・24 ビットΔΣ型A - D コンバータIC AD7793表2 に仕様を示します.外部からゲインを設定できるインスツルメンテーション・アンプやドリフトが4ppm/℃typ のバンドギャップ・リファレンス,クロック発振器,50 Hz/60 Hzを同時除去するノッチ・フィルタ,プログラマブル電流源などを内蔵する,オール・イン・ワンのA -D コンバータIC です.・USB PIC マイコン PIC18F14K50表3 に仕様を示します.付属基板ではUSB とA - D コンバータIC のSPI の橋渡しに使っていますが,未使用ポートを汎用I/O ポートとして開放しており文字列コマンドによるI/O 操作が可能です.PICkit2/3,ICD3 が使えるファームウェアを改造すれば,USART(調歩同期式シリアル・インターフェース)やPWM 出力,10 ビットA - D 変換入力などとして機能させられます.フリー・メモリは5 K ワード以上です.8 × 8 ハードウェア乗算器や1.024 V リファレンス電圧源,発振器を内蔵し,スリープ電流は24 nA です.なお,基板ではI/Oポートはハイ・インピーダンスの不安定入力を防止するため,電源投入時は全てロー・レベルの出力に設定しています.・3.3 V,150mA の電源IC ADP150A - D コンバータの高分解能を100 %引き出すには,低ノイズな電源で動かす必要があります.低ノイズ・タイプの電源IC ADP150 で電圧変動を除去し,USBマイコン基板にノイズが重畳しないようにしています.パソコン用ソフトウェアA - D コンバータ機能を中心に,付属基板を学習しながら操作できるW i n d o w s アプリケーション「USB - ADC General Console」を付属CD - ROM に収録しています.図5 に表示画面を示します.VisualBasic.NET で作成しており,データの受け渡しは文字列により送受信しています.増刊では,ターミナル・ソフトウェアでの手動操作方法を通じて,コマンドの解説や,VisualBasic.NET でのプログラム作成方法を説明しています.