在庫確認・見積は今すぐ フォームで依頼する 写真の添付もOK / 24時間受付
機械 ・ 14 / 16

シーケンス制御とリレー回路

読み終えると、こうなる

制御盤の中の配線を見たとき、それが「自己保持」「インターロック」のどちらの役割を持つ回路かを、接点の配置だけで読み解けるようになる

  • リレーのa接点(常開)・b接点(常閉)の動作原理を理解し、自己保持回路(並列接続)やインターロック回路(b接点の直列挿入)の接点配置から動作を説明できる
  • シーケンス制御とフィードバック制御の違いを、制御の進み方の観点から説明できる
  • 論理回路の基本ゲート(AND・OR・NOT)とリレー接点の対応関係を理解して真理値表・タイムチャートから出力を求められ、排他的論理和(ExOR)・否定論理和(NOR)を含む論理演算、2進数⇔10進数・2進数⇔8進数・2進数⇔16進数の相互変換、ブール代数の法則(分配則・吸収則・ド・モルガンの定理など)を使った論理式(積和形式・和積形式)の簡単化もできる
  • コンピュータを構成するハードウェアを入力装置・出力装置・記憶装置・中央処理装置(制御装置・演算装置)に機能面から分類でき、主記憶装置に使われる半導体メモリ(RAM=DRAM/SRAM、ROM、EPROM、EEPROM)を、揮発性か不揮発性か・書き換えの可否・消去方法の違いで説明できる
考えてみよう

制御盤の起動ボタンを、ほんの一瞬だけ押してすぐ指を離しても、モータは回り続ける。 ボタンに電気を流し続けているわけでもないのに、回路はまるで「押されたこと」を 覚えているかのように動作を保っている。

一方で、正転用と逆転用、2つのボタンを同時に押しても、モータは決して同時に 両方向へは回らない仕組みになっている制御盤もある。

この「覚える力」と「同時に動かさせない力」は、どちらもリレーという単純な部品の 接点の組み方だけでつくられている。このトピックを読み終えるころには、 制御盤の配線を見て、それが自己保持なのかインターロックなのかを、 接点の配置だけで読み解けるようになっている。

種明かしは、あらかじめ定めた順序・条件で動くシーケンス制御の考え方と、 その最小部品であるリレーのa接点・b接点の組み合わせにある。

シーケンス制御とは — あらかじめ決めた順序・条件で進む制御

前のトピックで扱ったフィードバック制御は、出力を常に測定し、目標値との偏差を 修正し続ける制御だった。これに対してシーケンス制御は、あらかじめ定めた 順序・条件に従って、制御の各段階を逐次進めていく制御だ。

信号機が「青→黄→赤」と順番に切り替わる、洗濯機が「給水→洗濯→すすぎ→脱水」と 工程を進める、制御盤の起動シーケンスがボタン操作の順に段階を踏む——こうした 「次に何をするか」があらかじめ決めた手順表(条件)で決まっている制御が シーケンス制御にあたる。

フィードバック制御は「ずれを常に測って直し続ける」制御、シーケンス制御は 「決めた順序・条件で段階を進める」制御——この2つは制御の考え方そのものが違う。 制御盤の中には両方が同居していることが多く、見分けの軸は「偏差を継続的に 修正しているか」の1点になる。

リレーの基本 — a接点とb接点

シーケンス制御を実際の回路にするための最小部品が電磁リレー(継電器)だ。 コイルに電流を流すと鉄心が電磁石になり、可動接点を吸引して接点を開閉する。

  • a接点(メーク接点、常開):コイルが無励磁のとき開いており、励磁すると閉じる(ON)
  • b接点(ブレーク接点、常閉):コイルが無励磁のとき閉じており、励磁すると開く(OFF)

a接点を複数直列につなぐと、すべてが閉じたときだけ導通するAND動作になり、 並列につなぐと、いずれか1つでも閉じれば導通するOR動作になる。b接点は、 コイルが動作すると回路を切る働きを持つため、NOT(否定)に相当する動作をつくる。

a接点・b接点の判断基準は、必ず「コイルが無励磁のとき」を出発点にする。a接点は 無励磁で開=励磁でON(閉じる)、b接点は無励磁で閉=励磁でOFF(開く)。リレーが 動作した“後”の状態を先にイメージすると符号を逆に覚えやすいので、常に無励磁の状態から考える。

自己保持回路 — 一瞬押しただけで動作を保つ仕組み

起動用の押しボタンPB1(a接点)を押すとリレーRのコイルが励磁される。ここで、 Rの補助a接点をPB1と並列に入れておくと、PB1を離した瞬間にも、R自身の接点を 通る電流経路が残っているため、コイルの励磁は保持され続ける。これが自己保持回路だ。

