Factorio 回路ネットワーク使い方入門 搬送ベルトとランプ編3 ランプの動作を正しく直す

今回も長いので、先に結果を書いておきます。

結果

搬送ベルトに流れているアイテムのいずれかが足りなくなった場合(4未満になった場合)に、ランプを点灯させることができる。これは前回の条件(作動条件を「緑のアスタリスクが4未満」【いずれかが4未満】にした場合に点灯する)に加え、鉄板が0の場合に点灯するという条件、銅板が0の場合に点灯するという条件を、「組み合わせ回路」と「電柱」を用いることで、これら3個の条件による出力の論理和を取ることによって実現可能だ。

前回、搬送ベルトにアイテムが流れている状態で、流れるアイテムの個数が減ったときに、ランプを光らせるようにしました。

しかし、アイテムの個数が0になった場合は、ランプが消えてしまいます。これではダメです。正しく動きません。動かないのです。流れるアイテムの数が減ったときに、ランプを光らせられているとは言えません。

そこで、今回は「組み合わせ回路」を用いてランプを正しく光らせました。アイテムの個数が0のときもランプが光るように電柱を用いて論理和をとればうまく動きます。

下の画像が正しくランプが光る回路になっています。組み合わせ回路は(1)、(2)、(3)の3個あります。

1.レッドケーブルの繋ぎ方

  • 搬送ベルトから右側の電柱に繋げる【右下の電柱は組み合わせ回路の電力に必要なだけでレッドケーブルは繋がっていない】
  • 右側の電柱から組み合わせ回路(1)、(2)、(3)にそれぞれ繋げる【このため、(1)、(2)、(3)に入力される信号は同じ信号となる】
  • 組み合わせ回路(1)、(2)、(3)から左の電柱に繋げる【このため、左の電柱に入力される信号は(1)、(2)、(3)の信号の論理和となる】
  • 左の電柱からランプに繋げる【左の電柱に入力された信号がそのまま出力され、その信号がランプに入力される】

f:id:NiagaraPudding:20170308143730g:plain

2.各部分の条件

各部分の条件は以下のとおりとしました。

2-1.組み合わせ回路(1)の条件と出力

組み合わせ回路(1)の条件は「鉄板が0」の場合とする。この場合に出力は「Aが1」とする。
f:id:NiagaraPudding:20170305015620j:plain

2-2.組み合わせ回路(2)の条件と出力

組み合わせ回路(2)の条件は「銅板が0」の場合とする。この場合に出力は「Aが1」とする。
f:id:NiagaraPudding:20170305015645j:plain

2-3.組み合わせ回路(3)の条件と出力

組み合わせ回路(3)の条件は「緑のアスタリスクが4未満」【いずれかが4未満】の場合とする。この条件は前回のランプが点灯するための条件と同じだ。この場合に出力は「Aが1」とする。
f:id:NiagaraPudding:20170305015714j:plain
前回の結果を参考にすると、(3)の出力は下の表のとおりとなる。

鉄板(個) 銅板(個) (3)の出力
信号なし
4未満 Aが1
4以上 信号なし
4未満 Aが1
4未満 4未満 Aが1
4未満 4以上 Aが1
4以上 信号なし
4以上 4未満 Aが1
4以上 4以上 信号なし

2-4.ランプの条件

ランプが光るための条件は「Aが0より大きい」場合とする。
f:id:NiagaraPudding:20170305015749j:plain

3.【検証】鉄板と銅板の個数を設定したときにランプが点灯するか?

鉄板と銅板の個数をそれぞれ設定した場合に、ランプが点灯するか消灯するか調べていきます。

3-1.鉄板×0、銅板×0の場合

入力信号はない。

(1)の条件【鉄板が0】を満たすため、(1)の出力は【Aが1】となる。
(2)の条件【銅板が0】を満たすため、(2)の出力は【Aが1】となる。
(3)の出力は2-3の表より、【信号なし】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが2】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305015821j:plain

3-2.鉄板×3、銅板×0の場合

入力信号は【鉄板が3】である。

(1)の条件【鉄板が0】を満たさないため、(1)の出力は【信号なし】となる。
(2)の条件【銅板が0】を満たすため、(2)の出力は【Aが1】となる。
(3)の出力は2-3の表より、【Aが1】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが2】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305015840j:plain

3-3.鉄板×0、銅板×3の場合

