arduino is responsible for servo support. One pin is for open and one is for close.
On youtube i found rules for simple thermostat, I set it to my needs and it works great.
When heating -valve is opening, if the set temperature is reached, the valve closes.
I've been trying to figure out how to write the rules for two days and I can't do it.
I need it to work this way-
heat is turn on, set to 40 degrees
turn on GPIO12 (event Open) for 2s (the valve opens a little)
wait 1 min
check that the temperature is 40 degrees
if not- turn on gpio12 (event Open) 2s (the valve opens a little more)
wait 1 min and so on.
up to 40 degrees
If the temperature is above 42 degrees
turn on GPIO13 (event Close) (the valve closes a little)
check that the temperature is above 42 degrees
if so, turn on gpio13 (event Close)
if the temperature is between 40 and 42 degrees
gpio12 off, gpio13 off.
My rules only for LCD and setting temperature
Code: Select all
on System#Boot do
TaskValueSet 2,1,20.0
TaskValueSet 2,2,19.5
TaskValueSet 2,3,20.5
endon
on Up#Switch do
if [Up#Switch]=0
if [Local#SetTemp]<40
TaskValueSet 2,1,[Local#SetTemp]+0.5
TaskValueSet 2,2,[Local#SetTemp]
TaskValueSet 2,3,[Local#SetTemp]+1
endif
endif
endon
on Down#Switch do
if [Down#Switch]=0
if [Local#SetTemp]>5
TaskValueSet 2,1,[Local#SetTemp]-0.5
TaskValueSet 2,2,[Local#SetTemp]-1
TaskValueSet 2,3,[Local#SetTemp]
endif
endif
endon
on Ds18b20#temp do
if [Ds18b20#temp] > [Local#TempHigh]
event,Close
endif
endon
on Ds18b20#temp do
if [Ds18b20#temp] < [Local#TempLow]
event,Open
endif
endon
on Open do
gpio,12,1
oled,4,2,Heating -ON-
endon
on Close do
gpio,13,1
oled,4,2,Heating -OFF-
endon
on SetTemp do
TaskValueSet 2,1,%eventvalue%
TaskValueSet 2,2,%eventvalue%-0.5
TaskValueSet 2,3,%eventvalue%+0.5
endon