Machsupport Forum

Mach Discussion => General Mach Discussion => Topic started by: Calthaus on April 09, 2009, 03:38:30 PM

Title: AD Sureservo and Mach 3 modbus
Post by: Calthaus on April 09, 2009, 03:38:30 PM
Has anyone had any success using Mach 3  modbus functionality to communicate with Automation Directs sureservo amps?

My initial research has gained me this understanding:

1. PC is the master(need RS232 to RS485 converter)
2. Then each sureservo drive will act as a slave.
3. I think i need a junction box to connect the drives to my serial port.
4. Enable modbus in mach 3
5. setup port and pin addresses for each drive


1. Is any part of my understanding listed above flawed?
2. Are there any potential timing problems associated with serial communication to several servo drives?

Thank You   
Title: Re: AD Sureservo and Mach 3 modbus
Post by: Hood on April 09, 2009, 03:52:01 PM
Afraid you cant use them with Mach to drive the motors over ModBus :(
Title: Re: AD Sureservo and Mach 3 modbus
Post by: Calthaus on April 09, 2009, 08:24:40 PM
Did you have any insight into why you can't use modbus?
Have you attempted to do this?
 Is the limitation on the servo drives or with the functionality of mach 3 modbus?
Title: Re: AD Sureservo and Mach 3 modbus
Post by: Hood on April 10, 2009, 02:40:56 AM
I didnt think it was possible but to be sure I asked Brian and he confirmed it.
Title: Re: AD Sureservo and Mach 3 modbus
Post by: poppabear on April 10, 2009, 09:07:13 AM
You cant drive the ADC SS over the modbus like your talking about.  You can talk to the modbus of the drive to access its parameters in a RTU modbus.

I use them alot, here is how I drive mine.  I use an external motion board like the SS, (or the Galil), to push the Step/Dir to the drives you need a fast board since the encoders on the drives are 10,000 counts total.  You set the Drive as a Pulse train follower, that takes Step and Dir (they call it Pulse and Dir). trough the ADC/SS Break out board to the CN2 connector.

If you want to have all your drives "Slaved" together in a 485/422 net work, then I would recommend purchasing a DL205 PLC, since that model of PLC has a "True" Modbus master Com to hook all your drives into (note the DL06 does NOT do this, been there done that, did the Tech support call). Then the best most reliable solution I have found is to also purchase a ECOM module TCP/IP and have that communicate to mach3s TCP Modbus.

The modbus will give you complete control over ALL the drives parameters (you can do Block transfers), both read and Write, on the fly "Real Time"  so to speak.

So all of your drives will be talking to the PLC, and the PLC will be talking to Mach. The straight "Serial" is far to slow to move the kind of data load that multiple drives would represent (including the Spindle Drive if you want).

The main reason you can't Drive the drives over the modbus is Speed, it is only updated every 1/10th of a second.  Now if you where "Hell bent for Leather", then you could drive them over the Modbus, by setting up your drive as "Dynamic Positioning mode" and you could drop the new position into the "goto" register every 1/10 of a second. BUT, you would find that your control resolution and overall performace would NOT be what you would want.  (I do this kinda thing with PLC driven machines).  Further, since Machs positions are floating point, you would have to Break up your position into a interger part, and Remainder part, then calculate the number of "Turns" and the number of "Pluses" that you need to get from where you are to where you want to go, and drop those values into the dynamic registers.  So, now you know why it is Much, Much, Much better to drive the motion of the AC servo from the already existing Pluse train.