WB-M1W2 1-Wire to Modbus Temperature Measurement Module

Материал из Wiren Board
Это утверждённая версия страницы. Она же — наиболее свежая версия.
Другие языки:
WB-M1W2
WB-M1W2, v.2


Buy online

WB-M1W2 is a compact bus coupler, designed for polling two digital 1-Wire

thermometers (DS18B20) via Modbus RTU Protocol on RS-485 bus.

Inputs

The module is powered by screw terminals V+ and GND, RS-485 line is connected to inputs A and B.

Version 1: Two external DS18B20 temperature sensors are connected via a parasitic power supply circuit, when the +5V and GND pins are connected to the GND terminal, the data output is connected to 1-Wire terminal 1 or 2.


Version 2: Two external temperature sensor DS18B20 is connected on an active power circuit, connect the sensor GND to the GND terminal, a data output connected to terminal 1 or 2 1-Wire, the sensor supply voltage is applied from the output to 5V out. In version 2 there is an additional protection of inputs 1-Wire.

Also, the device has an internal temperature sensor (NTC-thermistor).

In firmware version 4.0.0 and higher, it is also possible to configure the 1-Wire inputs of the module as discrete or counting inputs.

Installation

Connect DS18B20 sensors to WB-M1W2 v.1 (left) and v. 2 (right)

The converter is installed in cable channels, boxes, soldering boxes. The recommended line length from the transmitter to the 1-Wire remote sensors is no more than 30 meters.

Specifications

Option Value
Power
Supply voltage 9 — 24 V DC
Power consumption

0.1 W

Terminals and wire section
Recommended wire cross-section with tips, mm2 0,75 — 1
Length of the standard sleeve tips, mm 8
Torque of screws, N∙m 0,2
Sensors
External sensor Can connect two DS18B20 digital temperature sensors.
Internal sensor Built-in NTC thermistor
Inputs (connect instead of external sensors)
Number of digital inputs 2
Input type Dry contact, uninsulated
Tension in the open position 3.3 V
Control
Management interface RS-485
Interface isolation Uninsulated
Communication protocol Modbus RTU, address is set by software, factory settings are indicated on the label
RS-485 interface parameters

speed 9600 bps; data bits 8; parity N; stop bits 2; Starting from firmware version "'3.1.0"' parameters interfaces can be configured programmatically:

dimensions
Size
  • 40x15x11 mm;
operating Conditions
Air temperature -40°C to +80°C
Relative humidity up to 98%,without moisture condensate

Additional functionality

Address change is broadcast (slave_id 0) team record (WRITE_SINGLE_REGISTER) to holding register with address 128 (0x80).

At adress 200 lies 6 bytes signature. The signature is unique for each device model and allows you to identify the model. To obtain the signatures necessary to fulfill READ_HOLDING_REGISTERS, address 200, length 6. Writing to this area of memory is not supported and error 3 is returned when attempting to write to an invalid location.

Register map

Register/ address Type Read/ write Default Format Purpose Versions

insertions

6 input R 0x7FFF °C × 16 (signed) Temperature with built-in sensor
7 input R 0x7FFF °C × 16 (signed) Temperature from the first external 1-Wire sensor
8 input R 0x7FFF °C × 16 (signed) Temperature from second external 1-Wire sensor
20 input R 0 °C × 16 (signed) Temperature from the first external 1-Wire sensor. In case of an error, the sensor retains the previous valid value (sensor status read from the discrete register 16). starting with firmware 4.6.0
21 input R 0 °C × 16 (signed) Temperature from the second external 1-Wire sensor. In case of an error, the sensor retains the previous valid value (sensor status read from the discrete register 17).
99 holding RW 16 1 = 0.0625 C (available from firmware version 3.10.0)

Suspicious value filter for 1-Wire sensors (85.000 C, 127.937 C). Values are discarded if the previous value differs from the suspect value by more than * 0.0625 C. Write 0 to disable the filter.

3.10.0
104-105 input R 32-bit unsigned int
110 holding RW 96 baud rate / 100 RS-485 port speed, "'divided by 100"'. Permissible speeds: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 >3.1.0
111 holding RW 0 configure the RS-485 port parity bit. Valid values: 0 - no parity bit (none), 1 - odd (odd), 2 - even (even)
112 holding RW 2 number of stop bits of RS-485 port. Valid values: 1, 2
120 (0x78) holding RW 0 other than 0 write to the register causes a reset of the module without saving state
121 (0x79) input R - mV current supply voltage of the module
128 (0x80) holding RW 1 The Modbus address of the device
129 (0x81) holding RW 0 0 or 1 Go to bootloader mode starting with firmware 4.5.0
200-206 input R see Device signature signature
220-241 input R __date__ _ _ time__ the build date of the firmware
245 holding RW 216 °C × 100 (signed) Self-heating compensation of the built-in temperature sensor.

