25 よ し ル又 - 三ロ を ム ゲ ス 一丁編 章一 第 ~ こでは『サーブ編』と題して、まずは基本となる、ボールを打ってから飛ぶ様子をシ ミュレーションします。これべースにして、色々な機能をつけてみたいと思います。 5 ユ運動方程式を立てる 図 5.1 を見てください。高さん ( = ″ ( 0 ) ) から、角度日 [ 。 ] でボールを vo[m/s] で打ち込ん だと仮定します。ただし、ボールの重さを m[g] 、重力加速度はⅵ m / s2 ] 、空気抵抗は考え ないこととします。このときのボールの運動方程式を立てます。 5.1 ユ横方向、縦方向に分解して考える まずは、ボールにかかっている力を、それぞれ横方向、縦方向に分解します。このとき、 横方向の動きをェの、縦方向の動きを″のという関数で表すことにします。 まず、縦方向朝方向 ) について、運動方程式を立てます。縦方向には、ボールが上がる 力と重力がかかっていると言えます。したがって、式 ( 5.1 ) のようになります。 d2 ) ー mg dt2 d2 ) 卍 2 ( 5.1 ) d2 禛 ) dt2 dt2 0 COS 0 0 Sin 0 9 0 ボールを打って飛ぶ様子 図 5.1
23 ・テニスコートを横から見た、ボールの様子を映し出します。 ・オペアンプの電源電圧は土 5 [ V ] で使用します。 まずは全体の基本方針を決めます。全体的に、以下の様な仕様にします。 4.1 基本設計 ムを実現する方法について、深く掘り下げていくことにしましよう。 さて、長い前振りも終わったので、 こから本題 ! 。アナログコンピュータでテニスゲー 第 4 章テニスゲームを作ろう ! まりにも細かい判定をさせないといけない場合はマイコンで判定させるといった方 本質的には、ボールのシミュレートはアナログコンピュータのみで構成しますが、あ 速度も決められるようにします。 ローラを作ってみます。打っときの速度 ( パワー ) は一定としますが、気が向いたら ・プレーヤーは、『角度調整』と『打っボタン』でボールを決められるようなコント といけないかもしれません。 し、ボールを打った時の高さは超えないように、縦方向のスケーリングは変えない 10 マス x 10 マスなので、その中にコートが収まるようスケーリングします。ただ 実際のテニスコートの縦方向の長さは 23.77 [ m ] 、使用するオシロスコープの画面は テニスをさせるには、次の動作が必要になってきます。 のイラストを元に考えてみましよう。 まずは、テニスゲームを実現するには、何をする事が必要なのかを考えてみます。図 4.1 4.2 テニスゲームを作るには、何が必要か ? 法を取っていこうと思います ( ごめんなさい w ) 。 ( 1 ) ( 2 ) ( 4 ) サープを打っ角度、速度、最初の高さを調節して、ボールを打っ動作。 ボールが地面に着いたら、跳ね返る動作。 ( 3 ) ボールを打ち返す動作。この時もボールを打っ角度、速度を調整して打ち返す必要が あります。 コート外 ( 画面外 ) に飛び出した場合、 ( 1 ) の状態に戻る。この時のサーフ。権の移行も 行っ。
2.4 微分方程式を解くということ ただし、ボールは如の高さから落下させるものとし、初速は 0 [ m / s ] ( 手はそっと離すだ け・・・ ) とします。この時の時間に対するボールの位置〃のを求めるとします。 ボールの動きを求めるには、まずボールに働いている力をすべて書き出します。 瞬間的にボールを見た場合、ボールには常に重力加速度虱 = 9.8 [ m / s2]) の力が働いてい ートンの運動方程式は、働く力を ます。でニュートンの運動方程式の登場です。 お [ N ] 、加速度を頃 m / s2 ] 、カが働く物体の質量を m [ kg ] とすると、 を = ma の関係があります。 4 ページ目でも話をしたとおり、加速度は距離の 2 階微分なので、 を = m 7 d2 禛 ) dt2 ( 2 ・ 1 ) と書くことができます。 ボールには重力がかかっているので、 ( 2 ・ 2 ) お = ー mg したがって、式 ( 2.1 ) 、式 ( 2.2 ) より、 d2 〃の 卍 2 d2 禛 ) dt2 このように、物理現象を数式で表すことをモデル化といいます。 物理現象をシミュレーションするまでの一連の操作をまとめると、 ( 1 ) 物理現象から微分方程式を組み立てる ( 2 ) 微分方程式を解く ( 3 ) 解けた式を基にシミュレーション ( 4 ) さらに厳密なシミュレーションにするために微分方程式を修正し、 ( 2 ) に戻る の操作を行います。 ( 2 ・ 3 ) ¯mg ( 2 ・ 4 ) 2 4 微分方程式を解くということ では微分方程式を解くということは一体どういう事でしよう ? 。 「微分方程式を解く」ということは、「微分方程式を微分表現が混ざっていない状態まで 十算 ( 変形 ) すること」を言います。言い換えれば、「関数ェのはどんな形をしているのか を求める操作」ということです。 一三ロ
6 0 図 2.4 2.2 微分方程式とは 第 2 章 d2 ) dt2 ボールの垂直落下を考えてみる 微分方程式とは何だ ? さて、今度は微分方程式とは何でしよう ? 。簡単に言ってしまえば、「微分が混ざってる 方程式」「微分で表されてる方程式」です。 ・・つてそのままやないか ~ い ! ! ってお思いでしよう。 でもそのままの意味です。方程式の例を挙げると、こんな感じ↓。 ・・ね ? 、そのままでしょ ? wwwwwo dt2 d2 ) CI dx(t) + 夘 ) = 0 十わ dx(t) では実際に、例を挙げて、微分方程式を立てる方法について話をしましよう。 の状態」を表していると言えます。 のと話をしました。つまり、微分が混ざっている微分方程式は「瞬間的な時間でみた動き 微分はある瞬間的な時間 ( またはある一部分、領域 ) を見た時の動き ( 変化量 ) を表したも では果たして、微分方程式の意味とは何でしよう ? 。 みる ~ 2.3 微分方程式の意味とは ? ~ 物理現象を数式の目でみて 2.3.1 モデル化 簡単にボールの垂直落下を手本にしてみます。 図 2.4 にその様子を絵にしてみました。
アナログコンヒ。ュータを組み立てる 5.3 オシロスコープ 27 XY モードで観測 d2 ) dt2 Vo Si11 0 式 ( 5.3 ) 、式 ( 5 ・ 4 ) を、 ェ方向について CHI CH2 。ェでスケーリングします。式 ( 5.3 ) において、数値となっている dy(t) 図 5.2 ボールをシミュレートする回路 物理量はありませんので、ェの→ X(t) の変数変換のみ行います。変換後の式は以下のよ うになります。 d2X(t) dt2 ( 5 ・ 8 ) 次に初期値について変数変換します。速度の初期値は c 。 s0 [ m / s ] なので、スケーリン グすると a71vocos0[V/s] となります。したがって、初期値は、以下のようになります。 dX(t) む 0 COS 0 1 ( 5 ・ 9 ) 5.3 アナログコンピュータを組み立てる 以上をふまえて、アナログコンピュータを組み立ててみます。 = = 1 / 10 [ V / m ] とします。角度。 ] は 30 , 45 , 60 鬥と変えてやってみます。 今回はお試しで、初期位置ん = 0 [m] 、初速物 = 20[m/s] 、スケーリングファクタは 初期位置ん、初速、スケーリングファクタ , を決めてみます。 初期値やスケーリングファクタをいろいろ決めてみる 5.2 に回路図を示します。 解くアナログコンヒ。ュータと″のを解くアナログコンピュータをそれぞれ用意します。図 ボールの動きは、縦方向、横方向それぞれの微分方程式を解く必要があるため、ェのと
26 第 5 章テニスゲームを設計しよう ~ サープ編 ~ ただし、ボールは角度 0 [ 。 ] で、速度 vo[m/s] で打ち出すので、縦方向には vosin0[m/s] の 初速がかかっていることになります。したがって初期値は dy(t) = sin 0 [m/s] t=0 ( 5 ・ 2 ) 次に、横方向は方向 ) について、運動方程式を立てます。今回、空気抵抗を考えていな いため、一度初速を与えれば減衰することはない、等速直線運動という事になります。し たがって、飛んでいるボールにはカは加わっていないため、式 ( 5.3 ) のようになります。 d2 ェの dt2 d2 ) dt2 ( 5 ・ 3 ) 次に初速ですが、縦方向の時と同じように考えると、横方向にかかる初速は c 。 s 研 m / s ] 〃方向について Y の = ) となるような , Ⅳ / m ] とします。 行います。ェ方向、″方向の物理量のスケーリングファクタを、それぞれ X ( の 先ほど立てた微分方程式を基に、アナログコンピュータで演算するためスケーリングを 5.2 スケーリング = cos 0[m/s] dx(t) となります。したがって初期値は ( 5.4 ) 物理量は重力加速度ⅵ m / s2 ] なので、これをスケーリングすると、住ⅵ V / s2 ] となりま 式 ( 5.1 ) 、式 ( 5.2 ) を、でスケーリングします。式 ( 5.1 ) において、数値となっている す。したがって、以下のようになります。 d 午の 市 2 1 ( 5 ・ 5 ) 次に初期値について考えます。速度の初期値は cos 日 [ m / s ] なので、スケーリングする と c 。 s 日Ⅳ / s ] となります。したがって速度の初期値は、以下のようになります。 dY(t) また、初期位置ん [ m ] も同様に ー sin 0[V/s] 1 1 0 ( 5 ・ 6 ) ( 5 ・ 7 )
2 第 1 章イントロダクション はて、テニスゲームを作ろうとか意気込んでは見たものの、どうやって実現しましよう かね w 。 理屈としては簡単です。ボールの動きを、運動方程式で表して、アナログ電子回路のみ で作ればいいのです。 おいおい ! 、「ねっ ? 、簡単でしょ ? 」みたいなノリで言うんじゃない たします。 今回は、その前編的な内容です。まあ長い話になると思いますので、 そんなわけで、なるべくわかりやすいよう、ぼちぼち作って解説したりしていきます。 と . 思っている人、し、まづーね ? 。ほんと俺なんてこと言っちゃったんでしょに・ ( , ) ・ よろしくお願いい