Arduino como PLC

Iniciado por Andr0z, Mayo 21, 2020, 04:19:27 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

En este aporte les mostrare como programar un Arduino como si se tratara de un PLC (programación en escalera) usando un compilador demasiado bueno para ser abierto, se trata de LD micro.

Empezaremos viendo como se enciende un diodo LED mediante un "Push Button",(los recursos para el tutorial se encuentran al inferior del aporte). Primero abrimos LDmicro:

Img1. LD micro

Nota:El borde Izquierdo significa nuestra fuente, mientras el borde derecho nuestra tierra.

Después vamos a "Instructions" y dentro de esa pestaña seleccionamos "Insert Contacts"(short cut 'C'). Nota: El contacto se insertara en la posición de la línea en la que estemos, finalmente nuestro contacto insertado se vería como sigue:

Img2. Contactos LDmicro

Ahora, el contacto insertado funcionara como nuestro botón pero ahora necesitamos una salida para activar el LED, para hacer esto vamos a "Instructions" y ya dentro, seleccionamos "insert Coil"(short cut 'L'):

Img3. Salida LDmicro

Ahora queda configurar como entradas y salidas, para esto, damos doble "click" a cada elemento y configuramos como se muestra a continuación:

   
Img3,4. configuración de contacto y salida

Por default el "Coil" lo entiende ldmicro como salida, por tal motivo no permite configurarlo como pin de entrada.

Una vez configurados los elementos, necesitamos preparar el programa para compilarlo, para esto vamos a "Settings"-->"Microcontrollers" y seleccionamos el Atmel AVR Atmega 324-40PDIP (Arduino UNO), ya hemos seleccionado nuestro microcontrolador, ahora necesitamos configurar nuestros elementos con las entradas físicas de nuestro Arduino, que en este caso es el UNO. la configuración física se ve al inferior del programa:

Img6. Configuración física

En base a la imagen anterior podemos ver en la parte resaltado en blanco del programa,  información referente a la configuración física de nuestros elementos, los dos de tipo digital, uno de entrada y otro de salida, a nosotros lo que nos interesa es configurar el pin con el cual se va a configurar, para saber con cual pin configurar cada elemento tomaremos de referencia la siguiente imagen:

Img7. Pinout Atmega 324-40


Si queremos el pin 12 del Arduino como entrada y el pin 13 como salida tendríamos que configurar el elemento del "push Button " con el PB4 del pinout y el LED con el PB5, para hacerlo le damos doble "click" a cada línea del elemento y asignamos un pin físico, finalmente se tendría que ver como:

Img8. Asignación de pines

Ya terminamos de programar correctamente nuestro Arduino como PLC, si se desea antes de compilar se puede simular en LDmicro en "Simulate"-->"Simulate Mode" y luego lo corremos en tiempo real "Start Rel-Time Simulation". para cargar el programa, le damos en compile para generar el archivo .hex que se cargara al Arduino. para cargar el archivo .hex, necesitaremos XLoader:

Img9. XLoader

Una vez abierto XLoader, abrimos el archivo .hex compilado, seleccionamos el tipo de Arduino así como el puerto en el que esta conectado el arduino y finalmente le damos en "Upload", y esperamos a que cargue. Y listo hemos programado el arduino como PLC.

La conexión se muestra a continuación:

Img10. Conexión en proteus

Enlace de Descarga:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Recursos Adicionales:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta