Fabricación de PCB, con fresadora CNC

Introducción.

Este artículo muestra, mediante un ejemplo sencillo, la técnica de fabricación de circuitos impresos, mediante fresado CNC, con medios semi-profesionales. En la imagen mostrada a continuación, se ve una placa de calidad industrial (cobre electro-depositado, y substrato FR4), fresada con una máquina CNC, por ambas caras.

Al ser un proceso con varios pasos, empezaremos por dar un índice que nos sirva de guía.

Índice:

  • Introducción.
  • Placas PCB.
  • Descripción del equipamiento necesario software y hardware.
  • Detalle de componentes.
  • Fresas. Tipos y precauciones de uso.
  • Procedimiento de trabajo.
  • Diseño de la placa en un software de CAD específico.
  • Generación del archivo de comandos g-code.
  • Métodos alternativos para la generación de g-codes.
  • Proceso de fresado. Una y dos caras.ee
  • Proceso de taladrado.

Introducción.

Una aplicación poco conocida de las fresadoras CNC es la fabricación de circuitos impresos para montar circuitos electrónicos. Este tipo de placas son conocidas como PCB (printed circuit board), y así nos referiremos a ellas a partir de ahora.

Existe una gran variedad de soluciones a la hora de abordar este tema, ya que existe toda una industria especializada en esta tecnología. En este artículo nos vamos centrar en una muy sencilla que se basará, en lo posible, en el uso de software de libre distribución, o licencias de uso limitado, y una fresadora CNC convencional, con cabezal de alta velocidad. Este último, sin embargo, no es imprescindible, pudiéndose emplear el cabezal convencional de la máquina.

La fabricación se realiza a partir de placa virgen, que consiste en una base aislante (baquelita, fibra de vidrio, etc.) que lleva adherida una capa muy fina de cobre conductor, en una de sus caras o en las dos, en función de si necesitamos pistas de cobre por una sola cara (circuitos más sencillos), o por las dos.

Placas PCB.

Este tipo de placas se puede adquirir en tiendas de componentes electrónicos.

La mayor parte de las veces vienen con una capa fotosensible aplicada sobre el cobre. Esta capa está destinada a la fabricación de la placa PCB mediante procedimientos foto-químicos.

La capa fotosensible no es un problema, porque se elimina con facilidad con un poco de acetona, aunque es una característica que encarece la placa, y que no vamos a utilizar. Por ello, conviene dedicar un poco más de tiempo a localizar un comercio que venda placa sin sensibilizar (sin capa fotosensible).

Por otro lado, las placas usadas en la fabricación de PCB fotosensibles son de mayor calidad que las usadas en placas vírgenes. Por lo que si queremos un mejor acabado, deberemos emplear placa sensibilizada, y lavarla con disolvente.

Yendo un poco más allá en la calidad, las PCB profesionales se fabrican con cobre electrodepositado, en vez de una lámina de este metal adherida al substrato. El cobre electrodepositado es mucho más fácil de atacar por el ácido, lo que permite obtener una mayor definición en el trazado de las pistas, y un menor tiempo de procesado. También es mucho más fácil de eliminar por la fresa de nuestra máquina CNC, ya que pulveriza el cobre sobrante (en vez de cortarlo o apartarlo), dejando las pistas con un perfil mejor definido.

El substrato de este tipo de PCB es de fibra de vidrio reforzada, conocido como FR4, que es el estándar en aplicaciones profesionales.

Si queremos comprar placas de este tipo, podemos hacerlo en RS-amidata:

Placas Fotorresistentes

Software necesario.

Para poder fabricar una placa PCB, según la explicación que vamos a dar a continuación, necesitamos el siguiente material/software:

Aplicación de dibujo de placas PCB.

Recomiendo usar un paquete denominado Eagle. Es un producto muy difundido por su bajo coste, y su buen generador de imágenes. Además trabaja con formatos de fichero compatibles con la mayoría de paquetes profesionales.

Existen dos licencias de bajo coste: Una opción es la licencia profesional, en su versión para placas de dimensiones reducidas, y la otra es una licencia educacional que permite dibujar placas de cualquier tamaño. Otro punto a favor de este software es que dispone de un plug-in para obtener imágenes en 3D. Para ello es necesario instalar el programa SkechUp de Google, pero es gratuito.

El resultado son imágenes tridimensionales de gran calidad, que además pueden ser renderizadas con otro plug-in de Maxwell.

Eagle se puede descargar en el enlace: http://www.cadsoftusa.com/download.htm

Aplicación para generar G-Codes:

A partir de las pistas dibujadas, hay que generar unos scripts de fabricación, construidos con comandos de alto nivel llamados g-codes. Estos comandos son muy genéricos, y no tienen en cuenta las particularidades de nuestra máquina (los motores paso a paso empleados, o las reducciones de los ejes), sino que simplemente se especifica cuanto tiene que moverse el cabezal en cada dirección, y a qué velocidad.

