RobotStudio event

Motion Planner - reference calculation

Hello everyone, 

I recently came across a strange error related to the motion planner configuration, which I'm hoping someone might be able to shed some light on as I haven't been able to find info online. 

50366: Reference Error
Description
An error has occurred in the reference calculation in motion planner 1. Internal status -202.
Consequences
The controller goes to Motors Off.

What is concerning is that there were no changes made to the motion configuration, and the process was running smoothly up until this error occurred. I made a slight change related to some custom datatypes using a RECORD, but there doesn't seem to be any connection to this error. For troubleshooting, I loaded an older version of the module, restored a previously working back-up, and also restarted the system with no success. MoveAbsJ commands at the start of the program are working correctly, but the error appears at the first use of a MoveL or MoveC command. 

Does anyone have any info related to motion planners or reference calculations? Thanks in advance for any help or advice! 

Using RobotWare 6.06 with an IRB6400 
- Jay 

Comments

  • lemster68
    lemster68 ✭✭✭
    It seems like you might need to perform an advanced restart, like reset rapid.
    Lee Justice
  • Thanks for the help Lemster. I did attempt an I-start Reset, but the problem persisted. 

    The solution turned out to be to update the revolution counters of our independent axis (M7DM1). This axis is an external Siemens motor and when switched to independent mode with the IndCMove  command, we would then get this error at the next MoveL or MoveC. Updating the rev counters is an easy enough fix, but I'm still left wondering what could have caused this error in the first place. 

    Thanks again for the advice! 
  • lemster68
    lemster68 ✭✭✭
    Are the MoveL's/C's while in independent mode with external axis?  Or after?  Did you use the IndReset instruction for the axis?
    Lee Justice
  • Yes the external axis ( a Siemens MU200 motor) is first reset and then switched to independent mode. Then when the MoveL command begins, the motor should begin rotating according to a TCP velocity system output. The error appeared whenever this external axis first tried to spin.

    Here is the PROC which initializes the M7DM1 axis:
    !*************************************************************<br>!&nbsp; initialize the melt-pump mu200&nbsp;<br>!**********************************************************&nbsp; &nbsp;<br>&nbsp; &nbsp; PROC init_meltpump()<br>&nbsp; &nbsp; &nbsp; &nbsp; ! Activate melt-pump MU200<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ActUnit M7DM1;<br>&nbsp; &nbsp; &nbsp; &nbsp; ! Reset MU200&nbsp;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; IndReset M7DM1, 1;<br>&nbsp; &nbsp; &nbsp; &nbsp; ! Switch to Independent Axis<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; IndCMove M7DM1,1,0,\Ramp:=ramp;<br><br>&nbsp; &nbsp; &nbsp; &nbsp; ! adjust flow from velocity changes&nbsp; &nbsp;&nbsp;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CONNECT aoTCP_int WITH rpm_control_meltpump;<br>&nbsp; &nbsp; &nbsp; &nbsp; ! velocity change interrupt signal<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ISignalAO aoTcpSpeed, AIO_ALWAYS, 1, -1, 0.001, aoTCP_int;<br>&nbsp; &nbsp; &nbsp; &nbsp; ENDPROC

    And then the PROC which spins the axis according to TCP velocity while in a MoveL or MoveC command:
    <div>!*************************************************************</div><div>! spin melt-pump according to input rate&nbsp; &nbsp;&nbsp;</div><div>!*************************************************************&nbsp;</div><div>&nbsp; &nbsp; PROC spin_meltpump(num degrees_per_sec,\num ramp)&nbsp;&nbsp;</div><div><br></div><div>&nbsp; &nbsp; &nbsp; &nbsp; IndCMove M7DM1,1,degrees_per_sec,\Ramp:=ramp;</div><div>&nbsp; &nbsp; ENDPROC</div><div><pre class="CodeBlock"></pre></div>
    Maybe I am making a mistake related to the resetting and switching to an independent axis? Thanks for the advice!