Skip to content

4. Electronics production

cover This week I worked on Electronics production. We learn how to produce PCB (Printed Circuit Borad) with different technologies, but I will focus on the cnc milling machine. So Let’s learn and understand how it works.

Hero Shots

best photo best photo

Assignement requirements

Group assignment:

  • Characterize the design rules for your in-house PCB production process: document feeds, speeds, plunge rate, depth of cut (traces and outline) and tooling.
  • Document the workflow for sending a PCB to a board house
  • Document your work to the group work page and reflect on your individual page what you learned

Individual assignment:

  • Make and test a microcontroller development board

Group Assignement

Here you can fin the link to the group assignement. group_photo

Individual assignement

For the individual assignement, I now go back to my own LAB to make it with my own LAB Machine. It’s include thinkness test, machine characterize, documenting workflow and make & test the famous quentorres Development board. cover_me

Step 1 : Files preparation for CNC milling

I now use Mods Project an open source project online that help you to generate toolpath gcode for cnc from many types of files : png, svg, raster image etc.... To use Mods click on this Link Then right click on your mouse > programs > open program > gcode : mill 2D

mods project

Now you can upload the image you want to generate the gcode toolpath for the cnc machine.

mods project

For the assignement project i use FlatCAM software to help me configure et generate the differnts G-code to produce my PCB

First thing we have to do is to export the differents fabrication files of the assigenement quentorres into flatCAM after downloading them Here.

Let’s do that !!!

  • Open FlatCAM -> File -> Open -> Open Gerber and then select the face cut file with the indice F_CU. do the same but at this time select the cutout file Edge_cut.
  • File -> Open -> Open Excellon. Now select the Hole file with the indice .PTH.

After exporting all these three files you will have it like this in flatCAM.

mods project

You will observe that the file is not position to the origin. Note that is very important to move the production to the origin to avoid some machine bugs.

To do this you just have to firstly select all the design (just do a drag to select them all) after the selection go to Edit -> Move to origin and the image will automatically move to the origin. mods project

Toolpath Generation

We can now proceed to the different toolpath generation. Start with the board traces, Double Click on the F_CU file and a dialog box will open to help you first generate the Geometry and then click on isolation Routing. mods project

this box dialog will open and you will fill the different parameters :

  • Tool Diameter : 0.33 (represent our tool diameter, here is V-Bit the tool type);
  • Passes : 5 (Reprensents the nombers of passes);
  • Overlap : 10 (reprensents the passes superposition);

mods project

Then click on Generate Geometry to generate the diffents path. Here’s the result ! mods project

Now we have the geometry we can generate the CNC Job by setting up the different parameters in the dialog box. Here are the parameters i put :

  • V-Tip Dia : 0.3112;
  • V-Tip Angle : 30°;
  • Cut-Z : 0.0351 (In the newest version of FlatCAM V-Tip Dia and cut Z are linked so you have to modifiy the value of the V-Tip Dia in order to have the right valut for cut Z);
  • Travel Z : 5;
  • FeedRate X-Y : 90;
  • FeedRtae Z : 60;
  • Spindle speed : 10000;

and then click on Generate CNCJob object to generate Gcode.

mods project

Double click on the edge cut file. Then click on Cutout tool to configure it. this box dialog will open and you will fill the different parameters :

  • Tool Diameter : 1.5 (represent our cut tool diameter);
  • Cut Z : 1.8 (Reprensents our material thinkness);
  • Multi-depth : 0.6 (reprensents the numbers of passes for a progressive cut to avoid tool broken);
  • Margin :
  • Gap Size : 4 (reprensent the gaps to avoid the board fly or move while cutting) select bridge;

Now click on generate geometry !

mods project Now the geometry generated, we can generate the G-Code for the board cutout. Here are the parameters i use for the board cutout

  • Cut Z : 1.8 (Reprensents our material thinkness);
  • Multi-depth : 0.6 (reprensents the numbers of passes for a progressive cut to avoid tool broken);
  • Travel Z : 5
  • Gap Size : 4 (reprensent the gaps to avoid the board fly or move while cutting) select bridge;
  • FeedRate X-Y : 90;
  • FeedRtae Z : 60;
  • Spindle speed : 10000;

and then click on Generate CNCJob object to generate Gcode.

mods project

G-Code Generated !! For the holes double click on the excellon file and then select all the hole preselected by the software. After selecting them click on Drilling tool to configure the path. mods project

  • Cut Z : 1.8 (Reprensents our material thinkness);
  • Multi-depth : No need here (reprensents the numbers of passes for a progressive cut to avoid tool broken);
  • Travel Z : 5
  • FeedRtae Z : 120;
  • Spindle speed : 10000;

and then click on Generate CNCJob object to generate Gcode. mods project

All the file are ready. Let’s go for the board cutting !!!

Step 2 : PCB production CNC Milling

Some specifications abouut the machine and the tools I used.

Machine Charaterize

Variable Description
Model 4040-XE
Active Working Area 400x400x55mm
Spindle Power 300W
Stepper Motor NEMA 23
Accuracy 0.1mm
Maximum Moving Speed 2000mm/min
Input Voltage 110V/220V
Input Current 110V/10A;220V/5A
Control Method Computer & Controller
Support Software Compatible with Grbl-control software
Machine Size 760x620x360mm

PCB Milling Settings

bits

PCB Isolation Routing V-Bits PCB: CutOut tool End Mill PCB Hole tool Drill
Bit Type: V-Bit flat-end Mill Drill
Bit Size: 0.3 mm 1.16 mm 0.8
cut depth: -0.1 -0.4 mm -1.8 mm
max depth: -0.1 -1.8 mm -1.8 mm
cut speed: 4 mm/s 4 mm/s 4 mm/s
Plung speed: 4 mm/s 4 mm/s 4 mm/s

Machine controlling

The softxware I use to control the machine is Candle who is an open source software for CNC Machine. Download and install it before continuing. Before you launch a Job here are the steps you have to do :

mods project

  • Verify the connection cable between computer and the machine ;
  • Connect the software to the machine ;
  • Place the tool depending on the work you want to do;
  • Place the material on the machine and fix it with scotch or the join screw;
  • Set Z0 with a paper;
  • Set the X0Y0 depending on where you want to cut the Job and your material size;
  • NB: Note that the X0Y0 doesn’t have to change until all the Job are finish, if you lost it or the machine disconnect once is finish, you will have to restart from the begining; So pay attention to this very carefully.
  • Now you can launch the work.

mods project mods project mods project

Results

TADAM !! I was so proud !! mods project

Step 3 : Soldering and testing

The tools i used for soldering :

  • Soldering Iron;
  • Multimeter (To verify the continuity);
  • Electrical Scotch (to help maintain some component on the board);
  • Third hand loop (To hold the board while soldering and see well the traces);
  • Hot air Gun (for SMD soldering);
  • A Twist (to move SMD component)

mods project mods project

Code

const int LED = D0;

void setup() {
  // put your setup code here, to run once:
  pinMode(LED, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(LED, HIGH);
  delay(2000);
  digitalWrite(LED, LOW);
  delay(2000);
}

Design Files


Last update: June 29, 2024