Opción A:

Pug-in para Eagle, denominado pcb-gcode (genera g-codes a partir del dibujo de la placa PCB):

http://pcbgcode.org/list.php?12

Este software proporciona unos scripts de tipo ULP reconocidos por Eagle, el cual es capaz de ejecutarlos a partir de uno de los iconos existentes en su interfaz estándar.

Opción B:

Usar CopperCAM, mucho más avanzado, pero que tiene un coste de 80€ (a fecha de Enero de 2013).Es un software muy completo, que permite hacer muchas más cosas que generar los g-codes de fresado de las pistas. A pesar de ofrecer una interfaz que recuerda a las primeras versiones de Windows, no hay que desilusionars

e. El producto es muy potente, y permite manipular las imágenes de las pistas generadas a partir de los archivos gerber de fabricación.

Como entrada de datos, se utilizan archivos gerber de fabricación. Por ello, habrá que generarlos con Eagle. Lo más fácil es leer los excelentes tutoriales de Sparkfun, que nos explicarán paso a paso cómo hacerlo:

https://learn.sparkfun.com/tutorials/designing-pcbs-advanced-smd/gerber-generation

La generación de archivos gerber de fabricación está sujeta a reglas que ponen límites físicos a nuestra placa, de forma que no intentemos crear una placa que luego no sea posible fabricar. Estas reglas son configurables, permitiéndonos ser más o menos estrictos. Recomiendo utilizar el archivo Sparkfu.DRC que proporciona sparkfun para configurar Eagle con unos valores normales. También recomiendo utilizar el archivo Sparkfun-gerber 274x que configura el "CAM processor" de Eagle para que genere los gerber de fabricación que necesitamos. Se pueden descargar en:

https://www.sparkfun.com/tutorials/115

Además, todos los tutoriales que están accesibles a través de esta página, nos ayudarán a comprender completamente el proceso.

CopperCAM se puede descargar en el enlace http://www.galaad.net/coppercam-eng.html

Aplicación Planificador de movimientos.

Software planificador de movimientos de bajo nivel, denominado Match3. Una vez configurado con los datos de nuestros motores paso a paso, las reducciones de los ejes de transmisión que hayamos usado, etc. este software será el encargado de interpretar los archivos de g-codes, y mover los eje x-y-z para que el cabezal con

la fresa girando a alta velocidad, vaya eliminando el cobre sobrante, y de esta forma vayan generándose las pistas de nuestro circuito. Es un software de uso muy extendido, sobre todo en entornos semi-profesiones y hobby. Tiene una interfaz antigua, pero muy probada. Está previsto que salga al mercado Mach4, con unaspecto totalmente renovado, y con un precio de descuento para los actuales usuarios de Mach3.

Existen multitud de plug-ins hardware compatibles con este producto. Yo utilizo SmoothStepper que me permite conectar el ordenador a la controladora, mediante un cable USB, en vez de un cable paralelo.

Durante el mecanizado CNC, el programa absorbe todo el tiempo de CPU disponible, así que es mejor disponer de un equipo dedicado exclusivamente a esta tarea. Si intentamos utlizar el ordenador para algo más durante el tiempo que dura el mecanizado, con toda seguridad se producirá un error, y se parará la ejecución del programa, echándose a perder el trabajo.

Mach3 se puede descargar en el enlace http://www.machsupport.com/downloads.php

Hardware necesario:

Freasadora CNC.

Puede emplearse cualquier fresadora CNC, aunque los "router" específicos para esta tarea, al ser más ligeros, pueden trabajar a mayor velocidad, reduciendo el tiempo de fabricación, que en cualquier caso, siempre es alto.

Fresas y brocas.

Fresas de 0,7mm –> 1mm (aprox.) para cortar la placa a sus dimensiones finales.

Fresas en V, de entorno a 0,2mm en la punta para grabar las pistas.

Se pueden comprar en:

http://www.cnc-plus.de/index.php?language=en

http://www.thinktink.com/

Brocas de 0.65mm, en adelante.

Todos los diámetros necesarios para las patillas de los componentes de la placa PCB.

Set de fresas en V de 0,2 y 0,3mm, y brocas de 0,7mm, típicamente usades en la fabricación de PCB.

Fresas. Tipos y precauciones de uso.

Para el fresado de las pistas se emplean fresas en V, que pueden tener por ejemplo 60º, 90º, etc. en la punta.

En cuanto al ancho de la punta (aunque pueda parecerlo, la cabeza de la fresa no es un pico afilado, sino que acaban planas), yo uso fresas de 0,2mm, aunque también las hay de 0.1,mm (muy indicadas para grabado de letras, etc.), y por supuesto de 0,3mm, y en adelante.

