PDF User Manual

  1. Home
  2. Manuals
  3. Tekbox SDI-12 Manual

Tekbox SDI-12 Manual

Made by: Tekbox
Type: Manual
Category: Media Converter
Pages: 11
Size: 0.41 MB

 

Download PDF User Manual



Full Text Searchable PDF User Manual



background image

V1.1 

Manual TBS09S 

      

 

SDI-12 Master to Modbus Slave Converter 

 
 

 

 

© 2014 Tekbox Digital Solutions 

 

50/11 Truong Son, F2 | Q. Tan Binh | Ho Chi Minh City | Tel +84 (83)5471340 | E-mail office@tekbox.net| www.tekbox.net 

 

The  TBS09S  is  a  converter  to  connect  to  a  SDI-12  sensors  to  Modbus.  It  can  connect  multiple 
sdi12 sensors in parallel by setting the corresponding address. 
 
 
 
  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Features 

 

SDI-12 master to Modbus slave 

 

Multiple sensors can be connected 

 

SDI-12 Standard V1.3 

 

Highly configurable 

 

Switched sensor supply voltage output 

 

6 - 16V supply voltage 

 

7mA current consumption when active 

 

Less than 100µA idle current 

 

Operating Temperature Range: 

 - 

40°C … + 80°C 

 

 

Target Applications 

 SDI-12 sensor networks 

 

 
 
 

TBS09S SDI-12 master to Modbus slave converter 

 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

Contents 

1

 

INTRODUCTION 

3

 

2

 

CONNECTIONS 

3

 

3

 

MEASUREMENT 

4

 

3.1

 

G

ENERAL CONFIGURATION COMMANDS

 

4

 

3.2

 

M

EASUREMENT COMMANDS

 

5

 

3.2.1

 

Send measurement command to sdi12 sensors: 

5

 

3.2.2

 

Send Data

 

command to sdi12 sensors: 

7

 

3.2.3

 

Modbus master get data from TBS09S: 

8

 

4

 

SDI-12 

10

 

5

 

SUPPORTED SDI-12 COMMANDS 

10

 

6

 

HISTORY 

11

 

 

Tables 

Table 4   History 

11

 

 

 

 

Figures 

Figure 2   TBS09S terminals 

3

 

Figure 4   TBS09DR jumpers 

4

 

 

 

 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

1  Introduction 

 
The TBS09S is a converter to connect one or multiple sdi12 sensors to a modbus device such as a data logger 
or telemetry unit. 

User will use it when they got RTU support modbus and they want using it to read data of sdi12 sensors. 

 
 
 

2  Connections 

 
 
 
RS485 Side, from left to right: 

 

TX+ output (or half duplex) 

TX- output (or half duplex) 

RX+ input 

RX- input 

Ground  

12V, switched sensor supply voltage 

 
 
 
 
SDI-12 Side, from left to right: 

 

Cable shield 

Ground 

SDI-12 Data line 

SDI-12 Supply voltage 
 

Figure 1   TBS09S terminals

 

 

4 Pin terminal block: 

CON1   SDI-12 Interface 

 

Shield:

 connect to the shield of the SDI-12 cable or leave it unconnected; shield and ground are 

internally connected together 

 

Ground:

 connect to the GND wire of the SDI-12 cable 

 

SDI-12 data:

 connect to the data wire of the SDI-12 cable 

SDI-12 Power:

 connect to the positive supply voltage wire of the SDI-12 cable;  

 

 

6 Pin terminal block: 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

CON2   Power supply & RS485 (Modbus) interface 

 

TX+, connect to RX+ of the Modbus Sensor; half duplex 

TX-, connect to RX- of the Modbus Sensor; half duplex 

RX+, connect to TX+ of the Modbus Sensor 

RX-, connect to RX- of the Modbus Sensor 

 

Ground,

 connected to the GND of the SDI-12 supply for TBS09S 

+12V, 

supply output  for the Modbus sensor. It is connected to the SDI-12 supply line, with a high side 

FET switch and a 700mA fuse in between. The switch can either be controlled by SDI-12 (ON-time 
determined by the warm-up time setting) or it can be configured to be permanently on.   

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Default J4 and J5 jumpered - 

Modbus terminated with 120Ω 

Default J3 jumpered   half duplex 

 
 

Figure 2   TBS09S jumpers

 

3  Measurement 

 

3.1  General configuration commands 

 

TBS09S is default with baurate: 19200,

  Parity

:  None = 0 

Modbus slave address : 1 

 

Modbus slave  settings 
 

Slave Address Register: 0xB000 

 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

Modbus command: 

 

Modbus Master send 

Example (Hex) 

Modbus Slave(TBS09S) response 

Slave Address 

01- current addr 

01 

Function 

06 

06 

Starting Address Hi 

B0 

00 

Starting Address Lo 

00 

00 

Data Hi 

00 

00 

Data Lo 

02 - new addr 

02 

Error Check (LRC or 

CRC) 

 2 bytes CRC 

  

  

  

 

Modbus address: 0x01 -> 0xFF 

