黒板に磁石で貼り付けて利用する演示用大型電圧計の製作

(PICRCサーボを動かす)

 

1.はじめに

  プレゼンテーションソフトやシミュレーションで大変分かり易い説明ができるようになったが,やはり臨場感が足りないことと,泥臭いテクニックを生徒に伝授できない不満を感じる。生徒実験を行ってレポートを提出させ,添削する教育モデルが優れていると思うが,問題演習の時間を確保するために省いてしまうことが多い。せめて,効果的な演示実験で生徒の興味関心を引き出す努力をすべきだと常日頃考えている。

2.黒板の有効利用

 チョーク1本で授業をやる教師は時代に取り残された化石のように扱われた時があった。今でもそうかもしれない。ただ現在は中途半端にパソコンの知識も持つ者が煙たがれ,問題視されているように感じる。パソコンを授業で使えといわれる一方で,管理体制が強化され使いづらくなっている現状は矛盾に満ちている。もっと落ち着いた状況に早くなればいいなと願っている。こんな思いから原点に戻ることにした。

 黒板の有効利用を考えた。黒板に文字図表を書く手順は,生徒の理解を引き出すような配慮をすることが可能で,この点をもっと高く評価すべきである。理科の教師として,黒板に上手に絵や図・表をフリーハンドで書けることは大切な素養であると思う。字は上手だが,黒板全体を見ると芸術性・合理性に欠ける板書をする人もいる。私の場合,字が下手・誤字も多く,全体の構成も合理性が不足し,芸術性の欠片もないと少々自虐的だが思っている。そこで授業の準備として必ずノートを作る。ノートは,どのように板書するかのスケッチである。体調がよいときは板書の手順を書き込んでおくこともある。

 NHKの番組で,表計算ソフトの開発の歴史を再現したシーンを見たことがある。表計算ソフトのアイデアを黒板の文字を書き直すと黒板に書かれていた計算結果が自動的に変わるようなイメージ映像で表現されていた。これと同じように,黒板にメートルブリッジの回路を描いて原理を説明したあとに,黒板の回路図にそって,実際の抵抗や検流計が浮かび上がってきて実際に測定していく,こんな流れができれば楽しいし,分かりやすいのではないかとふと思った。そこで取りあえず黒板に磁石で貼り付けて利用できる大型のメータを製作を開始した。

 

3.大型アナログメータ(針式メータ)

 デジタルではなくアナログメータにこだわった。自作する立場ではデジタルの方が簡単である。随分前になるが一辺が15cm程度の7セグメントLED表示器を多数のダイオードを埋め込んで作った事がある。デジタルは読み取り誤差はないが,変化を見たりする場合とても使いづらい。ちょうど腕時計の理屈と同じである。また,読み取り誤差がない事イコール高精度であるとの誤解も気になる所である。そこで針式の大型メータを自作することにした。針式の方式はとても簡単で,今はやりの2足歩行ロボットの関節に使われるようになった ラジコン用のサーボモータ(RSサーボ)を利用すれば簡単にできあがる。  

(1)RCサーボの動作

 ラジコン用のサーボモータはパルス幅で回転角が決まる。1.5mSでセンター,0.9mS-60°,2.1mS+60°回転する。このパルスを1623mS毎に出力すればよい。具体的な値はサーボモータによって違うようなので,規格を調べる必要があるが,とりあえずこの値を目印に回路(プログラム)を設計した。

(2)PICのプログラム

 A/D変換器を内蔵したPICで電圧を測定し,電圧によりパルス幅を変えるようにプログラムした。また16mS毎にこのパルスを出力するためにタイマー割り込みを利用した。利用したPICPIC12F6758ピンのICである。内蔵のRC発振回路を利用して部品点数を削減した。なお内蔵の発信器は4MHzで発信する。

 プログラムはPicBasicProCompilerで開発した。日本語マニュアルにあるTMR0の割り込みを用いたサンプルプログラムを参考に作成した。PICの規格表で関係するレジスターをどのように設定すればよいかを確認しながら1時間程度で完成した。極めて簡単なプログラムである。体験版のC言語を使うことが多いようだが,正規品を購入しようとすると10万円近い値段がする。しかし,PicBasiProCompiler3万円でおつりがくる。さらに,BASIC言語はシステムにカスタマイズされた命令を持つ方言の多い言語である。PicBasicProは計測制御に便利な命令が沢山あり,大変便利である。個人的にはC言語よりかなり使いやすい言語であると思う。またBASICStampPIC-BASICなどインタープリター型の開発環境も存在するので初めてプログラミングを学習する生徒にも敷居が低いと思う。本校独自の教科である科学技術Aでも1年生で取り扱っている。

 

' ***************************************
'* PIC12F675 RC SERVO contoroller *
'***************************************
define ADC_BITS 10
define ADC_CLOCK 3
define ADC_SAMPLE 50
TRISIO =%00000011 'GP0,GP1 input
CMCON =%00000111 'disable comparator
ADCON0=%11000011 'GP1 - Vreff
ANSEL =%00110011 'GP0,GP1 analog input

pulse var GPIO.2
low pulse

'***************************************
'* 0.9m sec -> 1.5m sec -> 2.1m sec
'* +60 center -60
'* pulseout pin,val (4MHz)
'* val 90 150 210
'***************************************
width var word
adval var word

