![]() |
![]() |
|
| Make/Model | Device Version | Connection Type |
| DataNAB/Modbus Modules | N/A | Serial RS485 |
This driver controls the DataNAB Modbus Input/Output Modules and a Variety of sensors. See the Support Matrices below.
Some features have not yet been implemented and are subject to change upon implementation. These features are noted by a *
The parameters are 19,200 baud, 8 bits, one stop bit, no parity. That's fairly quick for the amount of data, but it doesn't provide asynchronous notifications of changes, so the driver has to poll the points in sequence.
The installation of the driver also requires the user to create a configuration file (See Below).
The Driver is slow to connect upon initial connection to the modules so give it a minute before you feel that it has failed to connect.
Fields are dynamically created based on the type of records in the configuration file, so there are only a few fields whose names are fixed, and these are presented in the first table below.
- RecFieldName represents the Field Name of the Record given in the configuration file.
Name Type R/W Description/Limits DriverVersion String Read Version of the current running driver ReloadConfigFile Boolean Write Reloads the configuration file ResetSensors Boolean WriteResets the Highs and Lows for sensors using the THERM and HUM record type
RecFieldName_Raw Card Read Provides the raw value reported back from the module for the input or output. Values: 0 - 1024DRY Record Fields:
Name Type R/W Description/Limits RecFieldName_Closed Boolean Read Current status of connected dry contact. Values:True for closed, False for OpenTEMP Record Fields:
Name Type R/W Description/Limits RecFieldName_Current Float Read Current Temperature reading in decimal value. Format is based on Configuration File setting. Values: -70.00 - 150.00 RecFieldName_Low Float Read Lowest recorded temperature for the day. Resets at midnight. Format is based on Configuration File setting. Values: -70.00 - 150.00 RecFieldName_High Float Read Highest recorded temperature for the day. Resets at midnight. Format is based on Configuration File setting. Values: -70.00 - 150.00* HUM Record Fields:
Name Type R/W Description/Limits RecFieldName_Current Float Read Current Humidity reading in decimal value. Format is in Percent. Values: 0.00 - 100.00 RecFieldName_Low Float Read Lowest recorded Humidity for the day. Resets at midnight. Format is in Percent. Values: 0.00 - 100.00 RecFieldName_High Float Read Highest recorded Humidity for the day. Resets at midnight. Format is in Percent. Values: 0 - 100.00AMP Record Fields:
Name Type R/W Description/Limits RecFieldName_Amps Float Read Current Value in Amps. Values are dependent on setting used in configuration file and sensor. 10 = 0.00 - 10.00, 20 = 0.00 - 20.00, 50 = 0.00 - 50.00 RecFieldName_IsRunning Boolean Read If a there is a Amp flow currently running. RecFieldName_LastRunDuration Time Read The duration of time Ampage flowed through the sensor. RecFieldName_LastRunPeakAmps Float Read The highest recorded Amp flow the last time it ran. RecFieldName_LastRunTime Time ReadThe Last Time it started running. MAMP Record Fields:
Name Type R/W Description/Limits RecFieldName_MAmps Float Read Current Value in Milliamps. Values: 0.00 - 20.00 RecFieldName_IsRunning Boolean Read If a there is a Milliamp flow currently running. RecFieldName_LastRunDuration Time Read The duration of time Milliampage flowed through the sensor. RecFieldName_LastRunPeakMAmps Float Read The highest recorded Milliamp flow the last time it ran. RecFieldName_LastRunTime Time ReadThe Last Time it started running. VOLT Record Fields:
Name Type R/W Description/Limits RecFieldName_Volts Float Read Current Value in Volts. Values: 0.00 - 5.00 RecFieldName_IsRunning Boolean Read If a there is a Voltage flow currently running. RecFieldName_LastRunDuration Time Read The duration of time Voltage flowed through the sensor. RecFieldName_LastRunPeakVolts Float Read The highest recorded Voltage flow the last time it ran. RecFieldName_LastRunTime Time ReadThe Last Time it started running. PULSE Record Fields:
Name Type R/W Description/Limits RecFieldName_Counts Card Read Current Value of Pulse Counter RecFieldName_Reset Boolean Write Resets the Pulse Counter. Resets at midnight.RELAY Record Fields:
Name Type R/W Description/Limits RecFieldName_Closed Boolean Read/Write Current status of Relay. Values:True for closed, False for OpenOUTPUT Record Fields:
Name
Type
R/W
Description/Limits
RecFieldName_Volts Float Read/Write Current Voltage setting on output in decimal format. Values are 0.00 - 10.00 RecFieldName_VoltsInt Card Read/Write Integer value of the output (Left of the decimal). Values are 0 - 10 RecFieldName_VoltsDec Card Read/Write Decimal value of the output (Right of the decimal). Values are 0 - 99Input/Output Support Matrix:
Sensor Type Ai32 AiO8 Ai8-R13 Dry Contacts X X X Temperature (See Below for models) X X X * Humidity (See Below for models) X X X Current Transducers: 10, 20 and 50 Amps X X X Milliamps: 20mA X X X Voltage: 5v X X X Pulse Counters X Relays X Outputs: 0-10 volts XTemperature Sensor Support Matrix:
Sensor Make/Model Curve Code DataNAB/ALL Thermistors Series C10K7* Humidity Sensor Support Matrix:
Sensor Make/Model Code DataNAB/ALL MBus Series using analog outputs C1000Current Transducer Sensor Support Matrix:
Sensor Make/Model SettingsDataNAB/CT_AC1PH_SLD_5V 10, 20 or 50 AmpsConfiguration File Description:
The Configuration file is in CSV format and must be named Config.csv. For the DataNAB Driver to find the configuration file it must be located in the CQC installation directory under CQCData\MacroFileRoot\Drivers\DataNAB\MonikerName where MonikerName is the Moniker name you set during installation in CQC.
Each line starts with the type of record it is. These are:
BOF
DRY
TEMP
HUM *
AMP
MAMP
VOLT
PULSE
RELAY
OUTPUT
EOFBelow are the contents of each row record with a comma separated field. The records can be in any order except the BOF which must be the first record and EOF which must be the last record. To disable a record from loading in the driver just start the Type field with a '#' e.g. #DRY. There is also a GUI based editor that is included with the DataNAB Module Configurator provided by Kanak Solutions. To enable this use the feature code of 'CQC'.
BOF - This record must be the first record.
Format: BOF, <Config Version>, <Display Raw>, <Measurement Scale>
<Config Version> = Version of the Configuration File. See above for current Version.
<Display Raw> = Defines if the field with the raw data stays hidden or not. This is useful with troubleshooting the sensors displayed value. Value is 0 for hidden and 1 for not hidden.
<Measurement Format> = Defines if Measurements are displayed in English (E) or Metric (M).
DRY This record defines any Sensors that are a Dry Contact Sensor.
Format: DRY, <Model>, <Slave Address>, <Point Number>, <Field Name>
<Model> = Model of the Module the sensor is connected to. . Values are Ai32, AiO8 and Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 - 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai32 = 1 32, AiO8 = 1 8, Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.TEMP This record defines any Sensors that are capable of handling Temperature.
Format: TEMP, <Module Model>, <Slave Address>, <Point Number>, <Field Name>, <Sensor Model> , <Curve Code>, <Offset>
<Module Model> = Model of the Module the sensor is connected to. Values are Ai32, AiO8 and Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai32 = 1 32, AiO8 = 1 8, Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.
<Sensor Model> = Model of the sensor connected to the Module. This is not a required Field for the Driver but used for the GUI Based Config Editor. This field can have a space as a value
<Curve Code> = The Code for the Curve the Sensor uses. See Driver document for a cross-reference list of Sensors to Codes.
<Offset> = Offset in degrees for Temperature Sensors Calibration.This value needs to be entered as degree * 10, for example, a offset of 1 degree is entered as 10. Default value should be 0* HUM This record defines any Sensors that are capable of handling Humidity.
Format: HUM, <Module Model>, <Slave Address>, <Point Number>, <Field Name>, <Sensor Model>
<Module Model> = Model of the Module the sensor is connected to. Values are Ai32, AiO8 and Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai32 = 1 32, AiO8 = 1 8, Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.
<Sensor Model> = Model of the sensor connected to the Module. This is not a required Field for the Driver but used for the GUI Based Config Editor. This field can have a space as a value
AMP This record defines any Sensors that are capable of handling Current Transducers.
Format: AMP, <Module Model>, <Slave Address>, <Point Number>, <Field Name>, <Sensor Model> , <Setting>
<Module Model> = Model of the Module the sensor is connected to. Values are Ai32, AiO8 and Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai32 = 1 32, AiO8 = 1 8, Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.
<Sensor Model> = Model of the sensor connected to the Module. This is not a required Field for the Driver but used for the GUI Based Config Editor. This field can have a space as a value
<Setting> = Amp setting of the sensor connected to the Module. Current Values are 10, 20 or 50
<Loops> = Number of times the Current wire is looped through the center of the sensor.MAMP This record defines any Input set to Milliamp on the Module.
Format: MAMP, <Module Model>, <Slave Address>, <Point Number>, <Field Name>
<Module Model> = Model of the Module the sensor is connected to. Values are Ai32, AiO8 and Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai32 = 1 32, AiO8 = 1 8, Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.
VOLT This record defines any Input set to Voltage on the Module.
Format: VOLT, <Module Model>, <Slave Address>, <Point Number>, <Field Name>
<Module Model> = Model of the Module the sensor is connected to. Values are Ai32, AiO8 and Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai32 = 1 32, AiO8 = 1 8, Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.
PULSE This record defines the Input on a Module as a Pulse Counter.
Format: PULSE, <Module Model>, <Slave Address>, <Point Number>, <Field Name>
<Module Model> = Model of the Module the sensor is connected to. Value is Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The Input terminal the sensor is attached to on the Module, Value depends on Module Model. Ai8-R13 = 1 - 8
<Field Name> = Name of the field in CQC.
RELAY This record defines the Relay points on a AIO8 or Outputs on a AI8-R13 Module used in Toggle Mode.
Format: RELAY, <Model>, <Slave Address>, <Point Number>, <Field Name>
<Model> = Model of the Module the Relay is on. Values are AiO8 or Ai8-R13
<Slave Address> = The slave address the Module is configured as. Any Value between 1 254
<Point Number> = The point the device is attached to on the Module, Value depends on Module AiO8 = 1 8, Ai8-R13 = 1 - 13
<Field Name> = Name of the field in CQC.OUTPUT This record defines the 0 10 volt Output points on a AIO8 Module.
Format: OUTPUT, <Model>, <Slave Address>, <Point Number>, <Field Name >
<Model> = Model of the Module the Output is on. This will always be set to AiO8
<Slave Address> = The slave address the Module is configured as. Any Value between 1 - 254
<Point Number> = The point the device is attached to on the Module. Value = 1 - 8
<Field Name> = Name of the field in CQC.EOF This must be the last line in the file and has no other user defined values in the record.
Format: EOFNOTE: All Field names and must only use the following characters: A-Z, a-z, 0-9, - or _
Configuration File SampleBOF,0.3,0,E
DRY,Ai32,1,1,DRY_GarageDoor
TEMP, Ai32,1, 2,TEMP_Outside,10K_OAT,C10K7, 0
DRY, Ai32,1,3,GarageWindowContact
DRY, Ai32,1,6,DRY_FrontDoor
TEMP, Ai32,1, 4,HallwayTemperature,10K_RT_FLSH,C10K7, 0
TEMP, Ai32,1, 5,TEMP_Attic,10K_SSP_Mini,C10K7,0
AMP,AiO8,2,8,SumpPump_Basement,CT_AC1PH_SLD_5V,10,1
EOF