The Control Binding Template supports the use of constants and expressions to define the removal of blocks from a Control Strategy. This version of Control Architect only supports the removal of existing blocks that form a default Control Strategy or Module.
This functionality allows you to define a common Template for a Control Conversion task that during execution will allow you to programmatically remove functions or blocks that don't apply. For example you can define a simple PID Control Strategy that contains an Analog Input, Regulatory PID function, and an Analog Output. If during processing you find that the new Control Strategy does not require an Analog Input/Output Block, then you can choose to specify in the Binding expression that this Analog Input/Output Block is to be removed. This saves a lot of effort in having to maintain multiple Template variations to account for the possibilities that an Analog Input/Output function may or may not be required.
Block Removal
You can define in a Control Binding an expression that will determine if a particular Template Block should be removed. This type of Control Binding requires that the Source Control Property is a type of constant <Constant> and the Target Control Property must be the name of the Function Block appended with the "Block" value as in "AIChannelA.Block". You must manually add this new Control Property "AIChannelA.Block" to the CM Template whose block or blocks may require deletion. The "Block" name is case sensitive, which means if you specify "BLOCK" it will fail. You would develop an expression for this binding that can determine a valid command value to apply to the binding when executed. If the returned command value is an empty string as in "" or string.Empty, then the Delete Block command will not be executed.
The Block command value for removal must be set to the value "BLOCK_DELETE" in order for the Control Conversion process to recognize and execute the removal command.
You can also add a Control Binding where the source Property name is the <Constant> and the target Control Property is a user added Control Property that is the name of the embedded Function Block appended with the text '.Block' as in "AIChannelA.Block" where "AIChannelA" is the name of the embedded Function Block.
When a Data Collection is executed with a reference to this Control Binding, a message will indicate that the Block will be deleted.