AnthonyLH Posted September 11, 2015 Share Posted September 11, 2015 dear all, we are executing trajectory moves using the rotary buffer and gpascii -i which reads the .pmc file. i would like at some point to change the target position (with new TM and TA), this without passing by a 0 velocity/acceleration phase (no stop/abort). it would have been possible just by adding a new line in the rotary (linear TM## TA## X##..) , but it seems that using the gpascii -i lock the access to the rotary. i tried a cpx command, it seems that a motion prog can not be launch when another is already running. does someone have a solution? thank you! Link to comment Share on other sites More sharing options...
bradp Posted September 14, 2015 Share Posted September 14, 2015 This is application specific so someone will contact you Link to comment Share on other sites More sharing options...
AnthonyLH Posted September 14, 2015 Author Share Posted September 14, 2015 Hello Brad! We play TM=10 ms sampled trajectory, written in a .pmc file, using "gpascii -i". At some point, i want to exit this trajectory mode and end the motion in a new commanded position, position not present in the .pmc file. In the idea sending something like "cpx linear TM10000 TA1000 X0Y0Z0A0B0C0". I would like the target position to be changed without passing by an 0 velocity/acceleration phase (no stop/abort). Thank you! Link to comment Share on other sites More sharing options...
bradp Posted September 14, 2015 Share Posted September 14, 2015 Like I wrote, there are too many application specific questions that need to be answered to give the best way of doing this. We could not go through all questions without typing a book. So someone will contact you and discuss this. Or if you are in a hurry you can contact me or Lucien by phone before we call you. Link to comment Share on other sites More sharing options...
curtwilson Posted September 16, 2015 Share Posted September 16, 2015 You will have detailed issues that need direct tech support to solve, but here are some general principles: You cannot break into an executing LINEAR move with another move (except to abort). If the next move is available in the buffer before the end of the front-end acceleration (blending) of this move, a blend without stopping to the next move will be calculated to replace the final deceleration of the executing move. You CAN break into an executing RAPID move with another RAPID move. However, this new move cannot come from a motion program, as the sequencing rules for motion program execution do not permit calculation of another move until full execution of this RAPID move is finished. So a new move sent to the rotary buffer will not break into the executing move, and a "cpx" command, which is a separate one-line motion program, cannot be used until the executing motion program is finished. The new RAPID move that breaks into the executing move must come from a PLC program, either one that is already loaded into the PMAC, or using the "cx" command for a one-line one-shot PLC program. So you could do something like: cx Ldata.Coord=1 Motor[3].MaxSpeed=200 rapid X25.3 Link to comment Share on other sites More sharing options...
Recommended Posts