openfab-lab / toolsDocs

Repo pour la documentation des machines
3 stars 5 forks source link

[CNC] PCB milling on mini CNC #33

Open Jorgininho opened 4 years ago

Jorgininho commented 4 years ago

With the fabecole project, the hardware assembled became complexe and needed to be robust, therefore the need of a PCB. Several solution are possible, order it in China, you get a good quality product, but you need to order at least 10 single board and wait 1 month to get them. Here we only need one and in a short period of time. For a single board, we could use acid etching on a printed circuit, but we didn't have the material at Openfab, also I'm reluctant tu use acid. So the plan was to use the mini CNC that we have to mill the PCB.

Here are the steps followed to mill a PCB :

  1. With KICAD, we start with the electronic schematics, here we have the wanted elements and the rights connections between each (eeschema) image

  2. From Kicad, we 1rst annotate every elements image

  3. Then we choose a footprint for each element image

  4. Next step is to make the PCB image

  5. Plot the gerber files from the PCB in KiCAD image

From this step, we can produce the Gerber files tha could be used to order such PCB in China. Instead these Gerber files will be use for milling To convert Gerber files into Gcode for the CNC we use flatcam software

  1. In FlatCAM, we load the gerber files for tracks, edge and drills.

  2. In FlatCAM, DON'T forget to flip all elements along X axis (so copper layer of the PCB is on the right side)

  3. In FlatCAM, set the origine at one of the corner of the PCB

  4. For the routing, generate the geometry then CNC job, with parameters as follow , feedrate up to 120mm/s for X-Y & Z and in Cut Z as -0.1

  5. For the CNC object, dont forget to append "m2" at the end of the gcode. The NC file generated is the Gcode to be used on the CNC

  6. Fix the PCB on CNC bed

  7. For each operation on the CNC (routing, drilling, contouring) a tool i used, leveling is done with a multimeter that measure contact of the metalic tool on the copper layer of the PCB This is a very accurate way to get the level on Z. The copper layer is very thin and a bad leveling along Z axis can lead to bad PCB milling.

Check the Z level on a reglar matrix of point along the surface. On big surface, this can lead to big difference of level. A python code has been generated to correct the Z level along the surface.

Once the milling is done, remove dust with a strong brush to avoid false contact in futur soldering

This is a quick and dirty issue regarding this matter, dont hesitate to ask for point on which you want more details @nicolasdb

nicolasdb commented 4 years ago

ça manque de détails mais c'est un bon départ. :+1:

  1. dont forget to append "m2" at the end of the gcode.

Mon rêve c'est que le prochain, puisse enrichir ce tuto à chaque fois qu'on produit un pcb.