Files
ATM10_CC_Codes/README.md
T

4.9 KiB

ATM10 CC Control System

Modulares CC:Tweaked-Steuerungssystem fuer die ATM10-Megabase.

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.