Thanks for this video. You briefly mentioned an interesting process for machining a 'flattened' model in the XPS sheets then pressing them to get the final rocker...would love to hear more about this (the physical process) in detail as I have a cnc with limited Z travel(probotix nebula) and this sounds like it might allow me to machine one without doing multiple layer slicing/rejoining etc
Hi, I have found that a long cylindrical section on your cutter STL leads to potential unstable tool paths when cutting points where the tangent is parallel to the tool axis (ie it can pick any point on the cylinder to cut the point of interest) I use a short vertical section of 0.5mm to control this. Similarly the flat section on the bottom of the bullnose can lead to unstable paths - best to remove that face like the provided mesh IMO. Also if you want to save your board in a particular position try exporting it as a STEP file once you have positioned it. You can also do this for your blanks which could save you some time if you are using the same ones each time.
Hi Peter, thanks for the input, I'm gonna try that and see what happens! At the moment I am having some troubles getting enough machine passes over the flat sections of the board, It continally leaves stock in the center, no matter what I try in shapebot.properties. It almost appears as if the board is being cut from the side. I have notices that some cutters give radically different toolpaths, but I hope that I'll see an improvement. Nice tip with the STEP files. However, could you manage to import your step files successfully into another cad program?
The surface coordinate system seems to be related to curvature (not that I completely understand it), so you get bigger steps on the flat sections. I have combated this by increasing the number of width steps, and jumping 2 steps after a certain distance towards the rail. It was the only way I could see to increase the density in the centre without having to have a million cuts over near the rail.
Regarding opening the step file in another program - the answer is yes/no/maybe. Its definitely not a properly formatted STEP and I did look at one stage for the details of the STEP file format, but I couldn't find them readily available on the internet for free so i gave up. I have had success and failure with Autodesk Inventor - I have a feeling that this was more successful with closed STEP models. I also have used a free program from PTC called CREO Elements, which seemed to be able to better deal with the corrupt file format, but not 100% successful. I have a feeling you'll have better luck with STL, but then you get a tesselated mesh.
Hi Peter, I noticed the same with the flat sections, anything flat turns out a bit of a nightmare. I did some experimenting with the cutters. What I noticed was that a "long shaft closed bottom" cutter that I used has more even cuts down the center, but the rail cuts tend to be a jagged along the z-axis. With a "short shaft closed bottom" cutter, the rails are cut nice and horizontally but it steps a bit wider away from the stringer on those passes, bringing us back to the original problem. A "short shaft open bottom" cutter moves the passes even further away from the stringer. My verdict is that It indeed helps to have a shorter shaft for the outline, bit it does SOMEHOW affect the passes in the center of the board too. There does not appear any advantage to leaving the bottom of the cutter open. Regarding the Step files, it does look like a bit of a jagged mess in a Step file viewer. Peter, could you please shed some more light on your solution by jumping two steps? My next test is to see if the flatter section passes become more if design it with a more mildly wobbbly surface. Also, approximating by bezier curves instead of patches seem to improve the passes tremendously, but you do lose a bit of your design's shape. Thanks for helping out!
The script is offsetting the tool (in 3D) so that the tangent of the bullnose is cutting the point on the path on the surface. Because your deck is convex, the cutter always gets offset towards the rail. If you want to see the path before the cutter is offset, just modify the script to comment out those commands (p=cutter.calcOffset(p,n) --> #p=cutter.calcOffset(p,n)). The shape of your blanks will make it worse. The offsetting is based on the tool STL, so it will be effected by the tool mesh (e.g. its dependant on the tool OD, the fillet radius etc). This is why you see different results with different tools - your tool mesh should match the tool you use. If you used a ball mill tool (spherical tip) if would be offset less than a bullnose tool again. If you think about trying to intersect a given tool shape with a point on a complex curved surface it make sense. I haven't used the default script much, but I think the answer you are looking for lies in the following line which sets the width of the first cut: t=(deck.getMaxT()-deck.getMinT())/2-00.1 i.e. the centre of the board minus some nominal width - change 0.1 to 0.01 and you will be closer to the centre of the board on the first deck cut. If you were still interested - two step jumping should be easy - just add the following lines to your script where it is generating the deck tool path (new lines commented): deck_cut_number = 1 # deck cut index deck_cut_width_doubled = False # Boolean to avoid increasing the step width more than once while (t>t_outline): while (sdeck.getMinS()): p=deck.getPoint(s,t) n=deck.getNormal(s,t) p=cutter.calcOffset(p,n) deck_cut.append(p) s=s-length_step t=t-width_step deck_cut_number = deck_cut_number + 1 # deck cut index increment if ((deck_cut_number > 5) and not deck_cut_width_doubled): # modify change point to suit width_step = width_step * 2 # double step width Note that the indents are important in python. Increase the number of g.deckCuts or change the step width multiplier to get what you are looking for. Have fun.
Hi, I am using my own cutter. It’s a ball nose , 22mm dia. and about 30mm in height. I used solidworks to create a STL model ( ascii format) and made sure the xyz orietation is correct. Then modified shapebot.properties to enable STL cutter : ” g.toolName = saburrcutter.STL ” Then modified shapebot3bottom.py and shapebot3deck.py to enable STL cutter: ” # Create a cutter #cutter=boardcam.cutters.FlatCutter() #cutter.setRadius(1.5) cutter=boardcam.cutters.STLCutter() cutter.init(machine.toolName) cutter.scale(1.0,1.0,1.0) ” I made the first cut on the deck then flipped the board and cut the bottom. the deck side outline was cut too narrow and the bottom was OK so there was a step on the rail. The offset is exactly the radius of my cutter, this educates me that boardcad did not take my cutter diameter into considaration and generated the deck gcode as if the cutter was 0 diameter. the bottom was ok…. I dont know why the difference and how to solve it. I would greatly appriciate any help. THANKS! Lee
SOLVED .I decided to follow your video and design my cutter in fusion 360 and check it in meshmixer I don't know why solidworks creates a problem and autodesk is fine but now it all works. Thanks again for the Video. Lee
Hi Lee! Im glad my video could help you! Yes, once again like you said, the ASCII format is important and then the XYZ orientation, along with the correct cutter definitions in shapebot3deck/bottom.py HOWEVER Regarding the orientation and the cutter shape, The cutter's lowest point(XYZ) must be identical to the lowest point of one of the standard stl cutters, otherwise it will cut away too much or too little. And shape, you could play with the wall height of your stl, a shorter wall often gives much cleaner gcode, but it does vary sometimes. Best Regards Cassidy
Well, I think that without your video I couldn't really finalize my machine. BIG THANKS! Still wondering why the "Solidworks" cutter which showed in meshmixer at the correct orientation didn't work. ?Do you or any of the other participants in this thread have facebook? I opened a facebook group " Surfboard CNC " where we can share our machines, designs, and generally help each other , coordinate group buying of tools etc. I'd love to see you guys there. Lee facebook.com/groups/355917358123897/ www.Leejordan.co.il
Found that when I try to export a completed board to a STEP, DXF or STL file for use in CorelDraw or Fusion360 the screen returns the message "Error when writing ### filejava.lang.NullPointerException". The file created have nothing in them. Does anyone what the settings need to be to successfully export such file.
Hi Rick, sounds like something I have come across before. Please note though that the step files are not reliable to my experience. I do not have my boardcad computer open right now. My best suggestion right now would be to make sure you follow the steps @3:50 to "create board from bezier patches" and then "render to nurbs model". This might help you get an STL at least.
Hi! It should work if you set up your machine parameters and make a board that fits within your machine constraints. Also consider adjusting the start and finish g-code that is specific to your machine.
Hi, nice video,I have a problem with the last version when click on rendered 3d the software close and I loose my job and cant see the board 3d, java version compilación 1.8.0_131-b11) any help I will appreciate thanks
Very useful video!!thanks a lo!^^ someone knows if there is a way to "place board" on the coordinate one wants?? It seems that when I create a G-Code file it doesn't follow the coordinates set for the machine in "machine.supportEndX" Y ad Z.....any Ideas? Greetings form Europe!
Thanks Cassey for answering :). I really like boardcad and is currently the only free option for surfboard design. If you want we could talk by email perhaps makes it easier. ...when I generate the code it starts at the 0.0 coordinate from boardcad BUT not at x27y563 which is the 0 coordinate for the machine I am using...so it could be that the program is not reading my input file correctly....Alternatively, I thought I could modify the coordinate where the board is placed to match my x27y563 and start writing the code from there...
juan mancilla you need to model it. its quick and easy in shape3d, just save as-> *.s3d instead of .s3dx. if you buy a pre shaped blank, they might give you a file if you ask. If you're just learning, and not cutting, you can generate g-code without using or importing a blank(so skip the set as blank part)
bummer developing is ceased... Lots to be polished still... This project is a clash of preferences... Jonas and his Nurbs... what a waste... Who can ever design a board with the many nodes? Bezier Patches.. ok.. works kind of but why not Give up on one of the fronts and go either full Beziers or Nurbs? So it was doomed from the start. Nice video... Please explain exactly what you need from s3dx i have installers from.. "-cannot export to s3d." explain..
Hi Strider A, I hope there are some new developments coming soon, it would be sad to see it run dead! Thanks for reaching out. There was a time when the free version of shape 3d, could only save as a s3dx file. Boardcad cant open that format. After double checking in shape3d, both the current free versions of shape 3d v8 and shape 3d X V9, can save as an s3d. So apologies with that, I have corrected the video with a note.
Hi, if you still need the old version of 3D shape lite X, I can send it to you without problem. Regarding 4 or 5 axis machining, are you working on the subject? Because the deck file is not good. I want to thank you sincerely for your help
Good job bro!
Keep the flame burning!!
Boardcad should never die and so should home brewed cnc machines.
Thanks for this video. You briefly mentioned an interesting process for machining a 'flattened' model in the XPS sheets then pressing them to get the final rocker...would love to hear more about this (the physical process) in detail as I have a cnc with limited Z travel(probotix nebula) and this sounds like it might allow me to machine one without doing multiple layer slicing/rejoining etc
Hi, I have found that a long cylindrical section on your cutter STL leads to potential unstable tool paths when cutting points where the tangent is parallel to the tool axis (ie it can pick any point on the cylinder to cut the point of interest) I use a short vertical section of 0.5mm to control this. Similarly the flat section on the bottom of the bullnose can lead to unstable paths - best to remove that face like the provided mesh IMO.
Also if you want to save your board in a particular position try exporting it as a STEP file once you have positioned it. You can also do this for your blanks which could save you some time if you are using the same ones each time.
Hi Peter, thanks for the input, I'm gonna try that and see what happens! At the moment I am having some troubles getting enough machine passes over the flat sections of the board, It continally leaves stock in the center, no matter what I try in shapebot.properties. It almost appears as if the board is being cut from the side. I have notices that some cutters give radically different toolpaths, but I hope that I'll see an improvement.
Nice tip with the STEP files. However, could you manage to import your step files successfully into another cad program?
The surface coordinate system seems to be related to curvature (not that I completely understand it), so you get bigger steps on the flat sections. I have combated this by increasing the number of width steps, and jumping 2 steps after a certain distance towards the rail. It was the only way I could see to increase the density in the centre without having to have a million cuts over near the rail.
Regarding opening the step file in another program - the answer is yes/no/maybe. Its definitely not a properly formatted STEP and I did look at one stage for the details of the STEP file format, but I couldn't find them readily available on the internet for free so i gave up. I have had success and failure with Autodesk Inventor - I have a feeling that this was more successful with closed STEP models. I also have used a free program from PTC called CREO Elements, which seemed to be able to better deal with the corrupt file format, but not 100% successful. I have a feeling you'll have better luck with STL, but then you get a tesselated mesh.
Hi Peter, I noticed the same with the flat sections, anything flat turns out a bit of a nightmare.
I did some experimenting with the cutters. What I noticed was that a "long shaft closed bottom" cutter that I used has more even cuts down the center, but the rail cuts tend to be a jagged along the z-axis. With a "short shaft closed bottom" cutter, the rails are cut nice and horizontally but it steps a bit wider away from the stringer on those passes, bringing us back to the original problem. A "short shaft open bottom" cutter moves the passes even further away from the stringer. My verdict is that It indeed helps to have a shorter shaft for the outline, bit it does SOMEHOW affect the passes in the center of the board too. There does not appear any advantage to leaving the bottom of the cutter open.
Regarding the Step files, it does look like a bit of a jagged mess in a Step file viewer.
Peter, could you please shed some more light on your solution by jumping two steps? My next test is to see if the flatter section passes become more if design it with a more mildly wobbbly surface. Also, approximating by bezier curves instead of patches seem to improve the passes tremendously, but you do lose a bit of your design's shape.
Thanks for helping out!
The script is offsetting the tool (in 3D) so that the tangent of the bullnose is cutting the point on the path on the surface. Because your deck is convex, the cutter always gets offset towards the rail.
If you want to see the path before the cutter is offset, just modify the script to comment out those commands (p=cutter.calcOffset(p,n) --> #p=cutter.calcOffset(p,n)).
The shape of your blanks will make it worse.
The offsetting is based on the tool STL, so it will be effected by the tool mesh (e.g. its dependant on the tool OD, the fillet radius etc). This is why you see different results with different tools - your tool mesh should match the tool you use. If you used a ball mill tool (spherical tip) if would be offset less than a bullnose tool again. If you think about trying to intersect a given tool shape with a point on a complex curved surface it make sense.
I haven't used the default script much, but I think the answer you are looking for lies in the following line which sets the width of the first cut:
t=(deck.getMaxT()-deck.getMinT())/2-00.1
i.e. the centre of the board minus some nominal width - change 0.1 to 0.01 and you will be closer to the centre of the board on the first deck cut.
If you were still interested - two step jumping should be easy - just add the following lines to your script where it is generating the deck tool path (new lines commented):
deck_cut_number = 1 # deck cut index
deck_cut_width_doubled = False # Boolean to avoid increasing the step width more than once
while (t>t_outline):
while (sdeck.getMinS()):
p=deck.getPoint(s,t)
n=deck.getNormal(s,t)
p=cutter.calcOffset(p,n)
deck_cut.append(p)
s=s-length_step
t=t-width_step
deck_cut_number = deck_cut_number + 1 # deck cut index increment
if ((deck_cut_number > 5) and not deck_cut_width_doubled): # modify change point to suit
width_step = width_step * 2 # double step width
Note that the indents are important in python.
Increase the number of g.deckCuts or change the step width multiplier to get what you are looking for.
Have fun.
hahaha Cassidy Tom Heres here, so funny I find you doing this video. You should edit the audio almost can't here you, but good video :)
Hey Tom! small world, we meet again! This video is a loooong time ago. I have some updates i should probably publish instead of editing the video.
Hi,
I am using my own cutter. It’s a ball nose , 22mm dia. and about 30mm in height.
I used solidworks to create a STL model ( ascii format) and made sure the xyz orietation is correct.
Then modified shapebot.properties to enable STL cutter :
” g.toolName = saburrcutter.STL ”
Then modified shapebot3bottom.py and shapebot3deck.py to enable STL cutter:
”
# Create a cutter
#cutter=boardcam.cutters.FlatCutter()
#cutter.setRadius(1.5)
cutter=boardcam.cutters.STLCutter()
cutter.init(machine.toolName)
cutter.scale(1.0,1.0,1.0)
”
I made the first cut on the deck then flipped the board and cut the bottom.
the deck side outline was cut too narrow and the bottom was OK so there was a step on the rail.
The offset is exactly the radius of my cutter, this educates me that boardcad did not take my cutter diameter into considaration and generated the deck gcode as if the cutter was 0 diameter.
the bottom was ok…. I dont know why the difference and how to solve it.
I would greatly appriciate any help.
THANKS!
Lee
SOLVED
.I decided to follow your video and design my cutter in fusion 360 and check it in meshmixer
I don't know why solidworks creates a problem and autodesk is fine but now it all works.
Thanks again for the Video.
Lee
Hi Lee! Im glad my video could help you!
Yes, once again like you said, the ASCII format is important and then the XYZ orientation, along with the correct cutter definitions in shapebot3deck/bottom.py
HOWEVER
Regarding the orientation and the cutter shape,
The cutter's lowest point(XYZ) must be identical to the lowest point of one of the standard stl cutters, otherwise it will cut away too much or too little.
And shape, you could play with the wall height of your stl, a shorter wall often gives much cleaner gcode, but it does vary sometimes.
Best Regards
Cassidy
Well, I think that without your video I couldn't really finalize my machine. BIG THANKS!
Still wondering why the "Solidworks" cutter which showed in meshmixer at the correct orientation didn't work.
?Do you or any of the other participants in this thread have facebook?
I opened a facebook group " Surfboard CNC " where we can share our machines, designs, and generally help each other , coordinate group buying of tools etc.
I'd love to see you guys there.
Lee
facebook.com/groups/355917358123897/
www.Leejordan.co.il
Found that when I try to export a completed board to a STEP, DXF or STL file for use in CorelDraw or Fusion360 the screen returns the message "Error when writing ### filejava.lang.NullPointerException". The file created have nothing in them. Does anyone what the settings need to be to successfully export such file.
Hi Rick, sounds like something I have come across before. Please note though that the step files are not reliable to my experience. I do not have my boardcad computer open right now. My best suggestion right now would be to make sure you follow the steps @3:50 to "create board from bezier patches" and then "render to nurbs model". This might help you get an STL at least.
Hi Cassidy . Well this work on any Cnc machine or just a shopbot ? I have a thermwood shop 40. Cnc. We make cabinets with it.
Hi! It should work if you set up your machine parameters and make a board that fits within your machine constraints.
Also consider adjusting the start and finish g-code that is specific to your machine.
Hi,
nice video,I have a problem with the last version when click on rendered 3d the software close and I loose my job and cant see the board 3d, java version compilación 1.8.0_131-b11) any help I will appreciate thanks
themaxdog did you go to 3d model ->create 3d from bezier patches before rendering?
yes I did, anyway I solve the problem like this, I install Akusahper and load my boards on that, and I can see the 3d fine.
You need video card driver to solve.
Very useful video!!thanks a lo!^^
someone knows if there is a way to "place board" on the coordinate one wants?? It seems that when I create a G-Code file it doesn't follow the coordinates set for the machine in "machine.supportEndX" Y ad Z.....any Ideas?
Greetings form Europe!
Hi!
I am sorry I have not been too active with Boardcad Lately.
Can you give me more details as to why you say it does not place the board correctly?
Thanks Cassey for answering :). I really like boardcad and is currently the only free option for surfboard design. If you want we could talk by email perhaps makes it easier.
...when I generate the code it starts at the 0.0 coordinate from boardcad BUT not at x27y563 which is the 0 coordinate for the machine I am using...so it could be that the program is not reading my input file correctly....Alternatively, I thought I could modify the coordinate where the board is placed to match my x27y563 and start writing the code from there...
@@guipuinam370 Hi! In the shapebot.properties file you can change the parameters to match your machine here:
machine.supportEndX = 1192
machine.supportEndY = -725
machine.supportEndZ = 270
machine.support1.distance = 1612
machine.support1.widthBetweenSupports = 200
machine.support1.height = 270
machine.support1.radius = 35
machine.support2.distance = 2654
machine.support2.widthBetweenSupports = 200
machine.support2.height = 270
machine.support2.radius = 35
machine.axisForBoardcadX = X
machine.axisForBoardcadY = -Z
machine.axisForBoardcadZ = Y
This works with disk cutter?
juan mancilla I have not tested it but the process should be the same, just make sure your stl cutter has the same geometry as the supplied cutters
I again, what is that file 2m rectangular blank.brd ? is the foam ?
Yes its the board shape before cutting. In other words, a board file of the shape of the block of Foam I used to cut my board out of.
that file is included when I buy the block foam? or I need to model this ? can you share your file for practice ?
juan mancilla you need to model it. its quick and easy in shape3d, just save as-> *.s3d instead of .s3dx. if you buy a pre shaped blank, they might give you a file if you ask. If you're just learning, and not cutting, you can generate g-code without using or importing a blank(so skip the set as blank part)
Make it wooden with the help of the Woodglut instructions.
bummer developing is ceased...
Lots to be polished still...
This project is a clash of preferences... Jonas and his Nurbs... what a waste... Who can ever design a board with the many nodes? Bezier Patches.. ok.. works kind of but why not Give up on one of the fronts and go either full Beziers or Nurbs? So it was doomed from the start.
Nice video...
Please explain exactly what you need from s3dx i have installers from.. "-cannot export to s3d." explain..
Hi Strider A,
I hope there are some new developments coming soon, it would be sad to see it run dead!
Thanks for reaching out.
There was a time when the free version of shape 3d, could only save as a s3dx file. Boardcad cant open that format.
After double checking in shape3d, both the current free versions of shape 3d v8 and shape 3d X V9, can save as an s3d.
So apologies with that, I have corrected the video with a note.
Hi, if you still need the old version of 3D shape lite X, I can send it to you without problem.
Regarding 4 or 5 axis machining, are you working on the subject? Because the deck file is not good.
I want to thank you sincerely for your help
Gerald Beraud could you send me a copy? I’m unable to download it from the internet. Thanks