Actions

Difference between revisions of "Solar Logic Circuits Guide"

From Unofficial Stationeers Wiki

(Added screenshot for accurate solar setup, and fixed the list of items that said "compare units" (they are min/max units))
(Removed the single-axis tracker as the orbital-mechanics have made it obsolete...)
 
(111 intermediate revisions by 38 users not shown)
Line 1: Line 1:
 
[[Category:Tutorials]]
 
[[Category:Tutorials]]
 
<languages />
 
<languages />
<translate>
 
 
 
== Disclaimer ==
 
== Disclaimer ==
  
 
Due to the frequency of game updates, all solutions are subject to change and may or may not be functional.
 
Due to the frequency of game updates, all solutions are subject to change and may or may not be functional.
  
----
+
The designs on this page are valid as of v0.2.3304.16432 (2022-06-06)
  
== Accurate Solar Setup ==
+
While this specific Guide calls out the sensor being place a specific direction(north), its not necessary to orient your sensors to a specific direction.
'''Authors:''' Wooodiii, Corvus_bkgk, Enfantcool, Baksch<br>
+
If you find your panels don't point at the sun, you can add either 0,90,180 or 270 to the horizontal until they point at the sun. This guide is an attempt
'''Properties:''' Accurate (average error 1.3°), Auto-reset (variant), Power conserving (variant)<br>
+
to simplify the setup by removing an extra math, and memory chip(6 chips instead of 8).
'''Number of Components:''' 10-12
 
  
This setup is accurate, giving 495-500W throughout the day, with lower output only when the sun is lower than the panels can physically aim at.
+
== Geometry Of Solar Panels and Daylight Sensors ==
  
This setup adjusts for the fact that solar panels rotate through only 150 degrees. Instead of converting using 180/100, this setup converts by doing 150/100. It then clips the value at the edges, where the prior calculation would give elevations that are negative or greater than 100 (representing the fact that we would prefer the panel to track past 0 or 100, aiming all the way down to the horizon instead of stopping 15° short). The listed average error is nonzero only because of this completely unavoidable portion; the error is 0 throughout the 15°-165° portion of the day.
+
<gallery>
 +
daylight sensor horizontal.png|Geometry of values measured by daylight sensor in horizontal (yaw) mode
 +
daylight sensor vertical.png|Geometry of values measured by daylight sensor in vertical (pitch) mode
 +
solar panel yaw-Horizontal setting.png|Effect of setting horizontal rotation of a solar panel
 +
solar-horiz-formulas.svg|Equations relating horizontal sensor measurements from various orientations to solar panel horizontal rotation
 +
</gallery>
  
=== Design ===
+
==Solar tracking using Logic Chips ==
* 1 [[Construction Kit (Sensors)]] ("Daylight Sensor")
 
* 2 [[Kit (Logic I/O)]] (1 "Logic Reader", 1 "Batch Writer")
 
* 3 [[Kit (Logic Memory)]]
 
* 4 [[Kit (Logic Processor)]] (2 "Math Unit", 2 "Min/Max Unit")
 
  
[[File:Accurate Solar Control.png]]
+
=== Six-chip dual-axis tracking ===
 +
To get a "100%" accurate solar tracker on planets with an offset solar arc, you need to include the Horizontal component to the solar angle.
  
* The [[Daylight Sensor]] should face the sunrise.
+
'''What you need:'''
* Solar panels should be rotated such that 0% vertical faces the sunrise.
+
* Kit (Logic I/O) x4
 +
* Kit (Logic Processor)
 +
* Kit (Logic Memory)
 +
* Kit (Sensor) > Daylight Sensor
 +
 
 +
Place the Daylight Sensor facing up, with the Data Port facing north.
  
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Component (Name) !! Settings !! Explanation
+
! '''Horizontal'''
|-
 
| Logic Reader (A) || Daylight sensor, Angle || Sun's angle above the horizon
 
|-
 
| Memory (15) || 15 || True angle of solar panels at 0 elevation
 
 
|-
 
|-
| Memory (1.5) || 1.5 || 150/100, the conversion constant from solar angle (range:15-165, i.e. 150) to panel elevation (range:0-100)
+
! '''Chip''' !! '''Chip label''' !! '''IN''' !! '''VAR''' !! '''OUT'''
 
|-
 
