ARCOS-Lab CNC: La fresadora CNC del ARCOS-Lab

Manual de instrucciones y cuidados

El sistema consta de un Raspberry Pi (de adelante RPI) que se encuentra en la CNC, y la computadora del usuario (de ahora en adelante PC).

Precauciones antes de encendido:

  • Revisar que ningún cable este recostado o aplastado por la máquina.
  • Percatarse que ningún metal este en contacto con la punta cortante de la máquina.
  • Revisar que todas las diferentes fuentes están conectadas a la regleta principal. (Adaptador USB RPI, Cable para los steppers, Cable para la fresadora)
  • Tener instalado previamente yarp, en la PC
  • Tener el repositorio de los programas de uso de la CNC
  • Siempre utilizar de anteojos de seguridad para todo trabajo relacionado a la máquina.

Encendido y configuración:

  • Accionar el interruptor principal, para energizar los diferentes dispositivos de la máquina.
  • Esperar 30 segundos y probar la parada de emergencia apagando los motores.
  • Volvemos a encender los motores, y esperamos 30 segundos para que el RPI se conecte a la red del lugar de trabajo.
  • Encendemos la laptop reservada para uso de la CNC (HP i5) y nos logeamos con el usuario cnc, clave cnc.
  • Contectamos el cable ethernet de la CNC.
  • Por medio de la línea de comandos, nos conectamos con el IP 192.168.10.20 utilizando el siguiente comando:
~$ ssh pi@192.168.10.20

Accedemos con la siguiente contraseña: pi

  • Luego de haber logrado con ssh ejecutamos el siguiente comando:
~$ yarpserver

Esto inicializa un servidor de yarp en la CNC.

  • En otra línea de comandos, utilizando el mismo servicio de ssh, nos dirigimos remotamente a la dirección:
 ~$ cd programs/arcoslabcnc/software
 

Ejecutamos el servidor de la CNC con el siguiente comando:

~$ ./arcoslabcnc-server.py

En una nueva terminal, pero ahora ya PC, digitamos el siguiente comando para utilizar el servidor de yarp (que corre en la RPI)(esto solo debe ejecutarse una vez en la PC de cada usuario) :

~$ yarp conf 192.168.10.20 10000

Ahora corremos el siguiente comando, que se puede ejecutar para obtener la lista completa de puertos disponibles:

~$ yarp name list.
  • Esto me lista los puertos de yarp que existen en la red común. Por defecto nos va a utilizar tres puertos:
    • /cnc/cmd:i (puerto de entrada)
    • /cnc/pos:o (puerto de salida)
    • /cnc/status:o (puerto de salida)
  • Podemos observar la información de los puertos de salida si abrimos una consola y así obtener información fundamental de la CNC, si introducimos el siguiente comando y luego el puerto que queremos utilizar:
~$ yarp read ... "puerto deseado de salida" (ya sea /cnc/pos:o ó /cnc/status:o)
  • Podemos darle a la PC la capacidad de enviarle comandos a la CNC por medio del puerto de entrada, ejecutando el siguiente comando en una nueva consola:
~$ rlwrap yarp write  ... /cnc/cmd:i

Un comando muy importante para este puerto de entrada es “status”. Lo cual nos responde en el puerto de salida un “0” si la máquina esta desocupada y un “1” si la máquina está trabajando.

  • Las respuestas a comandos se pueden dar en los puertos de salida:
    • /cnc/pos:o
    • /nc/status:o

Otro comando muy útil es “cur\_pos” que nos responde en el puerto de posición los valores.“0.0 0.0 0.0 0.0 0.0 0.0” donde nos encontramos en el origen de los tres ejes y en donde los tres primeros números son los ejes “X”, “Y” y “Z” en metros y los tres números siguientes son los mismos ejes pero en pulgadas (NOTA: es común que dé valores muy bajos en vez de cero, del orden de los attómetros).

Uso de la máquina

