Modbus write to register 40002

J

Thread Starter

Joe Oliphant

I'm working with an old ABB ACS400 variable frequency drive. I'm trying to get it to start from a VB program. This requires setting a value to register 40002 and then writing values to the command word at 40001.

I've written similar programs for Allen Bradley and Altivar drives and both of those have odd quirks where you have to write more than one register at a time or write to a goofy offset.

On the above I've used MODBUS/TCP but on this antique, it requires an RS232 and CRC checking.

The ABB drive simply refuses to let me write anything to 40001, 40002, or 40003 but will let me write to any other valid register. Maybe it's something with the CRC. It beats me. I've stumped them at tech support at ABB so if anyone here has any great ideas, I'd appreciate it.

-Joe
 
I believe 40002 is mapped to the Control Word Speed (or Torque) reference. You likely can't change it if the Drive is enabled. Depending on the operating macro, you will need to verify the enable or run signal is low before the source can be set. If you are using the DDCS Bus (fiber converter), then forget all that--I think that had more to it...

-Lee
 
Let me clarify that--I think 40002 sets the control word source (ai, comm, keypad, etc.), not the actual reference itself. Something to verify...
 
J

Joe Oliphant

I found the problem. You have to be connected through the RS485 port. It will let you change every other register through the RS232 port but not the command word at 40001 or the two holding registers 40002 and 40003.

Anyway, I ordered up a RS232 to RS 485 converter so I'm holding so to say 'till that arrives.

-Joe
 
Hip Hip Hooray for Joe. He posted some feedback on what he found his problem to be.

His example is worthwhile of emulation.

Thank you, Joe.

David
 
Top