Anyone interested in V-Engraving?

Here's the place for discussion related to CAM/CNC and the development of the Path module.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: Anyone interested in V-Engraving?

Post by freman »

I had similar troubles on my python 2.7 system. I did not have time to go down a dependency rabbithole

The results look very interesting, I decided to wait until it matures a bit.
DomCa
Posts: 33
Joined: Tue Nov 05, 2019 9:00 pm

Re: Anyone interested in V-Engraving?

Post by DomCa »

Hi!

I am really interested in v carving!!

Any news on this?
Would I still have to compile freecad to try this?

Cheers
Domca
charles1954
Posts: 19
Joined: Wed Oct 16, 2019 4:10 am

Renamed Post

Post by charles1954 »

Yes, actually I am very interested. I have just spent 4 days trying to get an svg image loaded, placed where I want it, and gettting freecad to produce G code I can engrave with.Once I got past the issues with importing the file I thought the rest would be fairly straight forward, take the merged sketch, map it to the face of my stock, extrude the sketch into the base stock, and perform an engrave operation on the extrusion. Boy was I wrong! The engrave wouldn't let me select any part of the extrusion. In fact only the profile edge would let me select. Several times freecad locked up while trying to ad all the selected edges into the operation. I thought if I made it into smaller operations it might help. I broke the shape into 5 different operations. The world seemed happy, no sign of errors. I post processed the file and glanced through it. All seemed in order. I always load my g code into NC_CORRECTOR, mainly to check min and max travel to make sure I am not out of bounds on my stock. In looking through the g code a little closer I noticed that some of the operations had no g code in them. I was quite puzzled why it would work for some operations, but not others. By some stroke of luck as I passed my cursor over one of the operations a tool tip popped up indicating an error(unfortunately I didn't write it down). I searched the error on the wiki and found some information on the problem. The wiki gave several suggestions on correcting the problem. The error had to do with the path not being fully closed.
1. I deleted everything in the document that had to do with the graphic and started fresh.
2. I reopened the svg in Inkscape ad performed an object to path.
3. I also performed several simplifies on the object to reduce its complexity.
4. I once again imported the image into freecad as an svg. This created several path objects.
5. I used the part workbench to refine the path objects.
6. I went back to the draft workbench and with all the refined paths selected did a draft to sketch operation.
7. This produced several sketches.
8. From the sketcher workbench I merged all of these sketches into one.
9. I extruded this new sketch by 10 mm with reverse checked.
10. I selected profile edges and began selecting all the edges and adding them to the operation.
11. Once they were all added I applied the changes and exited the operation with OK.
12. This was the first time that I saw the path lines produced on the drawing.
13. I ran the post processor.
14. I examined the g code and was very pleased.
15. I made a few minor corrections to the Job Path Object and the Profile Edges operation.
16. I ran the post processor again. The changes were reflected and the g code looked ready.
17. I opened the g code in NC_Corrector and check all the Min's and Max's and the overall job parameters. It looked very intense, but very clean g code.
18. I loaded the g code file into UGS Platform and sent it to the engraver
19. 5 minutes later I had the engraving I had worked so hard to get.
20. I wasn't happy with the depth so I made adjustments to the Profile Edges operation.
21. I ran that through the post processor, saved it as the second pass g code file
22. Sent it straight to the engraver and it produced exactly what I wanted.
Now after all this rambling what I would like is to be told, what I did right, what I did wrong, what did I do that didn't make a difference. I suspect that at least for this machine these are the kinds of jobs that I will be doing. If I know the right steps I should be able to make the workflow go much smother. Some definitions of the various operations, what they do, what type of objects they will work on would be helpful. It was just by luck that I saw that error. If there is an error in an operation it should be obvious that there is an error, and it should be easy to find out what it is. Then its a simple case of searching the wiki or net for ways to fix it. I believe that most issues are going to come from leaky graphics. The kind where you try and paint bucket a closed area and the whole page turns that color. A function to repair those kind of errors would be very useful. Most of the time the repair won't even be noticeable. If it is to noticeable then you can take the original graphic back to your image processing software and fix the leak to your liking. The important thing would be to identify where the problem with the graphic is.
Thank you for listening to me ramble. I hope my suggestions are beneficial.

Charles

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.16131 (Git)
Build type: Release
Branch: releases/FreeCAD-0-18
Hash: 3129ae4296e40ed20e7b3d460b86e6969acbe1c3
Python version: 3.6.6
Qt version: 5.6.2
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/UnitedStates (en_US)
Last edited by charles1954 on Tue Dec 03, 2019 8:04 am, edited 1 time in total.
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: Anyone interested in V-Engraving?

