03-06-2023 06:15 AM
Hello,
I will communicate with the Kollmorgen Servo amplifier over Modbus TCP, which is the most supported protocol across all Kollmorgen amplifiers.
My question is about recommendations for selecting the Modbus package for low-level communication.
I know that any of the existing ones will not provide the final commands like home servo, enable servo...etc. But because it will be a new design (and I never worked in LabVIEW with the Modbus before) I would like to listen for your recommendation on which package is the best according to your experience. Which is kept to be most updated?
For the initial tests, I download the NI Modbus Library, and seems to be OK but what if exists something better?
Thank you.
03-06-2023 08:32 AM
Packages from the VIPM repository are not generally free of charge. I use the first one, the NI package. That is free and can do RTU and TCP.
The only downside is, since it's based on VISA, that it uses VISA resource names and VISA read/write VIs, which is OK for RTU over USB, but not so good for Ethernet
03-07-2023 02:27 AM
It also depends on the used ModBus commands.
Our products use custom ModBus commands. So I ended up (years ago) creating my own ModBus VI to communicate over serial and ethernet.
But if you only use the standard commands I would suggest to use the NI library
Kees
03-07-2023 02:35 AM
Of course, you would expect that every package supports the described functions from the standard paper.
Custom ModBus functions is something that you could implement in the open packages yourself.
@K C: out of curiosity, what did you implement that isn't already covered by the existing functions?
03-08-2023 02:30 AM
Our product uses more custom commands than standard commands.
The communication module of the ProSafe-SLS system.
Kees
03-08-2023 03:43 AM - edited 03-08-2023 03:44 AM
OK, but why create an own function code to write a date/time string or hex data when there is WMR already? Just want to understand the obviously unnecessary extra work.
03-08-2023 05:10 AM
Sure a lot of things could be handled by using registers. But if the data is spread over multiple registers there must be an additional action to split or combine the data.
With custom commands the data can be any specified length.
Most of these commands or not intended for the standard users.
This has also some history. This product was already designed over 30 years ago. Many updates over the years but also a lot of things are kept the same to stay compatible.
Kees
03-14-2023 01:15 AM
Thank you for your recommendations. I will use the NI Modbus Library.