Jump to content

Die Wartungsarbeiten sind abgeschlossen. Sollten Fehler festgestellt werden, können diese gerne im Forum gemeldet werden, dass wir sie beheben können. [29.07.20 - 19:40]

JAvaMafia

Kühlung abschalten

Recommended Posts

Hallo,

 

ich habe das folgende IC Programm in Verwendung, auf der Map Vulkan.

alias Gas.Sensor1 d0
alias Gas.Sensor2 d1
alias MemoryA d2
alias RegTemp1 r0
alias Temp.Switch r1
alias Temp.Target r2
alias Mem.Status r3

move Temp.Target  298
start:
l RegTemp1 Gas.Sensor1 Temperature

cool:
l Mem.Status MemoryA Setting
add Temp.Switch Temp.Target 10
sge Temp.Switch RegTemp1 Temp.Switch
or Temp.Switch Temp.Switch Mem.Status
s MemoryA Setting Temp.Switch
sge Temp.Switch RegTemp1 Temp.Target
beq Temp.Switch 1 restart
s MemoryB Setting 0

restart:
yield
j start

Es soll nur gekühlt werden. Das klappt auch so weit ganz gut. Jetzt bin ich schon seid mehreren Tagen am versuchen. das die Kühler nur dann an gehen, wenn die Außentemperatur kleiner 180°C ist. Wenn dei Temperatur außen größer ist, hole ich mir die Wärme in meine Basis.

Bekomme es zwar hin das mir was abgeschalten wird, wenn die Temperatur zu hoch ist. Aber ich bekomme es nicht in das Programm eingefügt.

 

Hoffe man kann mir hier weiter helfen.

Share this post


Link to post

Huhu und Willkommen im Forum,

erstmal nur für das Verständnis:

  • Du möchtest deine Basis kühlen, wenn die Außentemperatur gering genug ist, damit du keine Wärme aus der Luft außerhalb der Basis ziehst?
  • Hast du normale Klimaanlagen oder arbeitest du über ein Rohrsystem mit Radiatoren + Ventilatoren (die Kühleinheiten) und lässt die Radiatoren dann die heiße Luft des Kühlgases mit der Außenluft ausgleichen?
  • Verwendest du einen Batch Writer (Verbundschreiber) um alle Maschinen zur Kühlung gleichzeitig zu bedienen?

Ich kann mich gerne mit ransetzen und eine Lösung erarbeiten ?
So spontan würde ich wie folgt vorgehen:

  • Je einen Gassensor für Außen- und Innentemperatur
  • Ventilatoren / Klimaanlagen für die Kühlung des Raumes
  • Radiatoren außen an der Station, die mit dem Rohrsystem der Ventilatoren / Klimaanlagen verbunden sind, um die Abwärme abzutransportieren
  • Einen Batch Writer (Verbundschreiber) aufbauen, der ein Signal vom Programm empfängt (1 / 0) und das an alle angeschlossenen Ventilatoren / Klimaanlagen senden
     
  • Prüfen ob die Außentemperatur niedrig genug ist
  • Wenn die Außentemperatur niedrig genug ist die Innentemperatur prüfen
  • Wenn die Innentemperatur über dem Wunschwert ist die Kühlung starten bis zum Wunschwert (Kühlung erst dann wieder starten, wenn ein Puffer oberhalb der Wunschtemperatur erreicht ist bspw. + 10° K)
  • Die Kühlung abschalten sobald der Wunschwert im Raum erreicht wurde

Gruß Philip

P.S. Unter 

 findest du eine kleine Anleitung von mir, wie man automatisch heizt und kühlt, um die Raumtemperatur stabil zu halten. Verwendet werden hier die Wall Cooler (Ventilatoren) und die Heizungen. Du kannst ja mal reinschauen, wenn du möchtest und dir Ideen holen. Man müsste die Steuerung nur umbauen, um auch einen Außensensor abzufragen.

Kleiner Tipp: Wenn ich dich nicht falsch verstanden habe reichen ein paar Wall Cooler aus, die die Raumtemperatur nach außen transportieren. Das Rohrsystem selbst gibt zwar etwas Wärme ab, wenn die Kühlgase zu heiß sind, aber das hält sich normal in Grenzen. Damit ist es prinzipiell egal wie warm es draußen ist, weil einfach nur die Kühlleistung sinkt, wenn die Gase im Rohr zu heiß sind.
Die Rohre müssen natürlich erst einmal mit Gas gefüllt werden (es empfiehlt sich in der Regel das X-Gas / Pollutant, weil es ohnehin "Abfall" ist und angeblich die beste Wärmeleitung bietet).

Bin aber natürlich auch da, wenn du gar nicht weiter kommst ?

Share this post


Link to post

Hi,

 

ja du hast mich richtig verstanden, das ich erst dann kühlen möchte wenn die Außentemperatur kleiner 180°C ist.

Ich nutze bis jetzt in jedem Raum Wallcooler, denn ich bekomme mit der Klimaanlage keine stabile Temperatur hin. Hatte die bis jetzt immer so aufgebaut, die Klimaanlage, das die mir die Luft aus allen Räumen runter kühlt, aber habe es oft Mals das dann ein Raum sehr kalt ist und die anderen noch warm sind. Bin aber gerne für Tipps offen, was das arbeiten mit den Klimaanlagen angeht.

 

Gruß Sascha

Share this post


Link to post

Alles klar 🙂

Wie du vllt gelesen hast sind wir aktuell mit Wartungsarbeiten der Server beschäftigt. Ich überlege mir eine Schaltung und schreibe dir dann morgen oder Montag nochmal einen Vorschlag. Ich habe Stationeers aktuell leider nicht mehr installiert, ich teste die Schaltung also erstmal nur theoretisch.

