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

Smooth Continuous MoveC

#1
Hello,

I am using Fanuc robot. I am using MoveC() function to follow a circle. It is a for loop that is ran 8 times, where we increment the targets until we have a full circle. Currently, after each MoveC(), the robot stops. However, the goal is to have a smooth continuous circular motion. I have tried adding the setRounding() function and played with parameters 5, 10, 50, 100, but the results are the same. The robot is still stopping, unlike in the  simulation where it does not stop. Am I missing anything?

Thanks,

Joshua
#2
Do you mean it stops on the controller or on the robot simulation? Could you share the RoboDK project and sample code you use?
#3
(08-29-2023, 06:45 PM)Albert Wrote: Do you mean it stops on the controller or on the robot simulation? Could you share the RoboDK project and sample code you use?

It stops on the controller. It runs smoothly when it's completely in simulation.
Attached is a snippet of my code.


Attached Files Thumbnail(s)
   
#4
If you are having issues with circular movements (MoveC) on your controller I recommend you to convert the circular movements to linear movements (smaller MoveL movements).

You can follow these steps to do so:
  1. Select Tools-Options.
  2. Select the Program tab.
  3. Click on Avoid arcs.
  4. Specify the Maximum arc size (mm) which defines the size of the linear movements along the arc.
You can find more information here:
https://robodk.com/doc/en/Robot-Programs...ogArcToLin
#5
(09-06-2023, 03:40 PM)Albert Wrote: If you are having issues with circular movements (MoveC) on your controller I recommend you to convert the circular movements to linear movements (smaller MoveL movements).

You can follow these steps to do so:
  1. Select Tools-Options.
  2. Select the Program tab.
  3. Click on Avoid arcs.
  4. Specify the Maximum arc size (mm) which defines the size of the linear movements along the arc.
You can find more information here:
https://robodk.com/doc/en/Robot-Programs...ogArcToLin

Is there an alternative to this? I want to be able to record a video where the camera is mounted on a robot. However,  this doesn't seem like it will create a circular path during video recording.
#6
The option I mentioned in my previous answer converts circular movements into smaller linear movements. I don't know of another solution to work around the circular movement issues...
#7
(09-07-2023, 04:37 PM)Albert Wrote: The option I mentioned in my previous answer converts circular movements into smaller linear movements. I don't know of another solution to work around the circular movement issues...

I appreciate your response and suggestions! Attached is the changed parameters as you've mentioned. Using the same MoveC code, it is still stopping. Is this just a limitation due to the handshaking between RoboDK and the Fanuc Controller?

Best,

Joshua


Attached Files Thumbnail(s)
   
#8
OK I assume you are using the driver and move the robot directly from RoboDK. In this case, the MoveC won't be split into smaller movements.

Instead, I recommend you to create a Program using the API and generate the LS file. You should be able to easily create a program by replacing your robot variable for the following:
Code:
program = RDK.AddProgram("NewProgram", robot)
# Use the program item the same way you use the robot:
# program.MoveL
# program.MoveC
You can find a more complete example here:
https://robodk.com/doc/en/PythonAPI/exam...easibility
#9
(09-13-2023, 09:00 AM)Albert Wrote: OK I assume you are using the driver and move the robot directly from RoboDK. In this case, the MoveC won't be split into smaller movements.

Instead, I recommend you to create a Program using the API and generate the LS file. You should be able to easily create a program by replacing your robot variable for the following:
Code:
program = RDK.AddProgram("NewProgram", robot)
# Use the program item the same way you use the robot:
# program.MoveL
# program.MoveC
You can find a more complete example here:
https://robodk.com/doc/en/PythonAPI/exam...easibility
I am using other sensors with their own python API, so generating a LS file and flashing to the robot may not work for my application.
Is there a way to contact you via email?
#10
Yes, you can contact us here:
https://robodk.com/contact
  




Users browsing this thread:
1 Guest(s)