停止用の押しボタンPB2(b接点)をコイル回路に直列に入れておけば、PB2を押した 瞬間に電流経路そのものが切れ、いつでも保持を解除できる。

例題

押しボタンPB1(起動用)を押すとリレーRが動作し、PB1を離してもRの動作を継続させたい。 リレーRの補助a接点はどのように配置すればよいか——答えは「PB1と並列に接続する」。 直列に接続すると、PB1を離した瞬間に電流経路が切れてしまい、自己保持は成立しない。

インターロック回路 — 同時に動かせない仕組み

正転用リレーRfと逆転用リレーRrのように、同時に動作すると機器の破損や短絡につながる 2つの回路には、インターロックをかける。Rfのコイル回路にRrのb接点を直列に入れ、 同時にRrのコイル回路にもRfのb接点を直列に入れておくと、どちらか一方が動作している間は もう一方のコイル回路が切れ、動作できなくなる。

なぜa接点ではなくb接点を使うのか——「相手が動作しているときは自分が動作できない」 という排他条件は、相手が励磁されたときに開く接点でなければ実現できない。 励磁で開く接点はb接点であり、a接点を使うと逆に「相手が動作しているときだけ 自分も動作できる」という連動回路になってしまう。実務では、この電気的インターロックに 加えて、機械的な機構によるインターロックも併用することが多い。

タイマー(限時継電器)— 時間差をつくる部品

コイルが励磁されてから、あるいは無励磁になってから、一定時間後に接点が動作する リレーをタイマー(限時継電器)と呼ぶ。

  • オンディレイタイマー:コイル励磁後、設定時間が経過してから接点が動作する(遅れてON)
  • オフディレイタイマー:コイル無励磁後、設定時間が経過してから接点が復帰する(遅れてOFF)

制御盤では、モータをY(スター)結線で始動し、一定時間後にΔ(デルタ)結線の 通常運転へ切り替えるY-Δ始動のような、時間差を持たせた切替にオンディレイタイマーが 使われる。始動直後の突入電流を抑えつつ、加速が進んだところで自動的に運転結線へ移行できる。

論理回路の基礎 — ANDゲート・ORゲート・NOTゲートとリレー接点の対応

リレーのa接点・b接点の組み合わせは、実は論理回路という、もう少し一般的な考え方の 具体例そのものだ。論理回路では、入力・出力は「1(ON)」か「0(OFF)」かの2値しか取らず、 その変換規則を表す最小単位が次の3つの基本ゲートになる。

  • ANDゲート(論理積):すべての入力が1のときだけ、出力が1になる
  • ORゲート(論理和):入力のどれか1つでも1なら、出力が1になる
  • NOTゲート(否定):入力を反転させる(1なら0、0なら1)

この3つは、前の節で見たリレー接点の性質とそのまま対応している。a接点の直列接続は すべてが閉じないと導通しない=AND、a接点の並列接続はどれか1つでも閉じれば導通する=OR、 b接点は励磁で開く=NOT——シーケンス制御の回路図が読めれば、論理回路の基本ゲートも 同じ発想で読み解ける。

入力の組合せをすべて書き出し、それぞれに対応する出力をまとめた表を真理値表、 時間の経過に沿って入力・出力がどう変化するかをグラフにしたものをタイムチャートと呼ぶ。 複数のゲートが組み合わさった回路でも、入力から出力へ向かって、ゲートを1つずつ 順番に計算していけば、最終的な出力を機械的に求められる。

ゲートが複数組み合わさった回路を見て身構える必要はない。全体を一気に読もうとせず、 「まず一番手前のゲートの出力を求める」→「その結果を次のゲートの入力として使う」という 順番を、入力側から出力側へ1段ずつ追っていけばよい。ANDは「厳しい条件(全部1)」、 ORは「甘い条件(1つでも1)」というイメージを持っておくと、複雑な組合せでも 取り違えにくい。

例題

2つの入力A・Bに対し、出力X = (AとBのAND) OR (Bの反転=NOT B) という論理回路がある。 A=0、B=0を入力したときの出力Xはどうなるか。

AND部分:A AND B = 0 AND 0 = 0 NOT部分:NOT B = NOT 0 = 1 出力:X = (AND部分) OR (NOT部分) = 0 OR 1 = 1

入力から出力まで、ゲートを1つずつ順番にたどれば、複雑に見える組合せ回路でも 機械的に答えを導ける。

発展的な論理演算 — ExOR・NORと2進数の16進数変換

AND・OR・NOTの3つは論理回路の基本だが、実務やPLC(プログラマブルロジックコントローラ) のビット演算では、これに加えて排他的論理和(ExOR)否定論理和(NOR)もよく使われる。

  • ExOR(排他的論理和):2つの入力が異なるときだけ出力が1になる(同じなら0)
  • NOR(否定論理和):ORの結果を反転させたもの(両方とも0のときだけ出力が1になる)
