Temperature triggered duty cycle


#1

1) Give a description of the problem
I would like to create a piston triggered by outside temperature (Checked every 30 min) That turns on two devices, so long as the temperature is below -32C these will cycle on 10 minutes and off for 20 minutes until the outside temperature rises at or above -32C then those two devices will turn off.
I am not familiar with using the GUI to do any of this sort of programming or some of the expressions used here, C++ and VBA were my jam some 15 years ago, and not so relevant today, so consider me a novice.

2) What is the expected behaviour?
The intent is
if $twcweather.conditions.temperature is less than -32_C
Then
Tank heater1 and Tank heater2
do
Turn on;
else $twcweather.conditions.temperature is = or greater than -32_C
Tank heater2 and Tank heater2
do
Turn off;

3) What is happening/not happening?

I can not figure out how to only turn the tanks on for 10 minutes and then off for 20 until the temperature is => -32_C

4) Post a Green Snapshot of the piston![image|45x37](


#2

Unfortunately, we cannot use $twcweather as a trigger, so I would likely use a Timed trigger to kick off the piston:

Every 30 minutes                                            <-- Trigger
do
    IF $twcweather.conditions.temperature is less than -32  <-- Condition
    Then
        Turn on Tanks
        Wait 10 minutes
        Turn off Tanks
    END IF
END EVERY

#3

WCmore,

Thanks a lot! that was the ticket, I was trying to trigger the event with twcweather. Thanks for the tip.

I believe I have it working now.

Cheers!