Introducción
In a previous reading >, escribimos una salida utilizando el XOD IDE, que es un lenguaje de programación visual gratuito, de código abierto y multiplataforma para microcontroladores y útil para aplicaciones industriales. También es un programa de PLC.
En esta entrada del blog, vamos a leer una entrada, tanto digital como analógica, con este increíble software de código abierto y un PLC Arduino, ¡gracias a la automatización de Arduino!
Últimas publicaciones
Requisitos
- Industrial Arduino based PLC >
- Fuente de alimentación >
- Cable tipo B para programar el controlador industrial Arduino.
- Algo para añadir algo de tensión a la entrada.
XOD.IDE
El XOD.IDE es un software de código abierto para programar microcontroladores como las placas Arduino, utilizando objetos visuales en lugar de texto para codificar.
Si vas a la página web de XOD.IO >podrás lanzar el IDE del navegador o descargar el IDE del escritorio.
Ahora, vamos a utilizar el IDE del navegador, para que veas que también hay una versión online del IDE para desarrollar tu aplicación. Así que, haz clic en Launch Browser IDE y ¡comencemos!
En el sitio web XOD.IO/IDE, aparecerán unos textos en el parche con un poco de explicación e incluso ejercicios para ayudarte a aprender fácilmente.
La gran zona gris con recuadros y texto es el programa en sí, donde se va a programar. Se llama parche, y son como documentos o archivos fuente en otros sistemas. Un proyecto está hecho por múltiples parches.
En la parte izquierda, encontrarás una lista de parches agrupados por el nombre de un proyecto o librería. La lista de estos parches se llama Navegador de Proyectos. Si los expandes, podrás encontrar más.
Lectura de una entrada analógica
En esta entrada del blog, vamos a utilizar el parche xod / gpio / analog-read para obtener los valores de entrada. Sigue estos pasos:
1. Despliega la lista de xod/gpio, y arrastra y suelta el nodo de lectura analógica al parche.
En la configuración del nodo, selecciona el pin de Arduino que corresponde a la entrada del controlador PLC, y sustituye el puerto A0 por D + el de tu controlador lógico programable.
Por ejemplo: En nuestro caso, estamos utilizando un M-Duino 21+ industrial PLC. Si queremos probar la entrada I0.12, el pin del Arduino que corresponde a esa entrada es el 59. Por tanto, sustituiremos el A0 por el D59.
2. Ahora, haz doble clic en el nodo de lectura analógica y en el nodo not-implemented-in-xod. Por defecto, las líneas 21 y 24 tienen esta línea:
emitValue<output_VAL>(ctx, ::analogRead(constant_input_PORT) / 1023.);
Elimina: /1023. y sustitúyelos por la línea de abajo para obtener un valor analógico y no digital:
emitValue<output_VAL>(ctx, ::analogRead(constant_input_PORT));
3. Vuelve al parche, expande la lista xod/debug, y arrastra y suelta el nodo watch. Conéctalo al puerto VAL desde el nodo de lectura analógica.
4. Ve al menú > Despliega > Upload to Arduino... > Selecciona la placa Arduino de tu PLC basado en Arduino > Selecciona el Serial Port > Haz clic en el botón de verificación: Depurar después de subir. Y sube.
5. Por último, añade un poco de tensión a la entrada, ¡y obtén valores en tiempo real de tu entrada!
Lectura de una entrada digital
Para la entrada digital, haz lo mismo sin modificar ningún código.
1. Arrastra y suelta el nodo de lectura digital. Modifica el puerto sustituyendo D0 por D22 (para la entrada I0.0 en M-Duino21+).
En tu caso, sustituye D0 por el pin del Arduino que corresponda a la entrada del PLC que quieras probar.
2. Añade el nodo xod/debug/watch. Conéctalo al puerto SIG del nodo de lectura digital.
3. Ve al menú > Despliega > Upload to Arduino... > Selecciona la placa Arduino de tu PLC basado en Arduino > Selecciona el Serial Port > Haz clic en el botón de verificación: Depurar después de subir. Y sube.
4. Añade un poco de tensión a la entrada I0.0 y observa cómo el nodo del reloj cambia de estado.
XOD.IO y PLC basado en Arduino: Cómo leer una entrada