Como se conectan aplicaciones.

Hace unos cuantos años cuando empece en el mundo del mantenimiento industrial, en mis primeras prácticas llevaba el mantenimiento de una instalación electromecánica. Desde un ordenador, controlaba la maquinaria desde velocidades de línea, hasta el estado de las diferentes partes de gobierno. Generalmente un operario, hasta hacía poco era el encargado en cada máquina activar las funciones específicas para cada acción. Eso implicaba un tiempo extra y una perdida de recursos tanto energéticos como económicos pues la empresa tenía que disponer de varios trabajadores.

Con el augue de lo automatas programables y las redes de telecomunicaciones, los automatismos empezarón a mejorar la productividad en las empresas. Ahora se podían conectar las máquinas a sistemas telemáticos para que se pudiesen llevar la producción desde el propio ordenador y gracias a programas específicos para dicha maquinaria.

Ese mismo proceso se lleva a cabo también mediante Arduino. Con un programa externo a Arduino se puede gobernar la placa (no solo con el IDE de Arduino). En esta práctica veremos como gobernar Arduino mediante un control desde un programa de VB.NET simplemente compartiendo una conexión serie con este shield.

Para esta practica necesitarás:

Una placa Arduino UNO.
Un entorno de desarrollo IDE de VS.NET.

Entonces en esta práctica aprenderás a conectar un dispositivo conectado en un mismo sistema mediante diferentes formas. Eso es la conectividad.

Constructor en VB.NET.

Construir una aplicación que se conecte con la placa o shield Arduino, Raspberry, o PIC es tan sencillo como tener instalado un editor en cualquier lenguaje de programación y conectar la placa a dicho ordenador para que se pueda reconocer y activar desde ella. Es importante saber como se conecta dicha placa y si será fisicamente a través de cableado USB o través de calble de red RJH45 o una red inalambrica.

NOTA: Para conectar a una red inalámbrica necesitarás un módulo extra como el ESP8266 disponible en tiendas de electrónica y en la red.

redes arduino y componentes

Primero abre la aplicación que te podrás descargar desde el menú inferior de descargas y ejecuta el skecth. Abre el Monitor serie (Crt + Mayus + M) e introduce el número 1.

Introducir valor desde el monitor serie

Esto consigue que se encienda el Led del arduino en el siguiente circuito.

Encendido Led desde monitor serie

Si introduces el cero y pulsas Intro, se apagará el Led. Con el IDE de Arduino podríamos llevar el control de un sistema de máquinarias aprovechando las salidas digitales y las entradas de la placa, pero el IDE no suele utilizarse sobre empresas tecnológicas, sino que suelen aprovechar programas específicos y diseñados en lenguajes de programación como VB.NET, python, Java, o aplicaciones Web de Eclipse, entre otros.

Abre el programa de VB.NET ArduinoLED y, verás una interfaz muy sencilla (pues la finalidad de dicha aplicación es aprender y no la creación de una aplicación profesional).

ArduinoLED en VB.NET

Lo primero que tienes que hacer es conectarte al puerto libre. Cuando pulsas sobre el ComboBox, se te abre una ventana de opciones en las que puedes conectar al puerto. Para saber a qué puerto está conectado tu Arduino, abre la consola de comandos o la ventana de Ejecutar y escribe el comando devmgmt.msc. Se te abrirá el Administrador de dispositivos conectados a tu máquina y verás que en la opción de puerto, verás el puerto al que está conectado el Arduino que en mi caso, es el COM3.

administrador de dispositivos en Windows10

Pues ahora solo tienes que conectarte al puerto COM específico.

Problemas.
Puede ocurrir que el programa te muestre una serie de errores que tendrás que tener en cuenta. El más habitual es que el puerto al que te vas a conectar esté siendo utilizado por alguna otra aplicación.

Puerto COM3 utilizado por otra aplicación

Si te fijas con detalle, tengo abierto el monitor serial que está utilizando el puerto COM3. Recuerda que los puertos se conectan en serie con el dispositivo, por lo que solo puede existir una configuración entre Arduino y la aplicación. Como ahora esta comunicado Arduino con el monitor serial, el puerto COM3 está siendo utilizado.

Pues cierra el monitor serie (si lo has abierto), y pulsa sobre el botón de Conectar. Te avisará el programa de que estás conectado.

conectado al puerto COM3

Ahora si pulsas el botón de Encender, se encenderá el LED de la placa Arduino y si pulsas sobre el boton de Apagar, se apagará el LED. Sencillo, ¿verdad?

Conexión mediante CMD.

Como puedes darte cuenta, la placa Arduino se conecta al puerto COM3 (en mi caso), que es un puerto serie. Dicho puerto anteriormente, lo he utilizado con una aplicación en VB.NET que he mandado datos desde la misma a través del puerto COM3 para activar y dasactivar el LED. En una misma máquina podemos realizar la misma función desde la propia consola de comandos.

Conectar arduino mediante CMD

Con la instrucción echo 1 > com3 mandamos un valor de 1 al puerto serie, por lo que el diodo LED se encenderá. Con echo 0 >com3 mandamos un cero y el LED se apaga.

La comunicación está supeditada a que el puerto COM3 esté libre y que ninguna aplicación esté usándolo en ese momento (como pasó en el punto anterior con la aplicación en VB.NET y el monitor serial del IDE de Arduino). Si no es así, la consola de comandos de Windows, devolverá un error de comunicación:

acceso denegado porque el puerto COM3 esta ocupado por otra aplicación

Conector con putty.exe.

Putty.exe es una aplicación que nos sirve para comunicarnos con varios protocolos de red. Te puedes descargar la versión para tu S.O desde el siguiente Enlace.

Existe una versión portable, que te recomiendo que te descargues pues así no tendrás que descargar el programa entero para realizar la prueba.

Abre el Putty.exe y podrás ver que su entorno es sencillo en el cual puedes introducir una dirección IP y un puerto y seleccionar el tipo de comunicación que queremos. Existen cinco tipos de comunicación, y que, como el objetivo del capítulo es la comunicación serie, utilizaremos el puerto COM3 en su comunicación serial.

comunicación serie con putty.exe

Simplemente (y recuerda que si el puerto COM3 no está ocupado), dale al botón de Open y se te abrirá la consola putty.

Si pulsas el teclado 1, se encenderá el Led y aparecerá el mensaje de Encendido.

Encendido

Si pulsas el botón del teclado 0, se apagará el Led y aparecerá el mensaje de Apagado.

Apagado

Existen más opciones a la hora de conectar tu placa Arduino a través del puerto serie. En este capítulo has visto unas cuantas por lo que te pone en camino para que investigues por tu cuenta los métodos de conexión y protocolos para la conexión electrónica de tus productos Arduino. Hasta el siguiente capítulo, puedes ver el vídeo de como proceder a la conexión serie en Arduino en la pestaña de video.