Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Solar Logic Circuits Guide: Difference between revisions

From Stationeers Community Wiki
Sun rises in the East.
Starviking (talk | contribs)
 
(113 intermediate revisions by 33 users not shown)
Line 1: Line 1:
[[Category:Tutorials]]
[[Category:Tutorials]][[Category:Solar power]]
<languages />
<translate>


== Disclaimer ==
== Disclaimer ==
Line 7: Line 5:
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.


== Ecliptic Solar Tracking ==
The designs on this page are valid as of v0.2.5906.26015 (2025-09-16)
'''Author:''' Eearslya, Neouni, 𝕽𝖘𝖆𝟗𝟕 and everyone of the #logic-circuit-discussion<br>
'''Stationeers Version:''' 0.1.1510.7155 and up<br>
'''Number of Components:''' 10


=== Design ===
Guides in this section calls out the [[sensor]] and Solar Panel being placed in a specific orientation, but not all guides use the same orientation. When follow a a guide please be sure to place your sensor and solar panel as described in the guide.
* 2 [[Sensors|Kit (Sensors)]]
* 4 [[Kit (Logic I/O)]]
* 2 [[Kit (Logic Memory)]]
* 2 [[Kit (Logic Processor)]] ("Math Unit")


This setup takes advantage of the new Horizontal Mode of the [[Sensors#Daylight_Sensor|Daylight Sensor]], and as such, is a very compact setup. It provides 99% efficiency during the day, only dropping below when the sun is beyond the solar panel's vertical range (less than 15 degrees above the horizon).
==Types of Tracking==
There are two components to solar tracking, Horizontal position and Vertical position. A solar panel can be positioned using only one of these factors (single axis tracking) or both of these factors (dual axis tracking). Depending on the geometry of sun's sky tack on a particular planet single axis tracking can be very efficient. The solar inclination on The [[Moon]] is 0° so single axis solar tracking can be 100% efficient.


To set the second sensor into Horizontal mode, you will need to use a [[Kit (Logic I/O)|Logic Writer]] and a [[Kit (Logic Memory)|Logic Memory]]. Set the Memory to 1, and set the Writer to write to the Daylight Sensor's Mode variable. Once the mode is written to the sensor, you can deconstruct and re-use the I/O and Memory units. They do not need to be left in place to keep the mode set.


[[File:Tilted Solar Tracking.png|full|Diagram]]
== Geometry Of [[Solar Panel|Solar Panels]] and [[Sensors#Daylight Sensor|Daylight Sensors]] ==


=== Notes ===
The Horizontal and Vertcal angle measured by the daylight sensor is different from the Solar panels coordinates system. In order to point the solar panel correctly either the angle read from the daylight sensor will need to be recalculated using a Math Unit, or the daylight sensor and solar panel will need to have a different orientation. The Vertical angle measured by the daylight sensor is also different from the Solar panels coordinates system.
* Sensor 1: MUST be facing upwards, Mode 0 (Default)
* Sensor 2:  MUST be facing up-side-down, rotated so the power input is facing north, Mode 1 (Horizontal)
* '''Don't forget to write the mode to Sensor 2''' ''once written it will remember it''


==== Rotations ====
If the daylight sensor is positioned horizontally the solar panel's data port should be 90° clockwise from the daylight sensor's Data Port. This will give a Horizontal angles without needing to additional Logic and math. Obtaining a Vertical angle will require additional Logic and Math.
We use specific rotations for the daylight sensor and solar panels in this setup to save a Logic Math and a Logic Memory. Refer to this table below to see how your daylight sensor and panels should be rotated. (Note: Sunrise is in the East.)
 
{| class="wikitable"
 
! If the solar panel's power connector points: !! West !! North !! East !! South
<gallery>
|-
daylight sensor horizontal.png|Geometry of values measured by daylight sensor in horizontal (yaw) mode
| Then rotate Sensor 2's power input: || North || East || South || West
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
<small>Credit for alternatives: PoolSharkFOG</small>
</gallery>
 
==Solar tracking using Logic Chips ==
 
===Two-chip Vertical tracking (Moon only)===
[[File:Vertical Tracking (Moon Only).png|thumb|Two-Chip Vertical tracking usable on the Moon only.]]
Because the sun passes directly East to West with zero solar offset  on the moon, it can be tracked using only 2 logic chips.
 
'''What do you need:'''
* [[Solar_Panel|Solar Panel (Dual)]] 
* [[Kit (Logic I/O)]] x2
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]
* [[Cables|Cable]]
* [[Power_Controller|Area Power Controller]] X1


This setup can be also programmed in an IC10 chip which saves power because you need only 5 chips instead of 8.
Place the Solar panel with the data port facing sunrise. Place the Daylight Sensor vertically on the wall with the data port facing down and the sensor facing sunrise. Build a Logic reader and a Batch Writer from the 2 [[Logic I/O]] Kits. Set the Logic Reader to read the Vertical Angle from the Daylight Sensor. Set the Batch Writer to Read the Reader and output the Vertical Angle to the [[Solar Panel (Dual)]]. Manually rotate the Solar Panel to 270°. Add an Area [[Power Controller]] to make sure the Logic Chips do not lose power.


'''Required:'''<br>
==Two-chip Horizontal tracking==
1 IC10 Chip plus IC housing<br>
[[File:Horizontal Tracking.png|thumb|Two-Chip Horizontal Tracking, stand alone.]]
2 sensors setup as shown above<br>
With the daylight sensor and solar panel correctly positioned, the solar panel can tack the sun's horizontal track using only 2 chips. On [[Mars]] this can yield approximately 80% efficient solar tracking if the solar panel is manually positioned at 45° vertical. Two-chip Horizontal and two-chip Vertical tracking cannot be combined.
2 memory<br>
2 Batch Writers that read from memory<br>
<br>
Connect '''Sensor1''' to '''d0''', '''Sensor2''' to '''d1''', '''Memory1''' to '''d2''', '''Memory2''' to '''d3'''.  
BatchWriter Horizontal should read from '''Memory1''' and BatchWriter Vertical should read from '''Memory2''' and both ofcourse write to the solar panels.
Use the same setup for the power connector directions as shown above. You do not have to write the mode, this is done in code.
<br><br>
Here is the code for the ic10 chip: [https://stationeering.com/tools/ic#eyJwcm9ncmFtIjoiLy8gU2Vuc29yMSBmYWNlcyB1cCB0byBkMFxuLy8gU2Vuc29yMiBmYWNlcyBkb3duIHRvIGQxXG4vLyB7cG93ZXIgc29sYXIgcGFuZWwsIHBvd2VyIFNlbnNvcjJ9XG4vLyB7V2VzdCwgTm9ydGh9XG4vLyB7Tm9ydGgsIEVhc3R9XG4vLyB7RWFzdCwgU291dGh9XG4vLyB7U291dCwgV2VzdH1cbi8vIENvbm5lY3QgTWVtb3J5MSB0byBkMiBhbmQgTWVtb3J5MiB0byBkM1xuLy8gQmF0Y2ggV3JpdGVycyBtdXN0IHdyaXRlIHRvIFNvbGFyIFBhbmVsOlxuLy8gICAgQmF0Y2hXcml0ZXIxOmluO01lbW9yeTE7dmFyOkhvcml6b250YWxcbi8vICAgIEJhdGNoV3JpdGVyMjppbjtNZW1vcnkyO3ZhcjpWZXJ0aWNhbFxuLy8gZG8gbm90IGluY2x1ZGUgdGhlc2UgY29tbWVudHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuYWxpYXMgU2Vuc29yMSBkMFxuYWxpYXMgU2Vuc29yMiBkMVxuYWxpYXMgQmF0Y2hIIGQyIFxuYWxpYXMgQmF0Y2hWIGQzXG5cbnNldHVwOlxucyBTZW5zb3IxIE1vZGUgMFxucyBTZW5zb3IyIE1vZGUgMVxuXG5sb29wOlxubCByMCBTZW5zb3IxIFNvbGFyQW5nbGVcbmwgcjEgU2Vuc29yMiBTb2xhckFuZ2xlXG5zdWIgcjAgNzUgcjBcbmRpdiByMCByMCAxLjVcbnMgQmF0Y2hWIFNldHRpbmcgcjBcbnMgQmF0Y2hIIFNldHRpbmcgcjFcbnlpZWxkXG5qIGxvb3BcbiIsInJlZ2lzdGVycyI6eyJpbyI6W3siU29sYXJBbmdsZSI6NTAsIk1vZGUiOjB9LHsiU29sYXJBbmdsZSI6NDUsIk1vZGUiOjF9LHsiU2V0dGluZyI6NDV9LHsiU2V0dGluZyI6MTYuNjY2NjY2NjY2NjY2NjY4fSx7fSx7fSx7fV0sImlvQ29ubmVjdGVkIjpbdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV0sImludGVybmFsIjpbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdfSwicnVuQWZ0ZXJSZWdpc3RlckNoYW5nZSI6ZmFsc2UsInJ1bldpdGhFcnJvcnMiOmZhbHNlfQ== Simulator @ stationeering.com]


== Accurate Solar Setup ==
'''What do you need:'''
'''Authors:''' Wooodiii, Corvus_bkgk, Enfantcool, Baksch<br>
* [[Solar_Panel|Solar Panel (Dual)]] 
'''Properties:''' Accurate (average error 1.3°), Auto-reset (variant), Power conserving (variant)<br>
* [[Kit (Logic I/O)]] x2
'''Number of Components:''' 10-12
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]
<br>'''Math Formula:''' <code>f(x) = min((x-min(x,15))/1.5, 100)</code> where '''x''' is the solar angle.
* [[Cables|Cable]]
* [[Power_Controller|Area Power Controller]] X1


'''Note: With the introduction of ecliptic solar angles, this setup no longer works at peak efficiency on worlds such as Mars and Europa which have the sun at an angle. This setup will still work on the Moon and in Space.'''
Place the Solar panel with the data port facing sunrise. Place the Daylight Sensor horizontally with the data port facing North and the sensor facing up. Build a Logic reader and a Batch Writer from the 2 [[Logic I/O]] Kits. Set the Logic reader to read the Horizontal Angle from the Daylight Sensor. Set the Batch Writer to Read the Reader and output the Horizontal Angle to the [[Solar Panel (Dual)]]. Manually lower the Solar Panel to 45°. Add an Area [[Power Controller]] to make sure the Logic Chips do not lose power.


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.  
==Four Chip Vertical tracking==
[[File:Vertical Tracking Two Axis.png|thumb|Four-Chip Vertical Tracking, stand alone.]]
Vertical tracking requires two additional chips, a Logic Memory and a Math Unit. There are two different method of obtaining the correct vertical solar angle. Either (90-Solar angle) or (Solar angle+90).


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.
'''What do you need:'''
* [[Solar_Panel|Solar Panel (Dual)]] 
* [[Kit (Logic I/O)]] x2
* [[Kit (Logic Processor)]]
* [[Kit (Logic Memory)]]
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]
* [[Cables|Cable]]
* [[Power_Controller|Area Power Controller]] X1


This setup produces the equivalent of 274W averaged over a whole day/night cycle.
Place the Solar panel with the data port facing sunrise. Place the Daylight Sensor horizontally with the data port facing North and the sensor facing up. Build a Logic Reader and a Batch Writer from the 2 [[Logic I/O]] Kits. Build a Math Unit from the [[Logic Processor]] kit and place the Logic Memory. Set the Logic Reader to read the Vertical Angle from the Daylight Sensor. Set the  Logic Memory to 90. Set the left input of the Math Unit to read the Logic Memory. Set the right input of the Math Unit  to read the Logic Reader. Set the bottom output of the Math Unit to subtract. Set the Batch Writer to read the Math unit and output the Vertical Angle to the [[Solar Panel (Dual)]]. Rotate the Solar Panel to 270°. Add an Area [[Power Controller]] to make sure the Logic Chips do not lose power.


Link to IC Programm : [https://stationeering.com/tools/ic/_14WyiGwVaP1]
==Combined Solar Tracking==
[[File:Combined Tracking Two Axis.png|thumb|Combined Vertical and Horizontal tracking .]]
Two-Chip Horizontal Tracking can be built independently and later upgraded by combining it with Four-Chip Vertical Tracking. In this way a simple yet functional solar power system can be constructed in the early game. Later the system can be upgraded to become more efficient. This is useful for Brutal Starts as it costs fewer resources and takes less [[time]] to get a functioning solar power setup.
 
'''What do you need:'''
* Build the Two-Chip Horizontal Tracking as shown above.  
* Build the Four-Chip Vertical Tracking as shown above. 
* The daylight sensor and [[Area Power Controller|area power controller]] can be shared between the two setups.
* Labelling the Logic Chips and Daylight Sensor will simplify setup
* If a labeler is unavailable the two logic networks can be built and configured separately so there is no overlap in component names.


=== Design ===
== Six-chip dual-axis tracking ==
* 1 [[Sensors |Kit (Sensors)]] ("Daylight Sensor")
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.
* 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")


* The [[Sensors#Daylight_Sensor|Daylight Sensor]] should face the sunrise.
'''What do 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)]]
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]


Place the [[Daylight Sensor]] facing up, '''with the [[Data Port]] facing north (0 degrees).'''


{| class="wikitable"
{| class="wikitable"
|-
|-
! Component (Name) !! Settings !! Explanation
! '''Horizontal'''
|-
|-
| Logic Reader (A) || Daylight sensor, Solar angle || Sun's angle above the horizon
! '''Chip''' !! '''Chip label''' !! '''IN''' !! '''VAR''' !! '''OUT'''
|-
|-
| Memory (15) || 15 || True angle of solar panels at 0 elevation
| [[Logic]] Reader || Horizontal Reader || Daylight Sensor || Horizontal ||  
|-
|-
| 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)
| Batch Writer || Horizontal Writer || Horizontal Reader || Horizontal || [[Solar Panel]]
|-
|-
| Min/Max Unit (B) || min(A,15) || Adjustment amount: 15, unless that would take A-B negative, in which case only enough to reach 0  (low edge case). Equivalent to min(A-B,0) but doesn't require storing 0.
! '''Vertical'''
|-
|-
| Math Unit (C) || A-B || Adjusted solar angle
! '''Chip''' !! '''Chip label''' !! '''IN''' !! '''VAR''' !! '''OUT'''
|-
|-
| Math Unit (D) || C/1.5 || Conversion from solar angle to panel elevation
| Logic Reader || Vertical Reader || Daylight Sensor || Vertical ||  
|-
|-
| Memory (100) || 100 || Maximum possible panel elevation
| Batch Writer || Vertical Writer || Vertical Correction Math || Vertical || Solar Panel
|-
|-
| Min/Max Unit (E) || min(D,100) || Cap elevation to 100 for solar angles past 165° (high edge case). Equivalent to doing min(A-B,165) before step D, but 100 is easier to set in memory than 165.
! '''Chip''' !! '''Chip label''' !! '''Value'''
|-
|-
| Batch Writer || E -> Solar panels, Vertical angle || Send elevation to solar panels
| [[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
|}
|}


[[File:Accurate Solar Control.png]]
[[File:2022-10-02 Two-axis solar tracking.png|Accurate two-axis solar tracking]]
 
The panels should align themselves to the sun, you make sure to '''put the [[Power]] Port on the panels facing east (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.


=== Auto-Reset Variant ===
== Solar tracking using Integrated Circuits ==
For panels that automatically reset their facing upon sunset, use two more components, and adjust the final min/max unit:
Using [[Integrated_Circuit_(IC10)|Intergrated Logic Chips]] to track the sun will result in a much smaller logic set up, but the implementation might be a bit daunting at first. Conceptually the logic involved is the same.  
{| class="wikitable"
|-
! Component (Name) !! Settings !! Explanation
|-
| Logic Reader (L) || Daylight sensor, Activation || 1 while daytime, 0 while nighttime
|-
| Math Unit (F) || 100*L || Maximum panel elevation, now 100 during day and 0 at night
|-
| (from above) Min/Max Unit (E) || min(D,'''F''') || Adjusted panel elevation (high edge adjustment)
|}


=== Power-Conserving Variant ===
* The orientation of the Solar Panel and Daylight Senor are the same.
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.
* The Horizontal angle will need to be read from the Daylight Sensor
* The Vertical angle will need to be read for the Daylight Sensor
* The Vertical angle will need to be corrected.  
**  The following correction must be applied. (Vertical Angel + 90 = Vertical Angle{corrected}   
* The Horizontal Angle will need to be sent to the Solar Panel
* The Vertical Angle will need to be sent to the Solar Panel
* Begin the process again


{| class="wikitable"
'''What you need:'''
|-
* [[Integrated Circuit (IC10)]]
! Component (Name) !! Settings !! Explanation
* [[Kit (IC Housing)]]
|-
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]
| Logic Reader (L) || Daylight sensor, Activation || As in the auto-reset variant above
|-
| Logic Writer || L -> Transformer, On  || Transformer powers main logic network
|}


----
And if you don't already have one set up:
* [[Kit (Computer)]]
* [[Motherboard (IC Editor)|IC Editor Motherboard]]


== Easy/Compact Solar Setup ==
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.
'''Author:''' Evie<br>
'''Stationeers Version:''' 0.1.1068.5451<br>
'''Properties:''' Simple, Inaccurate (Average error: 7.5°)<br>
'''Number of Components:''' 5


'''Note: With the introduction of ecliptic solar angles, this setup no longer works at peak efficiency on worlds such as Mars and Europa which have the sun at an angle. This setup will still work on the Moon and in Space.'''
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.


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.
A better code example can be found here: https://stationeering.com/tools/ic/_2FpoBEcd3QK<br>
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


This setup produces the equivalent of 239W averaged over a whole day/night cycle.
== duality of orientation ==


=== Design ===
Due to the coordinate system used by solar panels, it is actually possible to capture peak sunlight using two different (but related) H,V coordinates.
* 1 [[Sensors |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]]
[[File:stationeers-solar-duality.svg|frameless|panels using different control logic to accomplish the same goal]]
[[File:Stationeers-compact solar logic.png|none|A super compact version]]


=== Notes ===
This screenshot shows two sets of solar panels, each with its own daylight sensor. Each sensor is oriented differently to properly match its panel and formulas. The panel on the right uses panel.horizontal = daysensor.horizontal; panel.vertical = 90-daysensor.vertical; while the panel on the left uses panel.horizontal = daysensor.horizontal; panel.vertical = daysensor.vertical + 90. They both achieve the same orientation.
* The [[Daylight Sensor]] MUST be facing East (Sunrise), but its rotation doesn't matter.
* Solar panels should be rotated such as that 0% VERTICAL rotation faces East/Sunrise, and 100% VERTICAL faces West/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 02:56, 27 March 2026


Disclaimer

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.5906.26015 (2025-09-16)

Guides in this section calls out the sensor and Solar Panel being placed in a specific orientation, but not all guides use the same orientation. When follow a a guide please be sure to place your sensor and solar panel as described in the guide.

Types of Tracking

There are two components to solar tracking, Horizontal position and Vertical position. A solar panel can be positioned using only one of these factors (single axis tracking) or both of these factors (dual axis tracking). Depending on the geometry of sun's sky tack on a particular planet single axis tracking can be very efficient. The solar inclination on The Moon is 0° so single axis solar tracking can be 100% efficient.


Geometry Of Solar Panels and Daylight Sensors

The Horizontal and Vertcal angle measured by the daylight sensor is different from the Solar panels coordinates system. In order to point the solar panel correctly either the angle read from the daylight sensor will need to be recalculated using a Math Unit, or the daylight sensor and solar panel will need to have a different orientation. The Vertical angle measured by the daylight sensor is also different from the Solar panels coordinates system.

If the daylight sensor is positioned horizontally the solar panel's data port should be 90° clockwise from the daylight sensor's Data Port. This will give a Horizontal angles without needing to additional Logic and math. Obtaining a Vertical angle will require additional Logic and Math.


Solar tracking using Logic Chips

Two-chip Vertical tracking (Moon only)

Two-Chip Vertical tracking usable on the Moon only.

Because the sun passes directly East to West with zero solar offset on the moon, it can be tracked using only 2 logic chips.

What do you need:

Place the Solar panel with the data port facing sunrise. Place the Daylight Sensor vertically on the wall with the data port facing down and the sensor facing sunrise. Build a Logic reader and a Batch Writer from the 2 Logic I/O Kits. Set the Logic Reader to read the Vertical Angle from the Daylight Sensor. Set the Batch Writer to Read the Reader and output the Vertical Angle to the Solar Panel (Dual). Manually rotate the Solar Panel to 270°. Add an Area Power Controller to make sure the Logic Chips do not lose power.

Two-chip Horizontal tracking

Two-Chip Horizontal Tracking, stand alone.

With the daylight sensor and solar panel correctly positioned, the solar panel can tack the sun's horizontal track using only 2 chips. On Mars this can yield approximately 80% efficient solar tracking if the solar panel is manually positioned at 45° vertical. Two-chip Horizontal and two-chip Vertical tracking cannot be combined.

What do you need:

Place the Solar panel with the data port facing sunrise. Place the Daylight Sensor horizontally with the data port facing North and the sensor facing up. Build a Logic reader and a Batch Writer from the 2 Logic I/O Kits. Set the Logic reader to read the Horizontal Angle from the Daylight Sensor. Set the Batch Writer to Read the Reader and output the Horizontal Angle to the Solar Panel (Dual). Manually lower the Solar Panel to 45°. Add an Area Power Controller to make sure the Logic Chips do not lose power.

Four Chip Vertical tracking

Four-Chip Vertical Tracking, stand alone.

Vertical tracking requires two additional chips, a Logic Memory and a Math Unit. There are two different method of obtaining the correct vertical solar angle. Either (90-Solar angle) or (Solar angle+90).

What do you need:

Place the Solar panel with the data port facing sunrise. Place the Daylight Sensor horizontally with the data port facing North and the sensor facing up. Build a Logic Reader and a Batch Writer from the 2 Logic I/O Kits. Build a Math Unit from the Logic Processor kit and place the Logic Memory. Set the Logic Reader to read the Vertical Angle from the Daylight Sensor. Set the Logic Memory to 90. Set the left input of the Math Unit to read the Logic Memory. Set the right input of the Math Unit to read the Logic Reader. Set the bottom output of the Math Unit to subtract. Set the Batch Writer to read the Math unit and output the Vertical Angle to the Solar Panel (Dual). Rotate the Solar Panel to 270°. Add an Area Power Controller to make sure the Logic Chips do not lose power.

Combined Solar Tracking

Combined Vertical and Horizontal tracking .

Two-Chip Horizontal Tracking can be built independently and later upgraded by combining it with Four-Chip Vertical Tracking. In this way a simple yet functional solar power system can be constructed in the early game. Later the system can be upgraded to become more efficient. This is useful for Brutal Starts as it costs fewer resources and takes less time to get a functioning solar power setup.

What do you need:

  • Build the Two-Chip Horizontal Tracking as shown above.
  • Build the Four-Chip Vertical Tracking as shown above.
  • The daylight sensor and area power controller can be shared between the two setups.
  • Labelling the Logic Chips and Daylight Sensor will simplify setup
  • If a labeler is unavailable the two logic networks can be built and configured separately so there is no overlap in component names.

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.

What do you need:

Place the Daylight Sensor facing up, with the Data Port facing north (0 degrees).

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, you make sure to put the Power Port on the panels facing east (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

Using Intergrated Logic Chips to track the sun will result in a much smaller logic set up, but the implementation might be a bit daunting at first. Conceptually the logic involved is the same.

  • The orientation of the Solar Panel and Daylight Senor are the same.
  • The Horizontal angle will need to be read from the Daylight Sensor
  • The Vertical angle will need to be read for the Daylight Sensor
  • The Vertical angle will need to be corrected.
    • The following correction must be applied. (Vertical Angel + 90 = Vertical Angle{corrected}
  • The Horizontal Angle will need to be sent to the Solar Panel
  • The Vertical Angle will need to be sent to the Solar Panel
  • Begin the process again

What you need:

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

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

duality of orientation

Due to the coordinate system used by solar panels, it is actually possible to capture peak sunlight using two different (but related) H,V coordinates.

panels using different control logic to accomplish the same goal

This screenshot shows two sets of solar panels, each with its own daylight sensor. Each sensor is oriented differently to properly match its panel and formulas. The panel on the right uses panel.horizontal = daysensor.horizontal; panel.vertical = 90-daysensor.vertical; while the panel on the left uses panel.horizontal = daysensor.horizontal; panel.vertical = daysensor.vertical + 90. They both achieve the same orientation.