Naming Conventions

While not mandatory, it is recommended to adopt the following naming conventions for clarity and usability:
  • Write Operations: Prefix register names with control. to indicate that the register is used to set the digital output.
  • Read Operations: Prefix register names with measure. to signify that the register is used to read the digital input signal.
See the example address map below for register naming conventions.

Required Parameters

name
string
required
A unique name for the register.Example: control.mainContactor
address
int
required
Corresponds to the number on the digital input or output module.Example: 0
Please note that the address should start from 0, not from 1. However, the physical address on the I/O module begins at 1.
type
string
required
Indicates whether the register is an input or an output.Options: input | output

Required Registers

control.mainContactor
string
required
This register is used to control the main contactor.
control.auxiliaryContactor
string
required
This register is used to control the auxiliary contactor.

Optional Registers

Reference Contactor
control.referenceContactor
string
This register is used to control the reference contactor.
Contactor Feedback
measure.mainContactor
string
This register is used to measure the main contactor.
measure.auxiliaryContactor
string
This register is used to measure the auxiliary contactor.
measure.referenceContactor
string
This register is used to measure the reference contactor.
Breaker Feedback
measure.breakerFeedback
string
This register is used to measure the breaker.

Example

The example below shows a complete address map for a precharge device with all required and optional registers.
precharge_address_map.json
[
  {        
    "name": "control.mainContactor",
    "address": 0,
    "type": "output"
  },
  {        
    "name": "control.auxiliaryContactor",
    "address": 1,
    "type": "output"
  },
  {        
    "name": "control.referenceContactor",
    "address": 2,
    "type": "output"
  },
  {        
    "name": "measure.mainContactor",
    "address": 8,
    "type": "input"
  },
  {        
    "name": "measure.auxiliaryContactor",
    "address": 9,
    "type": "input"
  },
  {        
    "name": "measure.referenceContactor",
    "address": 10,
    "type": "input"
  },
  {        
    "name": "measure.breakerFeedback",
    "address": 11,
    "type": "input"
  }
]