第2章 実験計測器の概要

1 開発の経緯

 これまでに開発,市販されてきた実験計測器は,各コンピュータメーカーから出されているコンピュータ機種に合わせて,拡張スロットに挿入して使用するタイプのものが多い。プリンタ,RS−232Cなどの端子を利用したコンピュータ機種に依存しないタイプのものも開発されてはいるが,それらは転送速度に制限があり,たとえば音声波形などを取り込むには速度的に不十分であった。
 そのため,音声波形の入力など,データサンプリングに十分な速度が要求される場合は,拡張スロットに挿入するタイプの実験計測器を利用する必要があり,したがって,短い時間間隔の実験計測を望む場合は,それぞれの学校に導入されているコンピュータ機種に合わせた実験計測器を用意する必要があった。
 また,サンプリング速度を大きくするために,一般には馴染みの薄い機械語を使わなければならないなど,計測制御のためのプログラム開発に多くの労力を必要とし,プログラムの手直しや,他機種へのプログラムの移植が困難であるという難点があった。
 今回開発をめざした実験計測器は,ワンボードマイコンを搭載することによって,こうしたパソコンの機種依存性を解消し,計測制御のためのプログラミングを容易にするとともに,高速なサンプリング速度を実現している。
 実験計測器の主な特徴は次のとおりである。

2 装置の構成

(1)  コンピュータとはRS−232Cケーブルで接続し,転送速度9600bpsでデータのやり取りを行う。
(2)  電源には通常6VのACアダプタを用いる(6Vの蓄電池も利用可能)。
(3)  実験計測器の構成及び外観は図1,写真1のとおりである。


図1 実験計測器の構成
(4)  各部の仕様を次に示す。
名   称 数量 仕     様
ワンボードマイコン UEC-Z07 1 TMPZ84C015AF-6内臓
A/Dコンバータ ADC0809 2 8ビット,2チャンネル入力,変換時間100μs
D/Aコンバータ DAC-UP8BC 1 8ビット,変換時間2μs
タイマ 8253C-5 2 プログラマブルインタバルタイマ
時間間隔1μs
入出力インタフェース 1 プログラマブルペリフェラルインタフェース
コネクタ
RS-232C用
フラットケーブル用

1
1

Dサブ25ピン
30ピン
電源 1 ACアダプタ(6V,1200mA)
外形寸法 - 150mm(縦)×160mm(横)×20mm(高さ)
(5)  A/Dコンバータは0〜5Vと−5〜+5V及び直接入力と500倍増幅入力をスイッチで選択できる。

写真1 実験計測器の外観
(6)  D/Aコンバータは直接出力とローパスフィルタを通したアンプ出力をスイッチで選択できる。
(7)  タイマは2μsまでの計時が可能である。
(8)  計測制御は約13キロバイトのROM化されたプログラムをワンボードマイコン(UEC−Z07)で実行し,コンピュータからRS-232Cに簡単なコードを送出することで実験計測の制御を行う。
(9)  各制御コードとその働きは次のとおりである。
a 入力チャンネル1での1個のデータのA/D変換
b 入力チャンネル2での1個のデータのA/D変換
c 入力チャンネル1での100個のデータのA/D変換
g 入力チャンネル1での1024個のデータのA/D変換(100μs間隔)
d 1個のデータのD/A変換
h 最大10000個のデータのD/A変換(100μs間隔)
i データ送信要求
r D/A変換の繰り返し要求
z D/A変換値を0Vにして出力
p タイマ1,2のパルス幅を設定
f タイマ1,2のカウンタにFFFFHを設定
t ゲート1のゲート時間を取得
s ゲート2のゲート時間を取得
u ポートAへのデータ送出
v ポートBへのデータ送出
w ポートBへのデータ送出
x ポートCからのデータ入力
y コンピュータヘのワンショットデータの送信要求
e 実験計測器からコンピュータへの送信データ終了信号
> すべてのポートを出力モードとする
< ポートCのみを入力モードとする
(10)  「ONE SHOT」スイッチを押すことにより,時間間隔100μsで1024個のデータ9セットをRAM(バッテリバックアップされている)に格納できる。この機能を使うと,野外で6V鉛蓄電池などに接続するだけで,コンピュータにつながずにデータサンプリングがでさる。データ数が9セットを越えると,以前に取り込まれたデータに上書きする。これらのデータは,野外から帰ってコンピュータに接続することで呼び出せる。

3 利用方法