入力信号は【銅板が3】である。

(1)の条件【鉄板が0】を満たすため、(1)の出力は【Aが1】となる。
(2)の条件【銅板が0】を満たさないため、(2)の出力は【信号なし】となる。
(3)の出力は2-3の表より、【Aが1】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが2】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305015905j:plain

3-4.鉄板×3、銅板×3の場合

入力信号は【鉄板が3、そして銅板が3】である。

(1)の条件【鉄板が0】を満たさないため、(1)の出力は【信号なし】となる。
(2)の条件【銅板が0】を満たさないため、(2)の出力は【信号なし】となる。
(3)の出力は2-3の表より、【Aが1】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが1】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305015928j:plain

3-5.鉄板×4、銅板×0の場合

入力信号は【鉄板が4】である。

(1)の条件【鉄板が0】を満たさないため、(1)の出力は【信号なし】となる。
(2)の条件【銅板が0】を満たすため、(2)の出力は【Aが1】となる。
(3)の出力は2-3の表より、【信号なし】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが1】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305015957j:plain

3-6.鉄板×0、銅板×4の場合

入力信号は【銅板が4】である。

(1)の条件【鉄板が0】を満たすため、(1)の出力は【Aが1】となる。
(2)の条件【銅板が0】を満たさないため、(2)の出力は【信号なし】となる。
(3)の出力は2-3の表より、【信号なし】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが1】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305020018j:plain

3-7.鉄板×4、銅板×3の場合

入力信号は【鉄板が4、そして銅板が3】である。

(1)の条件【鉄板が0】を満たさないため、(1)の出力は【信号なし】となる。
(2)の条件【銅板が0】を満たさないため、(2)の出力は【信号なし】となる。
(3)の出力は2-3の表より、【Aが1】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが1】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305020041j:plain

3-8.鉄板×3、銅板×4の場合

入力信号は【鉄板が3、そして銅板が4】である。

(1)の条件【鉄板が0】を満たさないため、(1)の出力は【信号なし】となる。
(2)の条件【銅板が0】を満たさないため、(2)の出力は【信号なし】となる。
(3)の出力は2-3の表より、【Aが1】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【Aが1】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たすため、ランプは点灯する。
f:id:NiagaraPudding:20170305020057j:plain

3-9.鉄板×4、銅板×4の場合

入力信号は【鉄板が4、そして銅板が4】である。

(1)の条件【鉄板が0】を満たさないため、(1)の出力は【信号なし】となる。
(2)の条件【銅板が0】を満たさないため、(2)の出力は【信号なし】となる。
(3)の出力は2-3の表より、【信号なし】となる。
(1)、(2)、(3)の論理和が左の電柱出力される。すなわち、出力は【信号なし】となる。
結果、ランプの点灯条件【Aが0より大きい】を満たさないため、ランプは消灯する。
f:id:NiagaraPudding:20170305020117j:plain

4.まとめる

以上の結果をまとめます。

4-1.表にする

以上の結果を表にまとめると以下のようになります。

鉄板(個) 銅板(個) ランプの状態
点灯
点灯
点灯
点灯
点灯
点灯
点灯
点灯
消灯

4-2.解釈を拡大する

上の表から解釈を拡大すると以下のようになります。

注意する点
「4未満」の場合は0を除く4未満の個数を意味する。

鉄板(個) 銅板(個) ランプの状態
点灯
4未満 点灯
4以上 点灯
4未満 点灯
4未満 4未満 点灯
4未満 4以上 点灯
4以上 点灯
4以上 4未満 点灯
4以上 4以上 消灯

4-3.表を整理する

上の表から整理すると以下のようになります。

注意する点
「4未満」の場合は0を含む4未満の個数を意味する。

鉄板(個) 銅板(個) ランプの状態
4未満 4未満 点灯
4未満 4以上 点灯
4以上 4未満 点灯
4以上 4以上 消灯

5.結論

搬送ベルトに流れているアイテムのいずれかが足りなくなった場合(4未満になった場合)に、ランプを点灯させることができる。これは前回の条件(作動条件を「緑のアスタリスクが4未満」【いずれかが4未満】にした場合に点灯する)に加え、鉄板が0の場合に点灯するという条件、銅板が0の場合に点灯するという条件を、「組み合わせ回路」と「電柱」を用いることで、これら3個の条件による出力の論理和を取ることによって実現可能だ。