Test mediante un PC (I)

Conexión del la placa al ordenador, vía puerto serie (UART).

Se trata de emplear el PC como pantalla de visualización de datos, los cuales serán generados en tiempo real por la placa.

Esta es casi la última funcionalidad importante que me queda por implementar (digo "casi", porque me falta verificar el funcionamiento de la entrada CNC, conectada a Mach3).

Para acceder a esta funcionalidad, la placa definitiva dispondrá de un conector de tres pines (masa, Tx y Rx), que proporcionarán el acceso al puerto serie del micro-controlador que genera la onde PWM. También se podrá conectar o desconectar este servicio, mediante uno de los micro-interruptores de configuración.

En el lado del ordenador, será necesario implementar algún tipo de aplicación que sea capaz de leer los datos que llegan por el puerto serie, interpretarlos, y dibujarlos en la pantalla, de forma que sean útiles, por ejemplo, para ajustar el funcionamiento de la placa.

Para ello he empleado el entorno de desarrollo llamado "Processing", http://processing.org y que fue creado por los muchachos del MIT (Massachusetts Institute of Technology) http://web.mit.edu/ , en EEUU, para este tipo de cosas.

Es un entorno pensado para programar en Java, en el que todo es muy sencillo y gratuito. Dispone de muchas clases ya implementadas, que facilitan enormemente el trabajo, ya sea para comunicaciones, como para visualización, o generación de gráficos. En concreto, el código fuente de la aplicación que he desarrollado para este proyecto, no ocupa más de dos folios (una vez compactado y revisado).

En el micro-controlador de la placa:

He añadido un gestor completo de la USART (puerto serie), cuya implementación me ha llevado bastantes días, ya que los ejemplos que encontré en Internet no funcionaban correctamente. Al final he tenido que desmontar el código fuente que proporciona el entorno Arduino (el único que encontré que funcionaba), para ver cómo lo hacen ellos, y trasladarlo al compilador AVR.

Cable de conexión:

El micro-controlador de la placa exporta los datos mediante un puerto serie, pero el ordenador solo tiene puertos USB. Por ello es necesario utilizar un cable que los adapte.

Yo tenía este adaptador,

http://www.bricogeek.com/shop/conversores-serie-usb/53-interfaz-microusb-mb5.html

así que me hice a mano el resto del cable.

Pero venden el cable ya montado, una opción mucho mejor:

http://www.bricogeek.com/shop/391-cable-ftdi-5v.html

Visualización del funcionamiento del conjunto placa-motor, mediante Processin

Por fin, hemos conectado la placa al ordenador, mediante la configuración e implementación de un puerto serie. De esta forma, uno de nuestros micro-controladores prepara paquetes de datos, que envía al PC mediante el puerto serie, y este los visualiza mediante un programita específico.

Vídeos de las pantallas Processing en ejecución.

A continuación muestro dos vídeos, donde se ve cómo se comporta el motor ante el arranque y las variaciones de velocidad indicadas por el potenciómetro de mando, y el trabado del eje.

Estos dos momentos son los que mejor definen el grado de ajuste del regulador PI, así que a partir de ahora haremos muchas pruebas en estas condiciones de trabajo.

Arranque del motor y seguimiento de la velocidad de consigna, indicada por el potenciómetro.

La placa de potencia está conectada, vía puerto serie, al portátil.

Al arrancar la placa, el motor se pone a girar, en función de lo que marque el potenciómetro de mando.

Los valores de la velocidad de giro del motor (estimada a partir de su modelización matemática), de la medida de corriente consumida, y de la velocidad que dice el potenciómetro que hemos de alcanzar, se envían desde el micro de la placa, al ordenador, y este los pinta en la pantalla, en esos ejes coordenados.

Vamos, que es una pantalla de visualización de datos del motor......

Trabado del eje del motor.

Al trabar el motor, el doble bucle PI entra en acción, para intentar re-establecer la velocidad de la máquina. En el vídeo se aprecia cómo sube la corriente consumida (gráfica en rojo), mientras que la velocidad de la máquina (en azul) sigue perfectamente a la velocidad deseada que nos marca el potenciómetro de mando (en verde).

Mejoras en el entorno de pruebas.

Aprovechando que tengo unos días libres, he compatibilizado la aplicación Processing, a Windows 7. Como se ve en la foto, la pantalla de datos es ahora la de un pequeño netbook de 8,9", mucho más manejable...