In anderen Sprachen: English 日本語 한국어 Português, Brasil Русский 简体中文

Transport belts/Physics/de: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
mNo edit summary
(sync with English text)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{Languages}}
{{Languages}}
Das {{TransLink|Belt transport system}} in Factorio ist eine der detailliertesten Simulationen im Spiel. Gegenstände in Kisten und anderen Behältern werden einfach als Summen gespeichert, und Gegenstände auf ununterbrochenen Fließband-Abschnitten werden als Optimierung [https://www.factorio.com/blog/post/fff-176 in Summe bewegt], aber letztendlich werden Gegenstände auf Fließbändern einzeln simuliert, insbesondere wenn sie von Greifarmen aufgenommen oder abgesetzt werden. Dies führt zu einigen komplizierten Verhaltensweisen, insbesondere wenn es um den [[Inserter/de#Greifarm-Durchsatz|Durchsatz von Greifarmen]] geht.
Das {{TransLink|Belt transport system}} in Factorio ist eine der detailliertesten Simulationen im Spiel. Gegenstände in Kisten und anderen Behältern werden einfach als Summen gespeichert, und Gegenstände auf ununterbrochenen Fließband-Abschnitten werden als Optimierung [https://www.factorio.com/blog/post/fff-176 in Summe bewegt], aber letztendlich werden Gegenstände auf Fließbändern einzeln simuliert, insbesondere wenn sie von Greifarmen aufgenommen oder abgesetzt werden. Dies führt zu einigen komplizierten Verhaltensweisen, insbesondere wenn es um den [[Inserters/de#Greifarm-Durchsatz|Durchsatz von Greifarmen]] geht.


== Fließband-Eigenschaften ==
== Fließband-Eigenschaften ==
Line 8: Line 8:
* '''Geschwindigkeit'''. Die Geschwindigkeit von Gegenständen auf einem Band wird aus praktischen Gründen in Kacheln pro Sekunde gemessen. Es ist zu beachten, dass sie intern in Positionen (1/256 Kacheln) pro Tick (1/60 sec) gemessen wird. Mehr dazu weiter unten. Die Geschwindigkeit eines einfachen {{TransLink|Transport belt}}es beträgt 1,875 Kacheln pro [[Time/de#Sekunden|Spiel-Sekunde]]. Ein {{TransLink|Fast transport belt}} ist doppelt so schnell, und ein {{TransLink|Express transport belt}} ist dreimal so schnell.
* '''Geschwindigkeit'''. Die Geschwindigkeit von Gegenständen auf einem Band wird aus praktischen Gründen in Kacheln pro Sekunde gemessen. Es ist zu beachten, dass sie intern in Positionen (1/256 Kacheln) pro Tick (1/60 sec) gemessen wird. Mehr dazu weiter unten. Die Geschwindigkeit eines einfachen {{TransLink|Transport belt}}es beträgt 1,875 Kacheln pro [[Time/de#Sekunden|Spiel-Sekunde]]. Ein {{TransLink|Fast transport belt}} ist doppelt so schnell, und ein {{TransLink|Express transport belt}} ist dreimal so schnell.


* '''Durchsatz'''. Wie viele Gegenstände pro Sekunde von einer Kachel zur nächsten bewegt werden. Das ist die Dichte (Gegenstände pro Kachel) multipliziert mit der Geschwindigkeit (Kacheln pro Sekunde), z.B. für ein einfaches Fließband sind es 4 * 1,875 = 7,5 Gegenstände pro Sekunde, für eine Seite. Für beide Seiten wird sie verdoppelt, d.h. 15 Stück pro Sekunde.
* '''Durchsatz'''. Wie viele Gegenstände pro Sekunde von einer Kachel zur nächsten bewegt werden. Das ist die Dichte (Gegenstände pro Kachel) multipliziert mit der Geschwindigkeit (Kacheln pro Sekunde), z.B. für ein einfaches Fließband sind es 4 * 1,875 = 7,5 Gegenstände pro Sekunde, für eine Seite. Für beide Seiten wird sie verdoppelt, d. h. 15 Stück pro Sekunde.


* '''Komprimierung'''. Wenn es keinen Leerraum zwischen den Gegenständen auf dem Fließband gibt, wird es als '''vollständig komprimiert''' bezeichnet, andernfalls ist die Komprimierung nur teilweise und es hat keinen optimalen Durchsatz. Objekte, die Gegenstände auf Bänder legen - {{TransLink|Inserters}}, {{TransLink|Splitters}}, andere Bänder, die von der Seite kommen, Erzförderer usw. - schaffen Platz für ihren Gegenstand, indem sie [https://forums.factorio.com/viewtopic.php?f=3&t=57993 eine kleine Lücke vergrößern], bis sie genau groß genug für den Gegenstand ist. Das bedeutet, dass die Fließbänder natürlich vollständig komprimiert werden, bevor die Gegenstände anfangen, sich zu stauen.
* '''Komprimierung'''. Wenn es keinen Leerraum zwischen den Gegenständen auf dem Fließband gibt, wird dies als '''vollständig komprimiert''' bezeichnet. Andernfalls ist die Komprimierung nur teilweise und es hat keinen optimalen Durchsatz. Objekte, die Gegenstände auf Bänder legen - {{TransLink|Inserters}}, {{TransLink|Splitters}}, andere Bänder, die von der Seite kommen, Erzförderer usw. - schaffen Platz für ihren Gegenstand, indem sie [https://forums.factorio.com/viewtopic.php?f=3&t=57993 eine kleine Lücke vergrößern], bis sie genau groß genug für den Gegenstand ist. Das bedeutet, dass die Fließbänder natürlich vollständig komprimiert werden, bevor die Gegenstände anfangen, sich zu stauen.


* '''Seiten'''. Fließbänder haben zwei parallele Seiten, und die Dichte und Geschwindigkeit jeder Seite ist konstant und unabhängig von der anderen, unabhängig von Windungen und Kurven. Daher verlassen Gegenstände auf der inneren Seite einer Kurve diese vor denen auf der äußeren Seite, da ihre Geschwindigkeiten gleich sind und die innere Seite kürzer ist als die äußere.
* '''Seiten'''. Fließbänder haben zwei parallele Seiten, und die Dichte und Geschwindigkeit jeder Seite ist konstant und unabhängig von der anderen, unabhängig von Windungen und Kurven. Daher verlassen Gegenstände auf der inneren Seite einer Kurve diese vor denen auf der äußeren Seite, da ihre Geschwindigkeiten gleich sind und die innere Seite kürzer ist als die äußere.
Line 19: Line 19:


{| class="wikitable"
{| class="wikitable"
! rowspan=2 | Fließbantyp || colspan=2 | Geschwindigkeit || colspan=4 | Durchsatz
! rowspan=2 | Fließbandtyp || colspan=2 | Geschwindigkeit || colspan=4 | Durchsatz
|-
|-
! Faktor || Kacheln/Sek || Eine Seite, Gegenst./Sek || Eine Seite, Gegenst./Min || Beide Seiten, Gegenst./Sek || Beide Seiten, Gegenst./Min
! Faktor || Kacheln/Sek || Eine Seite, Gegenst./Sek || Eine Seite, Gegenst./Min || Beide Seiten, Gegenst./Sek || Beide Seiten, Gegenst./Min
Line 35: Line 35:


Auch wenn es beispielsweise auf einem Screenshot so aussieht, als befände sich ein Gegenstand teils auf einer, teils auf der nächsten Kachel, wird er genau einer der beiden Kacheln zugeordnet:
Auch wenn es beispielsweise auf einem Screenshot so aussieht, als befände sich ein Gegenstand teils auf einer, teils auf der nächsten Kachel, wird er genau einer der beiden Kacheln zugeordnet:
* Wenn man die Fließband-Kachel anhät, auf der sich der Gegenstand befindet, bleibt er stehen, ansonsten bewegt er sich weiter - es gibt keine Zwischenzustände.
* Wenn man die Fließband-Kachel anhält, auf der sich der Gegenstand befindet, bleibt er stehen, ansonsten bewegt er sich weiter - es gibt keine Zwischenzustände.
* Wenn man die beiden Fließband-Kacheln mit einem Schaltungsnetz verbindet und sie so konfiguriert, dass sie [[Belt transport system/de#Schaltungsnetz|Angaben über die beförderten Gegenstände machen]], wird der Gegenstand genau einer der beiden Kacheln zugeordnet.
* Wenn man die beiden Fließband-Kacheln mit einem Schaltungsnetz verbindet und sie so konfiguriert, dass sie [[Belt transport system/de#Schaltungsnetz|Angaben über die beförderten Gegenstände machen]], wird der Gegenstand genau einer der beiden Kacheln zugeordnet.
* Ein Greifarm kann nur Gegenstände aufnehmen, die sich logischerweise auf der Kachel vor ihm befindet, nicht aber Gegenstände, die von den benachbarten Kacheln aus hineinragen.
* Ein Greifarm kann nur Gegenstände aufnehmen, die sich logischerweise auf der Kachel vor ihm befindet, nicht aber Gegenstände, die von den benachbarten Kacheln aus hineinragen.
Line 78: Line 78:
| colspan=2 | Länge eines Gegenstands auf einem Band (jeglicher Geschwindigkeit) || align="center" | 64
| colspan=2 | Länge eines Gegenstands auf einem Band (jeglicher Geschwindigkeit) || align="center" | 64
|-
|-
| colspan=2 | Seitenlänge einer geraden Bandkachel, eines unterirdischen Fließbandes oder Teilerfließband || align="center" | 256
| colspan=2 | Seitenlänge einer geraden Bandkachel oder eines unterirdischen Fließbandes || align="center" | 256
|-
| colspan=2 | Eingangsseitenlänge eines Teilerfließbandes || align="center" | 179 (128+51)<sup>1</sup>
|-
| colspan=2 | Ausgangsseitenlänge eines Teilerfließbandes || align="center" | 128
|-
|-
| colspan=2 | Länge der inneren Seite einer Kurve || align="center" | 106
| colspan=2 | Länge der inneren Seite einer Kurve || align="center" | 106
Line 84: Line 88:
| colspan=2 | Länge der äußeren Seite einer Kurve || align="center" | 295
| colspan=2 | Länge der äußeren Seite einer Kurve || align="center" | 295
|-
|-
| style="border-right: 0px" | Zurückgelegter Weg eines Gegenstandes, der später seitlich auf ein<br>gerades Band oder unterirdisches Band geschoben wurde
| style="border-right: 0px" | Zurückgelegter Weg eines Gegenstandes, der weiter hinten seitlich auf<br> ein gerades Band oder unterirdisches Band geschoben wird
| style="border-left: 0px" | [[Image:Sideload-late.gif]] || align="center" | 68
| style="border-left: 0px" | [[Image:Sideload-late.gif]] || align="center" | 68
|-
|-
| style="border-right: 0px" | Zurückgelegter Weg eines Gegenstandes, der früher seitlich auf ein<br>gerades Band oder unterirdisches Band geschoben wurde
| style="border-right: 0px" | Zurückgelegter Weg eines Gegenstandes, der weiter vorne seitlich auf<br> ein gerades Band oder unterirdisches Band geschoben wird
| style="border-left: 0px" | [[Image:Sideload-early.gif]] || align="center" | 188
| style="border-left: 0px" | [[Image:Sideload-early.gif]] || align="center" | 188
|}
|}
<sup>(1)</sup>inklusive eines Puffers mit 51 Positionen [https://forums.factorio.com/viewtopic.php?p=554468#p554468]


Aus den obigen Zahlen lässt sich beispielsweise die Geschwindigkeit eines Fließbandes ableiten:
Aus den obigen Zahlen lässt sich beispielsweise die Geschwindigkeit eines Fließbandes ableiten:
Line 105: Line 112:
* Feb 03 FFF #176: [https://www.factorio.com/blog/post/fff-176 Belts optimization for 0.15]
* Feb 03 FFF #176: [https://www.factorio.com/blog/post/fff-176 Belts optimization for 0.15]
* [https://forums.factorio.com/viewtopic.php?f=5&t=70055 Accurate belt segment measurements] (discusses 0.17)
* [https://forums.factorio.com/viewtopic.php?f=5&t=70055 Accurate belt segment measurements] (discusses 0.17)
* [https://forums.factorio.com/viewtopic.php?p=554468#p554468 About belt numbers, from boskid]


{{C|Belt transport system}}
{{C|Belt transport system}}

Latest revision as of 15:36, 24 October 2021

Das Fließband-Transportsystem in Factorio ist eine der detailliertesten Simulationen im Spiel. Gegenstände in Kisten und anderen Behältern werden einfach als Summen gespeichert, und Gegenstände auf ununterbrochenen Fließband-Abschnitten werden als Optimierung in Summe bewegt, aber letztendlich werden Gegenstände auf Fließbändern einzeln simuliert, insbesondere wenn sie von Greifarmen aufgenommen oder abgesetzt werden. Dies führt zu einigen komplizierten Verhaltensweisen, insbesondere wenn es um den Durchsatz von Greifarmen geht.

Fließband-Eigenschaften

  • Dichte. Wie viele Gegenstände auf eine bestimmte Länge des Bandes passen, gemessen in Gegenständen pro Kachel pro Bandseite. Auf einem geraden Band sind es 4, unabhängig von der Art des Gegenstandes und der Art des Bandes. Die Gegenstandsdichte auf Bändern kann sich von der unterscheiden, die sie einnehmen, wenn sie einfach auf den Boden fallen gelassen werden (mit der Z-Taste).
  • Geschwindigkeit. Die Geschwindigkeit von Gegenständen auf einem Band wird aus praktischen Gründen in Kacheln pro Sekunde gemessen. Es ist zu beachten, dass sie intern in Positionen (1/256 Kacheln) pro Tick (1/60 sec) gemessen wird. Mehr dazu weiter unten. Die Geschwindigkeit eines einfachen Fließbandes beträgt 1,875 Kacheln pro Spiel-Sekunde. Ein Schnelles Fließband ist doppelt so schnell, und ein Express-Fließband ist dreimal so schnell.
  • Durchsatz. Wie viele Gegenstände pro Sekunde von einer Kachel zur nächsten bewegt werden. Das ist die Dichte (Gegenstände pro Kachel) multipliziert mit der Geschwindigkeit (Kacheln pro Sekunde), z.B. für ein einfaches Fließband sind es 4 * 1,875 = 7,5 Gegenstände pro Sekunde, für eine Seite. Für beide Seiten wird sie verdoppelt, d. h. 15 Stück pro Sekunde.
  • Komprimierung. Wenn es keinen Leerraum zwischen den Gegenständen auf dem Fließband gibt, wird dies als vollständig komprimiert bezeichnet. Andernfalls ist die Komprimierung nur teilweise und es hat keinen optimalen Durchsatz. Objekte, die Gegenstände auf Bänder legen - Greifarme, Teilerfließbänder, andere Bänder, die von der Seite kommen, Erzförderer usw. - schaffen Platz für ihren Gegenstand, indem sie eine kleine Lücke vergrößern, bis sie genau groß genug für den Gegenstand ist. Das bedeutet, dass die Fließbänder natürlich vollständig komprimiert werden, bevor die Gegenstände anfangen, sich zu stauen.
  • Seiten. Fließbänder haben zwei parallele Seiten, und die Dichte und Geschwindigkeit jeder Seite ist konstant und unabhängig von der anderen, unabhängig von Windungen und Kurven. Daher verlassen Gegenstände auf der inneren Seite einer Kurve diese vor denen auf der äußeren Seite, da ihre Geschwindigkeiten gleich sind und die innere Seite kürzer ist als die äußere.

Bandgeschwindigkeiten

Mit den oben genannten Werten können wir die Geschwindigkeit und den Durchsatz der drei Bandtypen berechnen. Messungen bestätigen diese Werte.

Fließbandtyp Geschwindigkeit Durchsatz
Faktor Kacheln/Sek Eine Seite, Gegenst./Sek Eine Seite, Gegenst./Min Beide Seiten, Gegenst./Sek Beide Seiten, Gegenst./Min
Transport belt.png
Fließband
1 1.875 7.5 450 15 900
Fast transport belt.png
Schnelles Fließband
2 3.75 15 900 30 1800
Express transport belt.png
Express-Fließband
3 5.625 22.5 1350 45 2700

Gegenstände auf Fließbändern

Wie bereits erwähnt, nehmen Gegenstände auf Fließbändern Platz in Form von Dichte und Kompression ein. Allerdings befindet sich jeder Gegenstand auf einem Fließband zu jedem Zeitpunkt logischerweise auf genau einer Fließbandkachel.

Auch wenn es beispielsweise auf einem Screenshot so aussieht, als befände sich ein Gegenstand teils auf einer, teils auf der nächsten Kachel, wird er genau einer der beiden Kacheln zugeordnet:

  • Wenn man die Fließband-Kachel anhält, auf der sich der Gegenstand befindet, bleibt er stehen, ansonsten bewegt er sich weiter - es gibt keine Zwischenzustände.
  • Wenn man die beiden Fließband-Kacheln mit einem Schaltungsnetz verbindet und sie so konfiguriert, dass sie Angaben über die beförderten Gegenstände machen, wird der Gegenstand genau einer der beiden Kacheln zugeordnet.
  • Ein Greifarm kann nur Gegenstände aufnehmen, die sich logischerweise auf der Kachel vor ihm befindet, nicht aber Gegenstände, die von den benachbarten Kacheln aus hineinragen.

In diesem Sinne ist es hilfreich, sich Gegenstände als Punkte mit einem bestimmten Mindestabstand zwischen ihnen vorzustellen, und nicht als Dinge, die auf einer Fläche nebeneinander liegen. Für Fließbandberechnungen und Schaltungsnetze mit Fließbändern spielt es keine Rolle, wo diese "Mittelpunkte" innerhalb der Grafik des Elements liegen, aber sie scheinen in der Mitte zu liegen:

Belts-with-one-tick-offsets.png

Im obigen Bild wurden die Fließbänder mit einem Versatz von 1 Tick gestartet, dann wurden alle Kacheln der oberen Reihe auf einmal angehalten, wodurch die vordersten angehaltenen Elemente unterschiedlich weit herausragen. Die Elemente auf dem Fließband ganz links befinden sich fast auf halber Strecke in die nächste Kachel, was bedeutet, dass ihre Mittelpunkte am nächsten an der Kante der oberen gestoppten Kachel liegen.

Unten sieht man ein schematisches Beispiel, das einige Gegenstände zeigt, die sich über zwei gerade Schnelles Fließband-Kacheln bewegen, und wie ihre Lesesignale bei jedem Tick aussehen würden. Ihre Mittelpunkte sind mit * markiert. (Der Abstand zwischen Fließbandkachel 1 und 2 dient nur der Visualisierung - im Spiel gibt es keine solchen Lücken zwischen den Kacheln).

Tick  Band Kachel 1                    Band Kachel 2                     Lesen Band Kachel 1  Lesen Band Kachel 2
      |------------------------------| |------------------------------|     Puls   Halten       Puls   Halten
  0         <---*-->  <---*--> <---*-- ><---*-->            <---*-->         0       3           0       2
  1           <---*-->  <---*--> <---* --><---*-->            <---*-->       0       3           0       2
  2             <---*-->  <---*--> <-- -*--><---*-->            <---*--      0       2           1       3
  3               <---*-->  <---*--> < ---*--><---*-->            <---*      0       2           0       3
  4   ->            <---*-->  <---*-->  <---*--><---*-->            <--      0       2           0       2
  5   *-->            <---*-->  <---*- -> <---*--><---*-->            <      1       3           0       2
  6   --*-->            <---*-->  <--- *--> <---*--><---*-->                 0       2           1       3
  7   <---*-->            <---*-->  <- --*--> <---*--><---*-->               0       2           0       3
  8     <---*-->            <---*-->   <---*--> <---*--><---*-->             0       2           0       3

Fließbandpositionen und -längen

Diese sorgfältige Messung zeigt, dass die äußere Seite einer Kurve genau 1,15234375 mal länger ist als ein gerades Fließband, oder 295/256 im Bruchformat. Das bedeutet, dass jede gerade Fließband-Kachel 256 Positionen hat, an denen sich ein Element befinden kann, auch wenn eine Messung der Position mit dieser Genauigkeit nur indirekt möglich ist.

Hier sind die Geschwindigkeiten und Längen der verschiedenen Arten von Fließbandkacheln in Bezug auf diese Positionen:

Was Anzahl der Positionen
Geschwindigkeit einfaches Fließband pro Tick 8
Geschwindigkeit Schnelles Fließband pro Tick 16
Geschwindigkeit Express-Fließband pro Tick 24
Länge eines Gegenstands auf einem Band (jeglicher Geschwindigkeit) 64
Seitenlänge einer geraden Bandkachel oder eines unterirdischen Fließbandes 256
Eingangsseitenlänge eines Teilerfließbandes 179 (128+51)1
Ausgangsseitenlänge eines Teilerfließbandes 128
Länge der inneren Seite einer Kurve 106
Länge der äußeren Seite einer Kurve 295
Zurückgelegter Weg eines Gegenstandes, der weiter hinten seitlich auf
ein gerades Band oder unterirdisches Band geschoben wird
Sideload-late.gif 68
Zurückgelegter Weg eines Gegenstandes, der weiter vorne seitlich auf
ein gerades Band oder unterirdisches Band geschoben wird
Sideload-early.gif 188

(1)inklusive eines Puffers mit 51 Positionen [1]


Aus den obigen Zahlen lässt sich beispielsweise die Geschwindigkeit eines Fließbandes ableiten:

8 (Positionen pro Tick) / 256 (Positionen pro gerader Fließbandkachel) * 60 (Ticks pro Sekunde) = 1,875 Kacheln pro Sekunde

Der Durchsatz pro Fließbandseite beträgt:

8 (Positionen pro Tick) / 64 (Positionen pro Gegenstand) * 60 (Ticks pro Sekunde) = 7,5 Gegenstände pro Sekunde

Siehe auch