Skip to main content

Kollmorgen Support Network

To better serve our Kollmorgen users with questions too complex to be addressed in this space, we made the painful decision to close this Community forum.

Please submit your question using the contact us form to reach our application engineering team.

For the immediate future, you can still access and read past posts.

Thank you for understanding and for participating in the community over the years.

IP mode rough running every 10 minutes | 02 Jun 2021 | |

IP mode rough running every 10 minutes

HI there,

I’m having a problem and I need to get in contact with someone to solve this issue. 

Who could I speak to ?

So the Problem……

So if I send the same block of data to the servo AKD drive in IP mode using an FPGA to control the timing.  Can bus 1Mhz. IP AKD mode set to 2ms timings.

The motor is commanded to turn 160 turns clockwise then stop for 2 seconds then 160 turns anticlockwise.  The whole sequence takes about 20 seconds and the data is S curved shaped with smooth acceleration and deceleration curves. ( the same data is sent each time.) See attached video – 31seconds in is the error.  Sometimes this error can be quite large.

So this runs perfectly backwards and forwards for about 10 minutes as which point if the motor is moving there will be 2-4  seconds of rough running.. sounds like nuts and bolts in the motor..  Then back to perfect again for another 10 minutes ish.. This could happen anywhere in the cycle acceleration constant running or deceleration. And is no good for a positioning system,

I have auto tuned the motor…

It seems like the two control loops 2ms and the internal IP one could be beating with each other ???

Thank you for any help

Adam.

Below showing how regular the error is occurring.

  Time   Difference  
  03:53:40   0:09:24    
  03:44:16   0:09:17    
  03:34:59   0:08:16    
  03:26:43   0:19:47 /2 0:09:54
didn’t happen- could when motor is  stationary          
  03:06:56   0:09:40    
  02:57:16   0:09:38    
  02:47:38   0:08:40    
  02:38:58   0:20:26 /2 0:10:13
didn’t happen- could when motor is  stationary          
  02:18:32   0:09:44    
  02:08:48   0:09:47    
  01:59:01   0:09:39    
  01:49:22        
forgot seconds 01:39:00        
forgot seconds 01:29:00        
forgot seconds 01:19:00        
           

Comments & Answers

Adam Phipps said ...

Adam Phipps | Fri, 06/18/2021 - 11:16
Ive found the answer.
The Servo drives were not in lock...
I just needed to lock them and all works fine.

Adam Phipps | Thu, 06/03/2021 - 09:37

I have made a discovery, the servo drive even though it is monitoring the sync pulses the servo is reporting not in lock. (through work bench)
I have looked through the examples and there doesn’t seem to be any examples of how to set up the PLL correctly for the drive to be in lock.
I have noticed that I haven’t set up FBUS.PARM02 .. I think this should be set to 1.
I just want to know how I should be setting up the PLL.
Also after some errors I don’t seem to be resetting the servos correctly.
Please tell me how stupid I have been , I would be very grateful. !!!!!