3.2  Measurement commands 

 

When user want read data from sdi12 sensors, please following 3 steps: 

 

 

 

3.2.1 Send measurement command to sdi12 sensors: 

 

TBS09S will send measurement command to sdi12 sensor: aM!...aM9

, aMC!…aMC9!, aC!..aC9!, aCC!..aCC9! 

 
Register map: 

sdi12 

command 

register 

sdi12 

command 

register 

sdi12 

command 

register 

sdi12 

command 

register 

aM! 

0x0010 

aMC! 

0x0020 

aC! 

0x0030 

aCC! 

0x0040 

aM1! 

0x0011 

aMC1! 

0x0021 

aC1! 

0x0031 

aCC1! 

0x0041 

aM2! 

0x0012 

aMC2! 

0x0022 

aC2! 

0x0032 

aCC2! 

0x0042 

aM3! 

0x0013 

aMC3! 

0x0023 

aC3! 

0x0033 

aCC3! 

0x0043 

aM4! 

0x0014 

aMC4! 

0x0024 

aC4! 

0x0034 

aCC4! 

0x0044 

aM5! 

0x0015 

aMC5! 

0x0025 

aC5! 

0x0035 

aCC5! 

0x0045 

aM6! 

0x0016 

aMC6! 

0x0026 

aC6! 

0x0036 

aCC6! 

0x0046 

aM7! 

0x0017 

aMC7! 

0x0027 

aC7! 

0x0037 

aCC7! 

0x0047 

aM8! 

0x0018 

aMC8! 

0x0028 

aC8! 

0x0038 

aCC8! 

0x0048 

aM9! 

0x0019 

aMC9! 

0x0029 

aC9! 

0x0039 

aCC9! 

0x0049 

 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

Modbus command: 

 

Modbus Master send 

Example (Hex) 

Modbus Slave(TBS09S) response 

Slave Address 

01 

01 

Function 

06 

06 

Starting Address Hi 

00 

00 

Starting Address Lo 

10 

00 

Data Hi 

00 

00 