ExORは「どちらかが1なら1になる」という説明だけを覚えるとORと混同しやすい。両方とも 1を入力したときに出力がどうなるかで検算すると確実——ORなら1のまま、ExORなら0になる。

例題(自作の数値例)

ビットパターン1100と1010のビットごとの論理演算を求めてみる。

  • AND(1桁ずつ両方1のときだけ1):1100 AND 1010 = 1000
  • OR(1桁ずつどちらかが1なら1):1100 OR 1010 = 1110
  • NOR(ORの結果を反転):1100 NOR 1010 = 0001
  • ExOR(1桁ずつ異なるときだけ1):1100 ExOR 1010 = 0110

こうしたビットパターンは、PLCの入出力状態や通信データの一部としてそのまま16進数で 扱われることが多い。2進数を16進数に変換するには、右端から4ビットずつ区切り、 それぞれを0〜Fの1桁に対応づければよい。

11010110(2)1101=D,0110=6D6(16)1101\,0110_{(2)} \rightarrow 1101 = D, \quad 0110 = 6 \quad \Rightarrow \quad D6_{(16)}

基数の変換 — 2進数・10進数・8進数の間を行き来する

16進数への変換はビットのグループ化だけで済んだが、10進数を挟んだ変換にはもう少し 手順が要る。ここでは、2進数・10進数・8進数の3つを相互に変換する基本手順を押さえておく。

2進数→10進数:桁の重みを足し合わせる

2進数の各桁には、右端から20,21,22,2^0, 2^1, 2^2, \dotsという重みがついている。値が1になっている 桁の重みだけを足し合わせれば、10進数の値になる。

101101(2)=25+23+22+20=32+8+4+1=45101101_{(2)} = 2^5+2^3+2^2+2^0 = 32+8+4+1 = 45

10進数→2進数:2で割り続け、余りを逆順に並べる

逆に10進数を2進数にするには、商が0になるまで2で割り続け、そのたびに出てくる余り (0か1)を記録する。最後に、記録した余りを逆順(最後に求めた余りが最上位桁)に 並べ替えると2進数になる。

38÷2=19余り0,19÷2=9余り1,9÷2=4余り1,38 \div 2 = 19 \,\text{余り}\,0,\quad 19\div2=9\,\text{余り}\,1,\quad 9\div2=4\,\text{余り}\,1, 4÷2=2余り0,2÷2=1余り0,1÷2=0余り14\div2=2\,\text{余り}\,0,\quad 2\div2=1\,\text{余り}\,0,\quad 1\div2=0\,\text{余り}\,1

得られた余りは計算した順に0,1,1,0,0,10,1,1,0,0,1。これを逆順に並べ直すと100110(2)100110_{(2)}になる。

「割り算で求めたのだから、求めた順にそのまま並べればよい」と考えると、桁の並びが逆転して しまう。最初に出てくる余りは常に**最下位桁(一番右)**、最後に出てくる余りが**最上位桁 (一番左)**になる——小さな数(例えば10進数の2)で検算すると、2÷2=1余り0、1÷2=0余り1と なり、余りを逆順に並べた「10」が正しい2進数表記(10進数の2)と一致することで確認できる。

2進数⇔8進数:3ビットずつ区切る

16進数への変換が4ビットずつのグループ化だったのに対し、8進数への変換は3ビットずつの グループ化になる。これは8=238=2^316=2416=2^4という指数の違いがそのままグループの幅の違いに なっているからだ。

101110001(2)101=5,110=6,001=1561(8)101\,110\,001_{(2)} \rightarrow 101=5,\quad110=6,\quad001=1 \quad\Rightarrow\quad 561_{(8)}
「2進数のグループ化=4ビットずつ」という16進数変換の手順を、8進数にもそのまま流用しない こと。変換先の基数が2の何乗かを先に確認し、$8=2^3$なら3ビットずつ、$16=2^4$なら4ビットずつ とグループの幅を決める、という理屈で覚えれば、8進数と16進数のグループ幅を逆に使う誤りを防げる。

半加算器と全加算器 — 論理ゲートを組み合わせて「足し算」を作る

ここまで見た論理ゲート(AND・OR・NOT・ExOR)を組み合わせると、2進数の足し算を 行う回路を作れる。この最も基本的な単位が半加算器(half adder)全加算器(full adder)だ。

半加算器は、2つの1ビット入力A・Bを足し算し、和S(Sum)と桁上げC(Carry)の 2つを出力する回路だ。

S=AExORB,C=AANDBS = A \operatorname{ExOR} B, \qquad C = A \operatorname{AND} B

A=0,B=0→S=0,C=0(0+0=00)、A=0,B=1→S=1,C=0(0+1=01)、A=1,B=0→S=1,C=0(1+0=01)、 A=1,B=1→S=0,C=1(1+1=10、2進数の10は10進数の2)——2進数の足し算の結果と ちょうど一致する。

