20.4 Configuring data endpoints
To use WCC Lite as a programmable logic controller, it needs to be configured in a particular way. The PLC functionality of the WCC Lite only allows for the use of data that is has been configured in the Excel configuration spreadsheet. This has been done for security purposes and to preserve transmission medium only for data that is available. Only topics defined in the configuration can post or get data. If a certain data entry exists but it has not been linked to a PLC program, all calls from PLC runtime application to Redis database will be ignored. Therefore it is highly advised to prepare and upload the Excel configuration before using this signal in the PLC application.
Some parameters are mandatory for PLC usage. These parameters are shown in two tables below (one for Devices, one for Signals tab). Please note that other parameters can be used as well, but are not covered because they aren’t specific to PLC functionality.
Table. Mandatory parameters for Devices tab
Parameter | Type | Description |
name |
string |
User-friendly device name |
device_alias |
string |
Device alias to used in configuration |
enable |
boolean |
Enabling/disabling of a device |
protocol |
string |
Selection of protocol (IEC 61499) |
Table. Mandatory parameters for Signals tab
Parameter | Type | Description |
signal_name |
string |
User-friendly signal name |
device_alias |
string |
Device alias from a Devices tab |
signal_alias |
string |
Unique signal name to be used |
source_device_alias |
string |
device_alias of a source device |
source_signal_alias |
string |
signal_alias of a source signal |
If an upload consisting of configuration for IEC 61499 has been succesful, one should be able to access a configuration stored in /etc/iec61499.json file where protocol-specific parameters are shown in a JSON format. If the file is missing, make sure you have a correct firmware version installed and haven’t made any typing errors.
Parameters mentioned earlier, namely device_alias and signal_alias, are the only parameters one needs to fill to bind Excel configuration to 4Diac framework. Two types of blocks are used for data transmission - PUBLISH blocks to write data to REDIS database and SUBSCRIBE blocks to acquire data from database as soon as it changes its value. Both of them have an ID connection. To connect a block to a datapoint, one should set this pin as raw[].redis[device_alias,signal_alias], e.g. raw[].redis[example_plc_device,example_plc_signal_alias].
An example with SUBSCRIBE and PUBLISH function blocks is shown below in image below.
Subscribe and publish examples
Outputs of variable type ANY cannot be directly wired to inputs of the same type and therefore need to be explicitly typed using transitional function blocks
Currently only PUBLISH_1 and SUBSCRIBE_1 function blocks are supported.
If every step until now has been succesful, a user could now start debugging a PLC application.