HVAC-Talk: Heating, Air & Refrigeration Discussion banner

Tridium Add Button Graphic Multistate Value

1.3K views 11 replies 4 participants last post by  Keith D  
#1 ·
Hi,

If I wanted to create two button ON and OFF, I would used Enable/inactive and Enable/active

How can I create 1 button that will write to the multi state value fan speed 0, and another write 5 for example to the same multi state value.

The idea is to create 3 buttons for fan speed low, medium and High. All writing to one multistate value fan speed.

Thanks
 
#2 ·
Use each of the three buttons as a toggle to a Boolean, each of which activates a NumericSwitch to write either a zero when false, or the appropriate value for the speed you want. Route the three numeric results to a Maximum block to output the highest of the three results to the multistate fan speed point.
Reset the other two Booleans back to false if the multistate value is anything other than the true value for that particular Boolean.
There are enough blocks within kitControl to manage this, if you aren't the sort of Niagara guy to write this as a Program object.
 
#3 ·
Try a SetPointFieldEditor from kitPX. This will give you a dropdown on the graphic to the the multi-state for all the values available. This will write the point to the Set Slot of the point. As long as the point does not have a priority override or a something writing to Fallback, it will change the value. This way only one thing to put on the graphic for the point versus multiple ......

The first pic is the graphic option from a browser when selected. The second is the SetPointFieldEditor properties in workbench ......

..............



.................
 
Save
#7 ·
Your welcome, your original post did not state you were attempting to do this with app like Crestron. This information would have been helpful if noted when asking for assistance so we know how to reply properly .....
 
Save
#11 ·
Izak



Is this what you want to do?

If so then create a PX page and paste in the following, its too long winded to try to explain how to do this via the forum.
And I find uploading screenshots quite tedious in this forum.
You will need to create an Enumerated point under the config branch with a name of Fan_Speed_Enum.
Then work with it.

<?xml version="1.0" encoding="UTF-8"?>
<!-- Niagara Presentation XML -->
<px version="1.0" media="workbench:WbPxMedia">
<import>
<module name="baja"/>
<module name="bajaui"/>
<module name="converters"/>
<module name="gx"/>
<module name="kitPx"/>
</import>
<content>
<ScrollPane>

<CanvasPane name="content" viewSize="1000.0,800.0" scale="fitRatio" minScaleFactor="0.5" maxScaleFactor="1.0">

<Label layout="30.0,20.0,100.0,20.0">
<ValueBinding ord="station:|slot:/" summary="%?% = %.%">
<ObjectToString name="text" format="%time()%"/>
</ValueBinding>
</Label>

<ImageButton layout="110.0,120.0,50.0,20.0" text="OFF">
<ActionBinding ord="station:|slot:/Fan_Speed_Enum/set" widgetEvent="actionPerformed">
<DynamicEnum name="actionArg" value="0"/>
</ActionBinding>
<ValueBinding ord="station:|slot:/Fan_Speed_Enum/out" popupEnabled="false">
<IEnumToSimple name="enabled" map="baja:Boolean 0=false;default=true;"/>
</ValueBinding>
</ImageButton>

<ImageButton layout="160.0,120.0,50.0,20.0" text="Spd_1">
<ActionBinding ord="station:|slot:/Fan_Speed_Enum/set" widgetEvent="actionPerformed">
<DynamicEnum name="actionArg" value="1"/>
</ActionBinding>
<ValueBinding ord="station:|slot:/Fan_Speed_Enum/out" popupEnabled="false">
<IEnumToSimple name="enabled" map="baja:Boolean 1=false;default=true;"/>
</ValueBinding>
</ImageButton>

<Label layout="130.0,160.0,100.0,20.0" text="Fan_Speed_Enum" halign="left"/>

<BoundLabel layout="230.0,160.0,50.0,20.0" border="1.0 solid black">
<BoundLabelBinding ord="station:|slot:/Fan_Speed_Enum" statusEffect="none">
<ObjectToString name="text" format="%out.value%"/>
</BoundLabelBinding>
</BoundLabel>

<ImageButton layout="210.0,120.0,50.0,20.0" text="Spd_2">
<ActionBinding ord="station:|slot:/Fan_Speed_Enum/set" widgetEvent="actionPerformed">
<DynamicEnum name="actionArg" value="2"/>
</ActionBinding>
<ValueBinding ord="station:|slot:/Fan_Speed_Enum/out" popupEnabled="false">
<IEnumToSimple name="enabled" map="baja:Boolean 2=false;default=true;"/>
</ValueBinding>
</ImageButton>

<ImageButton layout="255.0,120.0,50.0,20.0" text="Spd_3">
<ActionBinding ord="station:|slot:/Fan_Speed_Enum/set" widgetEvent="actionPerformed">
<DynamicEnum name="actionArg" value="3"/>
</ActionBinding>
<ValueBinding ord="station:|slot:/Fan_Speed_Enum/out" popupEnabled="false">
<IEnumToSimple name="enabled" map="baja:Boolean 3=false;default=true;"/>
</ValueBinding>
</ImageButton>

</CanvasPane>

</ScrollPane>
</content>
</px>
 
#12 ·
Sorry, I omitted that the Enumerated point needs to have facets set up like below.
0=OFF, 1=Speed_1, 2=Speed_2, 3=Speed_3

Obviously, your crestron system might need different values for the fan speeds, but I'm sure you can work that out.
 
You have insufficient privileges to reply here.