Hi,
thanks for your fast reply! sorry in advance for this long reply
I’ll just elaborate a bit on the problem first:
so our robot takes two files - a .cod file which contains the instructions and a .var file which references the variables. The problem is with the .cod file which can only take 200 lines of code. I’ve managed to input over 1000 lines in the .var file so so far it seems ok.
A typical .code file would be:
Move linear to P1
arc_start(1)
Move linear to P2
and so on - so a single layer made up of a curve with division points every 5mm or so will take up space pretty quickly.
a .var file would be something:
P1 CWG
(X, Y, Z, A, E, R)
where X,Y,Z are the relative co-ordinates and A.E.R are the wrist rotations to orient the end-effector (in this case, a welding gun)
to reply to your question - I am really not sure to be honest. Right now we are trying to use the following function (example)
F(x) = (i=0 to n)Σ ai * X^(i)
for (int i=o; i<100; i++)
x = (i/100)length
y = a0 + a1X + a2X^2…
but still now idea how to solve this for 3D-Curves ( we extract the print paths by taking Iso-curves from a surface so the Z-Values are also constantly changing)
Moreover, as the robot arm moves along a curve it needs to be given wrist angles so that it can orient itself (example attached video where the welding gun is positioned parallel to the print direction (https://vimeo.com/275518819). Till now I do this by evaluating a surface at a point on the print path but am still now sure how this would be done using functions, or if even possible?
sorry for the long reply
thanks!
Chris