Component Pattern in 2D Cutting - Wrong setting or bug?

Component Pattern in 2D Cutting - Wrong setting or bug?

Anonymous
Not applicable
1,982 Views
13 Replies
Message 1 of 14

Component Pattern in 2D Cutting - Wrong setting or bug?

Anonymous
Not applicable

I've created a component pattern that contains 3 different 2d cutting profiles.  Simulation shows correct.  My output file goes to hell after the first vertical row of components finishes.  At this point the object is orientated differently.  Now after completing each 2d profile, its inserting a negative coordinate set causing a huge travel move, then returning to the correct coordinate to perform the next 2d cutting profile.  Simulation doesn't show these moves.

 

Screenshot 2 shows fusions travel moves.

20191115_132634.jpg shows how the file is processed w/ the negative coordinates inserted

abs 502.txt is the generated file.   Line 234 is where it starts to bomb out

https://a360.co/2OeljNz      Shared file

 

Any ideas on this behavior?

Thanks!

0 Likes
Accepted solutions (1)
1,983 Views
13 Replies
Replies (13)
Message 2 of 14

engineguy
Mentor
Mentor

@Anonymous 

 

I think it may be your setting of the start point, start should be at the WCS using the Flowmaster PP, I tried changing the order and starting at the WCS using the Flowmaster PP and I couldn`t find any -X or -Y values, with your start point there are lots of -X and -Y values scattered around 🙂 🙂

Start @ WCS pointStart @ WCS point

 

Anyway, try the attached file, might be of some help 🙂 🙂

 

Regards

Rob

0 Likes
Message 3 of 14

Anonymous
Not applicable

I appreciate the help.   Your file does the same thing.  Looks like it does the first 7 in the order you changed, then goes to hell again w/ the negative coordinates.   If you look at the output file, around line 227- it starts creating the negative value in an extra coordinate line above the correct coordinate.  Does this function have some unique callout I need to account for in my post processor?  This is for a Flow Waterjet if you're curious.

 

line 205-242

1.2531, 10.6000, 0, 20, 0
1.1531, 10.6000, 0, 0, 0
1.8431, 10.6000, 0, 0, 0
1.8431, 10.6000, 0, 40, 0
1.9431, 10.6000,-1, 40, 0, 1.7900, 10.6000
1.7900, 10.7531,-1, 40, 0, 1.7900, 10.6000
1.6369, 10.6000,-1, 40, 0, 1.7900, 10.6000
1.7900, 10.4469,-1, 40, 0, 1.7900, 10.6000
1.9431, 10.6000, 0, 40, 0
1.8431, 10.6000, 0, 0, 0
0.9806, 11.2670, 0, 0, 0
0.9806, 11.2670, 0, 60, 0
0.9686, 11.1677, 1, 60, 0, 0.9000, 10.6000
1.1070, 11.1331, 0, 60, 0
1.8421, 10.9278, 1, 60, 0, 1.7900, 10.6000
2.1178, 10.5479, 1, 60, 0, 1.7900, 10.6000
1.8421, 10.2722, 0, 60, 0
1.1070, 10.0669, 1, 60, 0, 0.9000, 10.6000
0.3669, 10.3930, 1, 60, 0, 0.9000, 10.6000
0.3281, 10.6000, 1, 60, 0, 0.9000, 10.6000
0.8949, 11.1719, 0, 60, 0
0.8940, 11.2718, 0, 0, 0
-2.9469, -11.3286, 0, 0, 0
2.9469, 11.3286, 0, 0, 0
2.9469, 11.3286, 0, 20, 0
2.8469, 11.3286,-1, 20, 0, 3.2000, 11.3286
3.2000, 10.9754,-1, 20, 0, 3.2000, 11.3286
3.5531, 11.3286,-1, 20, 0, 3.2000, 11.3286
3.2000, 11.6817,-1, 20, 0, 3.2000, 11.3286
2.8469, 11.3286, 0, 20, 0
2.9469, 11.3286, 0, 0, 0
-2.2569, -11.3286, 0, 0, 0
2.2569, 11.3286, 0, 0, 0
2.2569, 11.3286, 0, 40, 0
2.1569, 11.3286,-1, 40, 0, 2.3100, 11.3286
2.3100, 11.1754,-1, 40, 0, 2.3100, 11.3286
2.4631, 11.3286,-1, 40, 0, 2.3100, 11.3286
2.3100, 11.4817,-1, 40, 0, 2.3100, 11.3286

0 Likes
Message 4 of 14

Anonymous
Not applicable

Running dumper to see whats feeding my post processor file shows the negative values also-

 

>>> Pattern instances: 0,3,6,9,12,15,18,21,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99,102,105,108,111,114,117,120,123,126,129,132,135,138,141,144,147,150,153
STATE position=[-0.89402, -11.271848, 0.6]
STATE power=OFF
STATE radiusCompensation=RADIUS_COMPENSATION_OFF // off
4867: onRapid(-2.9468749639556164, -11.328571725079394, 0.5999999909889041)
4868: onRapid(-2.9468749639556164, -11.328571725079394, 0)
4869: onPower(true)
4869: onCommand(COMMAND_POWER_ON)
4870: onParameter('action', 'pierce')
4871: onMovement(MOVEMENT_LEAD_IN /*lead in*/)
4871: onLinear(-2.8468750030036984, -11.328571725079394, 0, 39.370100366787646)
4872: onMovement(MOVEMENT_CUTTING /*cutting*/)
4872: onCircular(false, -3.1999999519408218, -11.328571725079394, 0, -2.8468750030036984, -11.328571725079394, 0, 39.370100366787646)
direction: CCW
sweep: 360deg
normal: X=0 Y=0 Z=1 (XY)
radius: 0.353125

0 Likes
Message 5 of 14

engineguy
Mentor
Mentor

@Anonymous 

That is code you have generated at your end, there are no -X or -Y values in the code that I generate here.

 

Attached is the full .txt file for the complete program, here are the same lines (My sequence numbers are slightly different as they don`t do the first 3 comment lines),  there are no negative values as there are in yours.

