In other languages:

User:Fried biter/workspace

From Official Factorio Wiki
Jump to navigation Jump to search

作業場/workspace 日本語話者の方、マサカリ投げてくださると助かります


信号はFactorioの鉄道システムを機能させる上で必要不可欠だ。このチュートリアルでは、どのようなときになぜ信号が用いられるか、デッドロックとは何でどういう場合に起こるのかを説明する。目標は、読者がスムースな鉄道システムを運用できるようになり、よくある問題も解決できるようになることである。よくある利用例もいくつか示す。

まさに信号の使い方を学び始めたばかりの初心者諸君におかれては、全ての交差点付近にレーダーを配備し、問題をすばやく特定できるようにしておくことをおすすめする。また、新たな列車や駅がシステムに追加された際は、燃料補給の自動化を可能な限り早く行っておくことも推奨される。列車は時刻表上のどこかの駅で燃料を補給されてもよいし(このとき燃料を駅に輸送することもある)、独立した燃料補給駅を時刻表に書き加えても良い。

通常信号(Regular signal)とブロック

Why signals.gif

いつだって、線路に1編成より多くの列車が存在するなら衝突事故が発生しうる。これを防ぐため、道中と交差点に信号を設置しよう。通常の列車用信号 はその手前の線路ブロックを、次の信号か線路の終端かまで保護する。信号は、どのブロックにも1編成までしか存在できないことを保証してくれる。すでに列車が存在するブロックに2編成目の列車が侵入しようとすると、そのブロックへと続く(直前の)信号で止められて待たされる。

線路ブロックは、プレイヤーが信号を持っている間、色付きで表示される。画像はブロック可視化を示すもので、ここでは全部で11のブロックが見て取れる。列車用信号(そして連動式信号)はブロックを画すが、駅(train stops)はなにもしない。

Rail blocks example.png

通常信号は、続くブロックに列車が存在しない場合に緑となる。列車がブロックに侵入すると、そのブロックへと続くすべての信号は赤になる。列車がブロックに侵入する予定の場合、信号は赤になる前、しばらくの間黄色になる。

信号は線路の右側に設置される。列車は進行方向から見て右側にある信号しか通過できない。自動運行の列車は、右側にも信号がない限り左側の信号を通過できない。このせいで、一見線路がつながって見えるのに実は一方通行になっている部分が生じ、「到達経路なし」エラーを発生させてしまうことがある。

Signal directions.png

この画像では、線路は上から順に:

  1. 左から右、
  2. 右から左、
  3. 双方通行、
  4. 双方通行、
  5. 左半分は双方通行で、分岐した上の線路は右から左、下の線路は左から右。

Chain signals

Using signals prevents trains from crashing into each other but brings with itself other potential issues. Every train will wait until the block in front of it is cleared, so trains are waiting for other trains. This becomes a problem when a train starts waiting on an intersection. In that case other trains will have to wait even if they are not going in the same direction. These trains may in turn cause other trains to wait, resulting in a slowdown of the entire system. Traffic systems should avoid having trains waiting on intersections. In Factorio, Rail chain signals are used to ensure that this cannot happen.

Chain-signal-guards-crossroad.png

The most important rule is that a train cannot wait for an extended period of time in a block after a chain signal, whereas it can wait in a block after a regular signal. Since trains should not wait on crossings, this leads to the commonly stated rule: Use chain signals in and before crossings and use regular signals at the exits of crossings. In general, whenever a waiting train would block another train that is going on a different track, a chain signal should be used to prevent the train from waiting.

Double-crossing.gif

How do chain signals work? To determine if a train is allowed to drive past a chain signal, consider the path the train will take from that signal up to the next regular signal or until it reaches the station, whichever comes first. The train is only allowed to go through if all rail blocks on this path are free. If the train goes through, it will reserve all blocks on this path and not allow other trains to pass through a block until it leaves the block. A chain signal which leads to a block that has only one outgoing signal will always have the same color as that signal. If a rail line splits up, it can happen that one outgoing signal is red and the other is green. In that case the chain signal leading into the block will turn blue to indicate that some paths are free while others are not.

