Couple of potential bugs...

Here's the place for discussion related to CAM/CNC and the development of the Path module.
User avatar
JoshM
Posts: 419
Joined: Thu Oct 05, 2017 5:34 pm
Location: New Hampshire

Re: Couple of potential bugs...

Postby JoshM » Fri Oct 13, 2017 12:52 am

I'm going to explore the different available operations more tomorrow, but appreciate the suggestions.

As I'm acclimating to PATH, I've thought a bit about what the price is in the learning curve--that is, what aspects are complicated about getting started with PATH. I've spent a week, and feel like I'm able to do about 80% of what I need comfortably, with a couple buttons/options I haven't figured out yet. I'm so gratified by the experience of seeing a design realized, such that in the time predicted by my simulation, I could see and hold what I had modeled.

In my initial design, I successfully exercised the following in PATH-WB:

I defined Tools in the Tool-Library.
I created a JOB, defining the destination for the output GCode file, selecting the Post-Processor.
I exported TOOL-CONTROLLERS from the Tool-Library to the Job, and configured FEEDS and SPEEDS, and gave a meaningful name to each. In this JOB, I chose to define a single TOOL-CONTOLLER per tool, but I could have defined multiple controllers--for example, for Roughing, then Finishing passes.

In varying order, I exercised the following PATH Operations:
1. FaceMilling
2. Pocketing
3. Drilling
4. Helixing
5. Dressing up the Pocket-Operation
6. Issuing Full-Stops for tool changes
7. Setting a fixture to specify G55 coordinates
8. 3D Pocketing using a ball nose endmill
9. Generated a feature from an iterative design step that allowed me to face my part where my endmill could cut what was in essence a combination of internal and external cuts, without suffering the bit radius corner penalty where my path allowed me to cut into air.
10. Inserted Custom GCode.
11. I explored, understood, but opted not to use here the Dogbone dress up operation.
12. I didn't use, but understood the Comment operation.

While still clearly a novice, I did learn that: it's important to me to have a Strategy. I start with my initial sketch oriented on XY aligned to how it sits in G55 coordinate system on my table, using homing and probe switches to determine XYZ, Pad it to finished height, etc... I try to avoid having to rework the 3D model to limit making FC angry or disoriented. I save iterations fairly frequently. In Path, where multiple options exist to accomplish an Operation, I've learned best to choose the simplest. For example, I attempted a pass at filleting the contour of the two pockets by selecting all of its 16 faces, but missed one corner--my messup. The next pass, I selected the pocket floor, selected Contour Cut on a Face, and specified the bit radius offset in the Pass Extension. I start with my largest tool, face my stock, then cut whatever material I can, program stops for manual tool changes, moving to successively smaller tools as needed.

I need to design and cut the Pick-Out to mate with this Mold next, and it's a subset of what I've done so far, so I'm confident it will be straightforward to do now.

First, I'll try to adapt my Post Processor as suggested, then fix this Job to remove my Custom GCode to tidy things up.

I'm curious if it's a good idea to model my vacuum table, including shoulder screw inserts to accurately depict my ficture, and may try. I think it will be helpful in helping visualize the job--including possible obstacles, but I assume there's a penalty to be paid in extra file size.
roivai
Posts: 117
Joined: Thu Feb 02, 2017 5:29 pm
Location: Oulu, Finland

Re: Couple of potential bugs...

Postby roivai » Thu Nov 16, 2017 8:40 pm

sliptonic wrote:
Thu Oct 12, 2017 9:12 pm
roivai wrote:
Thu Oct 12, 2017 3:22 pm

So what I suggest is that the automated search of the holes is removed from the opExecute and moved to a separate function which is then called when the operation is initially generated or the Reset button is pressed. Does that sound reasonable @mlampert, @sliptonic?
Sounds reasonable to me.
Hi. I finally had time to look at this a bit. I did exactly what I wrote above. After a very quick test it seems to work. I have it here: https://github.com/pekkaroi/FreeCAD/com ... 7c30d38a58

The structure of the Drilling/Helix had changed so much since I last touched it that I would really appreciate if @sliptonic or @mlampert etc. checked it out at least briefly before making a PR..
mlampert
Posts: 1379
Joined: Fri Sep 16, 2016 9:28 pm

Re: Couple of potential bugs...

Postby mlampert » Fri Nov 17, 2017 7:14 pm

Please go for it - looks like a great improvement.
GeneFC
Posts: 1025
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: Couple of potential bugs...

Postby GeneFC » Fri Nov 17, 2017 9:58 pm

It would be useful (to me at least) if there was an option to avoid searching for holes entirely. I often find the need to delete many extraneous holes that should not be included in the current drill or helix operation.

Automation is great if there are hundreds of identical holes, but if only one or a small number is desired out of the entire universe of holes then manual selection is a lot easier.

Gene
mlampert
Posts: 1379
Joined: Fri Sep 16, 2016 9:28 pm

Re: Couple of potential bugs...

Postby mlampert » Sat Nov 18, 2017 6:02 am

Would a "Clear" button do the trick?

IIRC the plan was to have filtering options for the hole finder but nobody ever figured out how that should/could work - UX is a tricky beast.
herbk
Posts: 1572
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: Couple of potential bugs...

Postby herbk » Sat Nov 18, 2017 8:18 am

GeneFC wrote:
Fri Nov 17, 2017 9:58 pm
It would be useful (to me at least) if there was an option to avoid searching for holes entirely. I often find the need to delete many extraneous holes that should not be included in the current drill or helix operation.

Automation is great if there are hundreds of identical holes, but if only one or a small number is desired out of the entire universe of holes then manual selection is a lot easier.

Gene
+1 :)

@mlampert: Why not e checkbutton "selct all holes" ?

For me it is common to have holes to make with different tools on a workpeace.
Gruß Herbert
User avatar
JoshM
Posts: 419
Joined: Thu Oct 05, 2017 5:34 pm
Location: New Hampshire

Re: Couple of potential bugs...

Postby JoshM » Sat Nov 18, 2017 12:22 pm

I like Herb's suggestion for Select-All button. Is there a way to manually reorder the Drill/Helix Operation?
GeneFC
Posts: 1025
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: Couple of potential bugs...

Postby GeneFC » Sat Nov 18, 2017 3:47 pm

mlampert wrote:
Sat Nov 18, 2017 6:02 am
Would a "Clear" button do the trick?
Anything would be fine.

This is very low priority for me. I only mentioned it because it appeared some changes are already underway.

Gene
roivai
Posts: 117
Joined: Thu Feb 02, 2017 5:29 pm
Location: Oulu, Finland

Re: Couple of potential bugs...

Postby roivai » Sun Nov 19, 2017 8:36 am

Hi.

You can select all by clicking here:
2017-11-19-103029_1920x1080_scrot.png
2017-11-19-103029_1920x1080_scrot.png (17.76 KiB) Viewed 408 times
It kind of serves for the purpose of Select All -button, so adding another might not be that useful. Of course that functionality is not very obvious, so some hint/documentation would be good.

I'll make some finishing touches and try to create a PR today for the change I made.

As quite many people seem to find the auto-search functionality unsuitable for their work, it could be considered that it would not be run when the job is created and only run when a button is clicked. That button needs to be called something else than Reset then. :) But I'll keep it as such for now. (And I almost always find that function very useful so my decision is biased)
herbk
Posts: 1572
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: Couple of potential bugs...

Postby herbk » Sun Nov 19, 2017 9:44 am

Hi roivai,
it could be considered that it would not be run when the job is created and only run when a button is clicked.
jep, exactli like that... :D :D
Gruß Herbert