Skip to content

7. Computer-controlled machnining

At the begining, we have done the group assignement here. My part is the Angles, drilling, engraving, 2D embedding part and the toolpath part.

Hero shot

1. Learn to use FreeCad

1.1. Creating a simple shape

To start with, I’ll create a simple shape that will allow me to test the CNC. For my first shape, I make it in a single plane. I extrude it in 18mm, the thickness of our plywood sheet (PLY).

1.2. Preparing the g code

For everything else, I follow this youtube video and a course with Nicolas Kaufmann. In FreeCad, I go to the path section and select path_job.

Then I set the X and Y extension to 5mm, which will make it easier to see the contour later. In the tool section, I add a cutter (details in the cutter section) and set the parameters. The parameters can be found on the manufacturer’s page. I use refactored_linuxCNC as the processor, and save the file by adding its name + .tap. For me, it’s 750/s, 6mm diameter and 13260 rpm and number 7. I also use the excel sheet this to calculate the rotation speed.

I put ok and now my object has a new outline.

To make the outer contour, I click on profile, check the deep parameters and press ok. New lines have appeared, this is the cutting path.

To see if the result is what we want, I go to the simulator view and run the simulation. The path is correct, so we can continue.

In the current state, when the parts are detached, they can move freely, which is dangerous because they can be thrown around. To avoid this, we’re going to add the dress-up tag. In the path we are creating, right-click -> Tag dress-up. A new window will open and you can set the number of steles and generate your own (fill in the number and click replace all). Define the correct height, length and position. I can add a point by clicking directly on the green path. Click on ok and it changes a bit.

For the holes, I do the same thing, but adjust the extra offset by the length of my drill. To make the dogbones I click on path -> Finishes -> dogbones. At the end I can generate my g-code by clicking on post.

The file is ready. I need to pay attention to the “G43 H7” line as it doesn’t work on my CNC, so I need to remove it.

1.3. Choose the drills

To select the bit, I went to the drills library: path -> drills library. I click on create toolbit, and a new page opens.

I need to select a pre-existing bit type and a new page opens up. Here, I need to create a new file by simply entering a name and confirming.

A new tool is created, and by double-clicking on it I can define the correct parameters in the right-hand panel. These parameters can be found on the builder page. When this is done, I click ok and the bit is ready to be used in the Job section. I didn’t use any extra clerance.

2. The test

To do a few tests, I’m creating a simple shape that will allow me to test dogbones, curves, engravings, acute angles and right angles, and holes. I had a few problems, such as the number of the cutter which wasn’t the right one, and an origin at the bottom and not at the top, which meant that I was milling in a vacuum. Overall, the result is good, the edges are precise and fit together well.

Here you can find the FreeCad file

3. The box

For my final project, I need to make a box that will contain my reactor, the lighting system and a ventilation system.

3.1. Design

I used FreeCad to design this box. I need to create each part as a separate object, so that I can move it around more easily later.

The reactors need to be stored aligned so that they can be taken out easily, so I created this receptacle, but the box is very long (1.35m) and there’s a risk of bending. To avoid this, I design supports that follow the line of the wood to dissipate the weight and absorb the forces.

Another problem is heat emission. My algae will need a temperature of no more than 40/50 degrees, so I need to provide air circulation. Normally, this design should be calculated and simulated, but I don’t have those skills or the software at the moment, so I’m going to improvise. The air flow will start at the bottom, follow the wall and leave through the vents at the top. The air vents shouldn’t be too big and they shouldn’t be a source of direct light that would blind users, so they are deeper than wider.

To join the pieces together, I only use finger-jointing. Each joint is 500 mm long and 38 mm deep. I also add dogbones everywhere, keeping the original setting. I don’t add any clearance. The box is made up of a set of panels: first I draw each panel in 2D, and when I’m satisfied, I extrude them to match the length of my wood board. Then I rotate the pieces to obtain a 3D model.

3.2. CNC and assembly

The milling machine we use is a 3-axis CNC measuring 1500 x 2400 mm. It is equipped with an automatic tool change system with 8 different cutters, a cooler for the spindle motor, a particle extraction system and a suction table. For the parameters, I used the parameters we found in the group assignment: 13200 rpm, 750mm/min feed and a 6mm descent step. I didn’t have too many problems with the cutting, I just have a bit of trouble with the origin of my parts. For the moment this problem hasn’t been completely solved, so I’ll have to do a few more tests before I can start cutting.

Once cut, I sand my pieces to remove imperfections and hollow out a few gaps. Overall, my pieces fit together, but for the long, thin one, there’s a bit of flex. The result is fine.

I’ve still got a few problems: the rear plate isn’t cut as planned, my CAD file miscalculated the depth of the plate, so I have to redo it by changing the data. I need to apply a varnish to make the armoury water-resistant and the doors aren’t done yet.

4. The files

Here you can find the FreeCad test file

Here you can find the FreeCad box file

Here you can find the g-codes : 1, 2, 3, 4, 5, 6, 7.