P.S. Ich habe mal schnell was zusammengeschustert, hatte aber noch keine Zeit es zu testen, wenn du möchtest kannst du es mal probieren:

  • GasSensor1 ist der Raumsensor
  • GasSensor2 ist der Außensensor
  • Memory ist ein Logic Memory Kit
alias GasSensor1 d0
alias GasSensor2 d1
alias Memory d2

alias Toggle r0
alias Temp1 r1
alias Temp2 r2

start:
# read temperatures and current memory setting
l Temp1 GasSensor1 Temperature
l Temp2 GasSensor2 Temperature
l Toggle Memory Setting

# if memory is 0 jump to activate
beqz Toggle activate
# if memory is not 0 jump to deactivate
j deactivate

# check conditions and activate if possible
activate:
# if the outside is > 179,85 C restart
bgt Temp2 453 restart
# if the room is < 24,85 C deactivate
blt Temp1 298 deactivate
# if in temp range start coolers
s Memory Setting 1
j restart

# check conditions and deactivate if needed
deactivate:
# if outdoor is < 179,85 C check room
brlt Temp2 453 4
s Memory Setting 0
j restart
# if room is > 21,85 C restart
bgt Temp1 295 restart
s Memory Setting 0
j restart

restart:
yield
j start
  1. Lade Innentemperatur in Temp1
  2. Lade Außentemperatur in Temp2
  3. Lade den Wert aus Memory in Toggle
  4. Wenn Memory = 0, dann springe zu activate, ansonsten (Memory != 0) springe zu deactivate

activate:

  1. Wenn die Außentemperatur größer als 179,85° C ist, dann springe zu restart
  2. Wenn die Raumtemperatur kleiner als 24,85° C ist, dann springe zu deactivate (erst hier wird geprüft ob wir unterhalb des "Pufferwertes" von 21,85 ° C sind. So verhindern wir ein Geklacker, weil erstmal bis auf 21,85 ° runtergekühlt wird bevor tatsächlich abgeschaltet wird
  3. Wenn beide Voraussetzungen fehlschlagen (die Außentemperatur ist also unterhalb von 179,85 ° und die Raumtemperatur ist über 24,85 ° dann setze Memory auf 1)
  4. Springe zu restart

deactivate:

  1. Wenn die Außentemperatur < 179,85° C liegt prüfe die Raumtemperatur (brlt = relativer Sprung 4 Zeilen weiter, Kommentarzeilen werden mitgezählt), ansonsten (> 179,85°) setze Memory auf und springe zu restart
  2. Wenn die Raumtemperatur noch > 21,85 ° C ist dann springe zu restart, ansonsten setze Memory auf 0 und springe zu restart

restart:

  • selbsterklärend, das kennst du ja schon. Warte 1 Servertick und springe wieder nach oben zum Start

 

Das Logic Memory Kit wird an den Eingang eines Batch Writer (Verbundschreiber) angeschlossen, der diesen Wert an die An/Aus Variable der Kühler überträgt, wir steuern damit also ob die Kühler an oder aus sind.

Die Kühler werden quasi nur angeschaltet, wenn die Außentemperatur < 180° C und die Raumtemperatur > 25° C ist. Wenn der Kühler läuft wird geschaut ob die Außentemperatur noch niedrig genug, also < 180° C und die Raumtemperatur noch oberhalb unserer Pufferschwelle, also > 22° C ist.
Bei jedem Neustart werden dann sowohl die Temperaturen als auch der aktuelle Zustand des Memory Kit ausgelesen und somit jede 1/2 Sekunde neu bewertet und entsprechend gesteuert.

Beim durcharbeiten ist mir spontan jetzt kein Denkfehler aufgefallen, ich kann aber nicht garantieren, dass nicht doch irgendwo der Wurm drin ist, dafür müsste ich das Script erst testen. Den Test schaffe ich aber, wie gesagt, leider erst morgen oder am Montag

Share this post


Link to post

Danke 😀

 

das Programm klappt super.

Habe das auch für zwei innen Sensoren umgestellt. Werde morgen mal versuchen, ob ich das so hin bekomme, dass es mit einer Differenz arbeitet. Also erst wieder schalten, wenn die eingestellte Temperatur + 5°C ist.

Denn jetzt wird geschalten sobald der Wert wider erreicht ist.

 

Muss auch sagen das sich was geändert hat seid deiner letzten Folge. 😉

 

LG Sascha

Share this post


Link to post

Super, wenn es funktioniert 🙂

Dass die Kühler angehen sobald die Raumtemperatur überschritten wird ist Absicht, du könntest natürlich einfach den Abfragewert bei activate (298) auf 302 setzen. Dann prüft er eine Abschaltung unterhalb von ~28 °C, die aber erst durchgeführt wird, wenn der Raum < ~ 22 °C ist. Somit würden die Kühler erst anschalten, wenn du > ~ 28° C bist.

Ja im Spiel ändert sich während der Entwicklung regelmäßig was 😛 Leider sind viele von den älteren Videos stellenweise veraltet.

Gruß Philip

Share this post


Link to post

Hatte gerade gesehen, das bei activate und deactivete unterschiedliche Temperaturen stehen. Haber das beim übertragen übersehen. 😊

 

LG Sascha

Share this post


Link to post

Ja genau, damit habe ich quasi den "Puffer" umgesetzt ohne noch zusätzliche Berechnungen im Code zu haben 😛 Der Teufel liegt manchmal im Detail

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Beachte auch unsere Privacy Policy.