半加算器の名前の「半」は、下位の桁からの繰り上がり(キャリーイン)を受け取る入力を 持たない、という意味だ。1桁目(最下位ビット)の足し算だけならこれで済むが、 2桁目以降は下の桁からの繰り上がりも足し込む必要がある——これが半加算器だけでは 足りず、全加算器が必要になる理由だ。

半加算器を2個と、ORゲート1個を組み合わせると、下位桁からの繰り上がり入力CinC_{in}も 受け取れる全加算器を作れる。全加算器は3つの1ビット入力(A・B・下位桁からの 繰り上がりCinC_{in})を受け取り、和Sと上位桁への繰り上がりCoutC_{out}を出力する。

例題(自作の数値例)

全加算器にA=1、B=1、CinC_{in}=1を入力する。1+1+1=3(10進)=11(2進)なので、 和S=1、繰り上がりCoutC_{out}=1になるはずだ。これを2つの半加算器で確かめる。

1段目の半加算器(AとBを加算):

S1=AExORB=1ExOR1=0,C1=AANDB=1AND1=1S_1 = A \operatorname{ExOR} B = 1 \operatorname{ExOR} 1 = 0, \qquad C_1 = A \operatorname{AND} B = 1 \operatorname{AND} 1 = 1

2段目の半加算器(S1S_1CinC_{in}を加算):

S=S1ExORCin=0ExOR1=1,C2=S1ANDCin=0AND1=0S = S_1 \operatorname{ExOR} C_{in} = 0 \operatorname{ExOR} 1 = 1, \qquad C_2 = S_1 \operatorname{AND} C_{in} = 0 \operatorname{AND} 1 = 0

最終的な繰り上がりは、1段目の桁上げと2段目の桁上げのORで求まる。

Cout=C1ORC2=1OR0=1C_{out} = C_1 \operatorname{OR} C_2 = 1 \operatorname{OR} 0 = 1

結果、S=1、CoutC_{out}=1となり、3(10進)=11(2進)と一致する。

全加算器の出力を求めるときは、いきなり3入力の真理値表を覚えようとせず、「半加算器を 2段通す」という手順に分解すると計算しやすい。1段目でAとBを先に加算し、その和(S1)を 2段目でCinとさらに加算する。桁上げは、1段目の桁上げ(C1)と2段目の桁上げ(C2)の どちらかが1であればOK(OR)——という積み上げ方を覚えておけば、複雑な組合せ回路に 見えても機械的に答えを出せる。

論理式の簡単化 — ブール代数で回路をシンプルにする

論理ゲートを組み合わせた式は、そのままではゲート数が多く、リレー接点の数やPLCの ロジック行数がかさむことがある。ブール代数の法則を使うと、こうした論理式を より少ない項・少ないゲート数に書き換えられる。実務では、これがそのまま配線数の 削減やプログラムの見通しの良さに直結する。

代表的な法則は次のとおり。

  • 分配則A(B+C)=AB+ACA\cdot(B+C) = A\cdot B + A\cdot C(数式の分配法則と同じ形)
  • 吸収則A+AB=AA + A\cdot B = A(Bがどうであれ、Aが1なら全体が1、Aが0ならABA\cdot Bも0で結局Aのまま)
  • 吸収則(もう1つの形)A+AˉB=A+BA + \bar{A}\cdot B = A + BAˉ\bar Aという条件だけが外れ、Bの項自体は残る)
  • ド・モルガンの定理AB=Aˉ+Bˉ\overline{A\cdot B} = \bar A + \bar BA+B=AˉBˉ\overline{A+B} = \bar A \cdot \bar B(ANDとORが、否定を挟むと入れ替わる)
$A+A\cdot B=A$と$A+\bar A\cdot B=A+B$は見た目が似ているため混同しやすい。前者はBが 完全に消える、後者は$\bar A$という条件だけが外れてBの項はA+Bという形で残る——迷ったら $A=0$を代入して検算する。$A+\bar A\cdot B$に$A=0$を入れると$0+1\cdot B=B$、 $A+B$に$A=0$を入れても$B$になり一致する。もし$A+\bar A\cdot B=A$が正しいなら $A=0$のとき常に0になるはずだが、実際にはBの値次第で1にもなる——この検算で 2つの吸収則を区別できる。

例題(自作の数値例)— 積和形式を簡単化する

論理式 F=ABC+ABCˉ+AˉBCF=A\cdot B\cdot C+A\cdot B\cdot \bar C+\bar A\cdot B\cdot C を積和形式のまま 簡単化してみる。

まず第1項と第2項に共通するABA\cdot Bでくくる。

ABC+ABCˉ=AB(C+Cˉ)=AB1=ABA\cdot B\cdot C+A\cdot B\cdot \bar C = A\cdot B\cdot(C+\bar C) = A\cdot B\cdot 1 = A\cdot B

