【Factorio】Traindeadlock – orsaker och undvikelsekonstruktion
När tåg stannar vid korsningar eller stationsfronter beror det nästan alltid på en av tre orsaker: \"signalplacering\", \"korsningskapacitet\" eller \"otillräcklig väntebostad på stationsfronten\". I Factorio vanilla v2.0 och Space Age fungerar järnvägsprinciperna på samma sätt, så genom att organisera dessa tre punkter kan du förhindra deadlocks mycket effektivt.
【Factorio】Traindeadlock – orsaker och undvikelsekonstruktion
När tåg stannar vid korsningar eller stationsfronter beror det nästan alltid på en av tre orsaker: "signalplacering", "korsningskapacitet" eller "otillräcklig väntebostad på stationsfronten". I Factorio vanilla v2.0 och Space Age fungerar järnvägsprinciperna på samma sätt, så genom att organisera dessa tre punkter kan du förhindra deadlocks mycket effektivt.
Första gången jag kopplade flera gruvor tog väntekön framför stationen vägen om förgreningen och stoppade hela linjen. När jag omgjorde väntebostaden efter vagnarnas längd och ändrade signalerna framför korsningen till kedjor, återhämtade sig flödet omedelbar.
Den här artikeln organiserar användbarheten av vanliga signaler och kedjsignaler som grund, och förklarar i ett sammanhang vilka villkor du ska välja enspårig, tvåspårig, rondell eller väntebostad. Istället för att designa och sedan fixa täpp, är det här innehållet praktiska steg för att inte skapa täpp redan under designfasen.
Målversion och förkunskaper
Tydlig målversion
Den här artikeln behandlar Factorio vanilla v2.0 och Space Age. Space Age är en betald DLC som enligt Factorio Wiki släpptes den 21 oktober 2024.
Det viktiga är att "tågdeadlock-motåtgärder" – det här artikelns huvudämne – har nästan identiska grundprinciper i både vanilla v2.0 och Space Age. Principen att placera kedjsignaler före korsningar och låta tåg passera är direkt användbar. När jag expanderade ett befintligt värld i v2.0 och behövde omvärdera gamla banor, gällde samma princip: förskjut korsningarnas ingångar mot kedjsignaler. Här spelar versionslogik mindre roll än att designen är konsekvent.
Å andra sidan växer fabrikens logistikskala i Space Age ofta större, vilket innebär att fler tåg kan rulla på nätverket. Med andra ord försämras tigheten mer när signalprinciper blir slarviga, snarare än att signalernas grundläggande regler förändras.