The register value is subtracted from the temperature measured by the built-in sensor (register 6)

250-269 input R string, null-terminated firmware version
270-271 input R 32-bit unsigned int unique identifier (S/N)
275 holding RW 0 0 or 1 Input mode # 1: 0 - 1-wire, 1 - discrete input >=4.0.0
276 holding RW 0 0 or 1 Input mode # 2: 0 - 1-wire, 1 - discrete input
277 input R 16-bit unsigned int Counter for input #1
278 input R 16-bit unsigned int Counter positives for the entrance №2
0 discrete R 0 or 1 Current state of input #1: 0 - open, 1 - closed on GND. If 1-wire mode is selected for input, the value is always 0.
1 discrete R 0 or 1 Current state of input #2: 0 - open, 1 - closed on GND. If 1-wire mode is selected for input, the value is always 0.
16 discrete R 0 or 1 Sensor polling status 1-Wire input no. 1: 0 - sensor not connected, 1 - sensor connected and correctly polled starting with firmware 4.6.0
17 discrete R 0 or 1 Sensor polling status 1-Wire input no. 2: 0 - sensor not connected, 1 - sensor connected and correctly polled

Device signature

The 6-byte module signature is stored at address 200. The signature is unique for each model of Wiren Board devices and allows to identify the model by Modbus:

Module Signature
WB-M1W2 WBMIR'0x00'

To get the signature of a device you need to run command READ_HOLDING_REGISTERS at 200 (length of 6 registers). Writing to this area of memory is not supported, and error 3 is returned when attempting to write to an invalid location. Empty spaces in the signature text are clogged with the value 0x00. Starting from register 220, the firmware build date is recorded, in the format numberx00timex00 as a string (example: 'Jan 27 2017 17:01:13'). The length of the record is 21 registers.

Operation of the transmitter with the Wiren Board controller

For Converter WB-M1W2 in the Wiren Board controller is equipped with the corresponding pattern for WB-M1W2.

Description of the channels of the template

Channel name Appointment
Input Voltage module supply Voltage
Internal Temperature Sensor Internal/external digital temperature sensor. If the sensor is missing or defective, its name is highlighted in red.
External Sensor 1 Temperature of an external digital sensor connected to port 1. If the sensor is missing or defective, its name is highlighted in red.
External Sensor 2 Temperature of an external digital sensor connected to port 2. If the sensor is missing or defective, its name is highlighted in red.
Serial NO module Serial number may be required when contacting technical support.

Since firmware version 4.0.0, the WB-M1W2 Converter allows you to configure each of the two inputs as a discrete input. The input mode is set in registers 275-276 (see the table above). In Wiren Board controllers this mode is configured through the Setup-section of the driver.

To display the registers corresponding to the discrete inputs, select the template "WB-M1W2 DI":

Example of WB-M1W2 configuration for discrete inputs.

Channels of discrete inputs (do not forget to put the inputs in discrete mode, as written above):

Channel name Purpose
Discrete Input 1 Input status 1. 0 - open, 1 - closed on GND
Discrete Input 2 Input status 2. 0 - open, 1 - closed on GND
Counter 1 Input operation counter 1
Counter 2 Input counter 2

Command-line device management

The Wiren Board controller software includes modbus_client utility to work with devices connected to the RS-485 outputs, via Modbus Protocol, the detailed description of the command is on the page Modbus client. Access to the command line is described in SSH.

Register reading example

Let's check whether we are connected to the module of the desired type. (Module wb-mqtt-serial should be stopped). At address 200, a unique signature of 6 registers is stored. Let's read 6 registers, starting with the address 200, and convert the received answer from hexadecimal digits into a character string:

echo  -e `modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 \
-a1 -t0x03 -r200 -c 6 | \
grep Data | sed -e 's/0x00/\\\x/g' -e 's/Data://' -e 's/\s//g'`

As a result of the command, we receive string WBM1W2. The WB-M1W2 module in the example has Modbus address 1.

Device firmware update

Starting with the new firmware versions of the device, the firmware update functionality (firmware) via the Modbus Protocol is supported. This makes it possible to extend the functionality of the devices and eliminate errors in the firmware directly at the installation site. Read more about flashing devices described in the article Download firmware to Wiren Board devices. A list of firmware versions that support the update, as well as devices for which this feature is implemented, can be found in Firmware Changelog.

Images and drawings of the device


По ссылкам ниже вы можете скачать изображения и чертежи устройства WB-M1W2.

Corel Draw 2018: WB_M1W2.cdr.zip

Corel Draw PDF: WB_M1W2.cdr.pdf

Autocad 2013 DXF: WB_M1W2.dxf.zip

Autocad PDF: WB_M1W2.pdf