Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Altrinis

#1
Hello,
First of all, thank you for the hard work put into KukaPRC, it's a great tool!
I did notice that in newest version, there's one function missing that we needed most dearly: settings->advanced->code ->Reduce Filesize - Skip redundant positions.
We produce programs with high-precision toolpaths and amount of redundant positions is quite high (the external axis), enough to double the size of our code, to extents where it can no longer fit into (hard to understand) memory limits of a Kuka robot.

If you could add this setting back in the next release we would be most thankful. Until then, we will use the previous version.

Kind regards,
Michael.
#2
Hello,

I seem to have stumbled upon an issue with krl coding requiring a broader knowledge than mine.
I'm in the process of developing 3D printing technology, since quality is what I'm after the density of points in tool path is very high. Problems with file size quickly arose and Kuka PRC function "Reduce Filesize - Skip Redundant Position" was invaluable.
However, as I went further it became necessary to run a certain subprogram before each movement (g1.src) to check the robot velocity with $VEL_ACT and calculate the speed of extrusion. It's because our extruder uses servo motor rather than a stepper motor and needs to synchronize with robot slowing down on detailed tool path - a command is sent via EthernetIP with correct rotation speed, hence slimak=(...).

The appearance of any command woven between motion positions seems to prevent Kuka PRC from optimizing the code and redundant positions (such as external axis) are no longer removed: see "example_with_intersecting_functions" compared to "example_without_intersecting_functions(optimized)"

Solution that I'm after consists of two elements:

  • Possibility to retain skipping of redundant positions even with interwoven functions
  • A better solution to the robot-servomotor synchronization

I had some ideas that with Your help might prove valid:

  • Load all the movement points (although there could be as much as 100 000) into an array and execute them one by one with a WHILE function
  • Run a function in background (is it possible?) which at fixed time intervals would send a proper extruder speed based on current robot velocity
  • Set another global variable which is being transmitted every 1 second to extruder
  • Using submit interpreter

One thing I should mention is that the robot movements need to be stutter free. For instance, from what I have gathered a conditional function could cause interrupts in advance run.

I'm most grateful for any guidance in the matter.

Best regards,
Michael.
#3
General Discussion / Horizontal Axis Addition
April 24, 2020, 10:23:24 AM
Hello,
I would be very thankful to receive Your opinion in the following matter:
We are planning to add an external horizontal axis to our current Kuka robot. It's naturally meant to be controlled with Kuka PRC.
The goal is to perform milling on cylindrical blanks (at least 1.5 m long however not exceeding more than 300kg), so precise synchronization is top priority.
After contacting Kuka, it was suggested that the KP1-MDC single-axis modular drive unit with counterbearing could possibly satisfy our needs.

1. Would Kuka PRC communicate with that equipment? Is it processed just as rotary table, but flipped sideways?
2. Do You have any better recommendation on hardware / solution (as in, to build the axis ourselves, other manufacturer etc.)?

Best regards.
#4
Hello,

I am trying to enhance my algorithm for single wall (corkscrew) 3d printing with an option to vary robot's speed according to length of the printed curve. Mapping went fairly easily and Kuka PRC component "linear movement" accepted the grafted data fine.

The problem is, whenever the speed changes, robot briefly stops. That's very unwanted behaviour because our extruder keeps going, resulting in a blob (the latency of extrudate would be too big to try to stop it for such a brief moment anyway)/

I have tried to adjust the interpolation settings in following ways:


  • set higher interpolation value in interpolation by distance
  • reduce distance between points on curves which have different speeds
  • change interpolation type to "by velocity"
  • tried to use spline movement component, unfortunately the file size is larger then our robot can process (we already use the "reduce filesize" option)

During the robots work, the KRC informs at the problematic point that the toolpath could not be approximated (translated from my native language).

Is there a general "blend movement" solution?

Here's a screenshot for better visualisation of the problem https://i.imgur.com/HRyiLeu.png.

Kind regards,
Michael.