Editing Temperature independent fuel mixing
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | Making fuel with a | + | Making fuel with a 33:67 setting on the gas mixer when the incoming O2 and H2 have different temperatures will result in an incorrect mix. |
− | |||
− | |||
+ | Instead of waiting for the temperatures to equalize, one can build a circuit that calculates the necessary setting on the gas mixer to always produce perfect fuel. The fuel will really be perfect because the gas mixer allows decimal values, so it has an incredibly accuracy. Just don't forget that making hot fuel will lead to explosions, if that should happen, please enjoy the strongest and most perfect explosion possible. | ||
'''Components needed:''' | '''Components needed:''' | ||
*3 logic I/O (2 readers, 1 writer) | *3 logic I/O (2 readers, 1 writer) | ||
− | * | + | *5 logic processor (all math) |
*3 logic memory | *3 logic memory | ||
*2 pipe analyzer | *2 pipe analyzer | ||
Line 14: | Line 13: | ||
'''Build:''' | '''Build:''' | ||
− | + | On the gas mixer, connect O2 to input 1 (side) and H2 to input 2 (top) | |
− | |||
− | |||
*2 pipe analyzers | *2 pipe analyzers | ||
**On the O2 and H2 sides | **On the O2 and H2 sides | ||
*2 logic readers | *2 logic readers | ||
− | ** | + | **T.o = Temperature on the pure oxygen side |
− | * | + | **T.v = Temperature on the pure volatiles side |
− | **A = 2* | + | *2 math and 1 memory unit to calculate T.o/(2*T.v) |
− | **B = | + | **A = 2*T.v |
+ | **B = T.o/A | ||
+ | *2 math and 1 memory unit to calculate the ratio of oxygen (result between 0 and 1) | ||
**C = B+1 | **C = B+1 | ||
− | **D = | + | **D = B/C |
+ | *1 math and 1 memory to get a final value between 0 and 100, the range that the gas mixer wants | ||
+ | **result = 100*D | ||
*1 logic writer to send the result to the gas mixer | *1 logic writer to send the result to the gas mixer | ||
**The gas mixer will accept decimal values, so the mix will be a perfect 2:1 mix of H2 and O2 | **The gas mixer will accept decimal values, so the mix will be a perfect 2:1 mix of H2 and O2 | ||
− | ''' | + | '''Additional:''' |
− | |||
− | |||
− | |||
*Use a PAC or Transformer to put this circuit on it's own data network | *Use a PAC or Transformer to put this circuit on it's own data network | ||
− | *The circuit will require | + | *The circuit will require 180W on standby and 280W while mixing fuel |
+ | |||
Line 57: | Line 56: | ||
Combine the expressions | Combine the expressions | ||
*P.o*V.o / (R*T.o) = 1/2 * P.v*V.v / (R*T.v) | *P.o*V.o / (R*T.o) = 1/2 * P.v*V.v / (R*T.v) | ||
− | We now cancel R from both sides. We can also remove P.o and P.v because the gas mixer is already compensating for differences in incoming pressures | + | We now cancel R from both sides. We can also remove P.o and P.v because the gas mixer is already compensating for differences in incoming pressures so we don't have to deal with that, this leaves us with |
*V.o/T.o = 1/2 * V.v/T.v | *V.o/T.o = 1/2 * V.v/T.v | ||
The gas mixer can only influence the volume, not the temperature, so we will solve for the volume ratio | The gas mixer can only influence the volume, not the temperature, so we will solve for the volume ratio | ||
Line 67: | Line 66: | ||
*2) Ratio.o + Ratio.v = 100% = 1 | *2) Ratio.o + Ratio.v = 100% = 1 | ||
Two equations, two unknowns. This can be solved.<br> | Two equations, two unknowns. This can be solved.<br> | ||
− | + | It doesn't really matter if we choose Ratio.o or Ratio.v, the only effect from this is to determine which pipe goes where on the gas mixer. Let's use oxygen on input 1 and volatiles on input 2. That means we should solve for Ratio.o, so lets remove Ratio.v via substitution | |
− | |||
− | |||
*Ratio.v = 1 - Ratio.o | *Ratio.v = 1 - Ratio.o | ||
now substitute this into the first equation | now substitute this into the first equation | ||
Line 77: | Line 74: | ||
To make it easier to look at, lets substitute T.o/(2*T.v) for k | To make it easier to look at, lets substitute T.o/(2*T.v) for k | ||
*Ratio.o = k / (1 + k) | *Ratio.o = k / (1 + k) | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Now we will multiply with 100 to get a value between 0 and 100 which the gas mixer wants. | Now we will multiply with 100 to get a value between 0 and 100 which the gas mixer wants. | ||
− | *gas mixer setting = 100 / (1 + T.o/(2*T.v)) | + | *gas mixer setting = 100 * T.o/(2*T.v) / (1 + T.o/(2*T.v)) |
− | This is | + | This is our final equation and the one that the circuit will be calculating. The result will be sent to the gas mixer.<br> |
+ | As mentioned above, this equation expects the O2 pipe to be connected to input 1. If we wanted the H2 pipe on input 1, we would have to solve for ratio.v above instead to get another equation. It's of course possible to be lazy and do ratio.v = 1 - ratio.o, but if you are going to be lazy consider that the extra processor will require 4g of metal and 10W of power, and mining and building power generation is work too! |