So here is my data set. I have 5 servos in the system and the up date rate in IP mode is set to 2ms. The can bus runs at 1mhz.
All works great apart from the rough running ever 9 to 10 mins. And the fact the servo is not locked.
First I set up the Servo drives.
Set up messages sent to the servos.
--reset drives
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"01",x"81") --reset node 1
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"02",x"81") --reset node 2
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"03",x"81") --reset node 3
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"04",x"81") --reset node 4
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"05",x"81") --reset node 5
-------Servo upper arm ID 1
--RPDO
COB ID 601 Data (x"C0",x"00",x"02",x"01",x"01",x"14",x"00",x"23") --rpdo1 disable
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"00",x"2F") --rpdo1 delete mapping
COB ID 601 Data (x"60",x"40",x"00",x"10",x"01",x"16",x"00",x"23") --rpdo1 Control word
COB ID 601 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"00",x"2F") --rpdo1 number of entries
COB ID 601 Data (x"00",x"00",x"02",x"01",x"01",x"14",x"00",x"23") --rpdo1 COB-id = 201
COB ID 601 Data (x"00",x"00",x"00",x"FF",x"02",x"14",x"00",x"2F") --rpdo1 react as soon as
COB ID 601 Data (x"C0",x"00",x"03",x"01",x"01",x"14",x"01",x"23") --rpdo2 disable
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"01",x"2F") --rpdo2 delete mapping
COB ID 601 Data (x"60",x"C1",x"01",x"20",x"01",x"16",x"01",x"23") --rpdo2 entry 1 IP setpoint
COB ID 601 Data (x"00",x"04",x"00",x"20",x"02",x"16",x"01",x"23") --rpdo2 entry 2 32bit dummy data
COB ID 601 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"01",x"2F") --rpdo2 number of entries
COB ID 601 Data (x"00",x"00",x"03",x"01",x"01",x"14",x"01",x"23") --rpdo2 COB-id = 301
COB ID 601 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"01",x"2F") --rpdo2 react on every sync
COB ID 601 Data (x"C0",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 disable
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"02",x"2F") --rpdo3 delete mapping
COB ID 601 Data (x"60",x"B8",x"00",x"10",x"01",x"16",x"02",x"23") --rpdo3 entry 1 touch probe function
COB ID 601 Data (x"00",x"03",x"00",x"10",x"02",x"16",x"02",x"23") --rpdo3 entry 2 16bit dummy data
COB ID 601 Data (x"00",x"03",x"00",x"10",x"03",x"16",x"02",x"23") --rpdo3 entry 3 16bit dummy data
COB ID 601 Data (x"00",x"03",x"00",x"10",x"04",x"16",x"02",x"23") --rpdo3 entry 4 16bit dummy data
COB ID 601 Data (x"00",x"00",x"00",x"04",x"00",x"16",x"02",x"2F") --rpdo3 number of entries
COB ID 601 Data (x"00",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 COB-id = 401
COB ID 601 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"02",x"2F") --rpdo3 react on every sync
COB ID 601 Data (x"C0",x"00",x"05",x"01",x"01",x"14",x"03",x"23") --rpdo4 disable
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"03",x"2F") --rpdo4 delete mapping
COB ID 601 Data (x"60",x"FF",x"00",x"20",x"01",x"16",x"03",x"23") --rpdo4 entry 1 Jog speed setting - add in required setting
COB ID 601 Data (x"00",x"04",x"00",x"20",x"02",x"16",x"03",x"23") --rpdo4 entry 2 32bit dummy data
COB ID 601 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"03",x"2F") --rpdo4 number of entries
COB ID 601 Data (x"00",x"00",x"05",x"01",x"01",x"14",x"03",x"23") --rpdo4 COB-id = 501
COB ID 601 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"03",x"2F") --rpdo4 react on every sync
--TPDO
COB ID 601 Data (x"C0",x"00",x"01",x"81",x"01",x"18",x"00",x"23") --tpdo1 STOP
COB ID 601 Data (x"C0",x"00",x"02",x"81",x"01",x"18",x"01",x"23") --tpdo2 STOP
COB ID 601 Data (x"C0",x"00",x"03",x"81",x"01",x"18",x"02",x"23") --tpdo3 STOP
COB ID 601 Data (x"C0",x"00",x"04",x"81",x"01",x"18",x"03",x"23") --tpdo4 STOP
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"00",x"2F") --tpdo1 delete mapping
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"01",x"2F") --tpdo2 delete mapping
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"02",x"2F") --tpdo3 delete mapping
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"03",x"2F") --tpdo4 delete mapping
COB ID 601 Data (x"60",x"BB",x"00",x"20",x"01",x"1A",x"00",x"23") --tpdo1 entry 1 latched position
COB ID 601 Data (x"00",x"00",x"00",x"01",x"00",x"1A",x"00",x"2F") --tpdo1 number of entries
COB ID 601 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"00",x"2F") --tpdo1 enable on sync
COB ID 601 Data (x"60",x"63",x"00",x"20",x"01",x"1A",x"01",x"23") --tpdo2 entry 1 position
COB ID 601 Data (x"60",x"41",x"00",x"10",x"02",x"1A",x"01",x"23") --tpdo2 entry 2 status
COB ID 601 Data (x"00",x"00",x"00",x"02",x"00",x"1A",x"01",x"2F") --tpdo2 number of entries
COB ID 601 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"01",x"2F") --tpdo2 enable on sync
COB ID 601 Data (x"00",x"00",x"02",x"81",x"01",x"18",x"01",x"23") --tpdo2 enable COB-id = 281
COB ID 601 Data (x"00",x"00",x"00",x"07",x"00",x"60",x"60",x"2f") --set up IP mode
-- COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"C0",x"2f") --Interpolation LINEAR
COB ID 601 Data (x"00",x"10",x"00",x"00",x"00",x"35",x"CA",x"23") --unit.PIN set to 2^20
COB ID 601 Data (x"00",x"00",x"00",x"01",x"00",x"35",x"CB",x"23") --unit.POUT set to 1
COB ID 601 Data (x"00",x"00",x"00",x"03",x"00",x"36",x"60",x"23") --unit.protary set to the custom scal above. so I get 2^20 counts out when I do a SDO
COB ID 601 Data (x"00",x"00",x"00",x"0D",x"00",x"36",x"F9",x"23") -- quickstop input 6 - controlled stop
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"F6",x"23") -- touch input 5 - of
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6E",x"23") -- current limit positive - add in required setting
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6F",x"23") -- current limit negative - add in required setting
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"83",x"23") -- Jog acelleration setting - add in required setting
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"84",x"23") -- Jog Deceleration setting - add in required setting
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FF",x"23") -- Jog speed setting - add in required setting
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FD",x"43") --Read QUICKSTOP pin
-------Servo fore arm ID 2
--RPDO
COB ID 602 Data (x"C0",x"00",x"02",x"02",x"01",x"14",x"00",x"23") --rpdo1 disable
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"00",x"2F") --rpdo1 delete mapping
COB ID 602 Data (x"60",x"40",x"00",x"10",x"01",x"16",x"00",x"23") --rpdo1 Control word
COB ID 602 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"00",x"2F") --rpdo1 number of entries
COB ID 602 Data (x"00",x"00",x"02",x"02",x"01",x"14",x"00",x"23") --rpdo1 COB-id = 202
COB ID 602 Data (x"00",x"00",x"00",x"FF",x"02",x"14",x"00",x"2F") --rpdo1 react now
COB ID 602 Data (x"C0",x"00",x"03",x"01",x"01",x"14",x"01",x"23") --rpdo2 disable
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"01",x"2F") --rpdo2 delete mapping
COB ID 602 Data (x"00",x"04",x"00",x"20",x"01",x"16",x"01",x"23") --rpdo2 entry 1 32bit dummy data
COB ID 602 Data (x"60",x"C1",x"01",x"20",x"02",x"16",x"01",x"23") --rpdo2 entry 2 IP setpoint
COB ID 602 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"01",x"2F") --rpdo2 number of entries
COB ID 602 Data (x"00",x"00",x"03",x"01",x"01",x"14",x"01",x"23") --rpdo2 COB-id = 301
COB ID 602 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"01",x"2F") --rpdo2 react on every sync
COB ID 602 Data (x"C0",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 disable
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"02",x"2F") --rpdo3 delete mapping
COB ID 602 Data (x"00",x"03",x"00",x"10",x"01",x"16",x"02",x"23") --rpdo3 entry 1 16bit dummy data
COB ID 602 Data (x"60",x"B8",x"00",x"10",x"02",x"16",x"02",x"23") --rpdo3 entry 2 touch probe function
COB ID 602 Data (x"00",x"03",x"00",x"10",x"03",x"16",x"02",x"23") --rpdo3 entry 3 16bit dummy data
COB ID 602 Data (x"00",x"03",x"00",x"10",x"04",x"16",x"02",x"23") --rpdo3 entry 4 16bit dummy data
COB ID 602 Data (x"00",x"00",x"00",x"04",x"00",x"16",x"02",x"2F") --rpdo3 number of entries
COB ID 602 Data (x"00",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 COB-id = 401
COB ID 602 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"02",x"2F") --rpdo3 react on every sync
COB ID 602 Data (x"C0",x"00",x"05",x"01",x"01",x"14",x"03",x"23") --rpdo4 disable
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"03",x"2F") --rpdo4 delete mapping
COB ID 602 Data (x"00",x"04",x"00",x"20",x"01",x"16",x"03",x"23") --rpdo4 entry 1 32bit dummy data
COB ID 602 Data (x"60",x"FF",x"00",x"20",x"02",x"16",x"03",x"23") --rpdo4 entry 2 Jog speed setting - add in required setting
COB ID 602 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"03",x"2F") --rpdo4 number of entries
COB ID 602 Data (x"00",x"00",x"05",x"01",x"01",x"14",x"03",x"23") --rpdo4 COB-id = 501
COB ID 602 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"03",x"2F") --rpdo4 react on every sync
--TPDO
COB ID 602 Data (x"C0",x"00",x"01",x"82",x"01",x"18",x"00",x"23") --tpdo1 STOP
COB ID 602 Data (x"C0",x"00",x"02",x"82",x"01",x"18",x"01",x"23") --tpdo2 STOP
COB ID 602 Data (x"C0",x"00",x"03",x"82",x"01",x"18",x"02",x"23") --tpdo3 STOP
COB ID 602 Data (x"C0",x"00",x"04",x"82",x"01",x"18",x"03",x"23") --tpdo4 STOP
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"00",x"2F") --tpdo1 delete mapping
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"01",x"2F") --tpdo2 delete mapping
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"02",x"2F") --tpdo3 delete mapping
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"03",x"2F") --tpdo4 delete mapping
COB ID 602 Data (x"60",x"BB",x"00",x"20",x"01",x"1A",x"00",x"23") --tpdo1 entry 1 latched position
COB ID 602 Data (x"00",x"00",x"00",x"01",x"00",x"1A",x"00",x"2F") --tpdo1 number of entries
COB ID 602 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"00",x"2F") --tpdo1 enable on sync
COB ID 602 Data (x"60",x"63",x"00",x"20",x"01",x"1A",x"01",x"23") --tpdo2 entry 1 position
COB ID 602 Data (x"60",x"41",x"00",x"10",x"02",x"1A",x"01",x"23") --tpdo2 entry 2 status
COB ID 602 Data (x"00",x"00",x"00",x"02",x"00",x"1A",x"01",x"2F") --tpdo2 number of entries
COB ID 602 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"01",x"2F") --tpdo2 enable on sync
COB ID 602 Data (x"00",x"00",x"02",x"82",x"01",x"18",x"01",x"23") --tpdo2 enable COB-id = 282
COB ID 602 Data (x"00",x"00",x"00",x"07",x"00",x"60",x"60",x"2f") --set up IP mode
-- COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"C0",x"2f") --Interpolation LINEAR
COB ID 602 Data (x"00",x"10",x"00",x"00",x"00",x"35",x"CA",x"23") --unit.PIN set to 2^20
COB ID 602 Data (x"00",x"00",x"00",x"01",x"00",x"35",x"CB",x"23") --unit.POUT set to 1
COB ID 602 Data (x"00",x"00",x"00",x"03",x"00",x"36",x"60",x"23") --unit.protary set to the custom scal above. so I get 2^20 counts out when I do a SDO
COB ID 602 Data (x"00",x"00",x"00",x"0D",x"00",x"36",x"F9",x"23") -- quickstop input 6 - controlled stop
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"F6",x"23") -- touch input 5 - off
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6E",x"23")-- current limit positive - add in required setting
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6F",x"23") -- current limit negative - add in required setting
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"83",x"23") -- Jog acelleration setting - add in required setting
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"84",x"23") -- Jog Deceleration setting - add in required setting
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FF",x"23") -- Jog speed setting - add in required setting
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FD",x"43") --Read QUICKSTOP pin
---------Servo hand arm ID 3
--RPDO
COB ID 603 Data (x"C0",x"00",x"02",x"03",x"01",x"14",x"00",x"23") --rpdo1 disable
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"00",x"2F") --rpdo1 delete mapping
COB ID 603 Data (x"60",x"40",x"00",x"10",x"01",x"16",x"00",x"23") --rpdo1 Control word
COB ID 603 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"00",x"2F") --rpdo1 number of entries
COB ID 603 Data (x"00",x"00",x"02",x"03",x"01",x"14",x"00",x"23") --rpdo1 COB-id = 203
COB ID 603 Data (x"00",x"00",x"00",x"FF",x"02",x"14",x"00",x"2F") --rpdo1 react now
COB ID 603 Data (x"C0",x"00",x"03",x"03",x"01",x"14",x"01",x"23") --rpdo2 disable
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"01",x"2F") --rpdo2 delete mapping
COB ID 603 Data (x"60",x"C1",x"01",x"20",x"01",x"16",x"01",x"23") --rpdo2 entry 1 IP setpoint
COB ID 603 Data (x"00",x"04",x"00",x"20",x"02",x"16",x"01",x"23") --rpdo2 entry 2 32bit dummy data
COB ID 603 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"01",x"2F") --rpdo2 number of entries
COB ID 603 Data (x"00",x"00",x"03",x"03",x"01",x"14",x"01",x"23") --rpdo2 COB-id = 303
COB ID 603 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"01",x"2F") --rpdo2 react on every sync
COB ID 603 Data (x"C0",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 disable
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"02",x"2F") --rpdo3 delete mapping
COB ID 603 Data (x"00",x"03",x"00",x"10",x"01",x"16",x"02",x"23") --rpdo3 entry 1 16bit dummy data
COB ID 603 Data (x"00",x"03",x"00",x"10",x"02",x"16",x"02",x"23") --rpdo3 entry 2 16bit dummy data
COB ID 603 Data (x"60",x"B8",x"00",x"10",x"03",x"16",x"02",x"23") --rpdo3 entry 3 touch probe function
COB ID 603 Data (x"00",x"03",x"00",x"10",x"04",x"16",x"02",x"23") --rpdo3 entry 4 16bit dummy data
COB ID 603 Data (x"00",x"00",x"00",x"04",x"00",x"16",x"02",x"2F") --rpdo3 number of entries
COB ID 603 Data (x"00",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 COB-id = 401
COB ID 603 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"02",x"2F") --rpdo3 react on every sync
COB ID 603 Data (x"C0",x"00",x"05",x"03",x"01",x"14",x"03",x"23") --rpdo4 disable
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"03",x"2F") --rpdo4 delete mapping
COB ID 603 Data (x"60",x"FF",x"00",x"20",x"01",x"16",x"03",x"23") --rpdo4 entry 1 Jog speed setting - add in required setting
COB ID 603 Data (x"00",x"04",x"00",x"20",x"02",x"16",x"03",x"23") --rpdo4 entry 2 32bit dummy data
COB ID 603 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"03",x"2F") --rpdo4 number of entries
COB ID 603 Data (x"00",x"00",x"05",x"03",x"01",x"14",x"03",x"23") --rpdo4 COB-id = 503
COB ID 603 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"03",x"2F") --rpdo4 react on every sync
--TPDO
COB ID 603 Data (x"C0",x"00",x"01",x"83",x"01",x"18",x"00",x"23") --tpdo1 STOP
COB ID 603 Data (x"C0",x"00",x"02",x"83",x"01",x"18",x"01",x"23") --tpdo2 STOP
COB ID 603 Data (x"C0",x"00",x"03",x"83",x"01",x"18",x"02",x"23") --tpdo3 STOP
COB ID 603 Data (x"C0",x"00",x"04",x"83",x"01",x"18",x"03",x"23") --tpdo4 STOP
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"00",x"2F") --tpdo1 delete mapping
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"01",x"2F") --tpdo2 delete mapping
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"02",x"2F") --tpdo3 delete mapping
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"03",x"2F") --tpdo4 delete mapping
COB ID 603 Data (x"60",x"BB",x"00",x"20",x"01",x"1A",x"00",x"23") --tpdo1 entry 1 latched position
COB ID 603 Data (x"00",x"00",x"00",x"01",x"00",x"1A",x"00",x"2F") --tpdo1 number of entries
COB ID 603 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"00",x"2F") --tpdo1 enable on sync
COB ID 603 Data (x"60",x"63",x"00",x"20",x"01",x"1A",x"01",x"23") --tpdo2 entry 1 position
COB ID 603 Data (x"60",x"41",x"00",x"10",x"02",x"1A",x"01",x"23") --tpdo2 entry 2 status
COB ID 603 Data (x"00",x"00",x"00",x"02",x"00",x"1A",x"01",x"2F") --tpdo2 number of entries
COB ID 603 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"01",x"2F") --tpdo2 enable on sync
COB ID 603 Data (x"00",x"00",x"02",x"83",x"01",x"18",x"01",x"23") --tpdo2 enable COB-id = 283
COB ID 603 Data (x"00",x"00",x"00",x"07",x"00",x"60",x"60",x"2f") --set up IP mode
-- COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"C0",x"2f") --Interpolation LINEAR
COB ID 603 Data (x"00",x"10",x"00",x"00",x"00",x"35",x"CA",x"23") --unit.PIN set to 2^20
COB ID 603 Data (x"00",x"00",x"00",x"01",x"00",x"35",x"CB",x"23") --unit.POUT set to 1
COB ID 603 Data (x"00",x"00",x"00",x"03",x"00",x"36",x"60",x"23") --unit.protary set to the custom scal above. so I get 2^20 counts out when I do a SDO
COB ID 603 Data (x"00",x"00",x"00",x"0D",x"00",x"36",x"F9",x"23") -- quickstop input 6 - controlled stop
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"F6",x"23") -- touch input 5 - off
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6E",x"23") -- current limit positive - add in required setting
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6F",x"23") -- current limit negative - add in required setting
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"83",x"23") -- Jog acelleration setting - add in required setting
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"84",x"23") -- Jog Deceleration setting - add in required setting
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FF",x"23") -- Jog speed setting - add in required setting
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FD",x"43") --Read QUICKSTOP pin
---------Servo Z arm ID 4
--RPDO
COB ID 604 Data (x"C0",x"00",x"02",x"04",x"01",x"14",x"00",x"23") --rpdo1 disable
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"00",x"2F") --rpdo1 delete mapping
COB ID 604 Data (x"60",x"40",x"00",x"10",x"01",x"16",x"00",x"23") --rpdo1 Control word
COB ID 604 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"00",x"2F") --rpdo1 number of entries
COB ID 604 Data (x"00",x"00",x"02",x"04",x"01",x"14",x"00",x"23") --rpdo1 COB-id = 204
COB ID 604 Data (x"00",x"00",x"00",x"FF",x"02",x"14",x"00",x"2F") --rpdo1 react now
COB ID 604 Data (x"C0",x"00",x"03",x"03",x"01",x"14",x"01",x"23") --rpdo2 disable
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"01",x"2F") --rpdo2 delete mapping
COB ID 604 Data (x"00",x"04",x"00",x"20",x"01",x"16",x"01",x"23") --rpdo2 entry 1 32bit dummy data
COB ID 604 Data (x"60",x"C1",x"01",x"20",x"02",x"16",x"01",x"23") --rpdo2 entry 2 IP setpoint
COB ID 604 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"01",x"2F") --rpdo2 number of entries
COB ID 604 Data (x"00",x"00",x"03",x"03",x"01",x"14",x"01",x"23") --rpdo2 COB-id = 303
COB ID 604 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"01",x"2F") --rpdo2 react on every sync
COB ID 604 Data (x"C0",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 disable
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"02",x"2F") --rpdo3 delete mapping
COB ID 604 Data (x"00",x"03",x"00",x"10",x"01",x"16",x"02",x"23") --rpdo3 entry 1 16bit dummy data
COB ID 604 Data (x"00",x"03",x"00",x"10",x"02",x"16",x"02",x"23") --rpdo3 entry 2 16bit dummy data
COB ID 604 Data (x"00",x"03",x"00",x"10",x"03",x"16",x"02",x"23") --rpdo3 entry 3 16bit dummy data
COB ID 604 Data (x"60",x"B8",x"00",x"10",x"04",x"16",x"02",x"23") --rpdo3 entry 4 touch probe function
COB ID 604 Data (x"00",x"00",x"00",x"04",x"00",x"16",x"02",x"2F") --rpdo3 number of entries
COB ID 604 Data (x"00",x"00",x"04",x"01",x"01",x"14",x"02",x"23") --rpdo3 COB-id = 401
COB ID 604 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"02",x"2F") --rpdo3 react on every sync
COB ID 604 Data (x"C0",x"00",x"05",x"03",x"01",x"14",x"03",x"23") --rpdo4 disable
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"03",x"2F") --rpdo4 delete mapping
COB ID 604 Data (x"00",x"04",x"00",x"20",x"01",x"16",x"03",x"23") --rpdo4 entry 1 32bit dummy data
COB ID 604 Data (x"60",x"FF",x"00",x"20",x"02",x"16",x"03",x"23") --rpdo4 entry 2 Jog speed setting - add in required setting
COB ID 604 Data (x"00",x"00",x"00",x"02",x"00",x"16",x"03",x"2F") --rpdo4 number of entries
COB ID 604 Data (x"00",x"00",x"05",x"03",x"01",x"14",x"03",x"23") --rpdo4 COB-id = 503
COB ID 604 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"03",x"2F") --rpdo4 react on every sync
--TPDO
COB ID 604 Data (x"C0",x"00",x"01",x"84",x"01",x"18",x"00",x"23") --tpdo1 STOP
COB ID 604 Data (x"C0",x"00",x"02",x"84",x"01",x"18",x"01",x"23") --tpdo2 STOP
COB ID 604 Data (x"C0",x"00",x"03",x"84",x"01",x"18",x"02",x"23") --tpdo3 STOP
COB ID 604 Data (x"C0",x"00",x"04",x"84",x"01",x"18",x"03",x"23") --tpdo4 STOP
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"00",x"2F") --tpdo1 delete mapping
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"01",x"2F") --tpdo2 delete mapping
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"02",x"2F") --tpdo3 delete mapping
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"03",x"2F") --tpdo4 delete mapping
COB ID 604 Data (x"60",x"BB",x"00",x"20",x"01",x"1A",x"00",x"23") --tpdo1 entry 1 latched position
COB ID 604 Data (x"00",x"00",x"00",x"01",x"00",x"1A",x"00",x"2F") --tpdo1 number of entries
COB ID 604 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"00",x"2F") --tpdo1 enable on sync
COB ID 604 Data (x"60",x"63",x"00",x"20",x"01",x"1A",x"01",x"23") --tpdo2 entry 1 position
COB ID 604 Data (x"60",x"41",x"00",x"10",x"02",x"1A",x"01",x"23") --tpdo2 entry 2 status
COB ID 604 Data (x"00",x"00",x"00",x"02",x"00",x"1A",x"01",x"2F") --tpdo2 number of entries
COB ID 604 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"01",x"2F") --tpdo2 enable on sync
COB ID 604 Data (x"00",x"00",x"02",x"84",x"01",x"18",x"01",x"23") --tpdo2 enable COB-id = 284
COB ID 604 Data (x"00",x"00",x"00",x"07",x"00",x"60",x"60",x"2f") --set up IP mode
-- COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"C0",x"2f") --Interpolation LINEAR
COB ID 604 Data (x"00",x"10",x"00",x"00",x"00",x"35",x"CA",x"23") --unit.PIN set to 2^20
COB ID 604 Data (x"00",x"00",x"00",x"01",x"00",x"35",x"CB",x"23") --unit.POUT set to 1
COB ID 604 Data (x"00",x"00",x"00",x"03",x"00",x"36",x"60",x"23") --unit.protary set to the custom scal above. so I get 2^20 counts out when I do a SDO
COB ID 604 Data (x"00",x"00",x"00",x"0D",x"00",x"36",x"F9",x"23") -- quickstop input 6 - controlled stop
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"F6",x"23") -- touch input 5 - off
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6E",x"23") -- current limit positive - add in required setting
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6F",x"23") -- current limit negative - add in required setting
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"83",x"23") -- Jog acelleration setting - add in required setting
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"84",x"23") -- Jog Deceleration setting - add in required setting
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FF",x"23") -- Jog speed setting - add in required setting
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FD",x"43") --Read QUICKSTOP pin
---------Servo shelf arm ID 5
--RPDO
COB ID 605 Data (x"C0",x"00",x"02",x"05",x"01",x"14",x"00",x"23") --rpdo1 disable
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"00",x"2F") --rpdo1 delete mapping
COB ID 605 Data (x"60",x"40",x"00",x"10",x"01",x"16",x"00",x"23") --rpdo1 Control word
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"00",x"2F") --rpdo1 number of entries
COB ID 605 Data (x"00",x"00",x"02",x"05",x"01",x"14",x"00",x"23") --rpdo1 COB-id = 205
COB ID 605 Data (x"00",x"00",x"00",x"FF",x"02",x"14",x"00",x"2F") --rpdo1 react on every sync
COB ID 605 Data (x"C0",x"00",x"03",x"05",x"01",x"14",x"01",x"23") --rpdo2 disable
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"01",x"2F") --rpdo2 delete mapping
COB ID 605 Data (x"60",x"C1",x"01",x"20",x"01",x"16",x"01",x"23") --rpdo2 entry 1 IP setpoint
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"01",x"2F") --rpdo2 number of entries
COB ID 605 Data (x"00",x"00",x"03",x"05",x"01",x"14",x"01",x"23") --rpdo2 COB-id = 305
COB ID 605 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"01",x"2F") --rpdo2 react on every sync
COB ID 605 Data (x"C0",x"00",x"04",x"05",x"01",x"14",x"02",x"23") --rpdo3 disable
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"02",x"2F") --rpdo3 delete mapping
COB ID 605 Data (x"60",x"B8",x"00",x"10",x"01",x"16",x"02",x"23") --rpdo3 entry 1 touch probe function
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"02",x"2F") --rpdo3 number of entries
COB ID 605 Data (x"00",x"00",x"04",x"05",x"01",x"14",x"02",x"23") --rpdo3 COB-id = 405
COB ID 605 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"02",x"2F") --rpdo3 react on every sync
COB ID 605 Data (x"C0",x"00",x"05",x"05",x"01",x"14",x"03",x"23") --rpdo4 disable
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"16",x"03",x"2F") --rpdo4 delete mapping
COB ID 605 Data (x"60",x"FF",x"00",x"20",x"01",x"16",x"03",x"23") --rpdo4 entry 1 Jog speed setting - add in required setting
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"16",x"03",x"2F") --rpdo4 number of entries
COB ID 605 Data (x"00",x"00",x"05",x"05",x"01",x"14",x"03",x"23") --rpdo4 COB-id = 505
COB ID 605 Data (x"00",x"00",x"00",x"01",x"02",x"14",x"03",x"2F") --rpdo4 react on every sync
--TPDO
COB ID 605 Data (x"C0",x"00",x"01",x"85",x"01",x"18",x"00",x"23") --tpdo1 STOP
COB ID 605 Data (x"C0",x"00",x"02",x"85",x"01",x"18",x"01",x"23") --tpdo2 STOP
COB ID 605 Data (x"C0",x"00",x"03",x"85",x"01",x"18",x"02",x"23") --tpdo3 STOP
COB ID 605 Data (x"C0",x"00",x"04",x"85",x"01",x"18",x"03",x"23") --tpdo4 STOP
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"00",x"2F") --tpdo1 delete mapping
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"01",x"2F") --tpdo2 delete mapping
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"02",x"2F") --tpdo3 delete mapping
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"1A",x"03",x"2F") --tpdo4 delete mapping
COB ID 605 Data (x"60",x"BB",x"00",x"20",x"01",x"1A",x"00",x"23") --tpdo1 entry 1 latched position
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"1A",x"00",x"2F") --tpdo1 number of entries
COB ID 605 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"00",x"2F") --tpdo1 enable on sync
COB ID 605 Data (x"60",x"63",x"00",x"20",x"01",x"1A",x"01",x"23") --tpdo2 entry 1 position
COB ID 605 Data (x"60",x"41",x"00",x"10",x"02",x"1A",x"01",x"23") --tpdo2 entry 2 status
COB ID 605 Data (x"00",x"00",x"00",x"02",x"00",x"1A",x"01",x"2F") --tpdo2 number of entries
COB ID 605 Data (x"00",x"00",x"00",x"01",x"02",x"18",x"01",x"2F") --tpdo2 enable on sync
COB ID 605 Data (x"00",x"00",x"02",x"85",x"01",x"18",x"01",x"23") --tpdo2 enable COB-id = 285
COB ID 605 Data (x"00",x"00",x"00",x"07",x"00",x"60",x"60",x"2f") --set up IP mode
-- COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"C0",x"2f") --Interpolation LINEAR
COB ID 605 Data (x"00",x"10",x"00",x"00",x"00",x"35",x"CA",x"23") --unit.PIN set to 2^20
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"35",x"CB",x"23") --unit.POUT set to 1
COB ID 605 Data (x"00",x"00",x"00",x"03",x"00",x"36",x"60",x"23") --unit.protary set to the custom scal above. so I get 2^20 counts out when I do a SDO
COB ID 605 Data (x"00",x"00",x"00",x"0D",x"00",x"36",x"F9",x"23") -- quickstop input 6 - controlled stop
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"F6",x"23") -- touch input 5 - off
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6E",x"23") ,-- current limit positive - add in required setting
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"35",x"6F",x"23") -- current limit negative - add in required setting
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"83",x"23") -- Jog acelleration setting - add in required setting
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"84",x"23") -- Jog Deceleration setting - add in required setting
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FF",x"23") -- Jog speed setting - add in required setting
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"FD",x"43") --Read QUICKSTOP pin
---set up complete.
when mains power is on the servo drives , as in doors closed Estop etc…. and user says go I then send the following to start off I.P. mode
COB ID 601 Data (x"00",x"00",x"00",x"FD",x"02",x"60",x"C2",x"2f") --Interpolation units -3 = ms
COB ID 601 Data (x"00",x"00",x"00",x"02",x"01",x"60",x"C2",x"2f") --Interpolation time 2ms
COB ID 602 Data (x"00",x"00",x"00",x"FD",x"02",x"60",x"C2",x"2f") --Interpolation units -3 = ms
COB ID 602 Data (x"00",x"00",x"00",x"02",x"01",x"60",x"C2",x"2f") --Interpolation time 2ms
COB ID 603 Data (x"00",x"00",x"00",x"FD",x"02",x"60",x"C2",x"2f") --Interpolation units -3 = ms
COB ID 603 Data (x"00",x"00",x"00",x"02",x"01",x"60",x"C2",x"2f") --Interpolation time 2ms
COB ID 604 Data (x"00",x"00",x"00",x"FD",x"02",x"60",x"C2",x"2f") --Interpolation units -3 = ms
COB ID 604 Data (x"00",x"00",x"00",x"02",x"01",x"60",x"C2",x"2f") --Interpolation time 2ms
COB ID 605 Data (x"00",x"00",x"00",x"FD",x"02",x"60",x"C2",x"2f") --Interpolation units -3 = ms
COB ID 605 Data (x"00",x"00",x"00",x"02",x"01",x"60",x"C2",x"2f") --Interpolation time 2ms
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"64",x"43") --Read position
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"64",x"43") --Read position
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"64",x"43") --Read position
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"64",x"43") --Read position
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"64",x"43") --Read position
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"01",x"01") --start node 1
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"02",x"01") --start node 2
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"03",x"01") --start node 3
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"04",x"01") --start node 4
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"05",x"01") --start node 5
COB ID 201 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"06") --shutdown command
COB ID 201 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"07") --switch on command
COB ID 201 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"0F") --F enable opperation command
COB ID 201 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"1F") --1F enable IP mode
COB ID 202 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"06") --shutdown command
COB ID 202 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"07") --switch on command
COB ID 202 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"0F") --F enable opperation command
COB ID 202 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"1F") --1F enable IP mode
COB ID 203 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"06") --shutdown command
COB ID 203 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"07") --switch on command
COB ID 203 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"0F") --F enable opperation command
COB ID 203 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"1F") --1F enable IP mode
COB ID 204 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"06") --shutdown command
COB ID 204 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"07") --switch on command
COB ID 204 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"0F") --F enable opperation command
COB ID 204 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"1F") --1F enable IP mode
COB ID 205 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"06") --shutdown command
COB ID 205 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"07") --switch on command
COB ID 205 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"0F") --F enable opperation command
COB ID 205 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"1F") --1F enable IP mode
COB ID 601 Data (x"00",x"00",x"00",x"01",x"00",x"36",x"E8",x"23") --set sync monitor enabled 1
COB ID 602 Data (x"00",x"00",x"00",x"01",x"00",x"36",x"E8",x"23") --set sync monitor enabled 2
COB ID 603 Data (x"00",x"00",x"00",x"01",x"00",x"36",x"E8",x"23") --set sync monitor enabled 3
COB ID 604 Data (x"00",x"00",x"00",x"01",x"00",x"36",x"E8",x"23") --set sync monitor enabled 4
COB ID 605 Data (x"00",x"00",x"00",x"01",x"00",x"36",x"E8",x"23") --set sync monitor enabled 5
Then Loop every 2ms until stop request or error.
COB ID 080 Sync Message
collect position & status data from servos.
COB ID 301 position data servos 1 & 2
COB ID 303 position data servos 3 & 4
COB ID 305 position data servos 5
check there is at least 125us before the sync loop starts again , else error - servo required set up time for the newly loaded position messages
End loop
When I want to stop I send the following.
COB ID 201 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"02") -- quick stop shutdown command
COB ID 202 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"02") -- quick stop shutdown command
COB ID 203 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"02") -- quick stop shutdown command
COB ID 204 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"02") -- quick stop shutdown command
COB ID 205 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"00",x"02") -- quick stop shutdown command
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"E8",x"23") --set sync monitor disabled
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"E8",x"23") --set sync monitor disabled
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"E8",x"23") --set sync monitor disabled
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"E8",x"23") --set sync monitor disabled
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"36",x"E8",x"23") --set sync monitor disabled
COB ID 601 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"40",x"2B") --disable voltage
COB ID 602 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"40",x"2B") --disable voltage
COB ID 603 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"40",x"2B") --disable voltage
COB ID 604 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"40",x"2B") --disable voltage
COB ID 605 Data (x"00",x"00",x"00",x"00",x"00",x"60",x"40",x"2B") --disable voltage
COB ID 601 Data (x"00",x"00",x"00",x"80",x"00",x"60",x"40",x"2B") --reset node 1
COB ID 602 Data (x"00",x"00",x"00",x"80",x"00",x"60",x"40",x"2B") --reset node 2
COB ID 603 Data (x"00",x"00",x"00",x"80",x"00",x"60",x"40",x"2B") --reset node 3
COB ID 604 Data (x"00",x"00",x"00",x"80",x"00",x"60",x"40",x"2B") --reset node 4
COB ID 605 Data (x"00",x"00",x"00",x"80",x"00",x"60",x"40",x"2B") --reset node 5
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"01",x"02") --stop node 1
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"02",x"02") --stop node 2
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"03",x"02") --stop node 3
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"04",x"02") --stop node 4
COB ID 000 Data (x"00",x"00",x"00",x"00",x"00",x"00",x"05",x"02") --stop node 5
Thank you
Adam.

Adam Phipps | Mon, 06/14/2021 - 17:22

Ive found the answer.
The Servo drives were not in lock...
I just needed to lock them and all works fine.

About this Question

Adam Phipps