N202 1.2531, 10.6000,-1, 20, 0, 0.9000, 10.6000
N203 1.1531, 10.6000, 0, 20, 0
N204 1.1531, 10.6000, 0, 0, 0
N205 1.8431, 10.6000, 0, 0, 0
N206 1.9431, 10.6000, 0, 40, 0
N207 1.7900, 10.7531,-1, 40, 0, 1.7900, 10.6000
N208 1.6369, 10.6000,-1, 40, 0, 1.7900, 10.6000
N209 1.7900, 10.4469,-1, 40, 0, 1.7900, 10.6000
N210 1.9431, 10.6000,-1, 40, 0, 1.7900, 10.6000
N211 1.8431, 10.6000, 0, 40, 0
N212 1.8431, 10.6000, 0, 0, 0
N213 0.9806, 11.2670, 0, 0, 0
N214 0.9686, 11.1677, 0, 60, 0
N215 1.1070, 11.1331, 1, 60, 0, 0.9000, 10.6000
N216 1.8421, 10.9278, 0, 60, 0
N217 2.1178, 10.5479, 1, 60, 0, 1.7900, 10.6000
N218 1.8421, 10.2722, 1, 60, 0, 1.7900, 10.6000
N219 1.1070, 10.0669, 0, 60, 0
N220 0.3669, 10.3930, 1, 60, 0, 0.9000, 10.6000
N221 0.3281, 10.6000, 1, 60, 0, 0.9000, 10.6000
N222 0.8949, 11.1719, 1, 60, 0, 0.9000, 10.6000
N223 0.8940, 11.2718, 0, 60, 0
N224 0.8940, 11.2718, 0, 0, 0
N225 2.9469, 11.3286, 0, 0, 0
N226 2.8469, 11.3286, 0, 20, 0
N227 3.2000, 10.9754,-1, 20, 0, 3.2000, 11.3286
N228 3.5531, 11.3286,-1, 20, 0, 3.2000, 11.3286
N229 3.2000, 11.6817,-1, 20, 0, 3.2000, 11.3286
N230 2.8469, 11.3286,-1, 20, 0, 3.2000, 11.3286
N231 2.9469, 11.3286, 0, 20, 0
N232 2.9469, 11.3286, 0, 0, 0
N233 2.2569, 11.3286, 0, 0, 0
N234 2.1569, 11.3286, 0, 40, 0
N235 2.3100, 11.1754,-1, 40, 0, 2.3100, 11.3286
N236 2.4631, 11.3286,-1, 40, 0, 2.3100, 11.3286
N237 2.3100, 11.4817,-1, 40, 0, 2.3100, 11.3286

Must be either the Post Processor you are using, are you using the latest Flowmaster PP ??

Like I said, it is OK here as far as I can tell 🙂

 

Regards

Ro

0 Likes
Message 6 of 14

Anonymous
Not applicable

Can you attach the dumper/dump file from the installed post library.  I'm generating off your file.  Our dump post should match.

 

Thanks!

0 Likes
Message 7 of 14

engineguy
Mentor
Mentor

@Anonymous 

 

Have you tried the complete code I uploaded ? If that runs then it is probably the PP you are using, I have the latest one from Sept 2019.

 

Regards

Rob

0 Likes
Message 8 of 14

engineguy
Mentor
Mentor

@Anonymous 

 

Dan

Here is the same section from my dump post :-

 

