Actions

Difference between revisions of "Solar Logic Circuits Guide"

From Unofficial Stationeers Wiki

(Notes: Significant rewrite of the instructions to make them clearer. An updated image will be uploaded to match the instructions.)
(Add links)
 
(47 intermediate revisions by 21 users not shown)
Line 1: Line 1:
[[Category:Tutorials]]
+
[[Category:Tutorials]][[Category:Solar power]]
 
<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.
  
== Geometry Of Solar Panels and Daylight Sensors ==
+
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 Panel|Solar Panels]] and [[Sensors#Daylight Sensor|Daylight Sensors]] ==
  
 
<gallery>
 
<gallery>
Line 16: Line 20:
 
</gallery>
 
</gallery>
  
== 10-chip 2-sensor 2-axis Solar Tracking ==
+
==Solar tracking using Logic Chips ==
'''Author:''' Eearslya, Neouni, 𝕽𝖘𝖆𝟗𝟕 and everyone of the #logic-circuit-discussion (most recently Enthaply Guy)<br>
 
'''Stationeers Version:''' 0.2.2261.10316 and up<br>
 
'''Number of Components:''' 12
 
 
 
=== Design ===
 
* 2 [[Sensors|Kit (Sensors)]]
 
* 4 [[Kit (Logic I/O)]]
 
* 3 [[Kit (Logic Memory)]]
 
* 3 [[Kit (Logic Processor)]] ("Math Unit")
 
 
 
This is a fairly minimalistic 2-axis control setup.  You'll need the sensors to be in Mode 1 (horizontal) and Mode 2 (vertical), both facing up. The cable can point in any direction, as the vertical sensor doesn't care and we're already compensating for the horizontal sensor.
 
 
 
To set the sensors, 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 first sensor's Mode variable. Then set the Writer to write to the second Sensor, and set the memory to 2 (in that order!). The sensors should say "Mode Horizontal" and "Mode Vertical". Once you have them set, you can deconstruct or re-use the I/O and memory units. They do not need to be left in place to keep the mode set.
 
 
 
[[File:2-Axis Solar Logic Control.png|full|Screenshot of logic gate control setup for 2-axis tracking for solar panels]]
 
 
 
=== Notes ===
 
* The Network should have one power source, ideally an APC with battery backup powered by the solar panels. The Network should hook up to all ports on all logic chips (only one necessary for memory) and both sensors. Solar Panels should be deployed with separate data and power ports, and only the data port of each solar panel should be hooked up to the Network of the logic circuit. The power port of the solar panels should feed a separate network from the logic network.
 
 
 
* Reader A: Reads Solar Angle from the Vertical Sensor
 
* Math B (Subtract): Memory H minus Reader E
 
* Math C (Subtract): Math F minus Memory I
 
* Batch Writer D: Reads from Math C, and writes to Vertical field for all Solar Panels.
 
* Reader E: Reads Solar Angle from the Horizontal Sensor
 
* Math F (Divide): Reader A divided by Memory I
 
* Batch Writer G: Reads from Math B and writes to Horizontal field for all Solar Panels.
 
* Memory H: should be one of 0, 90, 180, or 270.  We're using it to compensate for horizontal sensor orientation.  If the sensor cable points the same direction as the solar panels power port, set it to 90.  Add 90 for every rotation counterclockwise, and use 0 instead of 360.
 
* Memory I: Set to 1.8.  It's used to scale from 180° that the sensor reports to the 100% that the solar panels use.
 
* Memory J: Set to 50.  The vertical reader reports 0° at midday and 90° at sunrise/sunset, but we need the panels to be at 50% at midday and 0% at sunrise/sunset.
 
 
 
<small>Credit for alternatives: PoolSharkFOG</small>
 
 
 
This setup can be also programmed in an IC10 chip which saves power because you need only 5 chips instead of 8.
 
 
 
'''Required:'''<br>
 
1 IC10 Chip plus IC housing<br>
 
2 sensors setup as shown above<br>
 
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]
 
 
 
== 9-chip 1-sensor 1-axis Solar Tracking ==
 
'''Authors:''' Wooodiii, Corvus_bkgk, Enfantcool, Baksch<br>
 
'''Properties:''' Accurate (average error 1.3°), Auto-reset (variant), Power conserving (variant)<br>
 
'''Number of Components:''' 10-12
 
<br>'''Math Formula:''' <code>f(x) = min((x-min(x,15))/1.5, 100)</code> where '''x''' is the solar angle.
 
 
 
'''Note: With the introduction of ecliptic solar angles, this setup no longer works well on worlds such as Vulkan and Europa which have the sun at an angle. This setup will still work on the Moon and in Space, and will be acceptable on Mars and Loulan.'''
 
 
 
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.
 
  
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.
+
=== 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.
  
This setup produces the equivalent of 274W averaged over a whole day/night cycle.
+
'''What you need:'''
 
+
* [[Kit (Logic I/O)]] x4
Link to IC Programm : [https://stationeering.com/tools/ic/_14WyiGwVaP1]
+
* [[Kit (Logic Processor)]]
 
+
* [[Kit (Logic Memory)]]
=== Design ===
+
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]
* 1 [[Sensors |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")
 
 
 
* The [[Sensors#Daylight_Sensor|Daylight Sensor]] should face the sunrise.
 
* Solar panels should be rotated such that 0% vertical faces the sunrise.
 
  
 +
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, Solar 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'''
 
|-
 
|-
| 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.
+
| Logic Reader || Horizontal Reader || Daylight Sensor || Horizontal ||  
 
|-
 
|-
| Math Unit (C) || A-B || Adjusted solar angle
+
| Batch Writer || Horizontal Writer || Horizontal Reader || Horizontal || Solar Panel
 
|-
 
|-
| Math Unit (D) || C/1.5 || Conversion from solar angle to panel elevation
+
! '''Vertical'''
 
|-
 
|-
| Memory (100) || 100 || Maximum possible panel elevation
+
! '''Chip''' !! '''Chip label''' !! '''IN''' !! '''VAR''' !! '''OUT'''
 
|-
 
|-
| 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.
+
| Logic Reader || Vertical Reader || Daylight Sensor || Vertical ||  
 
|-
 
|-
| Batch Writer || E -> Solar panels, Vertical angle || Send elevation to solar panels
+
| Batch Writer || Vertical Writer || Vertical Correction Math || Vertical || Solar Panel
|}
 
 
 
[[File:Accurate Solar Control.png]]
 
 
 
=== Auto-Reset Variant ===
 
For panels that automatically reset their facing upon sunset, use two more components, and adjust the final min/max unit:
 
{| class="wikitable"
 
 
|-
 
|-
! Component (Name) !! Settings !! Explanation
+
! '''Chip''' !! '''Chip label''' !! '''Value'''
|-
 
| 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 ===
 
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"
 
 
|-
 
|-
! Component (Name) !! Settings !! Explanation
+
| Logic Memory || Vertical Correction Memory || 90
 
|-
 
|-
| Logic Reader (L) || Daylight sensor, Activation || As in the auto-reset variant above
+
! '''Chip''' !! '''Chip label''' !! '''IN 1''' !! '''IN 2''' !! '''OUT'''
 
|-
 
|-
| Logic Writer || L -> Transformer, On  || Transformer powers main logic network
+
| Logic Math || Vertical Correction Math || Vertical Reader || Vertical Correction Memory || Add
 
|}
 
|}
  
----
+
[[File:2022-10-02 Two-axis solar tracking.png|Accurate two-axis solar tracking]]
  
== 4-chip 1-sensor 1-axis Approximate 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.
'''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.'''
+
== 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.
  
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.
+
'''What you need:'''
 +
* [[Integrated Circuit (IC10)]]
 +
* [[Kit (IC Housing)]]
 +
* [[Sensors|Kit (Sensor)]] > [[Sensors#Daylight Sensor|Daylight Sensor]]
  
This setup produces the equivalent of 239W averaged over a whole day/night cycle.
+
And if you don't already have one set up:
 +
* [[Kit (Computer)]]
 +
* [[Motherboard (IC Editor)|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 [[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]]
+
A simple code example can be found here: https://stationeering.com/tools/ic/_2FpmwojGnBq<br>
[[File:Stationeers-compact solar logic.png|none|A super compact version]]
+
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 East (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 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>
 
  
  
== [[Solar Logic Cable Golf]] ==
+
''Note : as of 12 July 2024 neither of these links seem to work (they both result in a 'Network Error' reported by stationeering.com with no code being displayed), and the security certificate for the server has expired which means that your browser will likely complain that statoneering.com server is unsafe. You can continue visiting the links through Internet Archive at the links below.''
  
{{cable Golf Rules}}
+
* [https://web.archive.org/web/20240524184233/https://stationeering.com/tools/ic#eyJwcm9ncmFtIjoiYWxpYXMgc2Vuc29yIGQwXHJcblxyXG5hbGlhcyBhbmdsZV92IHIwXHJcbmFsaWFzIGFuZ2xlX2ggcjFcclxuYWxpYXMgY29ycl9hbmdsZSByMlxyXG5cclxuI2RlZmluZSBkaXJlY3Rpb25zIG9mIHNlbnNvciBhbmQgcGFuZWwgcG93ZXIgcG9ydHNcclxuZGVmaW5lIHNlbnNvcl9kYXRhX2FuZ2xlIDBcclxuZGVmaW5lIHBhbmVsX3Bvd2VyX2FuZ2xlIDkwXHJcblxyXG4jZGVmaW5lIHBhbmVsIGhhc2hlc1xyXG5kZWZpbmUgYmFzaWNfMV9wYW5lbCAtMjA0NTYyNzM3MlxyXG5kZWZpbmUgYmFzaWNfMl9wYW5lbCAtNTM5MjI0NTUwXHJcbmRlZmluZSBoZWF2eV8xX3BhbmVsIC05MzQzNDU3MjRcclxuZGVmaW5lIGhlYXZ5XzJfcGFuZWwgLTE1NDU1NzQ0MTNcclxuXHJcbiNjYWxjdWxhdGUgaG9yaXpvbnRhbCBjb3JyZWN0aW9uXHJcbnN1YiBjb3JyX2FuZ2xlIHNlbnNvcl9kYXRhX2FuZ2xlIHBhbmVsX3Bvd2VyX2FuZ2xlXHJcbnN1YiBjb3JyX2FuZ2xlIGNvcnJfYW5nbGUgOTBcclxuXHJcbnN0YXJ0OlxyXG55aWVsZFxyXG5cclxubCBhbmdsZV92IHNlbnNvciBWZXJ0aWNhbFxyXG5zdWIgYW5nbGVfdiA5MCBhbmdsZV92XHJcbmwgYW5nbGVfaCBzZW5zb3IgSG9yaXpvbnRhbFxyXG5hZGQgYW5nbGVfaCBhbmdsZV9oIGNvcnJfYW5nbGVcclxuXHJcbnNiIGJhc2ljXzFfcGFuZWwgVmVydGljYWwgYW5nbGVfdlxyXG5zYiBiYXNpY18yX3BhbmVsIFZlcnRpY2FsIGFuZ2xlX3Zcclxuc2IgaGVhdnlfMV9wYW5lbCBWZXJ0aWNhbCBhbmdsZV92XHJcbnNiIGhlYXZ5XzJfcGFuZWwgVmVydGljYWwgYW5nbGVfdlxyXG5zYiBiYXNpY18xX3BhbmVsIEhvcml6b250YWwgYW5nbGVfaFxyXG5zYiBiYXNpY18yX3BhbmVsIEhvcml6b250YWwgYW5nbGVfaFxyXG5zYiBoZWF2eV8xX3BhbmVsIEhvcml6b250YWwgYW5nbGVfaFxyXG5zYiBoZWF2eV8yX3BhbmVsIEhvcml6b250YWwgYW5nbGVfaFxyXG5cclxuaiBzdGFydCIsInJlZ2lzdGVycyI6eyJpbyI6W3siVmVydGljYWwiOi0yMCwiSG9yaXpvbnRhbCI6ODcuMjM5NzMsIkFjdGl2YXRlIjoxfSx7fSx7fSx7fSx7fSx7fSx7IlNldHRpbmciOjB9XSwiaW9Db25uZWN0ZWQiOlt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlXSwiaW50ZXJuYWwiOls2My4zMzMzMzMzMzMzMzMzMzYsODcuMjM5NzMsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sImlvU2xvdCI6W3t9LHt9LHt9LHt9LHt9LHt9LHt9XSwiaW9SZWFnZW50Ijpbe30se30se30se30se30se30se31dfSwicnVuQWZ0ZXJSZWdpc3RlckNoYW5nZSI6ZmFsc2UsInJ1bldpdGhFcnJvcnMiOmZhbHNlfQ== Simple code example]
* Cables needed to propagate the output of the Batch/[[Logic Writer]]s to the top edge of a frame are counted in the score
+
* [https://web.archive.org/web/20240524184237/https://stationeering.com/tools/ic#eyJwcm9ncmFtIjoiYWxpYXMgU2Vuc29yIGQwICMgS2l0IChTZW5zb3IpID4gRGF5bGlnaHQgU2Vuc29yXHJcbiMgUGxhY2Ugc2Vuc29yIGZhY2luZyBVUCwgbm90IGluIGFuIGVuY2xvc2VkIHNwYWNlXHJcbmFsaWFzIERpc3BsYXkgZDEgIyBPcHRpb25hbCwgS2l0IChDb25zb2xlKVxyXG5hbGlhcyBQYW5lbFR5cGUxIGQyICMgQW55IGNvbnRyb2xsYWJsZSBTb2xhciBQYW5lbFxyXG5hbGlhcyBQYW5lbFR5cGUyIGQzICMgT3B0aW9uYWxcclxuXHJcbmFsaWFzIEFuZ2xlVmVydGljYWwgcjBcclxuYWxpYXMgQW5nbGVIb3Jpem9udGFsIHIxXHJcbmFsaWFzIENvcnJlY3Rpb25BbmdsZSByMlxyXG5hbGlhcyBQYW5lbDFIYXNoIHIzXHJcbmFsaWFzIFBhbmVsMkhhc2ggcjRcclxuYWxpYXMgUGFuZWxPdXRwdXQxIHI1XHJcbmFsaWFzIFBhbmVsT3V0cHV0MiByNlxyXG5cclxuIyBkZWZpbmUgZGlyZWN0aW9ucyBvZiBzZW5zb3IgYW5kIHBhbmVsIHBvd2VyIHBvcnRzXHJcbmRlZmluZSBTRU5TT1JEQVRBQU5HTEUgMFxyXG5kZWZpbmUgUEFORUxQT1dFUkFOR0xFIDkwXHJcblxyXG4jIGNhbGN1bGF0ZSBob3Jpem9udGFsIGNvcnJlY3Rpb25cclxuc3ViIENvcnJlY3Rpb25BbmdsZSBTRU5TT1JEQVRBQU5HTEUgUEFORUxQT1dFUkFOR0xFXHJcbnN1YiBDb3JyZWN0aW9uQW5nbGUgQ29ycmVjdGlvbkFuZ2xlIDkwXHJcblxyXG4jIGxvYWQgcGFuZWwgUHJlZmFiSGFzaCBmb3IgbGF0ZXIgdXNlXHJcbmwgUGFuZWwxSGFzaCBQYW5lbFR5cGUxIFByZWZhYkhhc2hcclxuYmRucyBQYW5lbFR5cGUyIHN0YXJ0XHJcbmwgUGFuZWwySGFzaCBQYW5lbFR5cGUyIFByZWZhYkhhc2hcclxuXHJcbiMgc2V0IERpc3BsYXkgdG8gUG93ZXItbW9kZVxyXG5iZG5zIERpc3BsYXkgc3RhcnRcclxucyBEaXNwbGF5IE1vZGUgMlxyXG5cclxuc3RhcnQ6XHJcbnlpZWxkXHJcbmwgQW5nbGVWZXJ0aWNhbCBTZW5zb3IgVmVydGljYWxcclxuc3ViIEFuZ2xlVmVydGljYWwgOTAgQW5nbGVWZXJ0aWNhbFxyXG5sIEFuZ2xlSG9yaXpvbnRhbCBTZW5zb3IgSG9yaXpvbnRhbFxyXG5hZGQgQW5nbGVIb3Jpem9udGFsIEFuZ2xlSG9yaXpvbnRhbCBDb3JyZWN0aW9uQW5nbGVcclxuXHJcbmJkbnMgRGlzcGxheSBwYW5lbG1vdmVcclxubGIgUGFuZWxPdXRwdXQxIFBhbmVsMUhhc2ggQ2hhcmdlIFN1bVxyXG5iZG5zIFBhbmVsVHlwZTIgcGFuZWxkaXNwbGF5XHJcbmxiIFBhbmVsT3V0cHV0MiBQYW5lbDJIYXNoIENoYXJnZSBTdW1cclxuYWRkIFBhbmVsT3V0cHV0MSBQYW5lbE91dHB1dDEgUGFuZWxPdXRwdXQyXHJcblxyXG5wYW5lbGRpc3BsYXk6XHJcbnMgRGlzcGxheSBTZXR0aW5nIFBhbmVsT3V0cHV0MVxyXG5cclxucGFuZWxtb3ZlOlxyXG5zYiBQYW5lbDFIYXNoIFZlcnRpY2FsIEFuZ2xlVmVydGljYWxcclxuc2IgUGFuZWwxSGFzaCBIb3Jpem9udGFsIEFuZ2xlSG9yaXpvbnRhbFxyXG5iZG5zIFBhbmVsVHlwZTIgc3RhcnRcclxuc2IgUGFuZWwySGFzaCBWZXJ0aWNhbCBBbmdsZVZlcnRpY2FsXHJcbnNiIFBhbmVsMkhhc2ggSG9yaXpvbnRhbCBBbmdsZUhvcml6b250YWxcclxuXHJcbmogc3RhcnQiLCJyZWdpc3RlcnMiOnsiaW8iOlt7fSx7fSx7fSx7fSx7fSx7fSx7fV0sImlvQ29ubmVjdGVkIjpbdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV0sImludGVybmFsIjpbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLCJpb1Nsb3QiOlt7fSx7fSx7fSx7fSx7fSx7fSx7fV0sImlvUmVhZ2VudCI6W3t9LHt9LHt9LHt9LHt9LHt9LHt9XX0sInJ1bkFmdGVyUmVnaXN0ZXJDaGFuZ2UiOmZhbHNlLCJydW5XaXRoRXJyb3JzIjpmYWxzZX0= Better code example]

Latest revision as of 07:23, 2 August 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:

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:

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


Note : as of 12 July 2024 neither of these links seem to work (they both result in a 'Network Error' reported by stationeering.com with no code being displayed), and the security certificate for the server has expired which means that your browser will likely complain that statoneering.com server is unsafe. You can continue visiting the links through Internet Archive at the links below.