(1)  コンピュータとデータをやり取りしながら実験計測する場合は,コンピュータと実験計測装置をRS-232Cで接続して,実験計測器に6VのACアダプタを接続する。電源を投入すると実験計測器はマスタリセットし,コンピュータからの制御コード待ちの状態になる。RS-232Cを通して上記の制御コードを送ることで,それぞれの動作が実現できる。制御コードとともにパラメータが必要なときは,それらを続けて送る。
(2)  野外等でワンショットデータをサンプリングするときは,6V鉛蓄電池などに接続して「ONE SHOT」スイッチを押す。2回目のサンプリングをするときは,もう一度スイッチを押す。電源を外すと,回数はリセットされるので,複数セットのデータをサンプリングするときは,電源を付けたままにしてサンプリングする。

4 実験計測器を動かすためのプログラミング

 実験計測器からコンピュータにデータを読み込んだり,逆にコンピュータから実験装置へデータを送るには,そうした手続きをコンピュータ上でプログラミングする必要がある。コンピュータ上で行うプログラミングには,いろいろなコンピュータ言語が利用可能である。現在よく使われているのは,BASIC,C,PASCAL,アセンブラなどであるが,これらのうちBASICは豊富な命令を持ち,プログラミングがしやすい言語である。ここでは,数多くのコンピュータ機種に対応しているQuickBASIC(マイクロソフト社)を使った計測制御のプログラム例をいくつか示す。ある機種のQuickBASICで作成した実験計測のためのソースプログラムは,ほぼそのまま他の機種でコンパイルして利用することができる。
(1)  1024個のデータのA/D変換
 100μsの時間間隔で入力電圧を実験計測器に1024回取り込み,ホストのコンピュータに転送して,画面にその値を表示する。
′  配列変数の確保
DIM SHARED XR(1024)
′  RS-232C回線のオープン
OPEN”COM1:9600,N,8,1,ASC”FOR RANDOM AS #1
′  コンピュータからA/D変換の制御コードを送る
PRINT #1,”g”
′  実験計測器から終了コードが送られてくるまで待つ
DO WHILE INPUT $(1,#1)<> ”e”
LOOP
′  実験計測器にデータの送信を要求する
PRINT #1, ”i”
FOR I=1 TO 1O24
′  データをコンピュータに取り込む
 LINE INPUT #1,D$:XR(T)=VAL(D$)
NEXT
END
(2)  1個のデータのD/A変換
 0〜255までの数値をコンピュータから実験計測器に送って,アナログ電圧に変換して出力 する。
′  RS-232C回線のオープン
OPEN ”COM1:9600,N,8,1,ASC”FOR RANDOM AS #1
′  出力データに255を設定
DATA=255
′  D/A変換の制御コードを送る
PRINT #1,”d”;
′  データの送出
PRINT #1,STR $(DATA)
′  OUTPUT端子に4.96Vの電圧が出力される
END
(3)  ポートAへのデータ送出
 コンピュータから送られたデータを,拡張T/O端子のポートA(8個の端子群)に0V又は5Vに変換して出力する。
′  RS-232C回線のオープン
OPEN ”COM1:9600,N,8,1,ASC”FOR RANDOM AS #1
′  U:ポートA選択 V:ポートB選択 W:ポートC選択
PRINT #1,”u”;
′  データ(255)の送出
PRINT #1,”255”
END
(4)  ワンショットデータの取得
 ワンショットスイッチを押して取り込まれた1024個のデータを,ホストのコンピュータに転送して,データの値を次々に画面に表示する。
′  RS-232C回線のオープン
OPEN ”COM1:9600,N,8,1,ASC”FOR RANDOM AS #1
′  ワンショットデータ取得の制御コードを送る
PRINT #1,”x”;
′  3番目に取得したデータを取り出す(3−1=2を送出)
PRINT #1,”2”
′  1024回繰り返し
FOR I=1 TO 1O24
′  データの取り込み
  LINE INPUT #1,D$:PRINT VAL(D$)
NEXT
END

5 活用例

 実験計測器にマイクやスピーカーを接続するだけで実現できる簡単な実験として,音波の周波数分析(写真2),固有振動の重ね合わせによる任意波形の音波出力(写真3),マウスで描いた波形の音波出力(写真4)などがある。また,100〜1000倍の増幅回路を付加すると,磁石の単振動による交流電流の発生(写真5)の観察,実験等が行える。
写真2 音波の周波数分析
写真3 重ね合わせによる任意波形の音波出力
写真4 マウス描画による音波出力
写真5 磁石の単振動による交流電圧の発生


[目次へ]