図 4.4 コンパレータ回路 4.2.3 演算プロックの切り替え ベル合わせが容易になります。 に繋げれば、出力がオープンと GND というレベルになりますので、 18 ・と行きたいところですが・・・ 第 4 章 + 5V 跳ねる回路を製作しよう 地面座標 3 2 十 -5V + 5V LM311 7 GND リの > 地面座標 : ' 0 ' y(t) く地面座標 : ' 1 ' ' 1 ・ : + 5 Ⅳ ] ℃・ :O[V](GND) ロジック回路とのレ 地面との衝突判定用のコンパレータからの信号を受け取り、演算プロックを切り替え ます。 13 ページでも述べたとおり、演算と追従を繰り返します。そして表 4.1 をみると、演算 モードは { XI , XO } = { 0 , 1 } 、追従モードは { XI , XO } = { 1 , 0 } になっています ( というか、あ えてそうしました w ) 。すなわち、コンパレータからの信号が入る度に { 0 , 1 } → { 1 , 0 } → ・と繰り返すようなロジック回路があればよいわけです。 { 0 , 1 } → { 1 , 0 } → そこで T フリップフロップ ( 以下、 T-FF) を用います。 T-FF は 1 つのクロック入力 (CK) と 2 つの出力 (Q 、 Q) を持っフリップフロップ回路です。つまり、コンパレータか ら T-FF 、 T-FF から各演算プロックへ制御信号を送る構成にすれば良いわけです。 T-FF というロジック IC はありませんので、 JK フリップフロップ ( 以下、 JK-FF) で 実現します。 JK-FF は入力の J と K を常に ' 1 ' にしておけば、クロック信号が入る度に出 カ Q 、 Q の論理がが反転します。 あとは Q 、 Q を、プロック A とプロック B に制御信号として与えればよいわけです。 の時、プロック A とプロック B が反対の動作になるように制御線を入れ替えます。図 4.5 に制御回路部分を抜粋した回路図を示します。 こまでのやりとりを踏まえ、早速実験 ! ・ 4.3 実験
4.2 回路を設計する 17 XI SW3 SW2 SWI XO テコーダ回路 ( 率直に設計した Ver. ) 図 4.2 XI 10 SW3 1 SW2 12 13 12 13 11 11 SW 1 器 PI テコーダ回路 (NAND ゲート Ver. ) 図 4.3 1 XO が成り立ちます。 これらを率直に回路に落としこむと、図 4.2 のようになります。 先ほど SW2 は XI と同じと述べたのでそのまま繋いでも良いのですが、入力と出力との 間に一度何かしらのバッフアを入れたいので、 SWI のロジックを組むために使った NOT ゲート ( インバータ ) に、もう一度 NOT ゲートを繋げて元に戻したものを出力させてい ます。 このままでも問題ないのですが、わざわざ AND ゲートと NOT ゲートを用意するのは 面倒です。そこで、これを NAND ゲートのみで構成して使う部品の種類を節約します。 図 4.3 に完成したロジック回路を示します。 4.2.2 地面との判定 地面との判定にはコンパレータを用います。地面に相当する電圧と比較して、ボールの 高さが地面より下回った場合、 ' 1 ' が出力されるようにします。図 4.4 にコンパレータ回路 を示します。 コンパレータには LM311 を使用します。 LM311 は出力がオープンコレクタのコンパ レータですが、エミッタ側 ( 1 番ヒ。ンに相当 ) もオープンになっています。 1 番ピンを GND
第 3 章テニスゲームを設計しよう ~ 跳ねる編 ~ 14 プロック A d2 の dt2 制御信号 既 4 の 制御回路 十 !JB(t) 地面座標 d2 如の dt2 制御信号 地面との衝突判定 ( コンパレータ ) 加算器で合成 ( 反転加算回路で加算させた後、 反転させているので -1 倍であることに注意 ) d 伽の プロック B 図 3.2 跳ねるを実現する回路 プロック A 演算 追従 演算 追従 保持 初期設定 時間 4 追従 演算 追従 演算 保持 初期設定 プロック B 時間 跳ねる動作 プロック A からプロック B への物理量のやり取り プロック B からプロック A への物理量のやり取り 初期値設定 図 3.3 タイムチャート
第 1 章イントロダクション 2 横方向 x(t) 縦方向 y ( t ) 『サープ編』では放物運動シミュレート 図 1.2 1.3 前回、前々回を踏まえた上で さて、『サープ編』にて微分方程式をアナログコンピュータでの解く方法を解説しました ので、本書では、さらなる応用編について述べてみたいと思います。 それは、アナログコンピュータとディジタルコンピュータの融合 ! 。 って、ディジタル使ったらタイトル詐欺じゃん ! そう思ってる方、いらっしゃいますよね ? 。 まあ細かいことは気にしない気にしない ( ヾノ・の・ ) って言っても、メインになるのはアナログコンピュータで、ディジタル要素はあくまで 補助として使います。 微分方程式が解くのが得意なアナログコンピュータ、条件判断や反復制御、複雑なシーケ ンスが得意なディジタルコンヒ。ュータを融合させた、ハイプリッド・アナログコンビュー タというのを今回の題材にしていきます。 ハイプリッド・アナログコンピュータの構成を図 1.3 に示します。ディジタルコンピュー タを使うことで、直接 D / A コンバータなどを使用してアナログ電圧を与えることもできま すし、アナログコンピュータの出力側にコンパレータで電圧を比較してディジタル信号と して送ることや、 A/D コンバータで直接電圧値を読み取ることもできます。また、アナロ グコンピュータからの情報を素に、ディジタルコンピュータからアナログコンピュータを 制御することもでき、さらに幅の広い演算ができるようになります。 おし、 0
12 第 3 章テニスゲームを設計しよう ~ 跳ねる編 ~ くなるようにします。ボールのエネルギーに直接関わってくるのは速度になりますので、 跳ねる前と後で速度が減衰していくようにします。したがって、式 ( 3.2 ) のような関係にな ります。 ( 3.2 ) 3.2 3.2 ユ + 1 ( 0 ) = 地譚 ) もう少し踏み込んで回路化してみる 跳ねるという反復運動を回路にするには 跳ねるという動作をさせるには、回路で次の動作をさせることが必要です。 ( 1 ) ボールの放物運動を演算させる。 ( 2 ) ボールが地面に当たった事を判定する。 放物運動の演算 これらの要素について、詳しくみていきましよう。 演算回路を切り替える回路 ・れ回目の物理量をれ十 1 回目を演算する回路に引き継ぐ回路 ・地面との判定回路 放物運動の演算をする回路 ( れ回目用とれ十 1 回目用の 2 系統用意する ) これを実現させるためには、大きく分けて 4 つの要素を作ります。 っと、ざっとこんな感じです。 ( 4 ) 以降繰り返し。 ( 3 ) 地面に当たった時の物理量を、次の運動を演算する回路に渡して演算させる。 力する』とすることで判定させます。 そこで、コンパレータを用いて『地面と衝突』 = 『ある電圧以下になった場合に信号を出 ボールが跳ねることは、すなわち地面に当たった事を判定しなくてはなりません。 地面との衝突判定 うな演算をさせます。 用意します。プロック A とプロック B を交互に動作させることで、あたかも跳ねているよ 下、プロック A という ) とれ十 1 回目用の回路 ( 以下、プロック B という ) 、 2 つの回路を これは前回やったことであり、図 2.3 の回路そのものです。これをれ回目用の回路 ( 以