When configuring a Campbell PakBus data source, you have the option to enable or disable automatic parameter configuration. Either choice can result in complex outcomes which may not be initially obvious, so we will cover this in detail over two separate articles:
- Part 1 explains how this choice affects series-to-parameter mappings and parameter creation during the initial connection to the device. It also covers the effects of changing to manual configuration and editing the series-to-parameter mappings.
- Part 2 focuses on what happens when the logger program changes after a data source has already been configured based on the original program.
For most people, their first exposure to this option is during the data source creation wizard:
Once the data source is created, this configuration option can be found in the Series tab:
You can leave this option enabled (which is the default) to automatically create, update and disable parameters based on the tables defined in the data logger. These actions are based on certain rules which we will be digging into throughout this article.
First, let's summarize what will happen when the option is left enabled (the default) during data source creation. The following actions are taken during the initial automatic parameter configuration, which occurs right after the very first connection between eagle.io and the logger device:
Publictable, and any status tables (for example
DataTableInfo), will be excluded from series configuration
- Any other table will have all it's data fields enabled as series and mapped to new parameters which will be automatically created. The new parameters will be based on the data field names, although some changes may occur.
To see the results of these actions, we can simply disable automatic parameter configuration for an already-configured data source, which will reveal the tables and series-to-parameter mappings. Note that we can do this just to observe the tables and the series-to-parameter mappings, then re-enable the option without making any changes. Doing this will not disturb the current configuration.
When automatic parameter configuration is enabled, the data source tables will not be displayed. When we untick the option, the tables are revealed:
Based on the previously stated actions that took place during initial automatic parameter configuration, we know that any status tables (in this case,
DataTableInfo), will have been excluded from series configuration. We can confirm this by clicking one of those table names:
Note that the exclusion of status tables cannot be changed even after switching to manual parameter configuration.
Of the two remaining tables, the
Public table has also been excluded from series configuration, but in this case the data fields of the table are listed as series that have not been enabled, so they are not yet mapped to any parameters:
We can choose to enable any or all of these series, which will cause a corresponding new control parameter to be created for each enabled series. For example, I can enable the
Batt_Volt field, which will then be mapped to a newly created parameter named
Public - Batt Volt:
The final table is
Logs, which will have been automatically configured based on the previously stated rules; all it's data fields have been enabled as series and mapped to newly created parameters:
Since all data fields of this table are enabled series mapped to parameters, the only change we might make is to disable some unwanted series. For example, I can disable the
Batt_Volt series which is mapped to the
Let's review the two manual changes that have just been made to the automatic configuration:
- In the
Batt_Voltseries, which was previously disabled and unmapped, has been enabled and mapped to the
Public - Batt Voltparameter
- In the
Batt_Voltseries, which was previously enabled and mapped to the
Batt-Voltparameter, has been disabled
Before saving these two changes, the workspaces tree contained the following parameters, each corresponding to a series from the
After saving the two changes, the workspaces tree contains one disabled parameter, and one new parameter:
There are two important things to note about this change:
- The original
Batt-Voltparameter is now showing as greyed-out, because it is disabled (i.e. no longer mapped to an enabled series)
- The newly created
Public - Batt Voltparameter is a number control parameter, as shown by the special icon. This is because it is mapped to a series from the
You may also have noticed a difference in the way the two parameters were named. When the original
Batt-Volt parameter was created, it's name was based on the
Batt_Volt series from the
Logs table (the underscore character is not allowed in node names, so it was replaced by a dash). However, when the
Batt_Volt series from the
Public table was manually enabled and mapped to a newly created parameter, the default name of that parameter was
Public - Batt Volt.
The difference: one parameter name does not include the table name, the other does. The reason for this is that if automatic parameter configuration initially creates new parameters from only one table, the default parameter names do not include the table. As soon as multiple tables are involved (such as when we enabled the first series from the
Public table), then each default parameter name will include the table name as a prefix. All these names are defaults only and can be changed.
The best way to become familiar with this configuration is to dive in and start changing the series-to-parameter mapping. Any mistakes or unwanted configuration can be erased simply by deleting the data source and starting again. If creating a data source for test purposes, it's advisable (and faster) to only download a small amount of data from the logger during the data source creation wizard, for example:
Part 2 will dive into what happens when your initial logger program, which defined the tables and fields that determined parameter creation, is changed to a different program with different tables and fields.