RickJames Posted June 20, 2012 Share Posted June 20, 2012 I'm trying to create a linear accelleration move over time on the x axis. I used the formula time=DeltaP/((v1+v2)/2) I found in some PowerPmac documentation which calculates a 59000 ms move. I've tried using the PVT command but it accelerates to near the target speed, decelerates, then makes a jump to target speed at the end of the move segment. I want the speed to ramp from 25.4 mm/min to 127mm/min. PVT59000 x76.2:127 y150 v130 w130 X is the only thing indicating a positional change. I also tried to do something similar with the TA command. With it, the X axis had a constant speed of ~5 mm/min. TA59000 x76.2:127 y150 v130 w130 Any suggestions on what else I can try? Thank you for reading. Link to comment Share on other sites More sharing options...
Richard Naddaf Posted June 20, 2012 Share Posted June 20, 2012 Here is an example motion program with PVT moves. Attached, are brief comments and the resulting motion profile plot. &1 #1->X open prog 1 Dwell 0 Gather.Enable=2 Dwell 0 INC PVT (3*20*1000/25.4) X 20: 25.4 PVT (20*1000/25.4) X 20: 25.4 PVT (2*1000*200/(127+25.4)) X 200: 127 PVT (3*60*1000/(2*127)) X 60: 0 Dwell 0 Gather.Enable=0 Dwell 0 closePPMAC PVT Move Example.pdfPPMAC PVT Move Example.pdf Link to comment Share on other sites More sharing options...
RickJames Posted June 21, 2012 Author Share Posted June 21, 2012 Thank you Richard. I've got the PVT crating a decent looking move profile now. But I still have one problem. If I'm at 25.4 mm/min and I want to ramp to 50.8 mm/min, the x axis speed drops to 0 for an instant then ramps up. I'm trying to blend from the previous linear move command to the PVT move command using the TA and TD commands. Is that the right approach? Thanks again. Link to comment Share on other sites More sharing options...
Richard Naddaf Posted June 21, 2012 Share Posted June 21, 2012 You can blend linear and PVT moves in Power PMAC. There is no fixed approach. Usually, discontinuity in the velocity profile indicates a bad programmed move. It is very easy to make a mistake when programming PVT moves. I almost always use "virtual motors" to test my commanded profiles. Send me a snippet of your programmed moves, I will try to look at it. Also, you may try making use of the Coord[x].SegLinToPvt function, and see if that helps. Link to comment Share on other sites More sharing options...
curtwilson Posted June 21, 2012 Share Posted June 21, 2012 Make sure the coordinate system is in "segmentation mode" by setting Coord[x].SegMoveTime greater than 0. (5 msec usually works fine.) When you are transitioning between LINEAR and PVT moves, the TA and TD times are not used -- effectively, the LINEAR move has a TA or TD time of 0 at that end of the move. Link to comment Share on other sites More sharing options...
Recommended Posts