Data Lo(

sdi12 address

30   sdi12 sensor 

address 

30 

Error Check (LRC or 

CRC) 

 2 bytes CRC 

  

  

  

 

 

TBS09S support total 62 sdi12 sensor

s. Data Lo byte is hex value of sensor address(‘0’ = 0x30, ‘1’ = 0x31……) 

 

Read time and number measurement:   

After

 

send measurement command, user can read : ttt - the specified time, nn - the number of measurement 

values the sensor will make and return in response to one or more subsequent D commands

 

Register map: 

sdi12 sensor# 

register 

0x3010 

0x3110 

0x3210 

0x3310 

0x3410 

0x3510 

0x3610 

0x3710 

0x3810 

0x3910 

any 

0x

ZZ

10 

 

ZZ is the hex value of sensor address, base on ASCII  

 

Modbus command:

 

Modbus Master send 

Example (Hex) 

Modbus Slave(TBS09S) response 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

Slave Address 

01 

01 

Function 

04 

04 

Starting Address Hi 

30 

04 

Starting Address Lo 

10 

00 

Data Hi 

00

 

               01  - ttt time 

Data Lo 

02 - read 2 registers 

00 

Error Check (LRC or 

CRC) 

                          02  nn  number  

  

  

 2 bytes CRC 

 

Data response is 4 bytes, 2 bytes - the specified time + 2 bytes - the number of measurement values 
 

3.2.2 Send Data

 

command to sdi12 sensors:

 

TBS09S will send data command to sdi12 sensor: aD0!...aD9! 
 
Register map: 

sdi12 command 

register 

aD0! 

0x00D0 

aD1! 

0x00D1 

aD2! 

0x00D2 

aD3! 

0x00D3 

aD4! 

0x00D4 

aD5! 

0x00D5 

aD6! 

0x00D6 

aD7! 

0x00D7 

aD8! 

0x00D8 

aD9! 

0x00D9 

 

Modbus command: 

 

Modbus Master send 

Example (Hex) 

Modbus Slave(TBS09S) response 

Slave Address 

01 

01 

Function 

06 

06 

Starting Address Hi 

00 

00 

Starting Address Lo 

D0 

00 

Data Hi 

00 

00 

Data Lo 

30   sdi12 sensor 

address 

30 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

Error Check (LRC or 

CRC) 

 2 bytes CRC 

  

  

  

 

 

3.2.3 Modbus master get data from TBS09S:

 

After send sommand aMx!  and aDx!  to sdi12 sensors, TBS09 will store 10 sensors from 0 to 9 to 

REGISTER 

DATA 0 to 9

 

Sdi12 data format will be:  

a+d0+d1+d2+d3+d4+d5+d6+d7+d8+d9

  (maximum) 

TBS09 will use 2 Registers = 

4 bytes to store each data with floating format

 

Register map: 
 

sdi12  

data 

REG  

SENSOR 0 

REG  

SENSOR 1 

REG  

SENSOR 2 

REG  

SENSOR-- 

REG  

SENSOR 9 

REG  

SENSOR X 

d0 

0x3000 

0x3100 

0x3200 

0x3900 

0xZZ00 

d1 

0x3001 

0x3101 

0x3201 

0x3901 

0xZZ01 

d2 

0x3002 

0x3102 

0x3202 

0x3902 

0xZZ02 

d3 

0x3003 

0x3103 

0x3203 

0x3903 

0xZZ03 

d4 

0x3004 

0x3104 

0x3204 

0x3904 

0xZZ04 

d5 

0x3005 

0x3105 

0x3205 

0x3905 

0xZZ05 

d6 

0x3006 

0x3106 

0x3206 

0x3906 

0xZZ06 

d7 

0x3007 

0x3107 

0x3207 

0x3907 

0xZZ07 

d8 

0x3008 

0x3108 

0x3208 

0x3908 

0xZZ08 

d9 

0x3009 

0x3109 

0x3209 

0x3909 

0xZZ09 

 

ZZ is the hex value of sensor address, base on ASCII  

 

 

Modbus command:

 

Modbus Master send 

Example (Hex) 

Modbus Slave(TBS09S) response 

Slave Address 

01 

01 

Function 

04 

04 

Starting Address Hi 

30 

04 

Starting Address Lo 

00 

41 

Data Hi 

00 

CF 

Data Lo 

02 - read 2 registers 

1E 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

Error Check (LRC or 

CRC) 

 B8 

  

  

 2 bytes CRC 

 

 

This example read data from temperature sdi12 sensor. 

Data 0  is floating format with 4 bytes = 0x41, 0xCF, 0x1E, 0xB8 = 25.89 (degree celsius) 

 

Float to hex convert online: https://www.h-schmidt.net/FloatConverter/IEEE754.html

 

 

 

 

 

 

 

 

 

 

 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

10 

 

4  SDI-12 

 

SDI-12  is  a  standard  for  interfacing  data  recorders  with  microprocessor-based  sensors.  SDI-12  stands  for 
serial/digital interface at 1200 baud. It can connect multiple sensors with a single data recorder on one cable. It 
supports up to 60 meter cable between a sensor and a data logger. 
 
The SDI-12 standard is prepared by 

 

 
SDI-12 Support Group 
(Technical Committee) 
165 East 500 South 
River Heights, Utah 
435-752-4200 
435-752-1691 (FAX) 
http://www.sdi-12.org

 

 
The latest standard is version V1.3 which dates from July 18

th

, 2005. The standard is available on the website of 

the SDI-12 Support Group. 
 
More information on SDI-12 is presented in chapter 3. 
 
 

5  Supported SDI-12 Commands 

 

Following standard SDI-12 commands are supported: 

 

Start Measurement 

 

 

 

 

 

 

aM! 

Start Measurement and Request CRC                       

 

 

aMC!  

Additional Measurements 

 

 

 

 

 

aM1! 

… aM9! 

Additional Measurements and Request CRC  

 

 

 

aMC1 ! ... aMC9! 

 

Start Concurrent Measurement   

 

 

 

 

aC! 

Start Concurrent  Measurement and Request CRC                       

aCC!  

Additional Concurrent Measurements   

 

 

 

aC1! 

… aC9! 

Additional Concurrent  Measurements and Request CRC  

 

aCC1 ! ... aCC9! 

 

Send Data  

 

 

 

 

 

 

 

aD0! 

… aD9! 

 

 

 

 Example   controlling the soil moimoisture/temperature Sensor: 

https://www.sdi-12products.com/collections/sensors/products/sdi-12-soil-moisture-temperature-probe-tbsmp02 


background image

V1.0 

TBS09S     

 

SDI-12 Master to Modbus Slave Converter 

 

 

11 

[TX] - 

01 06 00 11 00 30 D9 DB  

 

master send 0M1! to sensor 

[RX] - 

01 06 00 00 00 30 89 DE  

 

TBS09S response ACK

 

[TX] - 

01 06 00 D0 00 30 88 27  

 

master send 0D0! to sensor

 

[RX] - 

01 06 00 00 00 30 89 DE  

 

TBS09S response ACK

 

[TX] - 

01 04 30 00 00 02 7E CB  

 

master read 1

st 

parameter(moisture)

 

[RX] - 

01 04 04 41 2D 99 99 8B FF    

TBS09S response data = 41,2D,99,99 =10.85 

[TX] - 

01 04 30 01 00 02 2F 0B  

 

master read 2

nd

parameter(temperature)

 

[RX] - 

01 04 04 41 DB 70 A4 F8 FF   

TBS09S response data = 41,DB,70,A4 =

 

27.43

 

 

Example above is measurement sdi12 moisture/temperature probe with  addressed 0, modbus sensor is 
addressed 1. 
Command to get data is: 0M1! and wait 1s to send 0D0! to get humidity+ temperature with floating fomat. 

 

 

6  History 

 

 Version 

Date 

Author 

Changes 

V1.0 

9.8.2018 

Thinh 

Creation of the document 

 

 

 

 

 

Table 1   History