I am currently working on controlling a pump externally using the LONGER RS485 Protocol for the BT100-2J model. The protocol documentation can be found in https://drifton.es/upload_dir/shop/slangepumper/manuals/BT100-2J-RS485-Protocol.pdf .
The speed of the pump is represented in the PDU using a 2-byte (16-bit) format. However, how the speed is calculated in the protocol is not clear to me. It says it uses hex numbers to represent rpm values but the represented hex value of 23.2 rpm is 00E8 (hex of 232) in the given example. I found other examples from the protocols of similar pumps and it seems that the rpm values are multiplied with a factor before the conversion:
20.0 rpm (with factor 10) -> 00C8
23.2 rpm (with factor 10) -> 00E8
50.0 rpm (with factor 100) -> 1388
100.0 rpm (with factor 10) -> 03E8
150.0 rpm (with factor 1) -> 0096
The factor seems to vary depending on the rpm range, but I could not understand how to derive the correct factor for different rpm values. Anyone can help me understand the pattern here? I would appreciate it.
Thank you for you time.