Las fresas de 0,2mm dan un buen equilibrio entre la necesidad de poder crear pistas muy finas, que pasen entre patillas de componentes (con una distancia típica entre patillas de 2,54 mm ó 0.1 pulgadas.) y que no se necesite hacer infinitas pasadas eliminando material para garantizar el aislamiento entre pistas.

Para saber más sobre la geometría de las fresas en V (conocidas como V bits):

http://www.majosoft.com/engraving/html/anatomy_of_an_engraving_cutter.htm

Es muy fácil romper una fresa de carburo en V, ya que la punta es frágil. Si está en la posición Z=0, de manera que roza la placa a fresar, e inadvertidamente accionamos manualmente la mesa de cruz (eje X, Eje Y), la punta se puede enganchar en cualquier saliente y fracturarse.

Fresa en V, de 0,2mm

Portabrocas para cabezal de alta velocidad.

Un problema que podemos encontrarnos al emplear un cabezal de fresado rápido, es que, debido al pequeño diámetro de su husillo, no admite un portabrocas de tamaño convencional.

En ese caso, no podremos emplear brocas convencionales, y tendremos que comprar de un tipo especial, en el que el cuerpo de todas las brocas siempre tiene 3mm de diámetro, independientemente del diámetro de la cabeza de la broca.

Otra opción es buscar un micro-cabezal. En mi caso, dispongo de éste:

"Prolongador para portabrocas con 2 pinzas Gyros" adquirido en esta tienda, por unos 16€:

http://www.comercialpazos.com

Del fabricante gyrostools, que lo denomina "Adaptor Chuck - Mini - 0" to .039" Capacity" y referencia: #45-01801 en su web:

http://www.gyrostools.com/

Uso ambas soluciones, y las dos con resultados satisfactorios.

Procedimiento de trabajo.

El proceso es en realidad, sencillo:

  • Se dibuja la placa a fabricar, en Eagle.
  • Se genera los G-codes para la máquina CNC (mediante la ejecución de un script "pcb-gcode", o mediante un software específico como CopperCAM)
  • Se fresa la placa con la fresadora CNC y Match3.

Diseño de la placa en un software de CAD específico (Eagle).

Este artículo no pretende ser un manual de dibujo de PCB, por lo que voy a indicar unos tutoriales de aprendizaje, y haré referencia a algunas cosas que hay que tener en cuenta a la hora de utilizar este software:

Tutoriales de Sparkfun (inglés):

http://www.sparkfun.com/tutorials/109

En español, el foro argentino:

http://www.todopic.com.ar/foros/index.php?topic=20147.msg148974#msg148974

Por otro lado, existen gran cantidad de librerías de componentes ya pre-dibujados por otras personas, a nuestra disposición.

Librerías de componentes Eagle, ya dibujados:

https://github.com/sparkfun/SparkFun-Eagle-Library

http://www.ladyada.net/library/pcb/eaglelibrary.html

Su uso, junto con las suministradas por defecto en el propio Eagle, nos ahorrará mucho trabajo, aunque a veces hay tantos componentes parecidos, que resulta difícil dar con el correcto.

Por ello, muchas personas prefieren fabricar sus propias librerías de componentes, extrayendo de cada una de las existentes lo que necesita, y dibujando aquello que no ha encontrado. Como cada proyecto requiere un número limitado de componentes comunes, es una buena opción.

Para aprender a crear librerías propias, se puede recurrir a los tutoriales de Sparkfun, o mejor aún, a éste, en español:

Versión Web:

http://picmania.garcia-cuervo.net/eagle_tutlbr_i_library.php

Versión pdf:

http://picmania.garcia-cuervo.net/recursos/eagle_tutlbr.pdf

Esquema eléctrico, en Eagle, para el que vamos a generar la placa PCB.

Dibujo en Eagle de la placa que vamos a fabricar por fresado.

Generación del archivo de comandos g-code.

Opción A.

El software de generación de comandos llamado pcbgcode

http://pcbgcode.org/list.php?12

no se integra en Eagle como un menú, sino que se compone de dos archivos, tipo script, que se ejecutan desde Eagle en el menú File/Run.

Uno de los scripts “pcb-gcode-setup.ulp” es para configurar el proceso. Profundidad del fresado de la placa, número de caras a fresar, profundidad del taladrado, etc.

El otro script “pcb-gcode.ulp” genera los archivos g-code, y presenta una simulación del resultado del fresado, para ayudarnos a detectar cualquier posible error, antes de ponernos manos a la obra.

Opción B.

Otra posibilidad es utilizar CopperCAM. con este software, el procedimiento es un poco más largo. Hay que usar Eagle para generar los archivos Gerber de fabricación. A continuación, se importan en CooperCAM las capas (layers) a mecanizar.

