シーケンス制御ってどんなことするの?リレーでどうやって計算をするんだろう。
ディジタルな部品と違って、なかなか複雑な構造をしているリレー。その演算方法について少しずつ解説していこうと思います。
こんにちは。Jinです。皆さんいかがお過ごしでしょうか。
今回は前回に引き続きリレー式電卓の解説をします。特に今回からはその構造について詳しく解説していこうと思いますので、目に焼き付けてみてくださいね。
前回はこの電卓やリレーの基礎知識を解説しました。チェックしてみてください。
また今回紹介する基板のうち、入力機やデコーダーはJLCPCBにて発注を行っていますので、是非チェックしてみてください!以下は発注方法になります。
リレーによる論理ゲートの構成
シーケンス制御の制御法を用いた電卓であっても、基本的な構成は論理回路であり、その論理ゲートをリレーで構成することにより電卓を実現しています。
リレー単体の論理ゲート
それでは初めに、リレー単体の素子でどのようなゲートが構成されているか見ていきましょう。
リレーを回路図で記すと、下のようになります。
リレーのコイルがあり(左)、コイルに電流を流すと右のスイッチが開閉します。
リレーには導通していない時(ノーマル状態)にオープンな接点であるノーマルオープン(NO)と導通していない時にショート状態な接点であるノーマルクローズ(NC)の2つの接点があります。
それではリレーのコイルに導通していない状態で出力はどうなるか見てみましょう。
これは上の画像と全く同じ回路図ですが、入力(A)が0の時のリレーの出力(Q1, Q2)を見ています。
この図からは先ほど説明したとおりに、入力が0であればNOであるQ1の出力も0で、NCであるQ2の出力は1になることが分かります。
それでは入力を1にしてみたらどうでしょうか。
リレーに入力を受け取ると、電磁力による物理的な開閉が行われ上のようにスイッチが動きます。
ここでNOであるQ1も入力と同じ1、NCであるQ2は0となっていることが分かります。
この状態ですが、論理ゲートの何かと似ていると思いませんか?
実はこれ、NOはバッファゲートとNCはノットゲートと等価な働きをしているのです。
リレーで構成した論理ゲート
それでは以上の性質を利用した様々なリレーによる論理ゲートを見ていきましょう。
これはリレーを使用したORゲートになります。
NOを2つ並列に接続すると、どちらかが入力された場合出力するというORゲートが構成できます。
真理値表は書いていませんが、書いて確かめてみるといいかもしれませんね。AやBはそれぞれ別のコイルに入力を入れ、接点が動くように設定します。
次にリレーを使用したANDゲートを示します。
こちらはORゲートとは対象的で、次は直列にAとBのNOを接続しています。これによってAとBどちらも入力されたときに出力がHIGHになるANDゲートを構成できます。
それではもっと複雑なモノを見てみましょう。
これはXORゲートです。
AとBのNOとNCが交互に直列接続されたものを並列に接続しています。これによってAとBの排他的な論理和をとることが出来ています。
これに少し手を加え、NOのみの直列接続とNCのみの直列接続をそれぞれ並列につなげると、下のようにXNORゲートを構成することも可能です。
入力機の仕組み
それでは以上に解説した論理ゲートを使用して電卓のパーツの構成を一つ一つ見ていきましょう。
1~9と+、ーのスイッチそれぞれの入力を10進数で受けます。これは青軸のメカニカルを使用して現在作成中です。
キースイッチは一瞬だけ入力をするプッシュタイプのスイッチになりますので、エンコーダに自己保持機能を持たせています。
この回路だけ見るとあまりシーケンスの詳しい内容はないのですが、強いて言うとクリア入力をNCで受けているところです。
VCCは前パーツ共通ですので、クリアスイッチをNC入力で反転させ一度電源を落とせるようにすることで、すべてのパーツでリセットをかけられるようにしています。
次のパーツが担う自己保持もすべてクリアのボタン一つでリセットが出来るのは非常に単純ですが、分かりやすいと思います。
この基板の設計は下のKiCADのカテゴリーの設計例にあげて解説しています。ぜひチェックしてみてください。
またJLCPCBにて発注をしていますので、併せて確認してみてくださいね。
エンコーダー・自己保持回路の仕組み
これは非常に複雑なのですが、少しわかると全部わかるような回路になっています。
本来論理ゲートで構成したエンコーダを先に見ておくと分かりやすいかもしれません。
エンコーダは論理ゲートで示すと次のようになっています。
これをもとに、以下がエンコーダと自己保持を合わせた回路になります。
1~9の10進数のうち、2進数の各ビットに含まれる部分を抽出してORで足し合わせているという構造になっています。
+や-の入力があると、ビットがAからBに振り分けられているのが分かると思います。これは後の加算器に入力する端子で、Aの付くビットが加算される側、Bの付くビットが加算する数ということになります。
また+と-のNORに並列にリレーのNOが接続されているのが分かります。
これが一度リレーをONにしたあとに、そのリレーのノーマルオープンで永続的にリレーをONにさせ続けるようにする自己保持回路になっています。
エンコーダはこれらを自己保持した信号が永続的に加算器に送られ続けるといった信号の流れになっています。
ここでは省略されていますが、加算器に向かうバスに-の自己保持から来る信号も実は含まれており、次回解説する補数表示によって加算する側の数を-にするための信号線になります。
まとめ
いかがだったでしょうか。今回の回路はリレー式電卓の一例であり、全てがこのように動いているとは限りません。
特に次回説明する加算器では、並列加算器を用いていますが直列加算器を用いることがほとんどだと思います。
ただ、このようにリレーによるシーケンスでスイッチのON/OFFを繰り返すことによって演算していることは全く同じで、これが基本的な回路となると思います。
なかなか上手いように出来ていますよね。次回説明する加算器などを見たらもっと感動すると思いますので、是非チェックしてみてください!!(現在執筆中です…)
またJLCPCBのサイトも是非チェックしてみてください!!
なにか分からないところがあったり、補足が必要だったりした場合にはコメントにてお知らせ頂けると幸いです。
それではまた、GoodBye!!