Chain signal colors.png

If the rail network contains many chain signals it is possible that a very large number of blocks is reserved when a train drives by a chain signal. This would restrict other trains, reducing throughput in general. Hence it is often suggested to use regular signals whenever possible and chain signals only where they are necessary.

Deadlocks

Using signals can lead to trains waiting for other trains. As a consequence, there might be a chain of trains, each waiting for the next, with the last waiting for the first. This situation is called a deadlock, because the trains will wait forever or until the situation is resolved manually. It should be avoided and resolved as soon as possible because every train going through the area will get stuck. The most frequent causes of deadlocks are

  1. trains waiting on intersections and
  2. a rail network that does not allow enough space for trains.


Deadlock anim.gif

The image above shows a deadlock caused by missing chain signals since only regular rail signals were used. As a result trains can wait on a crossing which leads to a deadlock. A corrected version of this intersection can be found above. The eight signals before and on the intersection should be replaced by chain signals, the ones leading out of the intersection can stay as they are. As stated above, in general chain signals should be used before and on intersections.

Deadlock too many trains.png

The deadlock in the image happened because there is a circle in the network which was used by more trains than can fit into the circle. The signals are correct; to fix the deadlock the circle must be removed or less trains need to be routed through this area.

Signal deadlock.png

This deadlock also happened because there were too many trains in a too small circle. It shows that a deadlock can happen with as few as two trains. In this case the deadlock could also have been avoided by replacing the marked signal with a chain signal, because it would ensure that only one train can enter the offending circle. However this could lead to trains waiting on the main line, so a waiting area for trains near the station should be added.

Signal spacing

Deadlock signal space.png

The image shows a deadlock between two T-junctions. It happened because while a train was waiting at the intersection, its tail end was still in the last intersection. The junctions when taken individually are signaled correctly, however they are too close to each other. One might argue that they form a single big intersection. There are two ways to fix this: the regular signals between the two junctions could be turned into chain signals or the junctions could be moved further away from each other.

After an exit signal of a junction, the next signal must be at least far enough away to fit the longest train in the rail system between the signals. In general, after every regular signal there should be at least that much space.

Splitting rail blocks

The following aims to explain where signals should be placed. Long uninterrupted rail tracks should have signals at regular intervals because this allows more trains to move on the track simultaneously leading to higher throughput. Crossings should be separated from uninterrupted rails with signals. Inside crossings, signals should be used so that multiple trains can pass through the crossing without slowing down - for example trains going in opposite directions should not have to slow down for each other, so they need to pass through different blocks inside an intersection. The examples below all follow these rules.

Examples

The most common way to build a rail system is using two parallel rails, one for each direction. The examples mostly follow this architecture. A single bidirectional rail line should not be used for 'main' rail lines in most situations.

T-Junction

The image shows a basic three way junction. Rail signals have been placed inside the junction to ensure that more than one train can enter the junction in some cases. For example for one train going left to right and one going right to left, the trains will pass through different blocks: the first will go through the left yellow, the blue and the lower right yellow block; the second will use the upper yellow and upper red blocks. Because they use different blocks, they can use the junction simultaneously. While this is not strictly necessary for a junction to work, it will allow better throughput at a low cost.

Waiting area

If multiple trains use the same station, the trains will wait on the main rail line which leads to a traffic jam in the network and can cause deadlocks. One way to avoid this is to add waiting areas for trains at each station.

Train waiting area.png

The image shows a shared waiting area for two stations. The signals leading into the waiting areas are regular signals because this is where trains are expected to wait for an extended time. The signals leading out of the waiting areas are chain signals because the track from the waiting areas to the stations should not be blocked. The stations are also in different blocks to make sure that all stations can be used simultaneously.

There are two ways to design waiting areas, parallel (as above) and sequential. The parallel version is easily extendable, takes less space and multiple stations can share a parallel waiting area. The sequential version as shown below is easier to set up but cannot be shared by multiple stations (and has very minor UPS benefits). Waiting areas are often referred to as stackers.

Train waiting area sequential.png

関連項目