Prosoft MVI56E & ebmpabst fan motor

plcapps

Lifetime Supporting Member
Join Date
Apr 2020
Location
Colorado
Posts
10
Does anybody have experience using a Prosoft MVI56E-MCM module and a ebmpabst W3G910-KV12-61 (or similar) fan motor?


The Modbus register list starts at d000 hex and ends at d5ff which decodes to 53,248 to 54,783. Prosoft input register adresses are limited to 30001 to 39999 and holding registers are limited to 40001 to 47999.


The test value I would like to read is listed at d1a4 hex.


Any ideas as to what to enter in the DevAddress in the Prosoft Master Command configuration?


Any ideas?
 
I've never met someone who was not confused at first about the leading digit of a Modbus address, including and especially me.

The leading digit is really a substitute for the *type* of data that's being addressed by a given read or write Function code.

"0xxxx" indicates a Coil/ Output bit type of register.
"1xxxx" indicates an Contact / Input bit type of register.
"3xxxx" indicates an Analog Input word type of register.
"4xxxx" indicates an Analog Output Holding word type of register.

So when you read Register "40001" you aren't reading the forty-thousand-and-first register. You're reading the first register of the Holding Register data type.

In traditional Modbus, the customary range of registers is from 1 to 9999 decimal, which is a two-byte offset value in the actual Modbus data frame of 0x0000 to 0x270E.

Some devices support "extended addressing", extending the register range to 0x0000 to 0xFFFF. The data address is still just two bytes.

Some vendors call this "six digit addressing" and just move that first digit over one place.

Other vendors call out the offset in hexadecimal, and rely on you to know which data type you're using. While I can't find a user manual for Modbus addresses easily on the ebm-papst website, it's a good bet that they mean "4xxxxx" Holding registers.

I think that the Prosoft MVI56E-MCM supports extended addressing.

MCM.CONFIG.Port1MasterCmd[0].DevAddress is an INT data type, so it's 2 bytes. They're just displayed as an Integer, which is easy when you're reading the first few thousand registers.

I would just switch the display radix to HEX for your own ease of use, and enter 16#D1A4.
 
Thanks for the clear explanation.
According to the Prosoft manual, they do support 6 digit addressing. The ebmpabst Modbus manual calls all of the addresses holding registers.

I changed the radix, entered the value, and didn't get an error this time. I will report back whether or not this works once I get the hardware in a couple of weeks.
Is there any value in me posting the ebmpabst Modbus register list? It took multiple phone calls and emails to get it.
 
The reason I suggested changing the radix is mostly for convenience, since the INT datatype in ControlLogix is an imperfect way to represent the .DevAddress value.

ControlLogix has no unsigned datatypes, so an INT is always -32768 to +32767, with the highest bit used for the Sign.

Your offset is *16#D1A4, which is 53668‬ decimal.

That value is bigger than the signed integer maximum of 32767, so you can't enter it in decimal.

You could convert the bit pattern to signed decimal by hand, by substracting 32768 and fussing with the remaining bits.... but that's too hard. Just change the radix to hex and use a hex value.

I am often looking at Modbus data in hexadecimal data traces, so I want the Address bytes to look as similar to the "Address" field as possible. So I switch to Hex radix.
 
I got the fan motor and was able to communicate with it. The hex addresses are in fact offsets, so everything you suggested worked. For address D1A4, I had to enter -11868 (the signed integer value). The Prosoft configuration software flagged as an invalid value and gave me a red LED on the module, but it still worked. BTW, I found a great conversion website cryptii.com which will convert the hex to an unsigned integer (as well as other stuff like Enigma messages). Thanks for the help.
 

Similar Topics

Hi all. I just received my brand new Prosoft Modbus modules and I'm playing with one in a L82 rack. I managed to set it up well enough so I...
Replies
4
Views
368
Hi All, I just wanted to confirm something regarding this module. What I understood from the manual, is that if RS-485 mode is selected (jumper...
Replies
2
Views
356
Hi all, I wonder what's the best type of cable to use for RS-485 2 wire + GND That is, Data+, Data- & GND I know that Belden 9841 (not...
Replies
10
Views
1,062
Controller: 1756-L84E v.35 Prosoft MVI56E-MNETC for ModbusTCP/IP I'm having an issue with some of my write commands. The write command that...
Replies
0
Views
187
Does anyone have and is able to share a firmware file for the ProSoft MVI56E-MNET module (Modbus module for a Rockwell PLC)? I have an...
Replies
0
Views
1,329
Back
Top Bottom