>>> Pattern instances: 0,3,6,9,12,15,18,21,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99,102,105,108,111,114,117,120,123,126,129,132,135,138,141,144,147,150,153
STATE position=[-0.89402, -11.271848, 0.6]
STATE power=OFF
STATE radiusCompensation=RADIUS_COMPENSATION_OFF // off
4867: onRapid(-2.9468749639556164, -11.328571725079394, 0.5999999909889041)
4868: onRapid(-2.9468749639556164, -11.328571725079394, 0)
4869: onPower(true)
4869: onCommand(COMMAND_POWER_ON)
4870: onParameter('action', 'pierce')
4871: onMovement(MOVEMENT_LEAD_IN /*lead in*/)
4871: onLinear(-2.8468750030036984, -11.328571725079394, 0, 39.370100366787646)
4872: onMovement(MOVEMENT_CUTTING /*cutting*/)
4872: onCircular(false, -3.1999999519408218, -11.328571725079394, 0, -2.8468750030036984, -11.328571725079394, 0, 39.370100366787646)
direction: CCW
sweep: 360deg
normal: X=0 Y=0 Z=1 (XY)
radius: 0.353125

 

Regards

Rob

0 Likes
Message 9 of 14

Anonymous
Not applicable

" I have the latest one from Sept 2019." 

 

Are you referring to the current Flow Post Processor ? -

/**
Copyright (C) 2012-2018 by Autodesk, Inc.
All rights reserved.

Flow waterjet post processor configuration.

$Revision: 42473 905303e8374380273c82d214b32b7e80091ba92e $
$Date: 2019-09-04 07:46:02 $

FORKID {F61954EF-5A29-4B93-93E7-870BC2786880}
*/

0 Likes
Message 10 of 14

engineguy
Mentor
Mentor

@Anonymous 

Yep, that would be this one 🙂

 

/**
Copyright (C) 2012-2018 by Autodesk, Inc.
All rights reserved.

Flow waterjet post processor configuration.

$Revision: 42473 905303e8374380273c82d214b32b7e80091ba92e $
$Date: 2019-09-04 07:46:02 $

FORKID {F61954EF-5A29-4B93-93E7-870BC2786880}
*/

description = "Flow Waterjet ORD";
vendor = "Flow";
vendorUrl = "http://www.flowwaterjet.com";
legal = "Copyright (C) 2012-2018 by Autodesk, Inc.";
certificationLevel = 2;
minimumRevision = 39000;

 

Regards

Rob

0 Likes
Message 11 of 14

Anonymous
Not applicable

Unless you are aware of something i'm not, every one of those Flow waterjet post processors autodesk has been posting are junk.   You can tell by the 1st line.   There are two sets of numbers representing lines and arcs.  If you add them up, the total should be 3 less than the total number lines of code.

 

// This file was created by FlowMaster(R), which is proprietary to Flow International Corporation. 1196 728
// Created by Autodesk HSM

 

There is 1459 lines of code in the file you posted.   For that PP to work, it needs to be-

 

// This file was created by FlowMaster(R), which is proprietary to Flow International Corporation. 728 728
// Created by Autodesk HSM

 

Also your dump file shows the same negative values I'm getting in the pattern output section....  I see absolutely no reason why that should be in there.  Its the correct coordinate, just w/ a negative added to it.   I've cut 100's of files w/ my modified flow post.  This issue is 100% pattern related.

 

Any thoughts?   Thanks!

0 Likes
Message 12 of 14

engineguy
Mentor
Mentor

@Anonymous 

 

Nope, no more ideas on this for now, the code generated here looked correct to me (I`m no expert on Waterjet) so I can only suggest you try loading the code to your machine and see if it will accept the program, you will probably have to change the extension fron .txt to .ord if your control doesn`t accept .txt files.

 

Regards

Rob

0 Likes
Message 13 of 14

Anonymous
Not applicable
Accepted solution

So I think I know whats going on...  When using patterns, In the dump file "currentSection.workPlane=" changes when the pattern direction changes.  Thats screwing up all the coordinates making inverse values and completely swapping X & Y on the last row.

 

My PP is just reading the position coordinates.   I need to make it look at the "currentSection.workPlane="value, then read the current coordinates, apply the necessary changes, and write it. 

Message 14 of 14

kyle.kershaw
Alumni
Alumni

@Anonymous is on track with the thought about the changing workplanes and the need to account for that difference.

 

For those wondering how, that's done, the setRotation(remaining) function is the key. 1st thing in the onSection entry point.

 

function onSection() {
var remaining = currentSection.workPlane;
if (!isSameDirection(remaining.forward, new Vector(0, 0, 1))) {
error(localize("Tool orientation is not supported."));
return;
}
setRotation(remaining); 

.............

 

If anyone is interested in testing, I have a potential replacement for the Flow post that needs some eyeballs and exercise. Private message me if you're interested

 

The post addresses some of the issues I've gleaned from the forum pages. Counters, duplicate lines, and arc formats.  

 

Shout out to @Anonymous. I used his post to discover the arc output was all wrong in the stocker. 



Kyle Kershaw

Technical Consultant
0 Likes