8.7 KiB
ATM10 CC Control System
Modulares CC:Tweaked-Steuerungssystem fuer die ATM10-Megabase.
Create Factory Scheduler V1
create_factory_scheduler.lua ist der persistente Nachfolger des Logistiktests.
Der funktionierende create_factory_test.lua bleibt als Rueckfallstand erhalten.
delete create_factory_scheduler.lua
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_factory_scheduler.lua create_factory_scheduler.lua
create_factory_scheduler
Neue normale Module und Rezepte werden oben in der Tabelle RECIPES registriert.
Die Scheduler-Logik muss dafuer nicht veraendert werden. Mehrstufige oder zufaellige
Produktionsketten erhalten einen benannten Planner. V1.2 nutzt einen gemeinsamen
Metall-Planner fuer Asurine -> Zinc und Crimsite -> Iron. Im AUTO-Modus haelt der
erste Keep-Stock-Regler kleine Cogwheels, grosse Cogwheels und Iron Nuggets auf
jeweils 64 Stueck. Mixer-, Casing- und Precision-Rezepte sind ueber blätterbare
Rezeptseiten erreichbar.
Seit V1.3 erzeugt der Scheduler fehlende Zwischenprodukte als persistente
Vorauftraege. Beispielsweise wartet ein Andesite-Casing-Auftrag automatisch auf
fehlendes Andesite Alloy. presse:1 bis presse:6 bilden einen gemeinsamen Pool
fuer Gold-, Iron-, Copper-, Brass-, Zinc- und Steel-Plates. Precision Mechanisms
verwenden in ATM10 alltheores:gold_plate. Ihre lokalen Deployer-, Chute- und
Vault-Puffer werden durch Factory Gauges versorgt; der globale Keep-Stock fuellt
verbrauchte Cogwheels und Iron Nuggets parallel wieder auf.
V1.3.2 synchronisiert Vorauftrag und Hauptauftrag explizit: Das erzeugte Material wird erst freigegeben, nachdem der Vorauftrag seine Ankunft registriert hat. So kann ein nachfolgender Auftrag den neuen Bestand nicht mehr im selben Tick wegnehmen und dadurch einen falschen Retry oder Fehler ausloesen.
V1.4 bindet die Advanced-Peripherals-ME-Bridge als geschuetzten Fallback ein.
Vorhandener Create-Bestand und Create-eigene Produktionsketten haben weiterhin
Vorrang. Nur externe, im Create-Netz fehlende Rohstoffe werden in exakt der
fehlenden Menge aus dem ME in sophisticatedstorage:chest_0 exportiert. Diese
erste Stufe startet bewusst noch kein ME-Autocrafting.
V1.5 ergaenzt Ore-/Tag-Substitution fuer vereinheitlichte Materialien. Ingots,
Nuggets, Plates, Dusts, Gears, Rods und Clumps werden ueber ihre gemeinsamen
c:-Tags erkannt. Dadurch sind beispielsweise create:brass_ingot und
alltheores:brass_ingot fuer Lagerzaehlung, Create-Versand und ME-Export
gleichwertig. Eindeutige Create-Bauteile verwenden weiterhin exakte IDs.
Create-Fabrik: Peripherie erkennen
Das rein lesende Diagnoseprogramm herunterladen und starten:
delete create_factory_debug.lua
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_factory_debug.lua create_factory_debug.lua
create_factory_debug
Es erzeugt auf dem CC-Computer die Datei factory_peripheral_debug.txt. Darin
stehen alle verbundenen Peripherien, Methoden, Frogport-Adressen sowie abrufbare
Paket-, Inventar- und Stock-Ticker-Daten. Das Programm versendet keine Pakete und
veraendert keine Redstone-Ausgaenge.
Erster Logistik-Funktionstest
Nach erfolgreicher Erkennung kann der Monitor-Testcontroller installiert werden:
delete create_factory_test.lua
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_factory_test.lua create_factory_test.lua
create_factory_test
Der Controller zeigt automatisch alle Items des Stock-Ticker-Netzes auf
durchblaetterbaren Lagerseiten und bietet doppelt zu bestaetigende
Testbestellungen fuer crushing, saw:1 und saw:2. Pro Verarbeitungslinie
bleibt nur ein Auftrag aktiv, bis sein Ergebnis im Lager erkannt wurde. Er
steuert noch keine Clutches oder sonstigen Redstone-Ausgaenge.
Als erster generischer Fan-Prozess ist fan:washing enthalten. Der Testauftrag
verarbeitet 64 vereinheitlichte Zinc Clumps zu mindestens 576 Zinc Nuggets; das
zufaellige Gunpowder-Nebenprodukt erscheint automatisch in der Lagerliste.
Zielbild
- zentrale Leitwarte fuer Status, Energie, Alarme und Sektor-Hauptschalter
- lokale Sektorcontroller fuer Create, Mekanism, Greenhouse und spaetere Mods
- Sicherheitslogik bleibt immer im jeweiligen Sektor
- versionierte Installation und Updates ueber Gitea
Installation auf einem CC-Computer
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/install.lua install.lua
install
Der Installer ist momentan ein Bootstrap. Hardwaretreiber und konkrete Anlagenlogik werden ergaenzt, sobald die Peripherie- und Methodennamen der gebauten Anlagen feststehen.
Einfache Create-Boiler-Anzeige
Fuer die erste Kraftwerksanzeige werden ein Monitor sowie pro Boiler ein Block Reader aus Advanced Peripherals benoetigt. Mindestens ein weiterer Block Reader zeigt auf das Create- Speedometer oder Stressometer der gemeinsamen Hauptwelle. Alle Reader und der Monitor werden ueber Wired Modems mit dem Computer verbunden. Installation und Start:
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_boiler_display.lua create_boiler_display.lua
create_boiler_display
Das Programm liest Online-Status und Heizmodus jedes Boilers ueber dessen Block Reader. Drehzahl, Kapazitaet, Verbrauch und Auslastung liest es aus den Netzwerkdaten des Gauge-Readers. Die Monitoraufloesung wird automatisch erkannt und die groesste passende Textskalierung gewaehlt. Ein Boiler ohne Wasserversorgung oder angeschlossene Engine wird als IDLE angezeigt, selbst wenn eine Campfire- oder Blaze-Burner-Waermequelle erkannt wird.
Clutch-Teststeuerung
Die linke Seite des Computers ist als Redstone-Ausgang fuer die Test-Clutch konfiguriert.
Zwischen Ausgang und Clutch sitzt eine Redstone-Fackel als Fail-safe-Inverter: Ausgang ON
bedeutet PRODUCTION: RUNNING; Ausgang OFF, Programmabbruch oder Computerneustart bedeutet
PRODUCTION: STOPPED. Die Verbindung kann direkt oder ueber Create Redstone Links erfolgen.
Der gewuenschte Zustand wird nach jeder Touch-Bedienung in create_boiler_state.txt gespeichert.
Beim naechsten Programmstart wird er wiederhergestellt. Fuer automatischen Start nach einem
Computer- oder Weltneustart kann das Startprogramm als startup.lua installiert werden:
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_boiler_startup.lua startup.lua
reboot
Waehrend der Computer aus ist, bleibt die Hardware durch den Fackel-Inverter abgeschaltet. Erst nach erfolgreichem Programmstart wird ein zuvor gespeicherter RUNNING-Zustand wieder aktiviert.
Die Boiler werden nicht anhand wechselnder Peripheral-Namen, sondern fest ueber ihre
Controller-Koordinaten 11266/64/10810, 11260/64/10810 und 11254/64/10810 zugeordnet.
Fehlt ein Reader, bleibt dadurch exakt die betroffene Boiler-Zeile auf MISSING / NO READER.
Jeder Block Reader muss direkt auf den Controller-Tank seines Boiler-Multiblocks zeigen.
Andesite-Alloy-Produktion
Der erste lokale Create-Produktionscontroller ueberwacht einen Zink-Nugget-Vault, einen
Andesite-Alloy-Vault und die per Clutch geschaltete Produktionsanlage. Die beiden Vaults muessen
jeweils direkt ueber einen aktivierten Wired Modem Full Block als Inventory-Peripheral mit dem
Computer verbunden sein. Der Redstone-Ausgang left steuert die Clutch ueber einen Fail-safe-Inverter:
Redstone ON schaltet die Fackel aus und gibt die Welle frei; bei Redstone OFF, Programmabbruch
oder Computer-Ausfall stoppt die Fackel die Welle.
Installation und erster Start:
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_andesite_display.lua create_andesite_display.lua
create_andesite_display
Der Controller erkennt die Vaults anhand von create:zinc_nugget und
create:andesite_alloy und speichert ihre Peripheral-Namen. Die Freigabe wird ebenfalls
gespeichert. Fehlendes Zink, ein voller Ausgang oder fehlende Vault-Daten schalten die
Produktionsanlage ab; nach Behebung wird eine weiterhin freigegebene Anlage automatisch
fortgesetzt. Globale RPM-, Kapazitaets- und Stresswerte gehoeren in den spaeteren Create-
Serverraum, da ein Stressometer immer das gesamte zusammenhaengende kinetische Netzwerk misst.
Fuer den automatischen Start:
wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_andesite_startup.lua startup.lua
reboot
Struktur
core/ Laufzeit, Netzwerk, Protokoll, Logging, Updates
drivers/ Adapter fuer Redstone und Mod-Peripherie
roles/ Zentrale und Sektorcontroller
ui/ Monitore, Widgets und Alarmdarstellung
config/ Konfigurationsvorlagen
docs/ Architektur- und Protokolldokumentation
Sicherheitsprinzip
Die Zentrale fordert nur einen Zielzustand an. Lokale Controller fuehren sichere Start-/Stoppsequenzen aus und bestaetigen den tatsaechlichen Zustand.