Dry Ore Patch Train Restrictor

This board is to show, discuss and archive useful combinator- and logic-creations.
Smart triggering, counters and sensors, useful circuitry, switching as an art :), computers.
Please provide if possible always a blueprint of your creation.
mmmPI
Filter Inserter
Filter Inserter
Posts: 339
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mmmPI » Thu Aug 22, 2019 5:06 pm

mrvn wrote:
Thu Aug 22, 2019 3:03 pm

Note quite. The number of belt tiles you need depends on only two things: 1) the belt speed, 2) the mining speed of the last miner. You need to connect enough belts so that with just one miner working there still always is one ore in the covered section.

Personally I simply connect the chest to the train stop and set it to enable when it has a full load. That takes 0 combinators. I really don't care about the last partial load. Exhausted mining outpost will be deconstructed at some point and then I enable the station one last time manually. So this is more of an academic issue.


Concerning taking train contents into account while loading: I also did a more complex design for higher throughput unloading stations with a waiting bay. The station will allow one or two and only two trains into the station depending on the amount of space for ore. All other trains with be redirected to other stations:

viewtopic.php?f=194&t=48069&p=277977&hi ... on#p277977

Feel free to change this for loading and combine it with the "Dry Ore Patch Train Restrictor" of either design for the ultimate station.
1) That is still a limitation/adaption, imagine you have an oupost that centrifuge uranium, all the abundant one is gathered in one place, all the rare one in another. How many belts would you need to wire for the rare uranium train !

With original design ideas and little tweak, you could just configure it so that if quantity increased the last 20 minutes, the trains comes, disregarding the quantity that is actually in the chest. Using 1 slider to change the interval. And the train would only come every 20 minutes, if the thing was active, in case you have dozens of slow uranium outpost but some of them are backed up in low quality uranium.

also
You need to add more belt tiles. Enough to cover the distance between 2 ores.
Imagine then that the distance between 2 ores is not constant , due to for example sulfuric acid production being irregular ! ( link that here because in my mind it is the same thing)

2) concerning the academical answer, I do what you describe, when i can, but sometimes, other conditions are forced onto your design, or you wouldn't force yourself to balance things, if you can use original design. It enabled me to think differently about some problems. :idea: :idea: :idea: :idea: :idea:

3) The design you link is something different , more complex, has similarities, but has different use cases ( in my mind) it uses several ideas, and aims at making trains follow a different behavior than what the original design does ( in my mind it is more like a part of an autonomous system, rather than an autonomous part that you can add to your system )


and after all you asked :
mrvn wrote:
Thu Jul 11, 2019 1:45 pm
Why not simply wire up the last few belts before the buffer chest in read-only/hold mode and then enable the station when:
so tried to answer your question from my point of view, thinking maybe that is also what op had in mind, or @waduk when he said thanks, now i realised maybe it wasn't really a question but more a rethorical way to propose an alternative :), which when i see it i don't :idea: :idea: :idea: :idea: :idea: in my head, that's just that, sorry mrvn , that is something that i already knew about since that's what i was thinking was the only method (not really but using it often) ! I don't say it's bad, i was using it, i say it's prone to false positive/flickering, and could require tedious/custom configuration , that involve more than 1 number, i like the simplicity of scratching my head once, and then only tweak a slider here and there, this is adding a "string to my bow" :)

mrvn
Smart Inserter
Smart Inserter
Posts: 3679
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mrvn » Mon Aug 26, 2019 10:59 am

mmmPI wrote:
Thu Aug 22, 2019 5:06 pm
1) That is still a limitation/adaption, imagine you have an oupost that centrifuge uranium, all the abundant one is gathered in one place, all the rare one in another. How many belts would you need to wire for the rare uranium train !

With original design ideas and little tweak, you could just configure it so that if quantity increased the last 20 minutes, the trains comes, disregarding the quantity that is actually in the chest. Using 1 slider to change the interval. And the train would only come every 20 minutes, if the thing was active, in case you have dozens of slow uranium outpost but some of them are backed up in low quality uranium.

also
You need to add more belt tiles. Enough to cover the distance between 2 ores.
Imagine then that the distance between 2 ores is not constant , due to for example sulfuric acid production being irregular ! ( link that here because in my mind it is the same thing)
1) In both cases you need the same number of belts. Because the relevant case is when the mine is near depletion. Every mine is "rare" when it nears depletion. The number of belts needed to avoid flickering is a constant.

2) Running out of sulfuric acid is basically like running out of power. You will get false positives then. The timer based approach will fail too if the sulfuric acid is lacking longer than the timer. But I guess it's easier to set the timer high enough to bridge the gap between acid deliveries. The belt approach has a small upper window for the time between ores it can reasonably cover.

So for a uranium mine with intermittant acid deliveries the timer approach would be the way to go for sure.

Some ideas there:

A) stop the timers when sulfuric acid it gone (so you don't get false positives when mining stops).

B) disable the sulfuric acid station when it has more than N sulfuric acid present. Where N depends on the speed of ore being produced.
For example at the start you buffer up to 75000 sulfuric acid (3 tanks for 1 fluid wagon). So you enable the station if acid < 50000. When the mine is nearly depleted you only activate the station when acid < 5000. No point storing 75000 acid when the mine consumes it so slowly and probably runs out of ore before using that much.

C) don't watch for ore to be produced, watch for acid levels to change.
Enable the ore station when it has enough ore for a train or (sulfuric acid > 0, sulfuric acid unchanged for N ticks, ore > 0).

