Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 5020 Modbus Translator User’s Guide Siemens Energy, Inc. Oil & Gas Solutions 10730 Telge Road Houston, Texas 77095 USA Document No. SEI-OG-DLS-004 Page 1 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 Table of Contents 1 OVERVIEW ........................................................................................................................................................ 3 2 INSTALLATION ................................................................................................................................................ 3 3 OPERATION....................................................................................................................................................... 3 4 SCADA CONFIGURATION ............................................................................................................................. 4 5 TROUBLESHOOTING...................................................................................................................................... 7 6 SPECIFICATIONS............................................................................................................................................. 8 7 CONTACT INFORMATION .......................................................................................................................... 10 Document No. SEI-OG-DLS-004 Page 2 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 1 OVERVIEW The 5020 Modbus Translator was designed to convert ASCII protocol, from the Siemens Model 1000 digital level sensor, to Modbus RTU protocol. The Translator wires in between the SCADA unit and the sensors (through the 1010 Barrier board, as shown in Figure 6.1). The 5020 Modbus Translator searches for sensors connected to it at 9600 N81 baud rate (up to 16 sensors). This means it configures itself. The Modbus data can be in 16 bit unsigned format or 32 bit floating point format. 2 INSTALLATION Do not apply power until all connections are made. Incoming power is connected to the SCADA side of the Translator. The sensor side is fused with a resettable one ampere fuse. The transmit lines (TX+ TX-) from the SCADA unit connect to the receive lines (RX+ RX-) on the Modbus Translator. TX+ connects to RX+. TX- connects to RX-. The receive lines of the SCADA unit connect to the transmit lines on the Modbus Translator. The sensors connect in the same manner, transmit to receive and receive to transmit. 3 OPERATION When power is first applied to the Modbus Translator the indicator light will turn orange for five (5) seconds (See Table 3.1). This allows the sensors to initialize. Then the indicator light will turn red indicating that the Translator is searching for sensors. The scan starts at unit 01 at 9600 N81. This is repeated through unit 16. Any sensors responding without errors (CRC errors, framing errors, data over run errors, or parity errors) are stored in memory. When the scan is done the indicator light will turn green indicating it is ready to receive data request from the SCADA unit. When the Modbus Translator is requesting sensor data the indicator light will turn red indicating communication activity. The number of sensors configured in the Translator can be read at holding register 43987 (address 3986). To add or remove sensors initiate a reconfiguration scan by pressing the rescan push button on the side of the Translator. The indicator light will turn orange for five (5) seconds, and then the rescan will start. Table 3.1 Indicator Light Status Light Color Orange Red Green Document No. SEI-OG-DLS-004 Meaning 5 Second delay before scanning for sensors The Translator is communicating with sensors The Translator is ready to receive SCADA unit data requests Page 3 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 4 SCADA CONFIGURATION The Modbus Translator to SCADA unit baud rate is at 9600 N81. There is no flow control. The receive time out must be set higher than 3 seconds. Write functions are given in Table4.1. The read function (03) is referenced in Table 4.2. A complete register map is provided in Table 4.3. The Modbus status codes are provided in Table 4.4. The sensor error codes are referenced in Table 4.5. Registers are unsigned integer 16 bit (or 32 bit floating point IEEE for level and temperature only). To get the address, subtract 40001 from the registers. Table 4.1 Modbus Write Registers Description Register Address Assign Translator unit number Set Translator to 16/32 bit mode 40107 40108 106 107 No. Registers 1 1 Notes Default value is 1 Default setting is 16 bit mode. Writing a value of 1008 will set the 32 bit floating point (IEEE) mode. Writing a value of 1007 will set the 16 bit unsigned mode. Warning: 32 bit mode sends back one more register for each level. Do not set to 32 bit mode if your SCADA system can not read floating point numbers. In 32 bit mode, if a read for multiple sensors is performed, the translator can only send back data from 14 sensors in a single read. This is due to the extra registers being sent back in 32 bit mode only (Modbus protocol rules limit this). Table 4.2 Modbus Read Holding Registers – Function 03 Description Register Address Read number of configured sensors Reserved Read Translator unit number 43987 3986 No. Registers 1 43988 43989 3987 3988 0 1 Read Translator version Beginning of sensor data 43990 43991 3989 3990 1 1-96 Document No. SEI-OG-DLS-004 Page 4 of 10 Notes Default value is 1. A wildcard access can be used if the unit number is unknown by using 30 as the unit number. Each sensor contains one block of six registers. Individual registers can be polled from each block by addressing the appropriate holding register for a sensor. Multiple sensors can be read with number of registers to read set at multiples of 6. The maximum is 96 (16 sensors X 6). In 32 bit mode the maximum is 83 due to Modbus protocol limits. Refer to the register map in Table 4 for a complete list of the sensor data © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 Table 4.3 Sensor Register Map Level Sensor Address Description Unit number Float 1 (top float) Float 2 (bottom float) Temperature Status register Sensor error codes Model 1000 Digital Level Sensor U01 U02 Register Address Register Address 43991 43997 3990 3996 U03 Register 44003 Address 4002 U04 Register 44009 Address 4008 44004 44005 44006 44007 44008 4003 4004 4005 4006 4007 44010 44011 44012 44013 44014 4009 4010 4011 4012 4013 U07 Register 44027 44028 44029 44030 44031 44032 Address 4026 4027 4028 4029 4030 4031 U08 Register 44033 44034 44035 44036 44037 44038 Address 4032 4033 4034 4035 4036 4037 U11 Register 44051 44052 44053 44054 44055 44056 Address 4050 4051 4052 4053 4054 4055 U12 Register 44057 44058 44059 44060 44061 44062 Address 4056 4057 4058 4059 4060 4061 U15 Register 44075 44076 44077 44078 44079 44080 Address 4074 4075 4076 4077 4078 4079 U16 Register 44081 44082 44083 44084 44085 44086 Address 4080 4081 4082 4083 4084 4085 Level Sensor Address Description Unit number Float 1 (top float) Float 2 (bottom float) Temperature Status register Sensor error codes 43992 43998 3991 3997 43993 43999 3992 3998 43994 44000 3993 3999 43995 44001 3994 4000 43996 44002 3995 4001 Model 1000 Digital Level Sensor U05 U06 Register Address Register Address 44015 44021 4014 4020 44016 44022 4015 4021 44017 44023 4016 4022 44018 44024 4017 4023 44019 44025 4018 4024 44020 44026 4019 4025 Model 1000 Digital Level Sensor U09 U10 Register Address Register Address 44039 44045 4038 4044 44040 44046 4039 4045 44041 44047 4040 4046 44042 44048 4041 4047 44043 44049 4042 4048 44044 44050 4043 4049 Model 1000 Digital Level Sensor U13 U14 Register Address Register Address 44063 44069 4062 4068 44064 44070 4063 4069 44065 44071 4064 4070 44066 44072 4065 4071 44067 44073 4066 4072 44068 44074 4067 4073 Description Unit number Float 1 (top float) Float 2 (bottom float) Temperature Status register Sensor error codes Notes to Table 4 Level Sensor Unit Address Top float for level sensor. Implied decimal place at second digit (16 bit) Bottom float for level sensor. Implied decimal place at second digit (16 bit) Fluid Temperature for level sensor (located 12 inchs from bottom of sensor) Contains status of the data exchange for level sensor. (See Table 5) Sensor error codes for level sensor (See Table 6) Level Sensor Address Description Unit number Float 1 (top float) Float 2 (bottom float) Temperature Status register Sensor error codes Level Sensor Address Description Unit number Float 1 (top float) Float 2 (bottom float) Temperature Status register Sensor error codes Document No. SEI-OG-DLS-004 Page 5 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 Table 4.4 Modbus Unit Status Codes Status Code Indication 1 Communication error with sensor (Parity, data over run, or framing error). Communication error with sensor (CRC error). Sensor time-out Error (Sensor didn't reply). Sensor returned error code in sensor error holding register 2 4 8 Table 4.5 Sensor Error Codes Error Code Indication 0 No Errors 1 Can't resolve level reading or no float is detected 2 One float is out of range on a two float sensor 4 Too many groups 8 Not used 16 Transmit to slave processor for level failed 32 Transmit to slave processor for temperature failed 64 Receive of level from slave processor failed 128 Receive of temperature from slave processor failed Note for advanced users Writing 1007 at register address 107 will set the device registers that hold top float, bottom float and temperature to 16 bits unsigned integer. Writing 1008 will set the device registers that hold top float, bottom float and temperature to 32 bits floating point format. Document No. SEI-OG-DLS-004 Page 6 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 5 TROUBLESHOOTING This section provides guidance in correcting problems which may be encountered during installation and operation. Refer to Table 5.1 for possible solutions when errors occur. Table 5.1 Solutions to Sensor Error Codes Problem SCADA unit time out Possible Solution Increase the SCADA unit receive time out Translator indicates zero sensors Check the connections to the sensors. Check the voltage on the sensor side of the Translator. The sensors require a minimum of 8 volts at the sensor. If the voltage is below this and the voltage on the SCADA side is higher then the 1 ampere fuse maybe overloaded. Disconnect power from the SCADA side of the Translator and look for a short, or a reason for over load on the sensor side. If all connections and voltages appear to be correct, then try swapping the transmit and receive lines to the sensors, and rescan for sensors. SCADA unit has a receive timeout, but Increase the SCADA unit receive time out. data does not clear in registers(i.e., old data is still in data registers) Increase the SCADA unit receive time out Indicator light is not green, orange, or red Check for correct voltage on the SCADA side of the Translator. The minimum voltage for the Translator is 9 volts SCADA unit indicates a CRC error Make sure the RX+ and TX+ are connected together. Not RX+ to TX-. Also this can be caused by the Translator being set to 32 bit mode when trying to read 16 bit data. If you are reading 16 bit data and get CRC errors try writing the data 1007 at register 43108 (address 107). This will set the Translator back to 16 bit unsigned mode. Status code 1 (communications error) Make sure that the sensor is configured for 9600 baud and no parity. Check the wiring of the sensor to the Translator. Make sure that the RX+ and TX+ are connected together. Do not connect RX+ to TX. Make sure that the communication lines are not shorted together. Document No. SEI-OG-DLS-004 Page 7 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 Problem Status code 2 (communications error-CRC) Possible Solution Make sure that the RX+ and TX+, and RX- and TXare connected together. Do not connect RX+ to TX. Make sure that the communication lines are not shorted together. Status code 3 (time-out error) A configured sensor in the Translator has been disconnected, or failed to respond. Check for broken wires. If this sensor has been removed then rescan for sensors. Measure the voltage at the sensor. There should be at least 8 volts at the sensor fuse board Status code 8 (register error) Amy value other than 1 or 2 means the sensor need to be retuned for repair. 6 SPECIFICATIONS Power requirements 17VDC maximum. 9VDC minimum (sensors require 8 volts minimum at the sensor). Power consumption 18mA in idle mode (LED green), 30mA maximum (LED orange). Power limit 1 Ampere maximum. This is controlled by a resettable fuse Operating temperature range -40°C to 60°C Document No. SEI-OG-DLS-004 Page 8 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 Figure 6.1 Modbus Translator Arrangement Document No. SEI-OG-DLS-004 Page 9 of 10 © Siemens AG 2011 Digital Level Sensor 5020 Modbus Translator User’s Guide Version – 2011.05 7 CONTACT INFORMATION For further information or for assistance, please contact: Siemens Energy, Inc. Oil & Gas Solutions 10730 Telge Road Houston, TX 77095 Phone: +1 (888) 856-4528 or +1 (281) 856-4530 Email: oilandgaslcm.energy@siemens.com Web site: www.siemens.com/energy/dls Document No. SEI-OG-DLS-004 Page 10 of 10 © Siemens AG 2011