Arduino Como PLC PDF
Arduino Como PLC PDF
Arduino Como PLC PDF
¿Qué es arduino?
Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un
entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos
multidisciplinares.
Barato: Las placas Arduino son relativamente baratas comparadas con otras
plataformas microcontroladoras. La versión menos cara del módulo Arduino puede ser
ensamblada a mano, e incluso los módulos de Arduino preensamblados.
Multiplataforma: El software de Arduino se ejecuta en sistemas operativos Windows,
Macintosh OSX y GNU/Linux. La mayoría de los sistemas microcontroladores están
limitados a Windows.
Entorno de programación simple y clara: El entorno de programación de Arduino es
fácil de usar para principiantes, pero es flexible para que usuarios avanzados
puedan aprovecharlo también.
Código abierto y software extensible: El software Arduino está publicado como
herramientas de código abierto, disponible para extensión por programadores
experimentados. El lenguaje puede ser expandido mediante librerías C++, y la gente
que quiera entender los detalles técnicos pueden hacer el salto desde Arduino a la
programación en lenguaje AVR C en el cual está basado. De forma similar, puedes
añadir código AVR-C directamente en tus programas Arduino si quieres.
GAMMA Consulting
Tipos de arduino.
Modelo Características
Pines digitales.
Pines digitales: Cada uno de los 14 pines digitales de Arduino puede ser usado como entrada o
salida digital. Operan a 5 voltios y su resolución es de 8 bits. Los valores entre 0 y 5 voltios los pone
a valores entre 0 - 255. Cada pin puede proporcionar o recibir un máximo de 40 mA y tiene una
resistencia interna (desconectada por defecto) de 20 -50 KOhms.
Pines serie Rx y Tx : Se encuentran en los pines digitales 0 y 1 y sirven para recibir transmitir datos
(TTL) de información serial. Están conectados al chip FTDI, el cual hace conversión de USB a serie-
TTL.
LED: 13. Hay un LED empotrado conectado al pin digital 13. Cuando el pin está a valor HIGH, el LED
está encendido, cuando el pin está a LOW, está apagado.
Pines analógicos.
La placa Arduino posee 6 canales conectados a un conversor analógico digital de 10 bits. Esto
significa que convertirá tensiones entre 0 y 5 voltios a un número entero entre 0 y 1023.
Esto proporciona una resolución en la lectura de: 5 voltios / 1024 unidades, es decir, 0.0049 voltios
(4.9 mV) por unidad.
Por defecto miden 5 voltios desde tierra, aunque es posible cambiar el valor más alto de su rango
usando el pin AREF y algún código de bajo nivel. Además, algunos pines tienen funcionalidad
especializada.
¿Qué es PLC?
El significado en español de PLC es controlador lógico programable, o por sus siglas en inglés PLC
(Programmable Logic Controller) o por autómata programable, es una computadora utilizada en la
ingeniería automática o automatización industrial, para automatizar procesos electromecánicos,
electroneumáticos, electrohidráulicos, tales como el control de la maquinaria de la fábrica en
líneas de montaje u otros procesos de producción así como atracciones mecánicas.
GAMMA Consulting
Los PLC son utilizados en muchas industrias y máquinas. A diferencia de las computadoras de
propósito general, el PLC está diseñado para múltiples señales de entrada y de salida, rangos de
temperatura ampliados, inmunidad al ruido eléctrico y resistencia a la vibración y al impacto. Los
programas para el control de funcionamiento de la máquina se suelen almacenar en baterías,
copia de seguridad o en memorias no volátiles.
Lenguaje Ladder.
El lenguaje ladder, diagrama ladder, diagrama/lógica de contactos, o diagrama en escalera, es un
lenguaje de programación gráfico muy popular dentro de los PLC debido a que está basado en los
esquemas eléctricos de control clásicos. De este modo, con los conocimientos que todo técnico o
ingeniero eléctrico posee, es un poco más sencillo ya que se familiariza con los símbolos, pero
también tiene su detalle, ya que hay que saber algo de lógica en programación, no son solo
símbolos si no también hay saber pensar, para así nosotros interpretar o programar algún proceso
automatizado.
Ladder es uno de los varios lenguajes de programación para los controladores lógicos
programables (PLCs).
GAMMA Consulting
Programación Ladder.
En este parte de la programación se trata de modo general, los conceptos básicos de
programación en Ladder. Una vez conocidos los elementos que Ladder proporciona para su
programación, se vuelve sencillo interpretar o crear un diagrama.
Sistemas combinacionales.
Aunque en los sistemas industriales la programación se centra en procesos secuenciales, no
teniendo demasiado interés los procesos combinacionales, es necesario conocer la lógica
combinacional ya que en muchas ocasiones es necesaria en la programación secuencial.
GAMMA Consulting
Una vez obtenida la función lógica de un problema combinacional, el paso a Ladder o esquema de
contactos es muy sencillo. De acuerdo con el álgebra de Boole aplicada a la conmutación, las
sumas serán contactos en paralelo, los productos contactos en serie y las negaciones contactos
normalmente cerrados. En la siguiente imagen se muestra un ejemplo de esquema LADDER para
una determinada ecuación.
Elementos de memoria.
La conexión tradicional para realizar una función de memoria en los circuitos con relés, es el
circuito con auto alimentación. Esto se consigue mediante la conexión de un contacto NA del relé
(o contactor) en paralelo con el pulsador de arranque.
A continuación observaremos las dos variantes de este circuito: con prioridad a la desconexión y
con prioridad a la conexión.
Sin embargo, con LADDER el esquema puede quedar mucho más sencillo si empleamos las bobinas
de SET para la marcha y RESET para paro:
GAMMA Consulting
En este caso la prioridad dependerá del PLC utilizado, aunque usualmente la función RESET tiene
prioridad sobre la SET.
Software a utilizar.
Utilizaremos 2 softwares, uno para programar con el lenguaje ladder y el otro para poder pasar el
código a arduino.
Link:
https://drive.google.com/drive/folders/1KtvNTnUx4m-slcIiAVd1dvFESupI1O_n?usp=sharing
LDmicro.
Para este curso utilizaremos un software llamado Ldmicro, Ldmicro genera código nativo para
ciertos Microcontroladores Microchip PIC16 y Atmel AVR.
Los PLCs, por otro lado, se programan en Ladder, lenguaje escalera o de contactos, un programa
simple desarrollado en Ladder con alguno de estos microcontroladores podrá verse de la siguiente
manera así:
GAMMA Consulting
El programa se presenta en formato gráfico, no como una lista textual de instrucciones, muchas
personas inicialmente encontrarán esto más fácil de entender.
En el nivel más básico, los programas parecen diagramas de circuito, con contactos de relé
(entradas) y bobinas (salidas). Esto resulta más intuitivo para los programadores con conocimiento
de teoría de circuitos eléctricos. El compilador lógico del lenguaje de contactos se encarga de
cuándo, dónde y cómo se deben recalcular los estados del sistema.
No es necesario escribir código para determinar cuándo las salidas deben actualizarse por
ejemplo: sobre la base de un cambio en las entradas o en un temporizador, y no es necesario
especificar el orden en que estos cálculos deben tener lugar. Las herramientas del PLC hacen eso
por usted.
Descarga de software.
Lo puedes descargar desde esta página:
https://osimplc.com/docs/es/downloads.html
Daremos clic donde se señala en la imagen (LDmicro v5.4.0.4), puede irse actualizando la versión,
una vez presionado nos descargara un archivo de tipo zip.
Ese archivo lo descomprimimos en un lugar donde nosotros queramos, una vez descomprimido
tendremos lo siguiente:
Listo ya lo tenemos instalado, ahora solo falta ejecutar el programa y para esto tenemos los
archivos que dicen ldmicro.
GAMMA Consulting
Ahora seleccionamos el idioma que nosotros queramos, el por default es en ingles que es el
primero que se observa en la imagen, el de español es el 4 es que dice ldmicro-es, ese estaremos
usando a lo largo del curso, ahora solo dale doble clic para abrirlo y se observara de la siguiente
forma:
Esta sección es la de menú, aquí tendremos todas las funciones del programa como crear, abrir,
guardar etc., además de todos los símbolos que veremos con ladder y la compilación del archivo
para crear un archivo de tipo hexadecimal y subirlo a nuestra placa de arduino.
Como podemos observar podemos crear, abrir, guardar los archivos del software LDmicro, para el
segundo menú que es editar tenemos las siguientes opciones:
Las opciones que observamos son para la edición del entorno como insertar, copiar, pegar,
deshacer rehacer etc., ahora veamos el menú de configuración:
GAMMA Consulting
Este menú de opciones es para la configuración del microcontrolador que estemos usando, como
también configurar el tipo (AVR O PIC), además de parámetros como el oscilador que lleva el
microcontrolador, ahora vemos el menú instrucción:
Las opciones que tiene este menú son para el funcionamiento del entorno, ósea que tiene las
instrucciones para poder programar dentro del entorno en lenguaje ladder, ahora veamos el menú
de simulación:
En este menú al entrar en modo simulación una vez acabado nuestro diagrama en ladder, se
activaran las demás opciones, esto nos permite simular lo que tengamos desarrollado en el
entorno y nos sirve como previsualización de lo que se verá realmente en la placa al momento de
pasarlo, ahora veamos el menú de compilar:
GAMMA Consulting
En este menú podemos compilar nuestro diagrama de escalera para verificar que se encuentre
bien, en caso de que no esté nos arrojara un error y nos dirá que está mal, también como puedes
observar en la imagen tiene varias formas de compilar, con esto me refiero a los compiladores que
se le pueden añadir de otros entornos de programación, ahora veamos el menú configurar:
En este menú lo que podemos hacer es modificar el entorno, con esto me refiero a colores,
podemos escoger los que vienen integrados o hacer el de nosotros a nuestro gusto, por ultimo
veamos el menú de ayuda:
En este menú nos da opciones de ayuda para el entorno, como también para contactar a los
creadores del software por si llegáramos a tener un problema, podemos observar que hay foros,
cambios recientes y versiones a actualizar y descargar.
GAMMA Consulting
Después de explicar un poco todo lo anterior ahora veamos el entorno donde se trabaja todo el
diagrama
Aquí es donde estaremos viendo nuestros diagramas de escalera para poder programar, para
poder insertar líneas nuevas como contactos y bobinas, los encontramos en el menú de
instrucciones y de editar, más adelante veremos todo esto, ahora veamos la sección que se
encuentra en la parte inferior.
Aquí en esta sección estaremos viendo todo lo que insertaremos del diagrama (contactos,
bobinas, etc.), como también la configuración de los pines donde conectaremos todo lo de
hardware, con esto me refiero al microcontrolador que estaremos usando, veremos más adelante
como es que funciona.
En la parte inferior vemos una barra de estado, aquí nos indica que microcontrolador estamos
usando, a que frecuencia, y los ciclos que estará ejecutando el diagrama.
PIC16F628
PIC16F628A
PIC16F876
PIC16F877A
PIC16F88
PIC16F819
PIC16F886
PIC16F887
GAMMA Consulting
ATmega8
ATmega16
ATmega32
ATmega64
ATmega128
ATmega162
ATmega1284P
ATmega2560
Importante:
Los nombres de las variables pueden consistir en letras, números y subrayados “_”.
GAMMA Consulting
Elija el resto del nombre de la variable para que describa convenientemente lo que hace el
objeto, y de modo que sea único dentro del programa, además el mismo nombre siempre tiene
que referirse al mismo objeto dentro del programa.
Por ejemplo, sería un error tener un retardo a la conexión (TON) llamado TRetardo y un retardo a
la desconexión (TOF) llamado también TRetardo en el mismo programa, ya que cada temporizador
necesita su propio espacio de memoria.
XLoader.
Este software sirve para poder pasar el código generado por LDmicro a nuestro arduino, soporta
los siguientes arduinos:
Mega(ATMEGA1280)
Duemilanove/Nano(ATmega328)
Duemilanove/Nano(ATmega168)
Uno(ATmega328)
Mega(ATMEGA2560)
Una vez descargado los archivos de drive, verán una carpeta llamada XLoader, abren esa carpeta y
aparecerá lo siguiente:
Como podemos observar es muy sencillo, no tiene complicaciones, pero expliquemos todo a
detalle:
1. Hex file: En esta sección lo que haremos es presionar el botón que tiene los tres puntos
(…), una vez que los presionemos nos abrirá una ventana para que busquemos un
archivo hexadecimal, este archivo hexadecimal será creado por LDmicro cuando
hayamos creado nuestro programa.
2. Device: En este campo es simplemente seleccionar que tipo de arduino tenemos.
3. COM port: Para este campo tendremos que tener conectado el arduino para que
detecte en que puerto se encuentra y así poder tener comunicación con el
microcontrolador y poder cargar el programa al arduino.
4. Baud rate: Es la velocidad en baudios (hay que dejarlo por default).
5. Upload: Una vez cargado el programa, seleccionado el dispositivo, tener el arduino
conectado con su respectivo puerto, presionaremos el botón Upload para cargarlo al
arduino.
6. About: Habla únicamente acerca del software.