Hi all.
Here are some ideas for logic blocks.
Some are, in my opinion, missing in kitControl and others are simple one-blocks that you would easily be able to put together using standard logic blocks.
Just a few to get started… More WILL come
Advanced TStat
The standard TStat block takes CV, SP and Diff.
I’m suggesting instead of Diff, you have a HighSwitch and LowSwitch.
The rest of the TStats functions, like “Null On In Control” and the on should be kept Example
[Edit: black line is CV]
AndNot
A simple compare block.
IF (and &! not) { out = true } Example
Valve Exercise
A block to to exercise a valve.
It has a status input to see if the equipment is running and a valve- input and output.
Exercise at a specific time each day, for 5[adjustable] minutes unless the valve have had a value of >95%[adjustable] within the last 24[adjustable] hours.
*[Option]"
Don’t exercise if the status input is “true”. Maybe queue for when the status is false.
MultiScheduleSelector
A schedule selector block with a boolean output and 3 boolean inputs. Input 1 = main schedule
input B = secondary schedule
input three = holiday schedule - highest priority
boolean selector for each schedule to disable/enable input passthrough, making it easy to select active schedule (for example equipment schedule and building schedule) from a px view with a few checkboxes.
Great ideas those should be easy ones to build! I’ll add them to the YouTrack. Have a look at the Hysteresis block ddctCommunity-rt Module I think it may be the same as the first object you described.
@Rosenthaler, I’ve pushed a commit to DDC-7 branch - Advanced T-Stat for review. Its a slight variation of what you described because the Hysteresis already completes that function.
However I saw another use case where Setpoint is the off trigger and Hi and Low Switch are the on setpoints.
When the control value is at or above the High Switch: out = true
When the control value meets the setpoint: out = false
When the control value is at of below the Low Switch: out = true
When the control value meets the setpoint: out = false
This gives you greater control than the usual diff control. Instead of a split deadband you can have a different band either side of the setpoint.
I built a custom component a while back that works like you want the advanced T’stat.
It’s a hysteresis limits module. 2 setpoints low and high) and an input. Once the input goes above the high value the output goes true and stays true until it goes below the low value - simple.
Will also automatically reverse action if the low value input is greater than the high value.
I can share the code and once I have access to the GIT can add it to a branch.
You can access the git here: N4 / ddct-community · GitLab (ddc-talk.com)
We made an implementation of the advanced Tstat, so give it a look and see what you think. If you have any improvements or change suggestions, don’t hesitate to let us know or make a branch with the changes, so we can see what you mean
I’ll be online on discord (username: Rose) for a few more hours if you have any questions
Btw @TJ087 I can see your GitLab user is approved yesterday, so you should have access