Cómo hacer una aplicación de escritorio con MyOpenLab para interactuar con Arduino

Vamos a crear un proyecto desde cero con Arduino UNO y el software MyOpenLab, si aun no lo tienes, te dejo toda la información aquí

Materiales:

  • Arduino UNO o NANO y su cable USB
  • PC
  • Leds de colores
  • Pulsador
  • Resistencia de 4.7k
  • Cables y protoboard
Requisitos:
  • Software MyOpenLab
  • Tener instalado en la Arduino UNO el sketch "StandardFirmata"
Usaremos el sketch StandardFirmata para controlar de manera estandarizada nuestra placa desde una aplicación de PC en  MyOpenLab. La lógica del sistema que desarrollamos la implementamos en el computador y usamos una placa Arduino como esclavo para llevar los resultados al mundo exterior a través de sus puertos.

¿Pero que es firmata?
Es un protocolo de comunicación estandarizado similar al MIDI que se puede implementar en cualquier microcontrolador básico de 8 bits y usa como capa física un puerto serial. Está orientado a permitir el control de sus puertos analógicos y digitales del microcontrolador desde un dispositivo externo.

Aquí esta la documentación oficial del protoccolo, cual es su estructura y sus reglas, es muy simple y esta abierto para que cualquiera lo pueda adaptar a sus necesidades:

¿Que es StandardFirmata.ino?
Es un sketch de Arduino que viene en los ejemplos preinstalados en el Arduino IDE. Su función es de implementar el protocolo firmata y la logica necesaria para controlarla por el puerto serial que a su vez esta conectado internamente a un convertidor Serial/USB. Nos permite tomar el control desde el PC usando cualquier aplicación o entorno compatible con el protocolo firmata.

Aquí les dejo una captura de como encontrar el ejemplo dentro del IDE de Arduino:

Hardware
El circuito electrónico es que vamos a implementar en esta prueba es el siguiente:
Te dejo una ilustración mas detallada con los colores de las resistencias:

El LED lleva en serie una resistencia para limitar su corriente, su valor recomendado es de 330ohm y en caso de no tener a la mano ese valor puedes usar otra entre 330 y 1k.
El pulsador tiene una resistencia que cuyo valor puede estar entre 4.7k y 20k. En este caso he usado 10kohm como resistencia de "pull up" para polarizar esa entrada digital con 5V mientras el pulsador este abierto, en este estado la  entrada se encuentra en 1 lógico. Cuando presionamos el pulsador la entrada digital queda cortocircuitada con GND lo que equivale a un 0 lógico.

Software
En MyOpenLab montamos el siguiente "VM" 



Las propiedades del bloque firmata deben quedar así:


Espero que este tutorial sea de ayuda, por favor no olviden suscribirse al canal en YouTube: youtube.com/aquilesvaesa

Tu puedes crear tu propia pieza de hardware basado en Arduino para intercambiar datos con el PC, tal vez crear tu propio shield, o una placa totalmente personalizada con las entradas y salidas que requieras para un proyecto en especifico. Si bien fabricar una placa de circuito impreso es un proceso un tanto complejo, existen empresas como PCBWay que fabrican tus prototipos y producciones a un bajísimo coste con envíos a cualquier parte del mundo. 
PCBWay esta disponible en idioma español y es muy fácil subir y cotizar nuestros diseños. Tienen un excelente servicio de fabricación de PCB multicapa, circuitos flexibles, construcción de carcasas y piezas con múltiples técnicas de impresión 3D.




Publicar un comentario

0 Comentarios