Utilizando el joystick (No funciona en este momento)
  • En el repositorio previamente descargado. Ahora escogemos el método con que vamos a manipular la máquina. Para efectos de este manual vamos a utilizar el programa: “jogging\_dualshock.py”, el cual nos permite mover libremente la máquina, utilizando un joystick, particularmente se utilizó un joystick de PlayStation 2. (NOTA: ESTO NO FUNCIONA EN ESTE MOMENTO)
  • Ejecutamos el programa, luego de conectar el joystick, lo que nos va desplegar en la consola los comandos cuando interactuamos con el dispositivo. Se puede mencionar que el programa en uso solo va funcionar con comandos de velocidad y no de posición. (NOTA: ESTO NO FUNCIONA EN ESTE MOMENTO)
  • Hasta el momento los comandos del joystick, no se envían al servidor en la RPI, esto por seguridad. Para poder enviarlos, se tiene que presionar el botón habilitador, para nosotros “R1”. Al presionarlo al mismo tiempo que activamos el joystick, vemos en la consola del servidor como se despliegan los comandos. (NOTA: ESTO NO FUNCIONA EN ESTE MOMENTO)
  • En este punto es de mucho cuidado, ya que si movemos el control bruscamente y la máquina está en un punto de rozamiento, podemos hacer grandes daños. En este punto luego de percatarse que no hay ningún comando ejecutándose en el servidor, encendemos los motores, y movemos con el joystick muy despacio el eje z hacia la parte superior para asegurarnos que no vamos a tener ninguna colisión. (NOTA: ESTO NO FUNCIONA EN ESTE MOMENTO)
  • Ya podemos escoger la fresa con la que vamos a trabajar y colocarla en el rotor. Encendemos el rotor y podemos trabajar. (NOTA: ESTO NO FUNCIONA EN ESTE MOMENTO)
Realizando movimientos simples (líneas)

Los movimientos simples de la CNC se corren de forma individual, cada uno como un comando independiente. Para accederlos nos dirigimos a:

~$ cd /local/scr/arcoslabcnc/software

Un ejemplo de la sintaxis es el siguiente:

~$ ./move_line.py  0 0.2 0 0.0016 mm rel
  • Los primeros tres números corresponden la nueva posición en X, Y, Z, respectivamente.
  • El cuarto valor es la velocidad.
  • El quinto indica que las únidades son siempre en milímetros.
  • El último parámetro indica si la posición deseada es relativa a la posición actual o absoluta (rel o abs). Se recomienda siempre trabajar con posiciones relativas.
  • La velocidad recomendada para desplazamientos en el aire es de 0.16. Cuando se está maquinando materiales suaves, como aluminio, se puede utilizar 0.0016. En el caso del acero 0.00016. Siempre teniendo el cuidado de cambiar la velocidad para evitar altas vibraciones.

Para poder ajustar la velocidad en caliente, se puede utilizar la siguiente función:

~$ ./kbd_speed.py 10

Que se encuentra en la misma dirección del move_line. En esta terminal puedo bajar o subir la velocidad en pasos de relativos del 10% de la velocidad actual, con las teclas de arriba y abajo.

Apagado de la máquina.

  • Presionamos el switch de encendido de los motores. Con ello ya quedan libres y podemos moverlos, hacia una posición inicial “home”.
  • Cerramos cualquier programa de usuario. Cerramos los programas utilitarios tales como los de posición y estado y por último cerramos el servidor. Presionamos “ctrl+C” en cada terminal para finalizar cada uno de los procesos antes citados.
  • Luego con el comando logout cerramos sesión en el RPI, y terminamos apagando la regleta que se encuentra junto a la máquina,ya que esta se encarga de apagar todos los dispositivos restantes.
  • Realizar la limpieza de la máquina, usando la escobilla para recoger la viruta del proceso.

Fuentes útiles de información

Machining

Software

Información de diseño y construcción de la máquina

Planos

software

  • tutorials/arcoslabcnc.txt
  • Last modified: 2019/11/20 13:03
  • by mmadrigalq