C+Cˉ=1C+\bar C=1(補元則:どちらか一方は必ず成り立つので、全体は常に真になる)を使った。 ここまでで式は F=AB+AˉBCF=A\cdot B+\bar A\cdot B\cdot C に縮まる。残った2項に共通するBで さらにくくる。

F=B(A+AˉC)F = B\cdot(A+\bar A\cdot C)

カッコの中は、さきほど見た吸収則A+AˉC=A+CA+\bar A\cdot C=A+Cの形そのものだ。これを適用すると、

F=B(A+C)=AB+BCF = B\cdot(A+C) = A\cdot B+B\cdot C

3項あった式が2項になった。B=0B=0なら元の3つの項はすべて0になるので必ずF=0F=0B=1B=1ならF=A+CF=A+C(吸収則の結果)になる——この2点を確かめれば、簡単化した式が 元の式と常に同じ値を返すことを検算できる。

例題(自作の数値例)— 和積形式を簡単化する

積和形式だけでなく、OR項をANDでつなぐ和積形式の簡単化にも同じ分配則が使える。 G=(A+B)(A+C)G=(A+B)\cdot(A+C)を展開すると、

G=AA+AC+AB+BC=A+AC+AB+BCG = A\cdot A+A\cdot C+A\cdot B+B\cdot C = A+A\cdot C+A\cdot B+B\cdot C

AA=AA\cdot A=Aを使った)。ここでA+AC+ABA+A\cdot C+A\cdot Bの部分は、吸収則A+AX=AA+A\cdot X=Aを 2回使うとAだけに縮む。結果、

G=A+BCG = A+B\cdot C

(A+B)(A+C)(A+B)\cdot(A+C)という和積形式2項の式が、A+BCA+B\cdot Cという積和形式1項+1項の式に 変わった——見た目の形(和積か積和か)が変わっても、真理値表で全パターンを確認すれば 両辺は常に一致する。

簡単化の手順に迷ったら、①共通の項でくくれないか探す、②くくった残りに吸収則・補元則 ($X+\bar X=1$、$X\cdot\bar X=0$)が当てはまらないか確認する、③それでも簡単にならない 式にはド・モルガンの定理を使って否定の位置を動かせないか考える——という順番で 機械的に試していけばよい。最後は必ず、簡単化前後の式にA・B・Cの全パターン(それぞれ 0/1で計8通り)を代入し、両辺が一致するかを検算する。

コンピュータの構成とICメモリ — 論理回路の先にある記憶装置

ここまで見てきた論理ゲート・真理値表・2進数は、実は身近なコンピュータそのものを 動かしている土台でもある。制御盤のPLC(プログラマブルロジックコントローラ)も、 中身は小型のコンピュータだ。

コンピュータを構成するハードウェアは、機能面から次の4つに分類される。

  • 入力装置:外部から入力された情報を、コンピュータの処理に適した形式(電気信号)に変換して主記憶装置に送る
  • 出力装置:内部で処理・記憶したデータを、人間が認識できる形(プリンタ・ディスプレイなど)で外部へ伝える
  • 記憶装置:主記憶装置(処理中のデータやプログラムを一時的に置く)と補助記憶装置(電源を切っても長期保存したいデータを置く)に分かれる
  • 中央処理装置(CPU):主記憶装置の命令を1つずつ取り出して解読する制御装置と、四則演算・論理判断(大小比較や一致判定)・論理演算(AND・OR・NOTなど、この節で見てきた演算そのもの)を行う演算装置からなる
制御装置が命令を「解読して各装置に指示を出す」役割、演算装置が「実際に計算・判断する」役割——この2つの分業が中央処理装置の中身だ。演算装置が行う論理判断・論理演算は、まさにこのトピックの前半で見たAND・OR・NOTゲートの動作そのものであり、シーケンス制御の論理回路とコンピュータの内部動作は、同じ「2値(1・0)の組み合わせで判断する」という土台の上に成り立っている。

ICメモリ(半導体メモリ)— RAMとROMの違い

主記憶装置には、IC(集積回路)メモリと呼ばれる半導体メモリが使われる。大きく RAMROMの2系統に分かれ、それぞれさらに種類が分かれる。

RAM(Random Access Memory)は、アドレス(番地)を指定してデータの読み書きが 自由にできるメモリだが、電源を切るとデータが消える揮発性メモリだという共通点がある。

  • DRAM(Dynamic RAM):キャパシタ(コンデンサ)に電荷を蓄えることでデータを記憶する。 電荷は放っておくと自然に放電してしまうため、定期的に電荷を補充するリフレッシュ動作が 必要になる。1ビットあたりの回路がシンプルなため高集積・低コストにしやすく、コンピュータの 主記憶装置(メインメモリ)に広く使われる。
  • SRAM(Static RAM):フリップフロップ回路(論理ゲートの組み合わせで1ビットの状態を 保持する回路)でデータを記憶する。DRAMのようなリフレッシュ動作が不要で高速に読み書き できる一方、1ビットあたりの回路規模が大きくなるため、同じ容量ならDRAMより集積度が 低くコストも高くなりやすい。読み書きの速度が特に重視されるキャッシュメモリなどに使われる。