Space Age/ja
wiki.factorio.comDenna artikels omfattning och förkunskaper
Från nästa avsnitt behandlar vi uteslutande järnvägscentrerad deadlock-motåtgärd. Konkret handlar det om korsningar, förgreningar, enspåriga utfarter, tvåspåriga ombyggnader, stationsfrontsväntebostad, rondeller och tåggränser för inflödesstyrning – allt fokuserat på spårnätverksdesign.
Vi går däremot inte in på detaljer om interplanetär logistik eller spacebaserade nätverknätverk i Space Age. Det är ett intressant område, men kärnan i denna täpp-problematik ligger i att organisera på spåren "var tåg bör stanna och var de inte får stanna". Även om planeter ökar, om du använder en vanlig signal före en korsning stoppas du fortfarande; om stationsfronten saknar väntebostad täpper du fortfarande huvudlinjen.
En deadlock här betyder att tåg väntar på varandra utan slutliga vägar framåt. Det kan hända med bara två sammansättningar, och kräver ofta manuell förflyttning för att lösa. Även om det ser ut som "lite trångt", kan det faktiskt vara en permanent prioritetsstyrning-kollaps, så vi behandlar det inte på samma sätt som vanlig trängsel.
💡 Tip
Den här artikeln skiljer mellan "stopp orsakad av signalfel" och "kronisk täpp från kapacitetsbrist". Om signalerna är korrekta kan en för liten rondell eller för kort väntebostad fortfarande orsaka täpp. Denna uppdelning gör felidentifieringen mycket snabbare.
Miniordbok över termer
Låt oss ensa terminologin innan vi börjar. Vi kompletterar vid första omnämnandet i brödtexten, men det hjälper att sortera det mentalt tidigt.
Vanlig signal tittar på "får nästa block in tåget?". Det är lämpligt för raka avsnitt eller platser där vägen redan är enkel. Men om du använder det före förgreningar eller korsningar, tenderar tåg att halvvägs tränga in i korsningen och stanna.
Kedjsignal kollar inte bara nästa ruta utan om vägen till nästa vanliga signal eller station är helt fri innan den tillåter inmatning. Det är ungefär "om jag skulle stanna inuti, låt mig inte in överallt". Det är därför det är grundläggande att använda vid korsnings- och förgrenningsingångar.
Block är de låsta avsnitt som delas upp av signaler. Normalt får bara en sammansättning in i ett block. Tåg upprepar denna blockupptagen och -släpning när de rör sig, så när du tänker på deadlock är "hur delar du upp blocken" mycket viktigt. Faktiskt, när tåg blir täta hänger det oftare på hur blockuppdelningen är än på fordonens faktiska antal.
Med bara dessa tre koncept verkar det mycket naturligare att "kedjsignaler före korsningen, vanlig signal efter" är en standardregel.
Den här artikeln är en djupdykning i deadlock-motåtgärder, men när du vill sortera den kompletta järnvägsstrukturen som grund är det lättare att läsa tillsammans med pillar-topiketationen. Särskilt grunderna för tvåspår, stationsplacering, väntebostadsideer och signalroller fungerar bättre inom ramen för den övergripande nätverksdesignen än klipp enbart ur deadlock-motåtgärder.
Min intuition är också att deadlock inte kommer från ett enskilt fel utan från hur "korsningar", "stationsfronter" och "huvudlinjens kapacitet" hänger samman. Därför fokuserar varje avsnitt nedan inte bara på en reparation utan på det övergripande flödet av "var vi stoppar och var vi låter flöda".
【Factorio】Vad är deadlock? Förutsättningar att låta greppa först
Definition av deadlock och skillnaden från trängsel
En deadlock i Factorio är när tåg väntar på varandra utan slutlig väg framåt – en stillaståndsstat som inte kan lösas utan manuell förflyttning. Även om det bara verkar "lite trångt", är vägar faktiskt ömsesidigt blockerade och flödet återhämtar sig inte med tid. Enligt Factorio Wiki: Tutorial:Train signals kan detta hända med bara två sammansättningar. Det här är verkligen viktigt.
Trängsel är å andra sidan en situation där tåg är försenade men rör sig framåt när det blir fritt framför. Att en korsning inte hinner eller en station är långsam att ladda är besvärligt, men teoriskt löses det med tiden. Med andra ord: trängsel är "långsamt men framåt", deadlock är "vägen är faktiskt bruten och kan inte framåt".
Jag fastnade själv här. Varför täpper bara två tåg upp allt? Jag slösade timmar utan förståelse. Orsaken var enkel: min signalplacering tillät tåg att tränga in i korsningen från ett helt halt läge. Det handlade inte om tågantal utan var designen tillät stopp.

