Actions

Difference between revisions of "Solar Logic Circuits Guide"

From Unofficial Stationeers Wiki

m (Adding tutorials category)
(Accurate Solar Setup: adjust parentheses in formula)
(28 intermediate revisions by 5 users not shown)
Line 3: Line 3:
 
<translate>
 
<translate>
  
== Disclaimer == <!--T:1-->
+
== Disclaimer ==
  
<!--T:2-->
 
 
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.
  
 +
----
  
= Evie's Solar Circuit Setup (v0.1.1042.5301) = <!--T:3-->
+
== Accurate Solar Setup ==
 +
'''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.
  
<!--T:4-->
+
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 is a setup created with the help of the http://discord.gg/stationeers Official Stationeers Discord server. Note that this setup is *lossy*, meaning it's not perfect. It starts off at 375w of power in the morning, builds up to 500w at zenith (noon) then back to 375. This is due purely to the fact that solars aren't perfectly vertical at 0/100 percent. Also, multiplying a 180 degree angle by 0.55 gives you 0 to 99 values, which is also imperfect. However, this is the most COMPACT setup you can achieve without other external tools and with such little hardware.
 
  
== Requirements == <!--T:5-->
+
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.
  
<!--T:6-->
+
=== Design ===
* 55w base power for one solar, and an additional 5w for each solar you add.  
+
* 1 [[ Sensors| 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")
 +
 
 +
* The [[Sensors#Daylight_Sensor|Daylight Sensor]] should face the sunrise.
 +
* Solar panels should be rotated such that 0% vertical faces the sunrise.
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Component (Name) !! Settings !! Explanation
 +
|-
 +
| 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)
 +
|-
 +
| 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.
 +
|-
 +
| Math Unit (C) || A-B || Adjusted solar angle
 +
|-
 +
| Math Unit (D) || C/1.5 || Conversion from solar angle to panel elevation
 +
|-
 +
| Memory (100) || 100 || Maximum possible panel elevation
 +
|-
 +
| 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.
 +
|-
 +
| Batch Writer || E -> Solar panels, Vertical angle || Send elevation to solar panels
 +
|}
 +
 
 +
[[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
 +
|-
 +
| 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 Reader (L) || Daylight sensor, Activation || As in the auto-reset variant above
 +
|-
 +
| Logic Writer || L -> Transformer, On  || Transformer powers main logic network
 +
|}
 +
 
 +
----
 +
 
 +
== Easy/Compact Solar Setup ==
 +
'''Author:''' Evie<br>
 +
'''Stationeers Version:''' 0.1.1068.5451<br>
 +
'''Properties:''' Simple, Inaccurate (Average error: 7.5°)<br>
 +
'''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.
 +
 
 +
=== Design ===
 
* 1 [[Construction Kit (Sensors)]]
 
* 1 [[Construction Kit (Sensors)]]
* 1 [[Kit (Logic I/O)]] (plus one for each of your solars, so minimum 2)
+
* 2 [[Kit (Logic I/O)]]
* 2 [[Kit (Logic Memory)]]
+
* 1 [[Kit (Logic Memory)]]
* 2 [[Kit (Logic Processor)]] ("Math Unit")
+
* 1 [[Kit (Logic Processor)]] ("Math Unit")
  
<!--T:7-->
 
 
[[File:Evie's Solar Circuit Setup.jpg|none|Solar Setup Diagram]]
 
[[File:Evie's Solar Circuit Setup.jpg|none|Solar Setup Diagram]]
  
 
+
=== Notes ===
== Notes == <!--T:8-->
+
* The [[Daylight Sensor]] MUST be facing West (sunrise), but its rotation doesn't matter.
 
 
<!--T:9-->
 
* The [[Daylight Sensor]] MUST be facing West (sunrise), but it's rotation doesn't matter.
 
 
* Solar panels should be rotated such as that 0% VERTICAL rotation faces west/sunrise, and 100% VERTICAL faces east/sunset.  
 
* 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.  
+
* 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.
 
* 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.
* The use of the [[Area Power Control]] hides all the modules from the rest of your system.
+
* 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.
* You could reduce the power usage and complexity of this system by using a [[Kit (Computer)]] with a [[Motherboard (Logic)]] to set the value on the memory chip and then removing the [[Kit (Computer)]] afterwards. This removes the need to do an additional math operation. 
 
* As of v0.1.1052.5350 the addition of batch writers means you no longer need to repeat a writer for each solar panel.
 
 
 
 
</translate>
 
</translate>

Revision as of 15:22, 24 April 2018

Other languages:
English

Disclaimer

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


Accurate Solar Setup

Authors: Wooodiii, Corvus_bkgk, Enfantcool, Baksch
Properties: Accurate (average error 1.3°), Auto-reset (variant), Power conserving (variant)
Number of Components: 10-12
Math Formula: f(x) = min((x-min(x,15))/1.5, 100) where x is the solar angle.

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.

Design

  • The Daylight Sensor should face the sunrise.
  • Solar panels should be rotated such that 0% vertical faces the sunrise.
Component (Name) Settings Explanation
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)
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.
Math Unit (C) A-B Adjusted solar angle
Math Unit (D) C/1.5 Conversion from solar angle to panel elevation
Memory (100) 100 Maximum possible panel elevation
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.
Batch Writer E -> Solar panels, Vertical angle Send elevation to solar panels

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:

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

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.

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

Easy/Compact Solar Setup

Author: Evie
Stationeers Version: 0.1.1068.5451
Properties: Simple, Inaccurate (Average error: 7.5°)
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.

Design

Solar Setup Diagram

Notes

  • The Daylight Sensor MUST be facing West (sunrise), but its rotation doesn't matter.
  • 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.