|-
| Compare Unit (B) || min(A,15) || Adjustment amount
+
| Logic Reader || Horizontal Reader || Daylight Sensor || Horizontal ||  
 
|-
 
|-
| Math Unit (C) || A-B || Adjusted solar angle (low edge adjustment)
+
| Batch Writer || Horizontal Writer || Horizontal Reader || Horizontal || Solar Panel
 
|-
 
|-
| Math Unit (D) || C/1.5 || Conversion to panel elevation
+
! '''Vertical'''
 
|-
 
|-
| Memory (100) || 100 || Maximum panel elevation
+
! '''Chip''' !! '''Chip label''' !! '''IN''' !! '''VAR''' !! '''OUT'''
 
|-
 
|-
| Compare Unit (E) || min(D,100) || Adjusted panel elevation (high edge adjustment)
+
| Logic Reader || Vertical Reader || Daylight Sensor || Vertical ||  
 
|-
 
|-
| Batch Writer || E -> Solar panels, Vertical || Maximum panel elevation
+
| Batch Writer || Vertical Writer || Vertical Correction Math || Vertical || Solar Panel
|}
 
 
 
=== Auto-Reset Variant ===
 
For panels that automatically reset their facing upon sunset, use two more components, and adjust the final compare unit:
 
{| class="wikitable"
 
 
|-
 
|-
! Component (Name) !! Settings !! Explanation
+
! '''Chip''' !! '''Chip label''' !! '''Value'''
 
|-
 
|-
| Logic Reader (L) || Daylight sensor, Activation || 1 while daytime, 0 while nighttime
+
| Logic Memory || Vertical Correction Memory || 90
 
|-
 
|-
| Math Unit (F)  || 100*L || Maximum panel elevation, now 100 during day and 0 at night
+
! '''Chip''' !! '''Chip label''' !! '''IN 1''' !! '''IN 2''' !! '''OUT'''
 
|-
 
|-
| (from above) Compare Unit (E) || min(D,'''F''') || Adjusted panel elevation (high edge adjustment)
+
| Logic Math || Vertical Correction Math || Vertical Reader || Vertical Correction Memory || Add
 
|}
 
|}
  
=== Power-Conserving Variant ===
+
[[File:2022-10-02 Two-axis solar tracking.png|Accurate two-axis solar tracking]]
To conserve power, it's possible to avoid running the entire circuit at night. A transformer can be controlled to power the main logic network above. In this way, only the two new components need to remain powered at all times.
 
  
{| class="wikitable"
+
The panels should align themselves to the sun if you make sure to put the Power Port on the panels facing east (90 degrees). If you've already built the panels and logic with the Power Port facing west, swapping the direction of the sensor so that its Data Port faces south will allow the setup to work with no additional changes.
|-
 
! Component (Name) !! Settings !! Explanation
 
|-
 
| Logic Reader (L) || Daylight sensor, Activation || As in the auto-reset variant above
 
|-
 
| Logic Writer || L -> Transformer, On  || Transformer powers main logic network
 
|}
 
  
----
+
== Solar tracking using Integrated Circuits ==
 +
This is the most powerful way to track the sun, but the implementation might be a bit daunting at first.
  
== Easy/Compact Solar Setup ==
+
'''What you need:'''
'''Author:''' Evie<br>
+
* Integrated Circuit (IC10)
'''Stationeers Version:''' 0.1.1068.5451<br>
+
* Kit (IC Housing)
'''Properties:''' Simple, Inaccurate (Average error: 7.5°)<br>
+
* Kit (Sensor) > Daylight Sensor
'''Number of Components:''' 5
 
  
This imperfect setup is a common starting point. It starts off at 375w of power in the morning, builds up to 500w at zenith (noon) then back to 375. This is due to the fact that solars rotate through only 150 degrees of elevation and that this setup's math is correct only if they rotated through all 180 degrees of solar angle.
+
And if you don't already have one set up:
 +
* Kit (Computer)
 +
* IC Editor Motherboard
  
==== Design ====
+
Place the Daylight Sensor facing up, note which direction the Data Port is facing, and which direction the solar panel Power Port is facing. These two directions are needed in the code. The Daylight Sensor is connected to the d0 screw, that's all you need.
* 1 [[Construction Kit (Sensors)]]
 
* 2 [[Kit (Logic I/O)]]
 
* 1 [[Kit (Logic Memory)]]
 
