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

Mitsubishi CR751 Rv2fD arm skips steps on MoveJ

#1
The following sample code:
Code:
MoveJ(home_pose)
MoveJ(first_position)
MoveJ(second_position)
MoveJ(home_pose)

May actually just execute to home, second, home, there seems to be no pattern.

Things I have tried:
  1. Adding time.sleep between movements.. this seems to help but need a very long sleep to work which is not feasible for my project
  2. Using non-blocking and robot.busy.. this also skips
  3. Checking for robot.connectionstatus.. this also skips
  4. Calling Joints() after every move... this causes disconnection issues

As mentioned in number 4, I also have issues where the arm will randomly just get stuck at "sending command", which get worse when calling Joints.

This is using the latest RoboDK version and Python API.
#2
Can you provide us with the RoboDK project and a print screen or text file of the robot connection log?
#3
(08-01-2024, 08:52 AM)Albert Wrote: Can you provide us with the RoboDK project and a print screen or text file of the robot connection log?

This happens even with just the robot arm loaded into the rdk file, doesnt seem specific to any project

Where can I find the connection log? Will update with that when I can get it
#4
You can retrieve the connection log by r.click on the robot - Connect To Robot - Show Log :

unnamed.png   
#5
(08-01-2024, 08:52 AM)Albert Wrote: Can you provide us with the RoboDK project and a print screen or text file of the robot connection log?

Here is the log


Attached Files
.txt   robodk_log.txt (Size: 1.3 KB / Downloads: 161)
#6
Looking at the log you can see some warning messages such as this one:
Code:
Warning: Error moving robot: ['0.12', '0.01', '89.99', '0.00', '90.00', '-89.88']
I assume you are trying to move the robot outside of the joint limits. This should stop the driver with an error. We'll improve the driver to make sure it does not continue the execution when an issue with the movement happens.

In the meantime, make sure to update the joint limits on your robot in RoboDK to reflect the joint limits of your real robot. You can update the joint limits of your robot in RoboDK by double clicking on any label of the joint limits in the robot panel.
#7
(08-02-2024, 08:44 AM)Albert Wrote: Looking at the log you can see some warning messages such as this one:
Code:
Warning: Error moving robot: ['0.12', '0.01', '89.99', '0.00', '90.00', '-89.88']
I assume you are trying to move the robot outside of the joint limits. This should stop the driver with an error. We'll improve the driver to make sure it does not continue the execution when an issue with the movement happens.

In the meantime, make sure to update the joint limits on your robot in RoboDK to reflect the joint limits of your real robot. You can update the joint limits of your robot in RoboDK by double clicking on any label of the joint limits in the robot panel.

The robot is not moving outside of its limits, for example if I run the same code with a 30 second delay between movements it works fine, or if I command each position directly from home its fine

To give reference to where these points are, the home location is basically the center of the robots workspace and I am having the end effector (just J6, no special end effector built) draw a shape, maybe a square of 30mm.

However, this happens no matter the points. Even if I just have the robot move in a straight line only 1mm and back it has the chance to skip

The reason (I believe) the sleeps work to alleviate the problem is because the MoveJ (or MoveL) will execute and leave the function before the move is completed and immediately try to execute the next. If I put a print statement after each Move, sometimes two will print immediately and the robot hasnt even completed the first movement, and physically the robot will skip the move associated with the second print
#8
Are you working close to a singularity? RoboDK has strict tolerances to prevent singularities with your robot arm but they may not be enough for your robot.

Did you try generating the program for the robot?

Can you send us the RoboDK project file you are using? We'll try to reproduce these issues with the Mitsubishi RT Toolbox simulator.
#9
(08-06-2024, 08:48 AM)Albert Wrote: Are you working close to a singularity? RoboDK has strict tolerances to prevent singularities with your robot arm but they may not be enough for your robot.

Did you try generating the program for the robot?

Can you send us the RoboDK project file you are using? We'll try to reproduce these issues with the Mitsubishi RT Toolbox simulator.

Here is the RDK file and the Python file used. In the move function, if you change the for loop to run 5 times the arm never skips, but if you set it to 1 is always skips. These Points are near the Mitusbishi ABS position and the robot can easily access them, so it should not be near a singularity


Attached Files
.py   Mitsubishi.py (Size: 3.97 KB / Downloads: 139)
.rdk   Mitsubishi.rdk (Size: 372.1 KB / Downloads: 159)
#10
Can you try to reproduce this issue with the latest version of RoboDK?
We improved the driver to stop when a warning is provided. If the robot stops again, can you check if you have any warning or error messages on the robot controller?

You can take the latest version here:
https://robodk.com/download
  




Users browsing this thread:
2 Guest(s)