Post by freman »

Thanks for that detailed run down. I went through the same pain about 6mo ago trying to convert a simple line profile into an engraving. After about a week of frustration and effort doing many of the same things, I gave it up as a waste of time.

Having read your description of the 22 hoops you had to jump through, it does not fill me with renewed hope and desire to attempt engraving more complex that text shapeStrings ( which also recently got broken and is under repair ).
chrisb
Veteran
Posts: 54177
Joined: Tue Mar 17, 2015 9:14 am

Re: Anyone interested in V-Engraving?

Post by chrisb »

charles1954 wrote: Fri Nov 22, 2019 11:13 pm Yes, actually I am very interested. I have just spent 4 days trying to get an svg image loaded, placed where I want it, and gettting freecad to produce G code I can engrave with.
Next time don't hesitate to ask earlier. Most of the issues you faced were coming from being not familiar with FreeCAD modeling in general rather than from some Path operations.
The engrave wouldn't let me select any part of the extrusion. In fact only the profile edge would let me select.
This is indeed a reoccurring matter of confusion. From a technical point of view it is easy to see, that a profile operation without radius compensation generates GCodes just along that path, and from user's perspective it is easy to understand that engraving a ShapeString takes the whole ShapeString; but it seems a bit cumbersome that these are kind of exclusive. I haven't made up my mind how to improve this, perhaps by giving a better name to "Engrave", such as "Engrave 2D"? Opinions

If there is an error in an operation it should be obvious that there is an error, and it should be easy to find out what it is.
This is included in 0.19. If there is an error, recompute expands the tree and shows the error.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
charles1954
Posts: 19
Joined: Wed Oct 16, 2019 4:10 am

Some ideas for the path workbench

Post by charles1954 »

I think what would be helpful to all is a description of each operation. It should include what type of surfaces can be added as base geometry. What sort of tool it expects. The parameters for the tools that will perform a successful operation. For instance I have a pocket operation that goes all the way through the stock. It is a 1/4 inch pocket, with 1/4 inch radii at each end. I should be able to accomplish this with several passes across the same path. Is FreeCad going to produce an error if I set the step over value to zero. It is also confusing to use the term 'profile', you can profile a vertical surface or a horizontal surface. Again 'facing' can be performed likewise. I know someone will popup and say if you don't know what your talking about, maybe you shouldn't be playing with machinery. I'm just putting my two cents out there for what its worth. No specific software issues in this post so I wont make it any longer with my version info. Well download is compleate, I guess its time to try v0.19.

Charles
chrisb
Veteran
Posts: 54177
Joined: Tue Mar 17, 2015 9:14 am

Re: Anyone interested in V-Engraving?

Post by chrisb »

As someone new to Path workbench you see the missing docs quite clearly. So you are very welcome to improve the docs, see https://forum.freecadweb.org/viewtopic.php?f=21&t=6830.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
charles1954
Posts: 19
Joined: Wed Oct 16, 2019 4:10 am

Re: More questions about path workbench

Post by charles1954 »

<t>I had a brilliantly written reply last night and lost it somehow. So I will cut right to the chase.Until I have a lot more successful hours under my belt I don't even feel remotely qualified to begin telling people how to use the program. Moving on.<br/>
<br/>
I have been using V0.19 for a couple of days now. I finally found the selections for the ops defaults tab of path job edit. That could stand a little work as it is not intuitive at all. Having found that I assume that the setup sheet works similarly. This may solve a lot of the issues I am having with settings. It seems as though the settings are getting data from multiple sources. When adjusting parameters either in the operation edit box or in the data view the values don.t always update. After you have closed the edit box or moved on to another item in the data view you can come back to previously modified parameters and they will show the new values.<br/>
<br/>
I am having trouble setting up a path drilling operation. The report view shows an error that there is no object "stock". This makes me wonder if I am setting the job up properly in the first place. I am working on some simple hold downs for the router. Flat 1/8" aluminum 1" wide. All I want to do is put a 1/4" radius on each corner. I want to mill a 1/4" slot down the middle. The slot is aprox 10mm from the left end. I am using a 1/4" end mill for both the radii and the slot. I want to at least center drill the position of a hole centered between the right end of the stock and the slot.<br/>
<br/>
To set this up I began in the part design workbench and created a body. I added a sketch to the body, which was the base stock with the corners radius-ed. I closed that sketch and padded it to the thickness of the stock. I added another sketch to the top face of the pad. This sketch outlined the parameters for the slot.</t>I added one more sketch to the top face of the pad. This completed all the features for this project.