* 1 [[Kit (Logic Processor)]] ("Math Unit")
 
  
[[File:Evie's Solar Circuit Setup.jpg|none|Solar Setup Diagram]]
+
A simple code example can be found here: https://stationeering.com/tools/ic/_2FpmwojGnBq<br>
 +
This code is considered "inefficient" since it's hard-coded to spam all types of solar panels, even if you don't have them.
  
==== Notes ====
+
A better code example can be found here: https://stationeering.com/tools/ic/_2FpoBEcd3QK<br>
* The [[Daylight Sensor]] MUST be facing West (sunrise), but its rotation doesn't matter.
+
It targets the solar-panel types on d2 and (optionally) d3, so it's less spammy. It also has an option for a display (Kit (Console)) on d1 that shows the sum of power output from both types of panels
* Solar panels should be rotated such as that 0% VERTICAL rotation faces west/sunrise, and 100% VERTICAL faces east/sunset.
 
* The [[Area Power Control]] is necessary for the circuit to stay powered during the night. It also hides all the modules from the rest of your system.
 
* Importantly, the solar input power doesn't directly connect to any of the logic writers. This not only ensures your system doesn't lose power but also prevents short-circuiting that would burn cables.
 
* Using 1.7 instead of 1.8 reduces the average error of this design to 6.5° and increases overall power generation, particularly in the afternoon.
 
</translate>
 

Latest revision as of 18:59, 16 March 2024

Other languages:
English

Disclaimer[edit]

Due to the frequency of game updates, all solutions are subject to change and may or may not be functional.

The designs on this page are valid as of v0.2.3304.16432 (2022-06-06)

While this specific Guide calls out the sensor being place a specific direction(north), its not necessary to orient your sensors to a specific direction.

If you find your panels don't point at the sun, you can add either 0,90,180 or 270 to the horizontal until they point at the sun. This guide is an attempt 

to simplify the setup by removing an extra math, and memory chip(6 chips instead of 8).

Geometry Of Solar Panels and Daylight Sensors[edit]

Solar tracking using Logic Chips[edit]

Six-chip dual-axis tracking[edit]

To get a "100%" accurate solar tracker on planets with an offset solar arc, you need to include the Horizontal component to the solar angle.

What you need:

  • Kit (Logic I/O) x4
  • Kit (Logic Processor)
  • Kit (Logic Memory)
  • Kit (Sensor) > Daylight Sensor

Place the Daylight Sensor facing up, with the Data Port facing north.

Horizontal
Chip Chip label IN VAR OUT
Logic Reader Horizontal Reader Daylight Sensor Horizontal
Batch Writer Horizontal Writer Horizontal Reader Horizontal Solar Panel
Vertical
Chip Chip label IN VAR OUT
Logic Reader Vertical Reader Daylight Sensor Vertical
Batch Writer Vertical Writer Vertical Correction Math Vertical Solar Panel
Chip Chip label Value
Logic Memory Vertical Correction Memory 90
Chip Chip label IN 1 IN 2 OUT
Logic Math Vertical Correction Math Vertical Reader Vertical Correction Memory Add

Accurate two-axis solar tracking

The panels should align themselves to the sun if you make sure to put the Power Port on the panels facing east (90 degrees). If you've already built the panels and logic with the Power Port facing west, swapping the direction of the sensor so that its Data Port faces south will allow the setup to work with no additional changes.

Solar tracking using Integrated Circuits[edit]

This is the most powerful way to track the sun, but the implementation might be a bit daunting at first.

What you need:

  • Integrated Circuit (IC10)
  • Kit (IC Housing)
  • Kit (Sensor) > Daylight Sensor

And if you don't already have one set up:

  • Kit (Computer)
  • IC Editor Motherboard

Place the Daylight Sensor facing up, note which direction the Data Port is facing, and which direction the solar panel Power Port is facing. These two directions are needed in the code. The Daylight Sensor is connected to the d0 screw, that's all you need.

A simple code example can be found here: https://stationeering.com/tools/ic/_2FpmwojGnBq
This code is considered "inefficient" since it's hard-coded to spam all types of solar panels, even if you don't have them.

A better code example can be found here: https://stationeering.com/tools/ic/_2FpoBEcd3QK
It targets the solar-panel types on d2 and (optionally) d3, so it's less spammy. It also has an option for a display (Kit (Console)) on d1 that shows the sum of power output from both types of panels