ROM(Read Only Memory)は、基本的に読み出し専用で、電源を切ってもデータが消えない 不揮発性メモリだ。だが「書き換えが一切できない」タイプだけでなく、書き換え可能な 派生型もある。

  • マスクROM:製造の段階で記憶内容が固定され、後から書き換えることはできない
  • EPROM(Erasable Programmable ROM):利用者がデータを書き込める上、パッケージの 窓から強い紫外線を照射することで記憶内容を消去し、再書き込みできる
  • EEPROM(Electrically Erasable Programmable ROM):名前の「Electrically」が 示すとおり、印加する電圧を工夫することで電気的に消去・再書き込みができる。専用の 紫外線照射装置が不要で、機器に実装したまま何度でも書き換えられるため、設定値やプログラムを 保持したいPLCや家電製品の制御回路に広く使われる
EPROMとEEPROMは名前が非常に似ているため、消去方法まで同じだと錯覚しやすい。名前の中の 「Electrically(電気的に)」の有無に注目すると区別しやすい——EPROMは紫外線で消去、 EEPROMは電気信号で消去、という対応が名前の構造そのものに埋め込まれている。

例題(自作の数値例)

工場の制御盤にあるPLCが、電源を切っても運転パラメータ(タイマーの設定時間や、 しきい値の数値など)を保持し続けたいとする。この用途に適したメモリはどれか—— 答えは「EEPROM」だ。マスクROMは製造後に書き換えられず、DRAM・SRAMは電源を切ると データが消える揮発性メモリのため、いずれも運用中に何度も書き換わる設定値の保持には 向かない。EEPROMは不揮発性でありながら電気的に何度でも書き換えられるため、この 用途に最も適している。

制御盤の中で、論理回路が「今この瞬間の判断」を行い、ICメモリが「電源を切っても 覚えておきたい情報」を保持する——この2つが組み合わさることで、シーケンス制御は 単純なリレー回路から、プログラムで書き換え可能なPLCへと発展してきた。

なぜ制御盤にこの仕組みが積み重なっているのか

制御盤の内部を見ると、自己保持回路とインターロック回路とタイマーが何段にも 組み合わさって、複雑に見える配線ができあがっている。だが1つ1つは、 a接点・b接点をどう配置するかという単純な選択の積み重ねにすぎない。

「押しボタンを離しても動作を保ちたい」なら自己保持(自分のa接点を並列に)、 「相手が動いている間は自分を止めたい」ならインターロック(相手のb接点を直列に)、 「一定時間おいて次の段階へ進みたい」ならタイマー——シーケンス制御の回路図は、 この3つの基本パターンの組み合わせとして読み解ける。

冒頭の「一瞬押しただけでモータが回り続ける仕組み」の答え合わせは、 理解度チェックの最後の問題でしてみよう。

出題者のワナ — ここで受験者を転ばせにくる

