Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Fanuc MOTN-017 Axis Error When Running the TP Program

#1
Good afternoon everybody, 

My company recently got a trial to RoboDK and we've run into some issues with running the TP files on our actual robot. We are currently attempting to use RoboDK for toolpath programming. We have the booth and robot positions set as accurately as we're comfortable with. Currently, I am attempting to generate a simple program that consists of 3-4 joint movements. The simulation seems to run fine in RoboDK but when I transfer the compiled TP program to the robot and attempt to run the program I run into a strange axis error (MOTN-017 Limit Error (G:1, A:e Hex). This usually happens when an axis is near it's limit but I've never seen the error code with a letter instead of a number before. I've also attached a copy of the station if anyone would like to take a look and play around with it themselves.

I've verified and slightly adjusted the actual axis limits on the robot versus the simulation but I am still getting the same error after compiling and loading/running the TP program onto my controller.


Attached Files Thumbnail(s)
   

.rdk   Base Booth.rdk (Size: 2.54 MB / Downloads: 114)
#2
I believe you are working in a very strange position for the robot. Maybe too close to the joint limits or even exceeding them.

This axis limit error could be related to the robot limits not being properly set in RoboDK. More specifically, Fanuc robots have a coupling on axes 2 and 3 (moving axis 2 moves joint 3). Can you provide the joint limits of your robot when moved to the joint limits for axes 2 and 3? This can be updated in the Joint 2/Joint 3 table you see when you update joint limits for joints 2 or 3 (double click on the label of axis 2 or 3).

In your specific project I would also recommend you to change the robot configuration (use the drop-down you see under Other configuration in the robot panel and reteach the targets).

Also, for joint movements and troubleshooting joint limit issues I recommend you to change your targets to joint targets (right click on the targets and select Joint target).

You can find more information about joint axis coupling here:
https://robodk.com/blog/robot-axis-coupling/
#3
I've also noticed that RoboDK does not update the limits exactly as I set them - this might be the underlying issue. When I set the axis limits, they seem to change based off of what motion the robot is trying to do. For example, I've attached a chart of the limits for one move in particular that seem to change the min/max limits. I've set the limits as follows: 

Axis| Lower | Upper
1    |  -170  |  170
2    |   -90   |  160
3    |  -200  |  290
4    |  -260  |  260
5    |  -140  |  140
6    |  -220  |  220

But when I have the robot move to Target 1 in joint movement, the limits change to:

Axis| Lower | Upper
1    |  -170  |  170
2    | 109.4  |  160
3    |-282.8 |  177.2
4    |  -260  |  260
5    |  -140  |  140
6    |  -220  |  220

Is there a way to keep the joint limits consistent for every move? I'm not sure why they're changing the way they are currently.
#4
Fanuc robots have a coupling between joint 2 and 3. This means that the joint limits for axis 3 move when you move axis 2.

You can find more information and help with troubleshooting in my previous answer.
#5
I've attached the table for when J2 and J3 are at their mins and maxes. The robot is in a strange position indeed - it was originally used to cut fiberglass hot tub parts. I'm assuming there was some advantage to having it positioned above the parts for the original owner's use case.

I've also attached an updated version of the station - updated joint limits and converted the targets to joint instead of cartesian.

J2 + J3 At Mins
-90.0000000 -90.0000000 160.0000000 160.0000000 -90.0000000
380.0000000 -80.0000000 -330.0000000 130.0000000 380.0000000

J2 + J3 At Maxes
-90.0000000 -90.0000000 160.0000000 160.0000000 -90.0000000
380.0000000 -80.0000000 -330.0000000 130.0000000 380.0000000

Let me know if you need anymore information. Thanks Albert.

Albert, 

Were you referring to manually jogging the physical robot to it's J2/J3 limits and then sharing the limit table? I might have misunderstood what you were referring to exactly.

I've jogged the J3 axis to it's limits (I was unable to do this for the J2 axis due to physical booth constraints). I was unable to see any changes in the Axis Limits menu on my Teach Pendant. I've attached images of the joint limits when J3 is at it's minimum and maximum.


Attached Files Thumbnail(s)
       

.rdk   Base Booth.rdk (Size: 2.54 MB / Downloads: 125)
.rdk   Base Booth updated.rdk (Size: 2.54 MB / Downloads: 110)
#6
The information you provided for Joint 2 and 3 at max is the same as the one at min. However, I guess that if one of the limits for joint 2 and 3 is -90 and 160 deg respectively we can create the table attached for axes 2 and 3 (just select copy from the joint limits):
Code:
-90.0000000 -90.0000000 160.0000000 160.0000000 -90.0000000
160.0000000 20.0000000 -230.0000000 -90.0000000 160.0000000
   


Attached Files
.rdk   Base Booth-v2.rdk (Size: 2.54 MB / Downloads: 117)
#7
Is there a way to get more accurate axis limits on Fanuc robots? When I jog the robot the limits did not change regardless of how I moved the joints. It seems like they're almost a hard-coded value despite the linkage between J2 and J3. The settings you provided don't seem to be accurate to how the actual robot behaves (to no fault of your own, I don't think I provided the correct information). Do you have any suggestions? Thanks.
#8
The robot joint limits shown in the Fanuc system parameters are constant, however, the real limits change. To know the exact limits you should physically jog the robot to the limits to obtain the 4 points required to build the chart.

Another option is to use Fanuc Roboguide and jog the robot virtually. If you can provide us with the correct limits we can update them in your robot model in RoboDK.
#9
(09-15-2023, 04:11 PM)rpgemployee Wrote: Is there a way to get more accurate axis limits on Fanuc robots? When I jog the robot the limits did not change regardless of how I moved the joints. It seems like they're almost a hard-coded value despite the linkage between J2 and J3. The settings you provided don't seem to be accurate to how the actual robot behaves (to no fault of your own, I don't think I provided the correct information). Do you have any suggestions? Thanks.
I've jogged the robot in RoboGuide and I think that I've gotten the required points. The robot was imported into RoboGuide using backup files so it should be relatively accurate. Please let me know if you need any more information. Thanks!

Code:
-90 | 11.675
-90 | 289.576
160 | -169.625
160 | 82.375
#10
Perfect, we updated the limits of Joints 2 and 3 of the Fanuc M-16iB/20 robot.

This is the required table for the coupling of joints 2 and 3:
Code:
-90, -90, 160, 160, -90
289.576, 11.675, -169.625, 82.375, 289.576
I attached the updated robot and station.


Attached Files
.robot   Fanuc-M-16iB-20.robot (Size: 234.16 KB / Downloads: 115)
.rdk   Base Booth-v3.rdk (Size: 2.54 MB / Downloads: 125)
  




Users browsing this thread:
1 Guest(s)