Jump to content
OMRON Forums

PMAC omits feedrate limits


Nikola
 Share

Recommended Posts

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

Link to comment
Share on other sites

  • Replies 4
  • Created
  • Last Reply

Top Posters In This Topic

Your forward and inverse kinematic routines MUST be mathematical inverses of each other over the entire workspace. That is, at any location in your workspace, if the X and Y axis position values Q7 and Q8 produce particular motor position values P1 and P2 in your inverse kinematic routine, the forward kinematic routine, given those same P1 and P2 motor position values, must produce the same axis position values in Q7 and Q8.

 

When you start a motion program, PMAC uses the Q-variable outputs from the forward kinematic routine as its starting axis positions to compute the move. If these are not correct, there will be a very quick jump from the real present position to the position it thinks it is starting from.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share


×
×
  • Create New...