この論点は、知っているだけでは足をすくわれる。試験でよく仕掛けられる崩し方を、先に知っておこう。

  1. a接点とb接点の、コイル励磁時の動作方向を取り違える

    なぜ引っかかる「a接点=通常開いている」「b接点=通常閉じている」という無励磁状態の定義と、「励磁したときにどちらがONになるか」という動作結果を混同しやすい。特に自己保持やインターロックの回路図で、リレーが動作した“後”の状態をイメージすると符号を逆に覚えやすい。

    見破り方必ず「コイルに電流が流れていない(無励磁)ときの状態」を基準に考える。a接点は無励磁で開=励磁でON(閉じる)。b接点は無励磁で閉=励磁でOFF(開く)。この無励磁を出発点にする癖をつければ取り違えない。

  2. 自己保持回路で、保持用の接点を並列ではなく直列に配置してしまう

    なぜ引っかかる起動ボタン(PB1)と保持用のリレー自身のa接点は「どちらかがONならコイルへの電流経路が保持される」というOR条件のため並列接続が正しいが、直列だと考えると回路がAND条件になり、PB1を押している間しかリレーが動作しない(自己保持にならない)。

    見破り方「PB1を離した後もコイルへの電流経路が途切れないか」を回路図でたどって確認する。並列なら、PB1が開いてもR接点を通る経路が残る。直列だとPB1が開いた瞬間に電流経路そのものが切れる。

  3. インターロック回路で、相手のb接点ではなくa接点を自分の回路に入れてしまう

    なぜ引っかかる「相手が動作していないときだけ自分が動作できる」という排他条件はNOT条件であり、相手のリレーのb接点(相手が動作すると開く接点)を使う必要がある。a接点を入れると逆に「相手が動作しているときだけ自分も動作できる」という誤った連動になってしまう。

    見破り方「相手のリレーが動作(励磁)しているときに、自分の回路が切れる(開く)接点でなければならない」と確認する。励磁で開く接点はb接点であり、a接点(励磁で閉じる)を入れると排他ではなく連動になってしまう。

  4. 論理回路のタイムチャート問題で、ANDゲートとORゲートの出力波形を取り違える

    なぜ引っかかる『どちらか一方でも1なら1になる(OR)』と『両方とも1でなければ1にならない(AND)』という条件の厳しさの違いを、波形の上でとっさに判断できず、入力波形が重なる区間の広さだけで直感的に判断してしまう。

    見破り方各時刻について、入力の組合せを1つずつ表に書き出し、AND=両方1のときだけ1、OR=どちらか1つでも1なら1、という定義に機械的に当てはめる。波形を目で追うだけで判断せず、まず数点だけでも真理値表的に検算する。

  5. 排他的論理和(ExOR)を、単純なOR(論理和)と同じ結果になると思い込む

    なぜ引っかかる『どちらかが1なら1になる』という説明の響きがORと似ているため、ExORもORと同じ演算だと勘違いしやすい。実際はORと違い、両方とも1のときはExORの出力は0になる点が異なる。

    見破り方『入力が異なるときだけ1になる』という定義を、両方1のケースで必ず検算する。1と1を入力したとき、ORなら出力は1のままだが、ExORは0になる——この1点を確認するだけで、ORとExORの混同を防げる。

  6. 全加算器の出力を求めるとき、3つの入力(A・B・Cin)をいきなり同時に扱おうとして、桁上げの経路を見落とす

    なぜ引っかかる半加算器(2入力)に慣れた直後に3入力の全加算器を見ると、AND・OR・ExORをどう組み合わせればよいか一度に判断しようとしてしまい、繰り上がりが2段階に分かれて生まれることを見落としやすい。

    見破り方全加算器を『半加算器を2段つなげたもの』と分解して考える。1段目でAとBを先に加算し、その和S1を2段目でCinとさらに加算する。最終的な繰り上がりCoutは、1段目の桁上げC1と2段目の桁上げC2のOR(どちらか一方でも1なら1)で求まる、という手順を固定すれば、3入力でも迷わない。

  7. 10進数→2進数の変換で、2で割り続けたときに出てくる余りを、求めた順(上の桁から)にそのまま並べてしまう

    なぜ引っかかる『上から順に計算したのだから、上から順に並べればよい』という素朴な直感に従うと、実際には最初に出てくる余りが最下位桁(一番右)であることを見落とし、桁の並びが逆転してしまう。

    見破り方小さな数で検算する。10進数の2を2で割ると商1・余り0、商1をさらに2で割ると商0・余り1。ここで得られた余りを『下(最下位桁)から』並べると10(2進)=2(10進)で一致する。上から並べると01となり、これは10進数の1であって2ではない——この食い違いで、余りは下の桁から並べる(最後に出た余りが最上位桁になる)と確認できる。

  8. 2進数→8進数の変換で、8進数と16進数を混同し、4ビットずつ区切ってしまう

    なぜ引っかかる『2進数のグループ化=4ビットずつ』という16進数変換の手順が印象に残っていると、8進数への変換でも同じ4ビット区切りを使ってしまいやすい。だが8=2³なので、8進数1桁に対応するのは3ビットであり、16進数(16=2⁴、4ビット)とはグループの幅が違う。

    見破り方変換先の基数が2の何乗かを先に確認する。8進数は2³=8なので3ビットずつ、16進数は2⁴=16なので4ビットずつ区切る、という対応を『基数=2の指数乗→指数の数だけビットをまとめる』という理屈で覚えておけば、8進数と16進数のグループ幅を逆に使うことがなくなる。

  9. EPROMとEEPROMを名前の類似から混同し、どちらも同じ方法(電気信号だけ、あるいは紫外線だけ)で消去できると思い込む

    なぜ引っかかる『EPROM』『EEPROM』という名前がEの数しか違わないため、消去方法まで同じだと錯覚しやすい。実際にはEPROMは強い紫外線を照射して消去する方式、EEPROMは印加電圧を工夫して電気的に消去・再書き込みする方式で、消去のしくみそのものが異なる。

    見破り方名前の中の『Electrically』の有無に注目する。EEPROMの2つ目のE(Electrically Erasable)だけが『電気的に消去できる』ことを表しており、EPROM(Erasable)にはこの語がない——EPROMは紫外線での消去、EEPROMは電気的な消去、という対応を名前の構造から思い出す。

  10. 吸収則 A+Ā・B=A+B を、A+Ā・B=A(Bの項がまるごと消えてしまう)と混同する

    なぜ引っかかる見た目のよく似たもう1つの吸収則 A+A・B=A(こちらはBが完全に消える)と混同しやすい。だがA+Ā・Bでは、消えるのはĀという条件だけで、Bの項そのものはA+Bという形で残る。

    見破り方真理値表で確認する。A=0のとき、A+Ā・B=0+1・B=B、A+B=0+B=Bで一致する。A=1のときはどちらも1で一致する。すべての場合で両辺が一致するので、A+Ā・B=A+Bが正しく、A+Ā・B=Aではないと確かめられる。