En el menú "parameters" hay dos sub-menús ("tools library", "selected tools") donde configuramos cómo vamos a trabajar. Se definen las características de las fresas de las que disponemos, y a continuación definimos cuál vamos a usar para cada cosa (fresar pistas, marcar futuros taladros, taladrar, etc).

En el menú "Machine", seleccionamos "Calculate Contours" para generar los contornos.

Ahora ya se puede pasar al menú "Machine" y elegir la opción "Mill" o "Multimill", en función de si vamos a usar una sola fresa para todo, o varias.

Métodos alternativos para la generación de g-codes.

En Eagle se pueden generar archivos HPGLP para realizar el fresado de la placa. Las versiones antiguas de Mach3 permitían importar este formato de archivos directamente. Sin embargo, en la versión actual (año 2011 en adelante), esta funcionalidad ha sido derivada completamente al software de la misma empresa, denominado LazyCAM. En pocas pruebas que he hecho con él, no he logrado resultados satisfactorios.

Proceso de fresado. Una y dos caras.

En el ejemplo que estamos mostrando, se fresa una placa con una sola cara. Sin embargo, es posible fresas placas de doble cara, con gran facilidad.

Para ello, no hay más que girar la placa a la derecha, y volver a re-posicionar la máquina en el origen de coordenadas (0, 0), que ahora estará a la derecha del todo.

Sabiendo el tamaño de la placa y habiendo previsto apoyar la placa contra algo la primera vez, para tomar una referencia exacta, no tiene mucha complicación volver a reajustar las coordenadas.

A la hora de comenzar a fresar, es muy importante que la placa esté perfectamente horizontal. Si la placa es mediana o grande, se la adhiere con cinta de doble cara a una superficie plana, la cual se sujeta a la mesa de cruz de la fresadora.

En el caso de plaquitas muy pequeñas, y que por tanto no van a flexar, es suficiente emplear un par de calzos calibrados y el tornillo de banco de precisión que empleemos habitualmente.

Proceso de taladrado.

Opción A.

El software pcbgcode es capaz de generar archivos semejantes a los de fresado, pero destinados a taladrar. Sólo hay que indicárselo en la configuración.

Sí que hay que hacer una indicación importante: El software está preparado para utilizar un rack de herramientas, que la máquina intercambia de forma automatizada. Esto es algo habitual, ya que en una placa PCB es habitual tener que emplear varios diámetros de taladrado, etc. Sin embargo, las fresadoras de aficionados no suelen disponer de esta característica.

Para no tener problemas, configuramos el rack de brocas, indicando simplemente una altura Z para el rack, 2m será suficiente. De esta forma, cada vez que termine con un diámetro de broca, se elevará a esta altura, e irá al rack (que no existe) a cambiar la broca.

Si no hubiéremos indicado una altura Z, se habría desplazado al origen, manteniendo Z = 0 !!! por lo que probablemente habría colisionado con cualquier rebaba, y se habría roto la broca.

Opción B.

CopperCAM nos hace trabajar un poco, hasta que conseguimos que los taladros visualizados queden en la posición correcta sobre los pad. El primer inconveniente es selecionar el tipo de archivo correcto al importar el fichero. No queda más remedio que "ensayo y error".

A continuación es necesario marcar un pad de referencia en los taladros, y en los propios pad, para que el software tenga una referencia válda, y los haga coincidir. A veces no es capaz de hacerlo por sí solo, y nos obliga a girar el plano que visualiza los taladros, etc. hasta que coincide en su sitio. A partir de ahí, nos genera correctamente los g-codes para taladrar.

Vídeo del fresado de la placa del sensor.

Resultado de la fabricación de la placa.

En las siguientes imágenes se muestra el resultado del proceso de fresado, con una fresa en V, de 0,3mm.

He usado el cabezal Proxxon BFW 40/E sobre todo por ser tan silencioso. Buscamos "Proxxon 20165 Fräsmotor BFW 40/E" en la web:

http://www.satberlin.de

donde lo ofrecen al mejor precio del mercado.

La velocidad de corte empleada fue alta, como corresponde a materiales blandos y avances rápidos: entre 5000 rpm y 6000rpm que es el tope de la máquina.

En realidad se puede hacer con cualquier cabezal, aunque si la velocidad de giro es baja, habrá que mecanizar y taladrar con velocidades de avance menores.

Como vemos, la placa es muy sencilla, pero suficiente para su propósito.

Otras placas PCB fresadas.

En este caso, el fresado de cada cara duró entre una y dos horas.

Esta placa se utilizó como prototipo en un proyecto real, que se describe en esta web, en el enlace:

Proyecto II. Placa de control para motores de C.C.

En color verde se lacó la zona de la placa destinada a los componentes de potencia, mientras que se empleó laca transparente para proteger la zona de mando.

También se aprecia que los puntos de soldadura ya han sido pre-estañados.