OPTION_REG = %01010101
INTCON = %10100000
ON interrupt goto t_warikomi

LOOP:
ADCIN 0,adval
width = (adval / 7) +90
GOTO LOOP

Disable
t_warikomi:
'*********************************
'* interval time = 16mS
'*********************************
pulsout pulse,width
INTCON.2=0
RESUME
Enable
end

 

 

(3)回路

 電源は乾電池の場合3本,ニッカド電池の場合4本で動作させる。利用したRSサーボの型番は不明で回路図のようなピンアサインであった。PIC7番ピンをA/D変換器の入力として利用し,5番ピンから入力電圧に比例した幅のパルスを出力しサーボを制御する。6番ピンはA/D変換器の基準電圧入力端子としてりようし,2.5Vフルスケールで10ビット分解能で変換する。ただしパルス幅に変換するときに7ビット相当に丸めている。

 プリアンプとして単電源汎用OPアンプであるLM358を利用した。0.3Vでフルスケールになるように増幅する。最終的には10kΩの半固定抵抗で校正する。LM358の最大出力電圧は5V電源で3.5V程度なので,A/D変換のフルスケールを2.5Vに設定した。残りのOPアンプはメーターのゼロ点調整用に利用した。ガルバノメータとして利用する場合に,入力電圧ゼロで,針が中心になるように調整する。

 入力端子は0.3Vフルスケールで入力抵抗が100kΩ,300kΩ/V程度の性能である。入力段にもうけた減衰器で1.531530Vフルスケールに減衰させる。

 

4.授業での利用風景

 授業では,電池の内部抵抗の実験で,電池に負荷をかけていくと端子電圧が低下する様子を演示実験で示すときの電圧計として最初に利用した。定性的な説明で,内部抵抗の存在を示す目的の簡単な実験である。 次にメートルブリッジで検流計として利用した。この授業は本校での公開授業の一環として行った。

 未知抵抗として390Ωの炭素皮膜抵抗を利用してメートルブリッジで測定したところ,20cm80cmのところと読み取り,400Ωと算出した。(基準抵抗100Ω)次に470Ωにつなぎ替え,メートルブリッジで測定したところ,17.5cm82.5cmと読みとり,471Ωと測定した。

生徒が測定している時の写真である。メートルブリッジの説明をするのに,例として20.0cm80.0cmの位置を図示して行ったが,写真にもその時に板書した数値が残っている。どうもこの数値に心理的に影響されてしまい未知抵抗390Ωの測定のとき誤差を生んだようだ。 授業では時間の関係で誤差について深入りしなかったが,1mmの測定誤差は2.5Ωに対応するので0.6%程度の相対誤差になる。 470Ωの測定では女子生徒は1mmまで読んだ。この場合1mm3.2Ωに対応する。計算では471.4Ωと算出した生徒が殆どであったが,471Ωが適切な値となる。なお,0.1mmまで読み取れば,0.1%程度の精度は出せるが,色々な誤差の要因を総合して考察する必要がある。また上記の誤差は基準となる抵抗の誤差は考慮していない。

5.抵抗の測定について

(1)オームの法則から抵抗を求める場合の誤差

 電流,電圧を測定してオームの法則から抵抗を求める場合,@電流・電圧計が本来持っている誤差と,A内部抵抗に由来する測定誤差がある。 誤差を見積もるのに,2万円以下のデジタルマルチメータ,1万円程度のアナログテスターのデータをもとに見積もってみる。

                                        DCV          DCA           Ω       DCV内部抵抗

デジタルマルチメータ  0.08%         0.2%          0.2%         10MΩ

アナログテスター            2.5%          2.5%         3.0%          50kΩ/V

 

@電流・電圧計が本来持っている誤差

電流・電圧を測定し,より抵抗Rを計算する場合の相対誤差より,デジタルマルチメータで0.2%,アナログテスターで5%程度生じる

A内部抵抗に由来する測定誤差

 測定回路のインピーダンスを1kと仮定するとI÷Iの値はデジタルマルチメータで0.01%,アナログテスターで2%の誤差となる。

@Aの誤差より,偏位法により電気抵抗を求めた場合,数%程度の誤差は容易に入り込む可能性があり,有効数字に換算すると2桁程度となる。

 

(2)ブリッジにより抵抗を求める場合の誤差

 検流計(Galvanometer)がゼロを示すようにC点を動かすと 抵抗の比率が

となる。従って

で抵抗値がわかる。検流計でゼロを確認するだけなので@Aの誤差は入らない。高感度であれば良い。誤差の要因は基準抵抗R2の値とabの抵抗線の抵抗値の直線性である。

 

 メートルブリッジではab間が100.0cmであり分解能は3桁あり0.1%程度の精度は出せるだろう。また精度に関して10ビットのA/D変換器の精度と対応させると分かりやすい。なお,もちろん基準となる抵抗の精度も必要である。ただし0.1%の精度の抵抗はなかなか購入できない。

 

5.最後に

 右の写真が試作したメータである。横幅が30cmある。もっと大きくすることも可能だが,かえって取り回しが悪くなるのでこの大きさに落ち着いた。

 目盛りは書き込んでいない。理由は,その都度黒板にチョークで書こうと考えたからである。ただ試作器は,形が四角なので目盛りが書き込みづらい点と,メータの厚みがあるために,斜めから見た場合の視差が大きい等の問題点がある。以上の2点をふまえて改良する予定である。