参考文献・出典

理解度チェック(18問)

このトピックの内容がどれくらい身についたか、18問で確認しよう。 内訳は基本10問・応用6問・ひっかけ2問。基本が解けたら、条件を足した応用と、本番で足をすくいにくるひっかけまで踏み込む。

/ 18 問正解

覚えておきたいポイント

  1. シーケンス制御は、目標値との偏差を常に修正し続けるフィードバック制御とは違い、あらかじめ定めた順序・条件に従って制御の各段階を逐次進めていく制御である
  2. リレーのa接点(常開)はコイル励磁でON、b接点(常閉)はコイル励磁でOFFになる。a接点の直列はAND、並列はOR、b接点はNOTに相当する動作になる
  3. 自己保持回路は、リレー自身のa接点を起動用押しボタンと並列に入れることで、ボタンを離してもコイルの励磁を保持する
  4. インターロック回路は、同時に動作させたくない2つの機器の回路に互いのb接点を直列に入れ、一方が動作中は他方を動作させない排他制御をつくる
  5. タイマー(限時継電器)にはオンディレイ(遅れてON)とオフディレイ(遅れてOFF)があり、モータのY-Δ始動などの時間差制御に使われる
  6. 論理回路の基本ゲートはリレー接点と対応づけられる:ANDゲート=a接点の直列、ORゲート=a接点の並列、NOTゲート=b接点。入力の全組合せに対する出力をまとめたものが真理値表、時間軸に沿った入出力の変化を表したものがタイムチャートである
  7. AND・OR・NOTに加え、排他的論理和(ExOR:2つの入力が異なるとき1、同じとき0)と否定論理和(NOR:ORの結果を反転、両方0のときだけ1)もビットパターンごとの論理演算として扱える。2進数は4ビットずつ区切ることで16進数1桁に対応づけられる(0000〜1111が0〜Fに対応)
  8. 2進数→10進数は、各桁の重み(右端から2⁰,2¹,2²…)を立っているビット(1の桁)だけ足し合わせる。10進数→2進数は、商が0になるまで2で割り続け、出てきた余り(0か1)を下から並べ直す除算法で求める
  9. 2進数→8進数は、右端から3ビットずつ区切り、それぞれを0〜7の1桁に対応づける(8=2³なので3ビットが8進数1桁に一致する)。同じ考え方で、16進数は4ビットずつ区切る(16=2⁴)。ビットのグループ化の幅(3ビットか4ビットか)は、変換先の基数が2の何乗かで決まる
  10. 論理式の簡単化にはブール代数の法則を使う:分配則 A・(B+C)=A・B+A・C、吸収則 A+A・B=A および A+Ā・B=A+B、ド・モルガンの定理(A・Bの否定=Āの論理和B̄、A+Bの否定=Ā・B̄)。積和形式(AND項をORでつなぐ)・和積形式(OR項をANDでつなぐ)のどちらも、共通項でくくり出す・吸収則で不要な項を消す、という手順で項数を減らせる
  11. 半加算器(half adder)は1ビットの入力A・Bから和S=A ExOR B、桁上げC=A AND Bを出力する回路。全加算器(full adder)は、下位桁からの繰り上がりCinも受け取れるよう半加算器を2段組み合わせ、それぞれの桁上げをORでまとめて最終的な繰り上がりCoutを作る
  12. コンピュータを構成するハードウェアは、機能面から入力装置・出力装置・記憶装置(主記憶装置+補助記憶装置)・中央処理装置(制御装置+演算装置)に分類される。主記憶装置に使われる半導体メモリのうちRAMは電源を切るとデータが消える揮発性メモリで、キャパシタに電荷を蓄えるDRAM(要リフレッシュ、高集積・安価)とフリップフロップでデータを保持するSRAM(リフレッシュ不要・高速だが低集積)に大別される。ROM系は電源を切ってもデータが残る不揮発性メモリで、EPROMは強い紫外線の照射で、EEPROMは電気的な信号で、それぞれ記憶内容を消去・再書き込みできる
Xでシェア
打ち合わせを予約 見積依頼