Revista I+D en TIC Volúmen 9 Nùmero (1) pp. 35-42 Universidad Simón Bolívar, BarranquillaColombia. ISSN:2216-1570
http://publicaciones.unisimonbolivar.edu.co/rdigital/inovacioning/index.php/identic/index
Implementación de máquina CNC para la fabricación
de placas PCB’S usando hardware libre (open-
hardware)
Implementation of CNC machine for the manufacture of
PCB'S plates using free hardware (open-hardware)
Jairo Alberto De la hoz Suarez, Julio Armando Díaz Ruiz, Gustavo Pacheco Andrade, Fredy de Jesús Ortega
López, Carlos Ochoa
jdelahosuarez@gmail.com, armando960713@gmail.com, gpacheco651@gmail.com, fredyortegalopez@gmail.com
Universidad Simón Bolívar, Barranquilla-Colombia
Resumen
El siguiente artículo se encuentra enfocado hacia la implementación de una maquina CNC para la
fabricación de placas de circuitos impresos (PCB’s) basándose en open-hardware, esto con el fin de reducir
en lo mayor posible costos en la elaboración de dichas placas, así como también evitar la utilización de los
métodos tradicionales con ataque químico que tanto afecta la salud de quienes lo trabajan y brindar
seguridad a los mismos. En el siguiente se evidencian pruebas, cálculos, montaje y elaboración de la
estructura mecánica.
El diseño y la construcción de un torno automático implican el desarrollo de un sistema mecánico, un
sistema electrónico y un sistema informático, los cuales interactúan para dar forma a los circuitos impresos,
tomando como guía códigos a través del software G-Code.
Palabras clave:
Control Numérico Computarizado (CNC), Placa de Circuito Impreso (PCB), G-Code, Hardware Libre,
Maquina Fresadora.
Abstract
The following article is focused on the implementation of a CNC machine for the manufacture of printed
circuit boards (PCB's) based on open-hardware, this in order to reduce as much as possible costs in the
elaboration of said plates, as well as also avoid the use of traditional methods with chemical attack that both
affect the health of those who work and provide security to them. The following shows evidence,
calculations, assembly and elaboration of the mechanical structure.
The design and construction of an automatic lathe involves the development of a mechanical system, an
electronic system and a computer system, which interact to shape the printed circuits, taking codes as a
guide through the G-Code software.
Key words:
Computerized numerical control (CNC), Printed circuit board (PCB), G-Code, Open-Hardware, Milling
machine.
Introducción
“Una placa de circuito impreso (PCB’s) es una plancha de material
rígido aislante, cubierta por unas pistas de cobre en una de sus caras o
en ambas, para servir como conductor o de interconexión eléctrica
entre los distintos componentes que se montarán sobre ella”.[1]
En la actualidad los métodos tradicionalmente utilizados para la
construcción de placas PCB´s pueden requerir materiales o
herramientas de difícil acceso que pueden representar un riesgo en la
integridad para quien las produce. Generalmente los materiales
utilizados pueden incluir: oxidantes.
Es asi también la fabricación de una sola placa PCB, por el método
manual o tradicional es una tarea complicada y una técnica muy
contaminante, ya que la parte más difícil del proceso de ejecución es el
diseño y elaboración de los vestigios o pistas en el PCB, por otro lado
también se puede volver molesto, debido a la fabricación a pequeña
escala ya que se puede tardar hasta un día cuando se utiliza el método
de reacción química.[2]
Por otra parte con el rápido avance de la tecnología en las placas PCB’s
en las últimas décadas los métodos habituales que se utilizan en la
elaboración de dichas placas, generan un enorme gasto de tiempo y
costo para las personas que las fabrican esto debido a la cantidad de
materiales químico que se debe utilizar para cada placa que se fabrica.
Este problema se puede percibir en (ver figura 1) una prueba realizada
para determinar la calidad y el tiempo de fabricación de las placas de
circuito impreso con la maquina CNC versus reacción química, se
puede observar en la figura 1 la calidad con que termino el circuito
impreso elaborado con la maquina CNC, ya que este es
considerablemente superior a la de ataque químico, de igual forma en
Revista I+D en TIC Volúmen 9 Nùmero (1) pp. 35-42 Universidad Simón Bolívar, BarranquillaColombia. ISSN:2216-1570
http://publicaciones.unisimonbolivar.edu.co/rdigital/inovacioning/index.php/identic/index
el tiempo de fabricación de la misma se produjo una notable reducción,
ya que fue de 5 minutos, mientras el proceso de la PCB con los ácidos
fue de 35 minutos.[3]
Figura 1. Prueba de calidad y tiempo de PCB entre CNC (arriba) y Ataque
Químico (abajo)
Conforme avanza la tecnología, los PCB’s se convierten en parte
fundamental en el desarrollo de circuitos electrónicos, cada vez con
mayor utilización y por lo cual exige exactitud y precisión, esto hace
necesario la utilización de diseños asistidos por computadora.
La implementación de una máquina fresadora CNC para la fabricación
de PCB, ha sido un tema de estudio e investigación para profesionales
en el área de la electricidad y la electrónica, así como también lo ha
sido para la industria y algunos centros educativos. Los desarrollos en
la implementación de este tipo de prototipos se han dado en diversos
campos trayendo consigo grandes avances. Tal es el caso de la
implementación del CNC en prototipos de máquinas como
tornos, fresadoras, cortadoras, etc., con movimientos en sus tres ejes
(X, Y, Z) por medio de control numérico computarizado.[4]
Este sistema tiene como principal propósito u objetivo aumentar la
eficiencia en los resultados del prototipado y en las perforaciones de
las placas de circuito impreso, debido a la importancia de un sistema
de control se ve reflejada principalmente en la precisión de los trazos
del PCB con los ejes X, Y, Z, la cual se obtiene generalmente con el
control de los motores paso.
Es por ello que nuestro principal objetivo fue el de construir un
prototipo de máquina para la elaboración de circuitos impresos por el
principio del fresado de material, para de esta manera producir un
circuito impreso de una manera automatizada y más rápida de los
PCB’s que se obtienen por la fabricación mediante los métodos
manuales convencionales y así también evitando el uso de productos
químicos que son perjudiciales para la salud.
Estado del arte
En base a un estudio realizado para un proceso de mejorar la calidad y
productividad de un artículo diseñado con una maquina CNC de
fresado basado en ANFIS, propusieron un sistema de predicción
inteligente de precisión, lo cual para ello recogieron una serie de datos
experimentales mediante una herramienta de mecanizado y así obtener
y calcular errores de precisión de fresado y errores de calidad.
Finalmente, la simulación realizada y los resultados experimentales
demostraron que el sistema predicho puede ayudar al usuario para
lograr la calidad del producto requerida y la productividad de
mecanizado.[5]
“El documento analiza el desarrollo de un sistema CNC de bajo costo
capaz de operar interpolados simultáneamente en 6 ejes. El menor
costo se logra al incorporar todas las características de un sistema CNC
basado en micro controlador o PC estándar en un sistema integrado
basado en Arduino. El sistema también presenta un analizador G-Code
fuera de línea en el que el código G se convierte primero al código
canónico NIST-SAI (NCC) y luego se interpreta en el micro
controlador desde un dispositivo USB. Se emplean procedimientos
novedosos en el sistema para reducir los gastos generales”.[6]
Figura 2. Nivel 1-Canonical code converter (arriba) y Nivel 2-Microcontroller
driven system (abajo)
Según una investigación de la Universidad Distrital Francisco José de
Caldas, presentó el diseño y construcción de un prototipo de maquina
fresadora CNC para la fabricación de circuitos impresos, la maquina
conformada por una base, tres ejes los cuales trabajan bajo el principio
de rotación el cual brinda uniformidad y precisión en el desplazamiento
a la hora de remover el material conductor de la placa, cada eje cuenta
con un motor paso a paso, los cuales cuentan con características
propias, que fueron implementadas para mejorar el desempeño del
mecanizado.[2]
Figura 3. Estructura de la fresadora CNC para elaborar circuitos impresos
En un artículo investigativo publicado por International Journal of
Engineering Science Invention en 2014 en el cual presenta un aumento
en el rápido crecimiento de la tecnología aumentó de forma
significativa el uso y la utilización de los sistemas CNC en las
industrias, pero a un costo notable.
“La idea de la fabricación de un router CNC de bajo costo surgió para
reducir el costo y la complejidad de los sistemas CNC. En este
documento se discute el desarrollo de un enrutador CNC de bajo costo
que es capaz de operar interpolados simultáneamente en 3 ejes. El
menor costo se logra al incorporar las características de una interfaz de
PC estándar con un sistema CNC basado en un micro controlador en
un sistema integrado basado en Arduino”.[7]
Revista I+D en TIC Volúmen 9 Nùmero (1) pp. 35-42 Universidad Simón Bolívar, BarranquillaColombia. ISSN:2216-1570
http://publicaciones.unisimonbolivar.edu.co/rdigital/inovacioning/index.php/identic/index
En la Universidad Tecnológica Centroamericana en Honduras unos
estudiantes presentaron el desarrollo de una maquina CNC con motores
paso a paso para la creación de placas de circuito de alta calidad, ya
que al producirlas con el método tradicional de ataque químico,
producen PCB’s con defectos cuando las pistas son delgadas, al igual
que cuando son placas a menor escala y es peligrosa por causa de los
ácidos utilizados, ya que estos son nocivos para la salud y así como
también lo es para el medio ambiente. A través de esta investigación se
creó este sistema de CNC denominado Asistente de MCB, el cual toma
en consideración la altura de las placas de manera más rápida y
obteniendo menos defectos de fabricación, de igual forma reduciendo
el tiempo de la elaboración y sin necesidad de poner en peligro la salud
de quienes las fabrican.[3]
Figura 4. Arquitectura del Asistente de MCB’s
Con la utilización del asistente MCB se siguieron unos pasos para la
creación del tablero de circuito usando una maquina CNC, el primer
paso que se realizó fue el diseño de dicha placa, utilizando un software
de creación de circuitos impresos generando un archivo gerber, este
archivo fue ingresado en el asistente MCB y por último se procedió a
mecanizar la maquina fresadora CNC, obteniendo una manufactura de
la placa de mayor calidad (ver figura 5) en unos 28 minutos.[3]
Figura 5. PCB producida utilizando el asistente MCB
En una universidad del País Vasco se realizó un estudio de una máquina
de fresado de control numérico computarizado de tres (3) ejes,
mediante software y hardware libre, ya que su utilización puede ser de
calidad, y con todos los estándares sean abiertos y muy económicos, a
la hora de su construcción, así como la reutilización, innovación y
mejoramiento a través de la colaboración mundial y esto por su parte
ayudaría a las personas ahorrar costos y tiempos en la fabricación de
sus placas.[8]
Marco teórico
PCB
“Una placa de circuito impreso (PCB’s) es una plancha de material
rígido aislante, cubierta por unas pistas de cobre en una de sus caras o
en ambas, para servir como conductor o de interconexión eléctrica
entre los distintos componentes que se montarán sobre ella”.[1]
Figura 6. Circuito Impreso
CNC
El CNC (Computer Numerical Control), conocido en español como
Control Numérico Computarizado, son sistemas que permiten
controlar en todo momento un elemento físico, que se encuentra
montado en una máquina, el cual por medio de un software y un grupo
de ordenes numéricas se controlan los ejes XYZ de dicha máquina.[9]
G-Code
“El G-Code (o código G, en castellano) es el nombre de un lenguaje de
descripción de operaciones para máquinas de control numérico por
ordenador (CNC) que puede ser usado también como lenguaje de
programación para controlar estos dispositivos para simplificar
operaciones utilizando, por ejemplo, bucles”.[10]
Maquina Fresadora
Una maquina fresadora es un mecanismo, que se utiliza para producir
con tal precisión objetos o piezas e ir removiendo material de dichas
piezas, esto lo realiza mediante una herramienta de corte.[11]
Hardware Libre
El hardware libre es un hardware cuyo diseño se pone a disposición
del público de modo que cualquiera puede estudiar, modificar,
distribuir, hacer y vender el diseño o el hardware que se sustente en
dicho diseño, el diseño a partir del cual se construye está disponible en
el formato que se prefiera para que se hagan modificaciones en él.
Idealmente, el hardware libre utiliza elementos y materiales
inmediatamente disponibles, procesos estandarizados, infraestructura
abierta, contenido no restringido y herramientas de diseño libres para
aumentar al máximo la capacidad de los individuos de hacer y utilizar
el hardware. El hardware libre brinda a los individuos la libertad de
controlar su tecnología mientras comparten el conocimiento y alientan
el comercio a través del intercambio abierto de diseños”.[12]
Arduino
“Arduino es una plataforma de código abierto utilizada para la
construcción y programación de electrónica. Puede recibir y enviar
información a la mayoría de los dispositivos, e incluso a través del
Internet para controlar el dispositivo electrónico específico”.[13]
Figura 7. Arduino UNO
Revista I+D en TIC Volúmen 9 Nùmero (1) pp. 35-42 Universidad Simón Bolívar, BarranquillaColombia. ISSN:2216-1570
http://publicaciones.unisimonbolivar.edu.co/rdigital/inovacioning/index.php/identic/index
CNC Shield
Son placas que pueden ser conectadas encima de la placa Arduino
extendiendo sus capacidades.
Existen Shield’s de todo tipo para realizar tareas específicas, los más
importantes son:
Conexión Wi-fi.
Conexión Ethernet y módulo SD.
Soporte para display.
Driver para motores de continua o paso a paso.
Para el prototipado.
Figura 8. CNC Shield
Motor paso a paso
Es un dispositivo electromecánico que convierte una serie de impulsos
eléctricos en desplazamientos angulares discretos, lo que significa que
es capaz de avanzar una serie de grados (paso) dependiendo de sus
entradas de control.
Figura 9. Motor paso a paso
Driver A4988
Se trata de un driver de sencillo uso preparado para trabajar con
motores paso a paso bipolares. Incluye un potenciómetro que permite
regular la intensidad de salida hasta los 2A por bobina.
Figura 10. Driver A4988
Figura 11. Pines driver A4988
Los pines que dispone son:
VDD: Entrada de tensión entre 3.3 y 5V. Alimentación de la
etapa lógica.
VMOT: Entrada de tensión entre 7-12V. Alimentación de los
motores.
DIR: dirección de sentido de giro del motor.
STEP: cuando se produce un cambio de nivel bajo a nivel
alto provoca un giro de un paso sobre el motor.
SLP (activo a nivel bajo): pone al driver en modo de bajo
consumo.
RST (activo a nivel bajo): Todas las entradas de STEP se
ignoran mientras este pin esté a nivel alto.
EN: driver encendido cuando la entrada está conectada a
masa. Driver apagado cuando se encuentra a nivel alto
MS1, MS2 y MS3: necesarios para el micro-paso, hasta una
resolución de 1/16.
Desarrollo del articulo
Con el fin de organizar el proyecto, la información se mostrará en orden
cronológico a como se ha realizado, dividiéndola en: materiales a
utilizar, programación del micro controlador (Arduino), etapa de
electrónica y cálculos, fabricacn de la estructura e implementación
de la misma y la comunicación entre la máquina y el computador.
Materiales a utilizar
1. Arduino UNO
2. CNC Shield v3.0
3. 3 Driver A4988 con disipador de calor
4. 3 Motores paso a paso nema 17
5. 3 varillas roscadas M5 30cm
6. 3 acoples flexibles
7. 4 rieles
8. 3 rodamientos
9. Madera para la estructura
10. 1 fuente de poder
Programación Arduino UNO
El firmware de GRBL se encuentra dentro de un fichero hexadecimal,
por lo que no se puede introducir directamente desde el IDE de Arduino
al micro controlador. Para realizarlo correctamente, se debe utilizar un
programa específico para flashear sobre el micro controlador el
firmware. En este proyecto, se ha empleado XLoader v1.00.
Cuando se ejecuta XLoader, la pantalla se debe de configurar de la
siguiente forma:
Revista I+D en TIC Volúmen 9 Nùmero (1) pp. 35-42 Universidad Simón Bolívar, BarranquillaColombia. ISSN:2216-1570
http://publicaciones.unisimonbolivar.edu.co/rdigital/inovacioning/index.php/identic/index
Figura 12. XLoader v1.00
Hex file: directorio donde se encuentra el archivo de código
fuente de GRBL en hexadecimal.
Device: GRBL solamente es compatible con el micro
controlador ATmega 328. Se recomienda flashear
únicamente Arduino UNO, que obviamente dispone de este
micro controlador.
COM port: puerto donde está conectada la tarjeta de
Arduino.
Baud rate: se recomienda la velocidad de transmisión por
defecto.
Una vez configurada la ventana, se hace click en “Upload”. Si el puerto
está correctamente seleccionado GRBL comenzará a volcarse en la
tarjeta y comenzará a parpadear. Una vez finalizado este proceso,
nuestro Arduino Uno ya contara con el firmware GRBL.
Es importante destacar que si el CNC Shield se encuentra conectado a
la tarjeta Arduino este proceso no se puede llevar a cabo, ya que los
pines 0 y 1 (Tx y Rx) se deben de encontrar libres cuando se programa
la tarjeta desde el ordenador.
Electrónica y Cálculos
Una vez programado el GRBL en el Arduino UNO, es el momento
interconectar el CNC Shield y demás partes electrónicas.
Figura 13. Arduino UNO, CNC Shield y los drivers A4988
Interconectados
El firmware GRBL solamente es compatible con controles numéricos
en los ejes X, Y, Z, por lo que el cuarto driver se puede emplear para
duplicar alguno de estos 3 ejes. En este proyecto no se ha considerado
necesario, por lo que solo se hace uso de 3 drivers.
Una vez conectado los componentes se procedido a configurar las
drives A4988 adecuadamente ya que se podían perder pasos en los
motores si no se calculaba la corriente y voltaje necesario.


  

= Corriente máxima (A)

= Voltaje de referencia
 = Resistencia (Ω)
Para hallar el voltaje de referencia, se despeja

de la formula.


   
La corriente máxima de los motores es de 0,4 amperios y la resistencia
de sensibilidad de los drives A4988 debe estar representado en ohmios,
en nuestro caso es R100 que equivale a 0,1Ω

    


Nuestro voltaje de referencia será de 0,32, pero como vamos a usar
pasos completos debemos limitarla al 70%

  


El valor de referencia real para los drives A4988 será de 0,224 V.
El cual se calibrara con un potenciómetro que tiene cada uno de los
drivers A4988.
Para configurar los pasos de los motores, los cuales están configurados
con 200 pasos X 0,8 mm, seria calcularlos para que avance 10 mm,
necesitaríamos hacer una regla de 3.
 
 
  


Una vez hecho los cálculos de los pasos, entraríamos a configurar los
pasos conectando Arduino UNO al ordenador y CNC Shield a una
fuente de poder y los motores conectados con su voltaje de referencia
previamente calculado, correr el software G-Code Sender y configurar
los pasos de cada uno de los motores nema 17.
Figura 14. Conexión motores a la Shield y Arduino uno y fuente de poder
Fabricación estructura de la maquina CNC
La estructura mecánica de este prototipo está conformado por los tres
(3) ejes ortogonales y una (1) máquina rotativa, cada uno de ellos
permiten obtener un movimiento de traslación lineal relacionado con
el movimiento rotatorio del motor y el pprototipado rápido ya que este
es un proceso que basado en un ordenador, pretende reducir el ciclo
iterativo del desarrollo de los objetos a crear, así reducir en gran medida
el costo y el tiempo de producción necesarios para un nuevo producto