I opened the path workbench and created a new path job. As the stock type I chose "Use existing solid" and selected "Body" from the choices offered. I set the "Default values" to a start depth of 4 mm to give myself a small margin of saftey. The final depth was set to 0.0 mm. A step down of 0.001 mm. This is not a very powerful motor so I didn't want to take to big a bite until I saw it run one part. I set both the clearance and safe heights to 20 mm just to be sure every thing cleared. Offsets were set to 0.00 mm. Coolant mode of none. I opened the project to make sure I was using the correct terminology, and see that these values have reverted back to their calculated values.

There is no sense in giving you all the particulars as they are in the attached file. I mainly want to know if I performed the right steps, in the proper order. I noticed in the report view that I got the same error as last night

1e-07 <App> Document.cpp(3462): Failed to recompute Router_Hold_Downs_002#Drilling: 'FeaturePython' object has no attribute 'stock'

I am going to go check the docs and look for an answer to my next question. If I don't find it I will be back to ask.

Charles

OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.18811 (Git)
Build type: Release
Branch: master
Hash: b809867021deb37be1039dab37b9fe1cafab254e
Python version: 3.7.3
Qt version: 5.12.1
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United States (en_US)
Attachments
Router_Hold_Downs2.7z
(179.5 KiB) Downloaded 62 times
User avatar
PapaAtHome
Posts: 55
Joined: Mon Dec 31, 2018 6:45 pm

Re: Anyone interested in V-Engraving?

Post by PapaAtHome »

Any progress?

Last message is from december 04, 2019.
I tried if the option is available in 0.19 but it is not.
What is the progress on the openvoronoi libraries?

I realy would like to use it, any ideas on when it will be available for mere mortals or is this a dead end for the moment?

Kind regards.
Kind regards, Andre.
janc.linders
Posts: 52
Joined: Sat Jul 25, 2020 2:36 pm

Re: Anyone interested in V-Engraving?

Post by janc.linders »

Hi sliptonic,

I was trying the V-carve option in the Path WB today but ran into the error below.
Guess I'm doing something wrong but not sure where to look..
Is it the dependancy with openvoronoi, ?
OS: Ubuntu 20.10 (LXQt/lxqt)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23107 (Git)
Build type: Unknown
Branch: master
Hash: 27130f779a0b1817e830516249186551945f1694
Python version: 3.8.6
Qt version: 5.14.2
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United States (en_US)
I'm getting a error in the log.

Code: Select all

19:09:57  Vcarve Select Mode
19:10:03  Free Select
19:10:03  PathVcarve.ERROR: Unknown C++ exception
19:10:03  Traceback (most recent call last):
19:10:03    File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 316, in opExecute
    self.buildPathMedial(obj, modelshape.Faces)
19:10:03    File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 279, in buildPathMedial
    pWire = self._getPartEdges(obj, w)
19:10:03    File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 218, in _getPartEdges
    edges.append(self._getPartEdge(e, zStart, zStop, zScale))
19:10:03    File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 206, in _getPartEdge
    return edge.toShape(self._calculate_depth(dist[0], zStart, zStop, zScale), self._calculate_depth(dist[1], zStart, zStop, zScale))
19:10:03  Base.FreeCADError: Unknown C++ exception
19:10:03  PathVcarve.ERROR: The Job Base Object has no engraveable element. Engraving operation will produce no output.
19:10:03  Traceback (most recent call last):
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathUtils.py", line 60, in new_function
    res = function(*args, **kwargs)
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathOp.py", line 525, in execute
    result = self.opExecute(obj)  # pylint: disable=assignment-from-no-return
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 324, in opExecute
    raise e
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 316, in opExecute
    self.buildPathMedial(obj, modelshape.Faces)
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 279, in buildPathMedial
    pWire = self._getPartEdges(obj, w)
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 218, in _getPartEdges
    edges.append(self._getPartEdge(e, zStart, zStop, zScale))
  File "/home/admin/Documents/freecad-build/Mod/Path/PathScripts/PathVcarve.py", line 206, in _getPartEdge
    return edge.toShape(self._calculate_depth(dist[0], zStart, zStop, zScale), self._calculate_depth(dist[1], zStart, zStop, zScale))
<class 'Base.FreeCADError'>: Unknown C++ exception
Post Reply