Tutorial:Train signals/ja
wiki.factorio.comTre vanliga uppkomstmönster
De deadlocks jag ofta ser kan sortera sig i tre:
Det första är väntande inuti korsningen. Om du lägger en vanlig signal före en förgrening eller korsning kommer ett tåg att tycka "nästa block är ledigt, så jag kan in". Som resultat tränger det långt in i korsningen, fastnar för att utgången är packad, och låser andra riktningar. Det här är det mest typiska mönstret – något alla gör.
Det andra är motsatt stillestånd på enspårig järnväg. Om enspårig järnväg saknar utfarter eller varvningar möts tåg från båda sidor på samma spår, låser varandra och förblir kvar. Enspår är billigt i början men kräver köprinciperdesign för att inte bli instabil. Med mer trafik blir detta väldigt tydligt.
Det tredje är stationsfronts väntande tar huvudlinjen. Om väntebostaden före stationen är kort eller obefintlig spiller väntande tåg ut på huvudlinjen eller förgreningar. Då skapar det en kedjeeffekt: det var bara stationstäthet men nu täpper väntebostaden hela nätverket. Faktiskt är det "stationsproblemet" + "huvudlinjeproblem" sammanslaget.
De tre är lätt separerade men har en gemensam rot: designen kontrollerar inte var tåg kan stanna. Oavsett om det är korsning, enspår eller stationsfronten ger samma slarviga design en fullständig stopp.
💡 Tip
Deadlock-motåtgärd är mer om begränsa där tåg stannar än "lägg inte för många tåg". Eftersom det händer även med få tåg är det stoppplaceringen som verkar först.
Hur man identifierar på plats
När du ser det på kartan är det snabbare att se var tågets fram stannar än att räkna antalet tåg. Jag spårar främre vagnen första. Bara detta ger mycket information om det är signalfel eller kapacitetsbrist.
Det viktiga är mellan vilka signaler tåget stannar. Om det stannar inuti korsningen, på förgreningen eller direkt efter en sammanflöde är det troligt att inmatningskriterierna är lösa – en "stanna inuti"-design. Omvänt, om det står ordnat långt innan korsningen är signaltankesättet rätt; nu misstänker vi snarare behandlingsförmåga eller vänteplats.
En annan sak att se är om stanningen är före eller inuti korsningen. Ett tåg som stannar före det har i alla fall "om jag inte kan ut, går jag inte in"-logiken. Ett som stannar inuti har redan rätten att blockera andra riktningar. Det här är större än utseendet antyder.
Vidare, sträcker väntekön från stationen in på huvudlinjen eller förgreningar? Om stationsfrontsväntebostaden är för kort kommer huvudsammansättningen att stå i stationen men det sista tåget i kedjan tar upp förgreningen. På plats är det ofta mer effektivt att leta efter "var sista tåget är" än "vilket område är trångt".
Min erfarenhet är att deadlock ofta ser ut som ett överflöde på kartan men faktiskt beror på "ett tåg som stannade inuti korsningen" eller "ett väntandes sista vagn på förgreningen". Därför är observationens startpunkt exaktheten i stoppplatsen inte antalet tåg. När detta blir synligt blir också reparationsstället mycket tydlig.
Deadlock-orsak 1: Signalplaceringsfel
Skillnad mellan vanlig signal och kedjsignals beteende
Det här är lätt att blanda ihop på namn men beteendet är väldigt tydligt. Vanlig signal kollar bara "nästa block". Om nästa kvadrat är fri skickar den igenom, så även om korsningen eller förgreningen innanför är fri släpps tåget in. Problemet är att den låter tåg in även om utgången täpper senare. Tåget stoppas då inuti korsningen och blockerar även tåg från andra håll.
Kedjsignal kollar istället "kan vägen framåt passeras helt" innan den tillåter inmatning. Enligt Factorio Wiki: Tutorial:Train signals kollar den nästa vanliga signal eller station och beslutar inmatning utifrån detta. Det vill säga, **kan jag stanna inuti eller kan jag gå igenom helt?**
Denna skillnad är enorm vid korsningar. En korsning gjord med bara vanliga signaler ser säker ut men blir ofta en "kan stanna inuti"-design. Jag själv förstod inte detta från början – jag såg röda lampor men fattar inte vad som var fel. Det är bara att ha signaler och kunna stanna korrekt som är två olika saker.
Förgre-/korsnings-grundregel
Grundregeln är väldigt enkel. Före förgrening eller korsning: kedjsignal, efter utgång: vanlig signal. Det kallas ibland "chain in, rail out". Med bara detta kan du eliminera många inledande deadlocks.
Anledningen är tydlig: före korsningen måste bara "tåg som kan passera helt" släppas in. Korsningens insida är inte en vänteplats. Omvänt, efter korsningen vill vi återgå till vanlig blockhantering, så vanlig signal är grundläggande. På detta sätt ställer sig tåg upp utanför korsningen medan insidan blir en ren transitzon.
Det klassiska exemplet från officiella Wiki visar att om flera signaler före korsningen är vanliga kan tåg stanna på korsningen. Genom att ändra dessa till kedjsignaler blir inmatningsvillkoren strängare och tåg stannar mindre ofta innanför. Från min erfarenhet har de flesta täpp-korsningar inte för få signaler utan för lösa inmatningskriterier.
💡 Tip
Jag kollar när en korsning täpper inte "vilket tåg är dåligt" utan "hade detta tåg rätt att komma in?". Med kedjsignaler i ingången blir denna uppdelning mycket enklare.
Kort utgångssektion – gör utgången också till kedjsignal
Grundregeln säger utgångsida är vanlig signal, men här finns ett praktiskt undantag. Om området direkt efter korsningen är kort. Om en annan förgrening, sammanflöde eller stationsingång kommer omedelbar och kan inte ta en hel sammansättning, och du gör utgången till vanlig signal, uppstår ofta "tillåten att lämna men svansen stannar inuti"-läge.
I sådana designs är det bättre att göra utgången också till kedjsignal och bara låta igenom när vägen till längre fram är helt fri. Gemenskapens "använd chain-out på kort utgångssektion"-princip beror på detta. Med andra ord: korsningens fysiska utgång är inte den faktiska utgången. Tåget måste få plats helt i säkerhetszonen.
Själv gjorde jag detta många gånger med små sammanflöden före stationen. Om jag sätter en vanlig signal direkt efter utgången kommer tåget att röra sig så fort det blocket är fritt, vilket lämnar tågöverst kvar inuti. Genom att göra utgången till kedjsignal lugnas allt plötsligt. Det ser ut som en liten justering men effekten är stor.
Vanliga felplaceringar och reparationssteg
Den vanligaste felplaceringen är att göra alla korsningsingångar till vanliga signaler. Om man lägger signaler på räta vägen blir det naturligt. Men vid korsningar slår det ofta deras motsats.
Reparationen är enkel. För en täpp korsning, prova denna ordning:
- Kontrollera signalen direkt före förgre-/korsningen
- Om den är vanlig signal, byt till kedjsignal
- Placera vanlig signal på utgångsida av korsningen
- Om utgångssektionen är kort till nästa förgrening eller stationsingång, gör även utgångssidan till kedjsignal
- Verifiera att tåg väntar före – inte inuti – korsningen
Det viktiga är inte att lägga fler signaler utan att **skjuta väntan utanför korsningen. I mitt eget nät, när jag bara byter korsningsingångssignalen till kedjsignal brukar flödet återhämta sig utan manuell åtgärd. Känslan är mindre "gjorde signalen smart" och mer gjorde inmatningskriterierna strängare för att förhindra olyckor**.
Deadlock-orsak 2: Korsnings- och rondellkapacitet
Rondellstorlek och tågantal
Det elaka här är att även med korrekt signalering kan en alltför liten rondell täppas. Tidigare tal var "släpp inte in tåg som inte bör vara innanför", nu är problemet att det inte finns plats för det tåg vi släppt in. Rondeller ser snygga ut och knyter fyra vägar enkelt, så man vill använda dem från början. Jag använt många.
Men när trafikvolymen ökar tenderar små rondeller att få flera tåg från olika håll, de väntande inne blir stänga av utgångar, och inmatningen blir helt röd. Enligt Factorio Wiki kan deadlock hända med bara två tåg. Det är inte bara ett storskalighetsproblem.
Särskilt farligt är när ett tåg inne på rondellen väntar på utgång, vilket stoppar nästa inmatning, och väntekön på huvudlinjen växer vidare. Ju mindre rondell desto lättare händer denna kedjereaktion, och när den väl täppas tar det tid att lösa. Känslan är att rondellen blir mindre en "trafikplats" och mer en "cirkulär återvändsgränd".
Gemenskapen säger ofta "om rondellen är för liten för den längsta sammansättningen blockerar tåget sig själv". Själv gjorde jag detta – skapade en liten rondell med korta tåg i åtanke, la in längre senare och fick total stopp. Designen som fungerade slutar fungera när tåglängd eller antal förändras – det är rondellernas fara.
"Bara ett tåg in" – designens för- och nackdelar
En tydlig motåtgärd för rondellproblem är bara släppa in en sammansättning åt gången. Med kedjsignaler i ingång begränsas strikt, så rondellen inte är full av flera tåg samtidigt. Det är mycket säker design som i stort sett garanterar "ingen ömsesidig blockering innanför".
Fördelen är klar. Rondellens insida blir nästan ren transit, väntande inuti minskar mycket, och det är lätt läsa vad som händer. Om problem uppstår väntar tåg "före" inte "innanför", så felidentifiering blir mycket enklare. I multi-miljöer kan detta "lätt brott"-beteende faktiskt vara viktigt.
Men nackdelen är tydlig. Tåg som inte får in på rondellen väntar utanför. Säkerhet ökas men väntekön skjuts ut. En fin rondell innanför hjälper inte om väntandet utanför spiller över till stationsfront eller förgrening och täpper något annat.
Denna design är rondell-bra men nätverks-klyftigt. Det blir en fråga om var vänteplats placeras. Om rondellen inte tar emot måste väntandet absorberas någon annanstans – vid stationer eller från sidor.
💡 Tip
Själv gjorde jag rondellen större och la kedjsignaler före för att bara låta in när ledigt är synligt. Det minskade stoppandet märkbar. Men då behövdes mer väntebostad före stationen.
Om väntandet växer, öka väntebostaden före stationen
Ju strängare rondellen blir desto längre väntekedjor på huvudlinjen. Det är här stationsväntebostad – "stackers" – kommer in. Tanken: stoppa på väntebostaden, inte på huvudlinjen.
Idéen är enkel: om man måste vänta, gör det på utfarten, inte på huvudvägen. Station tom, ladding långsam, rondellutgång packad – sådan väntan på huvudlinjen kopplar stationsträngsel till korsningskapacitet. Med väntebostad före kan huvudlinjen flöda och korsningar lugna sig.
Väntebostaden måste ta den längsta sammansättningen helt. Enligt community-design måste detta vara bas – kort väntebostad är "verkar vänta men täpper förgreningen" – värsta av världar.
En 1-4-0 sammansättning kräver ungefär 37 tiles enligt community-mätningar (inte officiellt). Hellre än att memorera siffror, se till att en full tågsammansättning är helt dold, utan att svanspetsen vidrör nästa signal eller förgrening.
Väntebostadsantal kontra stationsantal är också viktigt. Om två stationer tar likforma tåg men väntebostaden bara tar en, fullsamlas en ingång när båda kommer samtidigt. Omvänt, med två väntebostader innan två utgångar sprider sig väntandet.
Att öka väntebostad tar plats och ser större ut. Men om man sparar på det äter väntandet huvudlinjen upp och allt signalarbete försvinner. Att med flit bygga vänteplats kopplar direkt till kapacitetsökning. Rondellstyrning och väntebostad före stationen är två sidor av samma mynt.
💡 Tip
Jag kallar väntebostad för "en låda per tåg". Många små vänteplaster är svagare än få långa som är stora nog för en hel sammansättning.
NG-layout felkällor: väntandes svans täpper förgrening / spiller på huvudvägen
Det vanligaste felet: väntebostaden verkar fungera men gör det inte faktiskt. Klassiskt: väntakedjans sista vagn står över förgreningen. Då blockerar väntandet på stationen själv vägen för andra tåg framåt. Ett tåg väntar på station men dess sista del blockerar ett helt andra väg.
Också farligt: väntekedjor på huvudlinjen. Väntebostaden skulle ta vänta men sträcker sig in på huvudvägen och blockerar genomgångsvägar.
Min stationsfix var precis detta – väntebostad på bara två vagnar, den väntande sträckte sig över förgreningen. Jag gjorde väntebostaden lagom lång och flyttade signaler så förgreningen inte berörs. Huvudlinjens flöde blev stabil direkt. Känslan var "inte ökade stationen" utan "separerade stationstäthet från huvudvägen".
Den här täppen ser ut från ovanifrån som röda signaler på stationen men är faktiskt väntebostads-kort. Ett litet tips: tågets sista vagn – inte huvudet – säger var problemet är.
💡 Tip
Väntebostad är "kan en sammansättning helt gömmas?" före "hur många kan jag placera?". En väl dimensionerad väntebostad per station är bättre än många korta.
Kretsövervakning / train limit grund
Att använda krets för att styra stations-train limit är starkt. Du aktiverar bara stationer som kan ta mottagning, stänger av fulla stationer från inmatning – mycket flexibelt och verkar bättre ju fler tåg. Men väntebostadsidéen försvinner inte. Faktiskt blir den ännu viktigare när kontrollen blir smart – öppna mottagningsslots och väntebostadsutrymme måste matcha.
Gemenskapserfarenhet säger att om totala öppna slots överstiger faktiska tåg är systemet stabilt (beror på design). Omvänt, om alla tåg är samtidigt "vägen finns men inget får in nu" spiller väntandet över allt.
Här hjälper väntebostad för att train limit bara styrning inte ersätter vänteplats. Även med smart limitering avgör väntebostad vart tåget väntar. Med limit före stationen hårt reglerad ändå måste väntandet absorberas någonstans – väntebostad eller huvudväg. Väntebostad löser var väntandet hamnar.
Själv använder jag ofta en krets-konfiguration där limit skiftar 0/1 baserat på stationsväntetryck. Det är stabilt för att varje station har flera väntplatser där. Limitering förbättrar dock inte systemet om väntebostaden fysiskt är liten. Tåglogistik är inte bara programvara – det behövs faktisk spårutrymme.
Enspår, tvåspår, rondell – vilket välja?
Enspårsval och vägnytjande-utfarter expansion
Enspår är mycket bra för tidiga faser med låg trafik eller provisoriska fjärrgruppsanslutningar. Det tar få spår så det är snabbt och billigt. Själv börjar jag ofta med enspår – för en långväg gruppanslutning är det snabbaste.
Men enspår behöver mötes-utfarter för att fungera praktiskt. Två motsatta tåg är lätta att täppa. Factorio Wiki säger deadlock kan ske vid lågt antal tåg, enspår är exemplet. Även om man planerar enkelriktning kan vänta och rutvalsväxlingar riva designen fort.
Att få effekt från utfarter är att inte bara en och sluta. Om trafiken växer kan man bygga om utfarten eller dela den innanför med signaler – detta utökar operationell kapacitet märkbart. Jag hade en grupp-väg som med två-tågs-kamp löste sig när jag gjorde utfarten tillräckligt långt, delade det, och kunde köra tre. Det här är viktigt.
Tips: se till att utfarten är långt nog att det hela tåget gömms, svansen berör inte huvudspåret. Kort utfart gömmer inte tåget riktigt. Längre men färre utfarter är ofta stabilare än många korta.
Dubbelspår-enkelvåg val
När trafiken växer är bas tvåspår med enkelvåg. Ena vägen är fram, andra tillbaka – fixerad. Detta är lätt för att frontkollision är borta från designen. Signallogik är också ren – förgreningar och sammanflöden läses enkelt.
Speciellt mittstadier, när gruvor, olja, deldelar växer, är enspårets "sparad räls" mindre värd än stabilitet och expanderbarhet. Nya stationer, nya grenar, nya korsningar – allt är lättare med tvåspår. I multimiljöer är enkelvågs-tanke också lätt att förstå och mindre olycksbenägen.
Stabil när trafiken växer – detta är tvåspårs styrka. Med väntebostad före stationen absorberar väntandet bra utan att huvudvägen stannar. Expand-planer? Börja redan tvåspår. Senare omvandling från enspår till tvåspår rör många stationer och förgreningar.
Min känsla är att när nät växer från "praktiskt" till "infrastruktur" börjar enspår plötsligt att kväva. Höjd till tvåspår är stabil grund.
Rondellval: villkor och ingångs-kedjsignal trick
Rondeller är bra för att få fyrvägsfrihet kompakt. Fyra vägar in/ut på litet utrymme, lätt att visualisera, många använder det som blueprint. En enkel korsning är mer begränsad, rondeller ger mer väg-frihet. Tidiga och mitt-stadier av "vi vill koppla allting" hjälpas av det.
Det viktiga är ingångs-kedjsignal strama kontroll. Precis som vid signalväxling inte låter tåg in om de skulle fastna – begränsa rondellens invånare. Gör ing
RinSeo
Factorio 2,000時間超。100駅以上の列車ネットワーク運用実績と Death World マラソンクリアの経験から、物流・防衛の実践ノウハウをお届けします。
Relaterade artiklar
Factorio tågscheman - inställning och automatisering【2.0 kompatibel】
Factorio tågscheman - inställning och automatisering【2.0 kompatibel】
Factorio järnvägssignaler och nätverksplanering
Factorio järnvägssignaler och nätverksplanering
Factorio tågsignaler – grundläggande|vanliga/kedjed och blockering
Factorio tågsignaler – grundläggande|vanliga/kedjed och blockering
【Factorio】Robotlogistik - Komma igång|Minimikonfiguration och placeringsdesign