円周率の計算 - アナログ編
概要 ―アナログ計算機を作ろう
円周率をアナログ回路で計算しよう、という試みです。
円周率を求めるには、プログラムで計算する方法、円の直径・円錐や球の体積を実測する方法、
針を落としてもとめる方法などたくさんありますが、アナログ回路を使った方法は聞きません。
今時、アナログ回路で数値計算をする学術的価値はないかもしれませんが、
回路&π大好きの私としてはやらずにはいられないテーマなのです。
なおアナログ編と称しながら、回路の調整及び測定にはディジタルテスタやアナログ・ディジタルコンバータを
使用していますw まぁ、そこは勘弁してください。
うちのアナログテスタは何度も針振り切らしてるし、ヒューズ溶断も数回させているので精度も糞もないんです。
計算方法
円周率の計算に、次の式を使います。
この式は、置換積分で簡単に証明できます。
加算、乗算、除算、積分はアナログ回路で実現可能です。ブロック図は次のようになります。
ブロック図 その1
このブロック図では、t^2を計算するために乗算器を使用しています。
しかし乗算器は高いし、直線性も怪しいのであまり使いたくありません。そこで、
という関係を用いてこの部分を積分に変換します。またOPアンプを使った積分器は、出力の符号が逆になります。
これらを考慮したブロック図は次のようになります。矩形パルスの電圧が1Vから2Vに変わっていることに注意してください。
ブロック図 その2
回路仕様
電源電圧 ±15V
1V、1秒を数値の“1”に対応させます。NJM4200周りでは100μAを“1”に対応させます。
ADCのレンジや回路の直線性の良い動作範囲などを考慮すると、別の対応関係の方が良いかもしれません。しかし、
「えーっと、出力が13.56Vだから、オフセット1Vを引いて、係数0.25を掛けて…」
とかやってたら、πが計算できた!という感動が台無しです。
もともと精度なんか期待してないしw そんなわけで1V−1対応でいきます。
回路図
半導体部品表
種別 |
型番 |
個数 |
単価 |
備考 |
OPアンプ |
OP07D |
4 |
200円 |
Low-offset |
アナログマルチプライヤ |
NJM4200 |
1 |
?円 |
Nonlinearity 0.3% |
アナログスイッチ |
DG201ACJ |
1 |
570円 |
4回路入り、on抵抗 数百Ω |
※以下の回路図では、NJM4200, OPアンプの電源の配線、オフセット調整の回路などは省略しています。
・積分器 Vout=∫Vin dt
誘電損失の小さいフィルムコンデンサを使用しています。半固定抵抗を調整して時定数を 1sに設定します。
・加算&除算回路 Vout=4/(1+Vin)
この回路は電源電圧の変動の影響を受けますが、実験には安定化電源を使用するので良しとします。
実験
手前の赤色のコンデンサが3個のっている基板が主役のアナログ円周率計算機です。
その隣の小さな基板は、倍率−1の反転増幅器です。これは測定に使用したADCがユニポーラ0〜10V入力だったため、
負の電圧を測定する際に極性を反転するのに使いました。
写真左上の青色のものは、±15Vを供給する安定化電源です。
回路のアップ写真
測定結果
・除算器の静特性(回路調整後)
・各部波形(サンプリング周波数 fs=1kHz)
理論値も合わせて描こうかと思いましたが、描いてみるとほぼ重なって識別不能になったので描いていません。
・計算結果
これが待ちに待った計算結果です! 積分器の組合せ6通り全てについて、測定しました。
積分器の組合せ |
πの計算結果 |
1-2-3 |
3.138 |
1-3-2 |
3.139 |
2-1-3 |
3.138 |
2-3-1 |
3.139 |
3-1-2 |
3.140 |
3-2-1 |
3.139 |
誤差 0.1〜0.2% ってとこですかね。思っていた以上の精度がでました。
ちなみに、測定を繰り返し行ってもそれほど値のばらつきはありませんでした。
ばらつきが大きいようなら、たくさん測定して分散を求めようと思っていたのですがやめました。
- 戻る