foamy
Inserter
Inserter
Posts: 28
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: Dry Ore Patch Train Restrictor

Post by foamy » Mon Sep 09, 2019 8:13 pm

Can't you simply wire the miners up and read the ore patch quantities that way?

mmmPI
Filter Inserter
Filter Inserter
Posts: 339
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mmmPI » Tue Sep 10, 2019 12:31 pm

foamy wrote:
Mon Sep 09, 2019 8:13 pm
Can't you simply wire the miners up and read the ore patch quantities that way?
You can, I didn't even know ! I wonder since when it exist !

The original contraption still allow for collecting things that are not from miners, aka the case where you place your centrifuge next to the uranium patch, you have one train to collect the rare uranium, once every 5 minutes if the thing was active. Same if you smelt directly after the miners, or any other thing that mods makes you do.

The original design mention one use case where you add more miners at some point in time, or when you reshuffle them. Using wire to read ore patch quantity is tricky in this case, because the ore patch might not be fully covered.

Yet that's another "string for the bow" :)

mrvn
Smart Inserter
Smart Inserter
Posts: 3679
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mrvn » Tue Sep 10, 2019 3:18 pm

mmmPI wrote:
Tue Sep 10, 2019 12:31 pm
foamy wrote:
Mon Sep 09, 2019 8:13 pm
Can't you simply wire the miners up and read the ore patch quantities that way?
You can, I didn't even know ! I wonder since when it exist !

The original contraption still allow for collecting things that are not from miners, aka the case where you place your centrifuge next to the uranium patch, you have one train to collect the rare uranium, once every 5 minutes if the thing was active. Same if you smelt directly after the miners, or any other thing that mods makes you do.

The original design mention one use case where you add more miners at some point in time, or when you reshuffle them. Using wire to read ore patch quantity is tricky in this case, because the ore patch might not be fully covered.

Yet that's another "string for the bow" :)
I too totally forgot they added that. It was a while back though, sometime in 0.16.x I believe.

User avatar
Ranger_Aurelien
Fast Inserter
Fast Inserter
Posts: 105
Joined: Thu Apr 25, 2019 1:53 pm
Contact:

Re: Dry Ore Patch Train Restrictor

Post by Ranger_Aurelien » Tue Sep 10, 2019 7:07 pm

I suggest sticking with circuit reading the amount of ore on the belt as you might only require up to a dozen pieces of wire near the station as opposed to wiring each drill together...
-
Ranger Aurelien
"Knowledge Brings Fear" -- Motto of Mars University, Futurama

mmmPI
Filter Inserter
Filter Inserter
Posts: 339
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mmmPI » Wed Sep 11, 2019 9:22 am

Ranger_Aurelien wrote:
Tue Sep 10, 2019 7:07 pm
I suggest sticking with circuit reading the amount of ore on the belt as you might only require up to a dozen pieces of wire near the station as opposed to wiring each drill together...
You can read the quantity of ore covered by the miner itself, or you can also read the quantity of ore left in the whole patch from which the miner mine. ( same UI than for "hold" and "pulse" for a belt).

Which means you could only need to wire 1 miner in this case !

mrvn
Smart Inserter
Smart Inserter
Posts: 3679
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mrvn » Wed Sep 11, 2019 11:37 am

mmmPI wrote:
Wed Sep 11, 2019 9:22 am
Ranger_Aurelien wrote:
Tue Sep 10, 2019 7:07 pm
I suggest sticking with circuit reading the amount of ore on the belt as you might only require up to a dozen pieces of wire near the station as opposed to wiring each drill together...
You can read the quantity of ore covered by the miner itself, or you can also read the quantity of ore left in the whole patch from which the miner mine. ( same UI than for "hold" and "pulse" for a belt).

Which means you could only need to wire 1 miner in this case !
Does that work when the miner is exhausted? Doesn't it then loose the connection to the remaining patch?

foamy
Inserter
Inserter
Posts: 28
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: Dry Ore Patch Train Restrictor

Post by foamy » Wed Sep 11, 2019 7:11 pm

Ranger_Aurelien wrote:
Tue Sep 10, 2019 7:07 pm
I suggest sticking with circuit reading the amount of ore on the belt as you might only require up to a dozen pieces of wire near the station as opposed to wiring each drill together...
Yes, but blueprinted wire is free. Doesn't require a robot, even. It'll magically appear when you build over a ghost, even by hand. A larger concern is belt buffer; the mines'll hit zero but the last piece of ore still needs to make it's way to the train.

My solution for checking very low belt throughput is to wire up two belt segments: one pulse and one hold, in that order. These control a clock. The clock will start running if a. the hold segment is less than full and b. there's no signal on the pulse segment. That means there's room for material to move, but no material is moving. The clock will then tick up, resetting if the pulse segement sends a signal, until it hits a defined time limit, at which point it will generate a 'stuff's gone dry' signal. Since ores have a known production rate, you can configure this to give you lots of error room for things like brownouts.

A moving-average readout, as here, with an appropriately defined time window, would also work.

The 'gone dry' signal can then be processed with other logic, e.g. only being interested in it if the train station is otherwise disabled, the ore patch is reading 0, etc.

mrvn
Smart Inserter
Smart Inserter
Posts: 3679
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Dry Ore Patch Train Restrictor

Post by mrvn » Wed Sep 11, 2019 7:33 pm

Or the "gone dry" signal starts a clock. 600 ticks later the station activates if it has ore in the buffer chests.

Post Reply

Return to “Combinator Creations”

Who is online

Users browsing this forum: No registered users