Presets allow writing preset values to the target addressed data items upon right-click action (command). If needed, you can link the “Write” action of any preset container into other control logic. For example, you can link the “Trigger” slot of a TriggerSchedule into a ModbusClientPresetRegisters container component for periodic writes to its child preset registers, based upon some repeating schedule.
Preset components can be found in the modbusAsync palette and modbusTcp palette in the “Presets” folder, as shown in Figure 34.
Modbus client preset components are not proxy points; there is no ProxyExt as data is not polled/read from the device—only
written to it. Presets exist for both Modbus coils and holding registers—note these are the only two Modbus data items to
which a Modbus master may write.
As needed, copy one or more of the following preset container components anywhere under a client Modbus device (ModbusAsyncDevice, ModbusTcpDevice, ModbusTcpGatewayDevice):
By default, this contains a single ModbusClientPresetCoil to write to one coil—you can add additional (consecutive) coils using a built-in action (see Adding client presets).
Modbus Client Preset Registers
By default, this contains a single ModbusClientPresetRegister to write to one holding register—you can add additional (consecutive) registers using a built-in action (see Adding client presets).
Preset components are not proxy points—you do not see them in any Modbus Client Point Manager view if you copy them under
a client device’s Points extension. Therefore, it is recommended you locate them elsewhere under the device. Note also that you can simply copy the
entire “Presets” folder from the palette if you want presets for both coils and holding registers, and then rename/edit as
needed. Or, copy and paste already configured
presets from another client Modbus device, if appropriate.
One of two types of container Modbus preset components, the ModbusClientPresetCoils component contains one or more preset coil values (ModbusClientPresetCoil components). In this container, you specify a “Starting Address” for the first (topmost) child preset coil value. Any additional child preset coil values are sequentially addressed relative to this (slot order). Note the “Absolute Address” is always used for actual addressing, which is typically the same as “Starting Address,” unless coils in the parent Modbus device are designated with a base address—see Base Address properties.
In this preset container you also specify whether individual child preset coil values are written to the Modbus slave upon any change, or only collectively when the “Write” action of the ModbusClientPresetCoils container is invoked.
Properties of the ModbusClientPresetCoils container slot are as follows:
Starting Address
Specifies the address of the first coil to write (prior to any offset address change as a result of using device-level “Base Address”), as a combination of:
Address Format — either Hex (default), Decimal, or Modbus
Note if Modbus format, the leading “0s” are dropped for coil addresses, and the first coil is “1”.
Address — numerical address, expressed in the selected format.
See Modbus data addresses for general information.
Absolute Starting Address
(Read only) Differs from “Data Address” only if using device “Base Addresses.” It is the sum of the “Data Address” value and the associated “Base Address” value (as configured in the parent Modbus device). This is the actual address that will be used when writing the first coil’s preset value.
Status
(Read only) Displays the status of the container slot—will be fault if a previous write to a child preset coil failed for some reason.
Write On Input Change
Either false (default) or true. If set to true, any change to the boolean “value” of a child preset coil is immediately written to the target coil, in addition to the collective preset coil writes from invoking the “Write” action of the container. If false, preset coil writes occur only from the “Write” action.
Two right-click actions on a Modbus Client Preset Coils container are as follows:
Write
To write all the preset coil values currently in child ModbusClientPresetCoil components.
Add Preset Coil Value
To add an additional child ModbusClientPresetCoil component, specifying its boolean value in the popup dialog. The component is added to the end of the existing slot order.
One of two types of container Modbus preset components, the ModbusClientPresetRegisters component contains one or more preset holding register values (ModbusClientPresetRegister components). In this container, you specify a “Starting Address” for the first (topmost) child preset register value. Any additional child preset register values are sequentially addressed relative to this (slot order). Note the “Absolute Address” is always used for actual addressing, which is typically the same as “Starting Address,” unless holding registers in the parent Modbus device are designated with a base address—see Base Address properties.
In this preset container you also specify the numerical data type for all child preset registers, and whether individual child preset register values are written to the Modbus slave upon any change, or only collectively when the “Write” action of the ModbusClientPresetRegisters container is invoked.
Properties of the ModbusClientPresetRegisters container slot are as follows:
Starting Address
Specifies the address of the first holding register to write (prior to any offset address change as a result of using device-level “Base Address”), as a combination of:
Address Format — either Hex (default), Decimal, or Modbus
Address — numerical address, expressed in the selected format.
See Modbus data addresses for general information.
Absolute Starting Address
(Read only) Differs from “Data Address” only if using device “Base Addresses.” It is the sum of the “Data Address” value and the associated “Base Address” value (as configured in the parent Modbus device). This is the actual address that will be used when writing the first register’s preset value.
Status
(Read only) Displays the status of the container slot—will be fault if a previous write to a child preset register failed for some reason.
Write On Input Change
Either false (default) or true. If set to true, any change to the numeric “value” of a child preset register is immediately written to the target register, in addition to the collective preset register writes from invoking the “Write” action of the container. If false, preset register writes occur only from the “Write” action.
Data type
Either Integer (default), Long, Float, or Signed Integer type. Specify to match the data type of the holding registers in the target Modbus device. Note all child preset registers must use this data type.
Two right-click actions on a Modbus Client Preset Registers container are as follows:
Write
To write all the preset register values currently in child ModbusClientPresetCoil components.
Add Preset Register Value
To add an additional child ModbusClientPresetRegister component, specifying its numerical value in the popup dialog. The component is added to the end of the existing slot order.
For any preset container (Modbus Client Preset Coils, Modbus Client Preset Registers) you can add additional (consecutively addressed) child preset components using either of these two methods:
Use the right-click “Add Preset Coil Value” or “Add Preset Register Value” action on either preset container type (Figure 37). This provides a dialog in which you specify another preset component, added under that preset type container.
Manually, by duplicating/re-editing preset components (or by coping entries from the modbusAsync or modbusTcp palette and editing with a value as necessary).
Figure 37. Action “Add Preset Register Value” to create an additional consecutive register with preset value

By default, added client preset components are appended to the bottom of the slot order. If needed, you can right-click on a preset container and select “Reorder” to change the address order of the child presets, relative to the absolute address in the preset container.
If using multiple preset containers under a client Modbus device, be careful not to “overlap” preset addresses. In other words,
any specific preset address should be in only one preset container.
Copyright © 2000-2016 Tridium Inc. All rights reserved.