Ultrasonic Flow Meter MODBUS Trouble Shoot
Ultrasonic flowmeter 485 communication often encountered problems and solutions:
(1) Q: Why isn't the flow meter connected? Does it react after it is connected?
Answer: A. Check if the serial port parameters match: Is the protocol selection in the M63 window correct?
B. Check if the physical connection is connected.
C. Re-power on the flowmeter, it should receive the character "AT", otherwise there is a problem with steps A and B.
D. Check if the command is correct. When using the extended protocol, the command must be followed by a national car symbol.
(2) Q: Why is the amount of MODBUS read out in a mess, and the display value is completely inconsistent?
A: Generally speaking, if the MODBUS protocol can read the data, it means that the protocol itself is no problem. Messy
The data is because of the following error:
A. The data format is incorrect; B. The register address is incorrect, causing the data to be displaced and causing an error.
For example, the real type of REAL4 (single-precision floating-point number in IEEE754 format) has 4 words and bytes.
A different arrangement, WLV100 uses a conventional one of Zui, that is, low word and high byte in the front
formula. You can solve this problem by modifying the data storage format of your software. If you use the general configuration software,
The configuration software generally has a method of selecting a format.
(3) Q: My system requires only one command per hour and then requires multiple variables to be received at the same time. It should be used.
That agreement?
A: A MODBUS command can read many variables at once. If MODBUS-RTU does not solve the problem,
You can use the Zeno extension protocol that is connected using the "&" connection symbol. You can also use a simple compatible protocol.
Or the Meter-BUS protocol.
(4) Q: Why is the magnitude read by the protocol inconsistent with the flowmeter display?
Answer: A. Is the variable address the one that you requested? Because there are too many variables inside the flowmeter, do you mix it?
Confused? Note that when reading data, REG 0001 is represented as 0000 in the command string, not 0001.
0001 indicates that the content of REG 0002 is read in the command string.
B. Only 7 digits of decimal digits can be displayed for the cumulant, and 8 digits can be read by the MODBUS protocol.
Numeric number. In this case, the last 7 digits of the read value are the same.
(5) Q: My system can't support long integers and real variable formats. What should I do?
A: You need to use a numeric conversion method or find a new driver to solve.
(6) Q: Does the flowmeter have a simulated running state to facilitate testing? How to set it?
A: Yes! Enter the 0 value in the Mll window to start the simulation running state. The flow rate is always set to the simulated operating state.
1.2345678m/s, the instantaneous flow rate is equal to 0.; and the "R" status is displayed. If the instantaneous flow rate is required to be the set value,
This can be done by entering a negative setpoint in the M44 window. For example, enter -3600 in the M44 window.
Cubic meters per second. The instantaneous flow rate will be displayed as 3600 cubic meters per second. At this time all accumulators will also do the corresponding
accumulation. Therefore, a varying cumulant output is obtained. Using a far function, you can not connect the sensor,
It is especially convenient for debugging with networking software and testing of flowmeter functions.
(7) Q: Does MODBUS have a test program?
A: Yes! It is recommended to use the MODSCAN software, which can be found online. This app is very convenient and helpful
It is convenient to check the read data and understand the meaning of various types of data.
(8) Q: What is the order in which floating point numbers are stored when using C?
A: For example, 3F 9E 06 51 four bytes are 1.2345678 IEEE754 format single precision floating point form. At MODBUS
The order in the data stream is 06 51 3F 9E, and the address data stream number 1 should be 01 03 04 06 51 3F 9E 3B 32
(hexadecimal number). When using C language on X86 computers, follow the memory from low to high storage order 51
06 9E 3F.