Dear all,
I have been facing a problem with PMAC controller when executing a motion program using an inverse kinematics coordinate system. Hence, PMAC omits the values of the feedrate set by the motion program and runs the motion system with the feedrate even much grater than the limits set by Isx98. This does not happen if I execute the same motion program but using a simple coordinate system.
This is my setup of the inverse kinematics c.s. together with forward kinematics:
&1
I15=0
#1->I
#2->I
I5150=1 ; enabling kinematic calculation
&1 OPEN INVERSE ; Inverse kinematics for CS 1
CLEAR
P1 = -Q7 * 8192 ; X axis
P2 = ((0.5-0.62*Cos(27.49+Q8))+Q7+Q8) * 8192 ; Y axis
CLOSE
OPEN FORWARD
CLEAR
Q7=0
Q8=0
CLOSE
This is my motion program:
OPEN PROG 120 CLEAR
F(10)
X(0)Y(0)
Delay1000
F(10)
X(100)Y(0)
CLOSE
What I notice is that the feedrate value goes well beyond what is written in the motion program, and that is 10. Also, PMAC omits the maximum feedrate value written in I5198, which is 50. Also, it seems that whatever I write for the feedrate value in the motion program, PMAC simply execute motion with the feedrate value not related to what I coded.
However, if I execute the same motion program, but using a simple coordinate system such as:
&1
#1->-8192X
#2->8192X+8192Y
PMAC obeys the feedrate value I wrote in the motion program if they are below or equal to what is encoded in I5198, which is exactly what I want to achieve.
I hope you can help me with this, I have a feeling it is something rather simple, but I cannot figure out what it is.
Thanks in advance