0% encontró este documento útil (0 votos)
48 vistas166 páginas

Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ingeniería Mecánica Eléctrica

El documento presenta un trabajo de graduación sobre la implementación del PIC PLC en el laboratorio de Electrónica III de la Universidad de San Carlos de Guatemala. Se abordan conceptos básicos sobre PLC y PIC, así como prácticas y análisis económico en comparación con otros sistemas. El trabajo incluye agradecimientos, un índice detallado y se dedica a diversas influencias en la vida del autor.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
48 vistas166 páginas

Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ingeniería Mecánica Eléctrica

El documento presenta un trabajo de graduación sobre la implementación del PIC PLC en el laboratorio de Electrónica III de la Universidad de San Carlos de Guatemala. Se abordan conceptos básicos sobre PLC y PIC, así como prácticas y análisis económico en comparación con otros sistemas. El trabajo incluye agradecimientos, un índice detallado y se dedica a diversas influencias en la vida del autor.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Universidad de San Carlos de Guatemala

Facultad de Ingeniería
Escuela de Ingeniería Mecánica Eléctrica

IMPLEMENTACIÓN DEL PIC PLC AL LABORATORIO DE ELECTRÓNICA III

Juan Alejandro Ortíz Chial

Asesorado por el Ing. Enrique Sarvelio Ortíz Chial

Guatemala, mayo de 2018


UNIVERSIDAD DE SAN CARLOS DE GUATEMALA

FACULTAD DE INGENIERÍA

IMPLEMENTACIÓN DEL PIC PLC AL LABORATORIO DE ELECTRÓNICA III

TRABAJO DE GRADUACIÓN

PRESENTADO A LA JUNTA DIRECTIVA DE LA


FACULTAD DE INGENIERÍA
POR

JUAN ALEJANDRO ORTÍZ CHIAL

ASESORADO POR EL ING. ENRIQUE SARVELIO ORTÍZ CHIAL

AL CONFERÍRSELE EL TÍTULO DE

INGENIERO ELECTRICISTA

GUATEMALA, MAYO DE 2018


UNIVERSIDAD DE SAN CARLOS DE GUATEMALA
FACULTAD DE INGENIERÍA

NÓMINA DE JUNTA DIRECTIVA

DECANO Ing. Pedro Antonio Aguilar Polanco


VOCAL I Ing. Angel Roberto Sic García
VOCAL II Ing. Pablo Christian De León Rodríguez
VOCAL III Ing. José Milton De León Bran
VOCAL IV Br. Óscar Humberto Galicia Núñez
VOCAL V Br. Carlos Enrique Gómez Donis
SECRETARIA Inga. Lesbia Magalí Herrera López

TRIBUNAL QUE PRACTICÓ EL EXAMEN GENERAL PRIVADO

DECANO a.i. Ing. Angel Roberto Sic García


EXAMINADOR Ing. Bayron Armando Cuyán Culajay
EXAMINADOR Ing. Julio Rolando Barrios Archila
EXAMINADOR Ing. Jorge Gilberto González Padilla
SECRETARIO Ing. Hugo Humberto Rivera Pérez
HONORABLE TR¡BUNAL EXAMINADOR

En cumplimiento con Ios preceptos que establece la ley de la Universidad de


San Carlos de Guatemala, presento a su consideracién mi trabajo de
graduación titulado:

IMPLEMENTACIÓN DEL PIC PLC AL LABORATORIO DE ELECTRÓNICA I¡I

Tema que me fuera asignado por la Dirección de la Escuela de lngeniería


Mecánica Eléctrica, con fecha 01 de julio de 2011.

Ghial
ACTO QUE DEDICO A:

Dios Por ser una importante influencia en mi carrera,


entre otras cosas.

Mis padres Benjamin Ortíz y Mecedez Chial, por el apoyo


que me brindaron durante mis estudios.

Mis hermanos Por brindar apoyo, cariño y comprensión.

Mi hijo Berner Benjamin Ortíz Torres, quien me ha


dado la fortaleza de ser mejor cada día.
AGRADECIMIENTOS A:

Universidad de San Por darme la oportunidad de formar parte de


Carlos de Guatemala esta gran casa de estudios.

Facultad de Ingeniería Por brindarme todas las herramientas para


poder desempeñarme como un profesional.

Escuela Mecánica Por haberme dado el conocimiento necesario


Eléctrica para poder ser un profesional de éxito.
ÍNDICE GENERAL

ÍNDICE DE ILUSTRACIONES ........................................................................... III


LISTA DE SÍMBOLOS ....................................................................................... IX
GLOSARIO ........................................................................................................ XI
RESUMEN ....................................................................................................... XIII
OBJETIVOS ......................................................................................................XV
INTRODUCCIÓN ............................................................................................ XVII
1. CONCEPTOS BÁSICOS .......................................................................... 1
1.1. ¿Qué es el PLC? ........................................................................ 1
1.1.1. CPU .......................................................................... 3
1.1.2. Memoria .................................................................... 4
1.1.3. Tipos de memoria ..................................................... 5
1.1.4. Entradas y salidas .................................................... 5
1.1.5. Alimentación eléctrica .............................................. 6
1.1.6. Unidades de programación ....................................... 6
1.2. ¿Qué es el PIC? ......................................................................... 9
1.2.1. Presentación física del controlador de interface
periférica PIC .......................................................... 10
1.2.2. Partes del PIC......................................................... 11
1.3. ¿Qué es el PIC PLC? ............................................................... 12
1.4. Lenguajes de programación del PIC........................................ 17
1.4.1. Lenguaje Basic ....................................................... 18
[Link]. Estructura de un programa Basic ........ 19
1.4.2. Lenguaje C ............................................................ 28
1.4.3. Lenguaje Assembler ............................................... 36
1.5. Lenguajes de programación de PLC ....................................... 44

I
1.6. Ventajas y desventajas de programación del PIC y el
PICPLC .................................................................................... 51
1.6.1. Interfaces del PIC con la computadora ................... 54
1.6.2. Interfaces del PLC con la computadora ................. 63
1.6.3. Ventajas de los programas en los sistemas
operativos existentes .............................................. 75
2. PRÁCTICAS DEL PIC PLC .................................................................... 81
2.1. Prácticas en sistemas eléctricos .............................................. 81
2.2. Prácticas en sistemas neumáticos e hidráulicos ..................... 91
2.3. Ventajas y desventajas de aplicar el PIC PLC ....................... 102
3. MODELOS Y ACCESORIOS EXISTENTES DE PIC PLC ................... 105
3.1. Fabricantes ............................................................................ 105
3.1.1. Mikroelektronika.................................................... 105
3.1.2. Industrial Shields .................................................. 105
3.1.3. Controllino............................................................. 106
3.2. Ubicación del fabricante ........................................................ 106
3.3. Tipos y características del PIC PLC ...................................... 108
3.3.1. Mikroelektronika.................................................... 108
3.3.2. Industrial Shields .................................................. 109
3.3.3. Controllino............................................................. 110
3.3.4. Implementación del PIC PLC al laboratorio de
electrónica III ........................................................ 112
4. ANÁLISIS ECONÓMICO DEL PIC PLC EN COMPARACIÓN CON
EL PLC ................................................................................................. 117
4.1. Estudio de ingeniería ............................................................. 117
4.2. Análisis costo-beneficio ......................................................... 127
CONCLUSIONES ........................................................................................... 131
RECOMENDACIONES ................................................................................... 133
BIBLIOGRAFÍA ............................................................................................... 135

II
ÍNDICE DE ILUSTRACIONES

FIGURAS

1. Estructura básica de un PLC .................................................................. 3


2. Representación de un bit ....................................................................... 4
3. Representación de un byte .................................................................... 4
4. Representación de una palabra ............................................................. 5
5. Ejemplo de unidad de programación ...................................................... 6
6. Computadora utilizada para programación de PLC................................ 7
7. Controlador lógico programable (PLC) ................................................... 8
8. Módulo de comunicación........................................................................ 8
9. Diagrama de bloque de PIC ................................................................... 9
10. Diagrama de bloques PIC .................................................................... 10
11. Encapsulado de microcontroladores .................................................... 10
12. Pic PLC modelo PICPLC16v6 .............................................................. 13
13. Módulo de Ethernet .............................................................................. 14
14. Módulo RTC ......................................................................................... 14
15. Módulo de soporte externo................................................................... 15
16. Módulo de relés .................................................................................... 15
17. Módulo GSM ........................................................................................ 15
18. Módulo GSM audio............................................................................... 16
19. Módulo TFT .......................................................................................... 16
20. Módulo de 7 segmentos ....................................................................... 16
21. Estructura de un programa en Basic .................................................... 20
22. Ejemplo de subrutina............................................................................ 22
23. Ejemplo de programa Basic ................................................................. 28

III
24. Estructura básica de un programa en C ............................................... 30
25. Representación gráfica de almacenamiento en la memoria ................. 31
26. Ejemplo de instrucción if-else ............................................................... 32
27. Ejemplo de condición while .................................................................. 33
28. Sentencia switch .................................................................................. 33
29. Definición de una variable tipo puntero ................................................ 34
30. Ejemplo led que parpadea cada 200 ms .............................................. 35
31. Ejemplo led que parpadea cada 200ms ............................................... 43
32. Programa utilizando el lenguaje SFC. .................................................. 47
33. Lenguaje de programación FBD........................................................... 48
34. Lenguaje tipo LAD ................................................................................ 48
35. Relación entre CODESYS y un PLC. ................................................... 51
36. Programador con zócalo ZIF de 40 pines. ........................................... 55
37. Posición de colocación de PIC de acuerdo al número de pines. .......... 56
38. Circuito grabador de microcontroladores ............................................. 57
39. Conexión del microcontrolador al circuito de grabación para puerto
paralelo ................................................................................................ 58
40. Cable macho DBS25, circuito grabador de PIC para puerto paralelo .. 59
41. Configuración IC-PROG en sistema operativo Windows XP ................ 60
42. Grabador de microcontroladores PIC ................................................... 61
43. Pantalla Pic info muestra características del circuito seleccionado ...... 62
44. Ventana de programa USBPICPROG .................................................. 63
45. Plc con puerto serial, módulo PLC puerto serial, computadora con
puerto serial, cable serial ..................................................................... 64
46. Driver de un PLC de la marca Scheneider ........................................... 67
47. Esquema de conexión de un PC-PLC .................................................. 68
48. Ejemplo de trama ................................................................................. 69
49. Interfaz hombre-máquina (HIM) ........................................................... 70
50. Dispositivos en red PPI ........................................................................ 71

IV
51. Red PPI monomaestro ......................................................................... 72
52. Red PPI multimaestro .......................................................................... 72
53. Polarización y cierre de red. ................................................................. 73
54. Pantalla de un SCADA en Kimberly Clark ............................................ 74
55. Simulador de PIC y otros componentes de Picsum ............................. 77
56. Simulador PLC S-200........................................................................... 79
57. Pantalla de inicio de VirPLC ................................................................. 79
58. Programa LDmicro ............................................................................... 83
59. Ventana emergente de contactos......................................................... 84
60. Formato final del programa LDmicro editado de acuerdo al circuito
a trabajar .............................................................................................. 84
61. Configuración de biblioteca ladder.h .................................................... 86
62. Continuación de configuración de biblioteca ladder.h .......................... 87
63. Declaración de variables y pines .......................................................... 88
64. Código de carga de programa .............................................................. 89
65. Módulo de cuatro relés para Arduino ................................................... 90
66. Circuito esquemático de un canal de salida ......................................... 91
67. Características de la placa de Relay Shied V2.1.................................. 92
68. Diagrama de un relé ............................................................................. 93
69. Circuito neumático y circuito eléctrico .................................................. 94
70. Parte del sistema, estamparadora electroneomática: 1. Fuente de
alimentación, 2. Arduino uno, 3. Cilindro alimentador, 4. Cilindro
estampador, 5. Cilindro extractor ......................................................... 96
71. Esquema de cilindros ........................................................................... 97
72. Diagrama eléctrico con transistor 2n222 ............................................ 101
73. Diagrama eléctrico por optoacoplador................................................ 102
74. PLC ABB AC500 ................................................................................ 124

V
TABLAS

I. Definición de parámetros de variable Define........................................ 23


II. Definición de variable ........................................................................... 23
III. Definición de constantes ...................................................................... 25
IV. Operadores aritméticos ........................................................................ 26
V. Operadores binarios ............................................................................. 26
VI. Operadores de comparación ................................................................ 27
VII. Identificadores ...................................................................................... 29
VIII. Operadores de condición ..................................................................... 32
IX. Sintaxis de nemónicos ......................................................................... 37
X. Descripción de elementos de código fuente......................................... 37
XI. Instrucciones de carga ......................................................................... 38
XII. Instrucciones de salto........................................................................... 38
XIII. Instrucciones aritméticas ...................................................................... 39
XIV. Instrucciones para manejar subrutinas................................................. 39
XV. Instrucciones lógicas ............................................................................ 39
XVI. Instrucciones especiales ...................................................................... 40
XVII. Instrucciones de bit .............................................................................. 40
XVIII. Descripción de ficheros de instrucciones ............................................. 41
XIX. Mapa de memoria de un PIC 16F628A ................................................ 42
XX. Instrucciones IL .................................................................................... 50
XXI. Significado de señales calificadoras RS232......................................... 65
XXII. Asignación de pines de un PLC en vista frontal ................................... 66
XXIII. Lenguajes de programación en los sistemas operativos ...................... 76
XXIV. Distribuidores de Mikroelektronika en el mundo ................................. 106
XXV. Distribuidores de Industrial Shield en el mundo ................................. 107
XXVI. Ubicación de empresa Controllino...................................................... 108
XXVII. Descripción de productos de compañía Mikroelektronika .................. 108

VI
XXVIII. Descripción de productos de compañía Industrial Shields ................. 110
XXIX. Descripción de Controllino ................................................................. 111
XXX. Datos técnicos S7-1200 parte 1 ......................................................... 118
XXXI. Datos técnicos PLC S7-1200 parte 2M .............................................. 119
XXXII. Datos técnicos PLC S7-1200 parte 3 ................................................ 120
XXXIII. Especificación técnica de MicroLogix ................................................. 123
XXXIV. Especificación técnica PLC ABB AC500 ............................................ 125
XXXV. Especificacion técnica M-DUINO ....................................................... 126
XXXVI. Costo PLC Siemens ........................................................................... 127
XXXVII. Costo PLC Allen Bradley .................................................................... 128
XXXVIII. Costo PLC ABB. ............................................................................. 128
XXXIX. Costo PLC M-Duino ........................................................................... 128

VII
VIII
LISTA DE SÍMBOLOS

Símbolo Significado

I/O Entrada / Salida

IX
X
GLOSARIO

Bit Es una posición de la memoria que puede tomar


valor de 1 ó 0.

Bytes Son ocho bit agrupados.

Contactor Interruptor automático que sirve para restablecer los


enlaces entre distintos circuitos o aparatos
electrónicos.

EEPROM Es un tipo de chip de memoria ROM.

Hardware Conjunto de elementos físicos o materiales que


constituyen una computadora o un sistema
informático.

Memoria Flash Posee las mismas características que la EEPROM,


pero ésta tiene menor consumo de energía y mayor
capacidad de almacenamiento.

OPCODES Código de operaciones.

Palabra Es la agrupación de 16 bit.

PLC Controlador lógico programable.

XI
RAM Dispositivo donde se almacenan datos o
instrucciones que posteriormente se pueden utilizar.

Relé Dispositivo electromagnético que, estimulado por una


corriente eléctrica muy débil, abre o cierra un circuito
en el cual se disipa una potencia mayor que en el
circuito estimulador.

ROM Es un medio de almacenamiento utilizado en


ordenadores y dispositivos electrónicos.
Software Conjunto de programas y rutinas que permite a la
computadora realizar determinadas tareas.

XII
RESUMEN

El presente trabajo de graduación se desarrolla inicialmente tomando en


cuenta la influencia de las nuevas tecnologías aplicadas a los PLC, esto se
debe a que en los últimos años se ha estado introduciendo al país nuevos
elementos aplicados a la automatización industrial.

En el capítulo 1 se analizan a fondo las partes más importantes que


conforman un PLC, entre ellas la CPU, memorias, entradas y salidas; también
se analizará las partes de un PIC que, al igual que el PLC, cuentan con una
CPU, memorias, entradas y salidas. En este capítulo se analizará también los
lenguajes de programación del PLC pues, como lo indica la IEC 61131-3,
existen cinco lenguajes para programar los PLC, estos son: diagrama de
funciones secuenciales (SFC), diagrama de bloques de funciones (FBD),
diagramas tipo escalera (LAD), texto estructurado (ST), lista de instrucciones
(IL/STL) y los lenguajes de programación de un PIC, que son: lenguajes de
programación de alto nivel como Basic, C o lenguaje de bajo nivel como
Assembler.

En el capítulo 2 se presentan las prácticas necesarias para comprender


mejor las aplicaciones de los PICPLC a la industria. Por su parte, en el capítulo
3 se presentan las empresas dedicadas a la construcción de los PICPLC, así
como los modelos existentes y sus datos y principales fabricantes en los países
donde actualmente se distribuyen los productos. Finalmente, en el capítulo 4,
se presenta un análisis de costos de estos nuevos productos para verificar la
factibilidad de estos al ser aplicados a la industria.

XIII
XIV
OBJETIVOS

General

Proporcionar una herramienta a los estudiantes de las carreras eléctrica y


electrónica, implementando las nuevas tecnologías de automatización industrial.

Específicos

1. Comprobar que las nuevas tecnologías son confiables.

2. Aportar conocimiento a los estudiantes de ingeniería eléctrica y


electrónica sobre las nuevas tecnologías en automatización.

3. Estudiar los lenguajes de programación aplicados a las nuevas


tecnologías.

4. Comprobar que las nuevas tecnologías son mucho más económicas que
las existentes.

XV
XVI
INTRODUCCIÓN

En los últimos años la electricidad y la electrónica han avanzado, y con


esto se debe actualizar los conocimientos a los futuros ingenieros de la Escuela
Mecánica Eléctrica. Las nuevas tecnologías han llegado a implementar el PIC
como un PLC, como se verá en este trabajo. Esto ha ocasionado que surjan
diferentes empresas dedicadas exclusivamente a esta tarea, dando a conocer
diferentes modelos versátiles y a bajo costo.

Debido a estas nuevas tecnologías, han surgido nuevos programas


dedicados a la programación. Y así se hace necesario el estudio a fondo de las
tecnologías llamadas PICPLC, actualmente estos elementos están ingresando
poco a poco a la industria nacional.

XVII
XVIII
1. CONCEPTOS BÁSICOS

1.1. ¿Qué es el PLC?

El controlador lógico programable más conocido por sus siglas PLC,


derivadas de su nombre en inglés Programmable Logic Controller, es un
dispositivo digital electrónico con una memoria programable para el
almacenamiento de instrucciones, las cuales pueden ser lógicas, secuenciales,
temporizadas y de conteo, aplicadas para automatización industrial. Para que
un PLC sea funcional es necesario programarlo con la información acerca del
proceso que se quiera secuenciar.

La programación de un PLC es recibida por captadores y esta, a su vez,


es implementada a través de acciones en las instalaciones. El PLC interactúa
con el medio que le rodea por medio de puertos de entrada de información y
puertos de salida. Los puertos de entrada normalmente son conectados a
sensores (transductores de entrada) para captar cambios en el medio que los
rodea, estos cambios son procesados por la lógica digital programada que, a su
vez, envía respuestas a través de sus puertos de salida. Los puertos de salida,
como su nombre lo indica, envían señales al medio que los rodea, esto se logra
por medio de transductores de salida, los cuales son conocidos como
actuadores. Los PLC, por su gran capacidad de interactuar con el medio que los
rodea, son aplicados en la industria. Las ventajas de los PLC proporcionan son:

 Menor tiempo en la elaboración de proyectos, ya que no es


necesario dibujar esquemas de contactos.

1
 Se puede realizar modificaciones sin costos adicionales, ya que no
se necesita cablear ni añadir aparatos.
 Cuentan con tamaño reducido y mantenimiento de bajo costo.
 Menor costo en mano de obra y la posibilidad de controlar más de
una máquina con el mismo equipo.
 Aumenta la fiabilidad del sistema, ya que elimina contactos móviles.
 Si por alguna razón los equipos gobernados quedan sin uso, los
PLC pueden ser reutilizados en otro proceso, tan solo cambiando la
programación.

Las desventajas son:

 Se necesita un técnico calificado y adiestrado específicamente para


ocuparse del buen funcionamiento del PLC.
 Se debe contar con una inversión inicial mayor.

La estructura básica de un controlador lógico programable (PLC) está


constituida por:

 La unidad central de procesamientos CPU


 Memorias
 Interface de entrada
 Interface de salida

2
Figura 1. Estructura básica de un PLC

Fuente: Estructura básica de un PLC.


[Link] Consulta:
2017.

1.1.1. CPU

La unidad central de procesamientos (CPU) es el cerebro del PLC, ya que


es el responsable de la ejecución del programa. Entre sus tareas principales
están:

 La ejecución del programa.


 Administración entre programación, memorias y los bornes de
entrada y salida.
 Ejecución de programas de autodiagnóstico.

3
Para el buen funcionamiento de un PLC se debe contar con un sistema
operativo dentro del mismo, el cual es programado por el fabricante, este
sistema operativo es un programa que no puede ser modificado por el usuario y
se encuentra en una memoria no volátil, ya que la información de este
programa no se borra con ausencia de energía.

1.1.2. Memoria

Son espacios donde puede ser almacenada la información. Estos


espacios vienen definidos en bits, bytes o palabras.

Los bits son una posición de la memoria que puede tomar un valor de “1” o
“0” y se puede visualizar de la siguiente manera:

Figura 2. Representación de un bit

Fuente: elaboración propia.

Los bytes son ocho bits agrupados como se muestra a continuación:

Figura 3. Representación de un byte

Fuente: elaboración propia.

Una palabra es la agrupación de 16 bits:

4
Figura 4. Representación de una palabra

Fuente: elaboración propia.

En la memoria se puede almacenar datos del proceso como señales de


entrada y salida.

1.1.3. Tipos de memoria

 Memoria de datos: está dedicada para almacenar datos durante la


ejecución del programa y retenerlos luego de haber terminado la
aplicación. Este tipo de memoria contiene información del estado de las
entradas y salidas del PLC.
 Memoria de usuario: es utilizada para guardar el programa, para esto se
utiliza la memoria RAM o EEPROM, debido a su facilidad de escritura y
lectura.

1.1.4. Entradas y salidas

Dispositivos de entrada son aquellos que envían señales al PLC


dependiendo de los cambios del entorno tales como presión, posición y
temperatura, entre otros. Se puede mencionar los siguientes: sensores
inductivos, magnéticos, ópticos, pulsadores, termocoplas, encoder, etc.

Dispositivos de salida son los dispositivos que reciben señales


directamente del PLC y con esto cambian el entorno en que se encuentren. Se
puede mencionar los siguientes: contactores de motores, electroválvulas,
indicadores luminosos o simples relés.

5
1.1.5. Alimentación eléctrica

La fuente de alimentación eléctrica es la que proporciona la energía


necesaria para el funcionamiento del PLC, va directamente a la CPU, la cual
está encargada de distribuir a las diferentes interfaces conectadas a través del
bus interno. Normalmente los voltajes de la CPU son de 24 voltios de corriente
continua o 120/240 voltios en alterna, y para las entradas y salidas se puede
utilizar 48/120/240 voltios en corriente alterna y 12/24/48 voltios en corriente
continua.

1.1.6. Unidades de programación

Son los equipos utilizados para la programación del PCL, entre ellos se
puede mencionar los siguientes: unidades de programación, que suelen ser en
forma de calculadora y se utilizan para realizar pequeños cambios al programa
cuando el PLC ya se encuentra instalado.

Figura 5. Ejemplo de unidad de programación

Fuente: Unidad de programación.


[Link]
. Consulta: 2017.

6
 Consola de programación: es un equipo que se utilizaba pero ya en la
actualidad se considera obsoleto, era una forma más favorable de
visualizar el programa de usuario y observar parámetros internos del
autómata.
 Computadora: esta es la forma más empleada en la actualidad dada su
gran versatilidad para transferencia de datos y monitorización mediante
software, entre los más conocidos el SCADA.

Figura 6. Computadora utilizada para programación de PLC

Fuente: Computadora para PLC.


[Link]
. Consulta: 2017.

Para cada PLC el fabricante indica los requisitos mínimos con que debe
contar el computador, también debe proporcionar los cables adecuados para la
conexión y los software necesarios. Los PLC se pueden clasificar de acuerdo a
su cantidad de entrada y salida o por su estructura.

Por sus entradas y salidas, los PLC se pueden clasificar de acuerdo al


número de entradas y salidas (E/S I/O). Se dice que un micro PLC, cuando
tiene menos de 64 E/S, se considera pequeño, cuando tiene menos de 256 E/S,
mediano, así como cuando tiene menos de 1024 E/S, y es grande cuando tiene
más de 1024 E/S.

7
Figura 7. Controlador lógico programable (PLC)

Fuente: PLC.
[Link]
. Consulta: 2017.

Por su estructura, estos pueden ser compactos, lo cual significa que todas
sus partes están en la misma caja, compartimento o chasis. Los modulares se
pueden armar en una base sobre la cual se monta el CPU, módulos de
entrada/salida y módulos de comunicación.

Figura 8. Módulo de comunicación

Fuente: Módulo de comunicación.


[Link]
. Consulta: 2017.

8
1.2. ¿Qué es el PIC?

El Controlador de Interface Periférica (PIC), es un circuito integrado y


programable, capaz de ejecutar las órdenes grabadas en su memoria. Está
compuesto de varios bloques funcionales, los cuales cumplen una tarea
específica. Básicamente, algunas de sus partes se presentan a continuación:

 Memoria ROM (memoria de solo lectura).


 Memoria RAM (memoria de acceso aleatorio).
 Líneas de entrada/salida (I/O), también llamadas puertos.
 Lógica de control que coordina la interacción entre los demás
bloques.

Para comprender mejor el funcionamiento de un PIC se presenta a


continuación un diagrama de bloque:

Figura 9. Diagrama de bloque de PIC

Fuente: Diagrama de PIC. [Link] Consulta: 2017.

Como se puede observar, para el correcto funcionamiento de un PIC es


necesario conectar a este una fuente de alimentación externa y un circuito de
reloj, además representando el PIC en bloques se ve que dispone de una
CPU, memorias y, por supuesto, sus puertos de comunicación listos para
conectarse.

9
Por lo tanto, un diagrama de bloques más generalizado sería el siguiente:

Figura 10. Diagrama de bloques PIC

Fuente: Diagrama de bloques PIC. [Link]


Consulta: 2017.

1.2.1. Presentación física Controlador de Interface Periférica


(PIC)

El encapsulado más común para estos microcontroladores es el DIP (Dual


In line Pin) de 18 pines. Sin embargo, hay otros tipos de encapsulado, por
ejemplo, el encapsulado tipo surface mount (montaje superficial), que es mucho
más pequeño.

Figura 11. Encapsulado de microcontroladores

Fuentes: Encapsulado de microcontroladores.


[Link] Consulta: 2017.

10
1.2.2. Partes del PIC

 El procesador o CPU: es el elemento más importante del Controlador de


Interface Periférica, pues se encarga de direccionar la memoria de
instrucciones, recibir el código OP de la instrucción en curso,
decodificarlo y ejecutarlo, y también realiza la búsqueda de los
operandos y almacena el resultado.
 Memoria del programa: esta vendría a ser la memoria de instrucciones,
aquí es donde se almacena el programa o código que el micro debe
ejecutar. No hay posibilidad de utilizar memorias externas de ampliación.

A continuación se describirán dos memorias muy importantes para el PIC.

 Memorias EEPROM (Electrical Erasable Programmable Read Only


Memory - Memoria de solo lectura programable y borrable
eléctricamente): común en el PIC. Esta tarea se hace a través de un
circuito grabador y bajo el control de un computador. El número de veces
que puede grabarse y borrarse una memoria EEPROM es finito:
aproximadamente 1000 veces. Este tipo de memoria es relativamente
lenta.
 Memorias FLASH: disponibles en el PIC. Poseen las mismas
características que la EEPROM, pero tienen menor consumo de energía
y mayor capacidad de almacenamiento, por ello están sustituyendo a la
memoria EEPROM.

Los PIC son juegos de instrucciones que pueden variar desde 35, que son
clasificados como PIC de gama baja, y los de 70 instrucciones, que son de
gama alta. Las instrucciones se clasifican de la siguiente manera:

11
 Operaciones entre acumulador y constante
 Operaciones entre acumulador y una posición de la memoria
 Instrucciones de condicionamiento
 Instrucciones de salto/retorno
 Implementación de interruptores
 Instrucción para bajo consumo denominada sleep

Los microcontroladores más utilizados en electrónica se mencionan a


continuación.

 PIC12C508 Y PIC12C509, estos cuentan con memoria de programa


EPROM, oscilador interno y son aplicados en circuitos pequeños.
 PIC16F84A, cuentan con memoria tipo FLASH, arquitectura de 8 bits,
oscilador externo, 13 pines de entrada/salida (I/O), memoria RAM de 68
bits, entre otras características.
 PIC16F87X, cuenta con mejoras en relación al anterior, ya que tiene un
mayor número de I/O, también tiene mayor memoria de programa y de
datos.
 PIC16F4XX, estos son utilizados para proyectos más avanzados.

Cada uno de los PIC descritos anteriormente cuenta con su propia hoja de
datos, la cual puede ser verificada en la siguiente dirección:
[Link]

1.3. ¿Qué es el PIC PLC?

El PIC PLC es una aplicación que se le ha dado al microcontrolador PIC,


utilizando placas que cuentan con entradas y salidas (I/O), con relés de hasta
16 amperios, módulos USB esenciales para el desarrollo de programador /

12
depurador, módulos periféricos como RAM, EEPROM, display, entre otras,
todas estas son procesadas por un PIC y a sus vez en conjunto realizan el
trabajo de un PLC. Las aplicaciones del PIC gracias a estas placas son
aplicadas en la industria, domótica y de forma educativa por su versatilidad. El
PIC a utilizar depende del modelo de placa, como por ejemplo el modelo
PICPLC16v6, que tiene una arquitectura de PIC de 8 bits y cuenta con un
PIC18F4520.

Figura 12. PicPLC modelo PICPLC16v6

Fuente: [Link] Consulta: 2017.

Las características básicas con que cuenta un PICPLC son las siguientes:

 PIC: este es programado y encargado de dar órdenes a los módulos


según se programó.
 PICFlash: es un hardware depurador USB 2.0 que permite ejecutar los
programas en el microcontrolador, también permite ver valores de
variables, registros de funciones especiales SFR, memoria RAM, código
de memoria EEPROM, junto con la ejecución del hardware.
 MÓDULOS: son hardware dedicado a una tarea específica.
 Módulo de Ethernet, permite conectar un sistema de PLC a una red.

13
Figura 13. Módulo de Ethernet

Fuentes: elaboración propia.

 Módulo RTC, que cuenta con una batería y está dedicado a mantener el
tiempo preciso para el sistema.

Figura 14. Módulo RTC

Fuentes: elaboración propia.

 Módulo de soporte de antena, que está destinado a soportar fijamente la


antena GCM externa.

14
Figura 15. Módulo de soporte externo

Fuentes: elaboración propia.

 Módulos de relés: son los relés con que cuenta el PLC, tienen capacidad
de 16 amperios cada uno y pueden contener hasta 16 unidades.

Figura 16. Módulo de relés

Fuentes: elaboración propia.

 Módulo GSM, que es un módulo de expansión que soporta un sistema de


telecomunicaciones del PLC.

Figura 17. Módulo GSM

Fuentes: elaboración propia.

15
 Módulo GSM AUDIO, que son conectores de altavoz y micrófono para el
módulo GCM.

Figura 18. Módulo GSM audio

Fuentes: elaboración propia.

 Módulo TFT: este módulo permite la instalación de pantalla táctil para el


desarrollo de aplicaciones multimedia.

Figura 19. Módulo TFT

Fuente: elaboración propia.

 Módulo de 4 dígitos de 7 segmentos.

Figura 20. Módulo de 7 segmentos

Fuente: elaboración propia.

16
Los PIC PLC, al igual que los PLC y los PIC, cuentan con programas
dedicados a la programación, entre ellos el compilador ARM en su versión
5.1.0, el cual fue lanzado el 6 de junio del 2017, PIC, dsPIC, PIC32, AVR, 8051
y FT90X, que están basados en lenguajes C, Basic y Pascal.

1.4. Lenguajes de programación del PIC

Es habitual que al momento de iniciar en la programación de los


microcontroladores PIC, el primer obstáculo que se presenta es el lenguaje de
programación a utilizar. Pero es importante mencionar que al momento de
cargar (quemar) un programa al PIC, no se hace con ningún lenguaje, en
realidad se hace con un OPCODES (código de operación) que se encuentra en
base hexadecimal normalmente, sin importar si el PIC es de gama baja, media
o alta.

El archivo que genera un lenguaje de programación para ser cargado en el


PIC tiene la siguiente extensión: .hex, por ejemplo si se crea una rutina con
nombre CONTADOR, cuando esta se compile se genera entre otros un archivo
[Link]; este archivo es el que se cargará directamente a la memoria
del PIC. Para cargar (quemar) el archivo con extensión .hex al PIC es necesario
contar con un hardware denominado Programador, que es la interfaz entre el
PIC y el computador. Los lenguajes de programación del PIC más importantes
son:

 Lenguaje BASIC
 Lenguaje C
 Lenguaje ENSAMBLADOR (Assembler)

17
Los lenguaje BASIC y C pueden crear una confusión pensando que se
puede hacer rutinas con el Visual Basic o Visual C++ para un PIC, pero debe
tomarse en cuenta que existen compiladores especiales para estos lenguajes y
que la sintaxis de estos es diferente a los lenguajes orientados a objetos.

1.4.1. Lenguaje Basic

A continuación se mencionan los compiladores desarrollados en lenguaje


Basic para programación de microcontroladores PIC.

 MicroBasic: este compilador es distribuido por la empresa


Mikroelektronica, soporta varios modelos de microcontroladores, dispone
de un gran grupo de librerías, divididas en comunicaciones RS-232, RS-
485, I2C, teclados PS2, conexión USB, interfaz para LCD, entre otras, y
sus principales funciones son:

 Asistente de código avanzado


 Asistente de parámetros para rutinas
 Debugger con muchas opciones
 Estadísticas detalladas
 Rutinas incorporadas
 Explorador de código

 Microcode Studio: cuenta con un entorno visual de desarrollo integrado


con capacidad de depurar circuitos, en este se puede definir constantes,
variables, alias, modificadores, símbolos y etiquetas, que están
contenidos dentro de su código fuente. También cuenta con las
funciones de cortar, copiar, pegar, buscar y reemplazar, que son muy
útiles al momento de editar programas.

18
 MPLAB X: este es un compilador que puede ser instalado en Windows,
Mac OS y Linux, se basa en código abierto NetBeans IDE de Oracle.
Entre sus características más importante se presentan las siguientes:

 Admite varias configuraciones dentro de los programas.


 Soporta múltiple versiones del mismo compilador.
 Soporta análisis en vivo.
 Es compatible con hipervínculos para navegación rápida.
 Proporciona una ventana de tareas.
 Proporciona venta de navegación que permite acceso rápido al
código.

[Link]. Estructura de un programa Basic

Para que un programa se vea ordenado y tenga una fácil comprensión, es


necesario que se defina una estructura básica como la que se visualiza a
continuación:

19
Figura 21. Estructura de un programa en Basic

Fuente: elaboración propia.

Para este ejemplo se utilizó Microcode Studio y se definen cuatro


secciones para que el programa se vea ordenado y bien estructurado.

 Sección A: hace referencia al encabezado del programa, en este


debe indicarse la información básica del programa como nombre
del autor, fecha de elaboración, fecha de modificación, una breve
descripción del programa y la aplicación que tendrá en el circuito.

Es de gran importancia que cada línea del encabezado inicie


con una comilla para que este sea interpretado por el programa
como un comentario.

 Sección B: en esta sección se debe iniciar desde la columna Cero


del programa para declarar las definiciones y las etiquetas de cada
una de las subrutinas que sean programadas.

20
 Sección C: en esta se definen las instrucciones del programa y
deben comenzar con una tabulación, esto se realiza de la siguiente
manera: cuando el cursor se encuentra en la columna Cero se debe
presionar una vez la tecla “TAB” del teclado, con esto se dejará una
tabulación o un espacio y luego se debe comenzar a escribir la
instrucción.
 Sección D: en esta sección se definen los comentarios, los cuales
deben siempre iniciar con una comilla, el comentario definirá la
instrucción que se realizará, si un comentario es muy extenso se
puede seguir en la siguiente línea recordando que este debe iniciar
con una comilla. A continuación se presenta un ejemplo:

´Define el oscilador para un cristal


´de 4 Mhz

Los comentarios son una valiosa herramienta, ya que con estos se


obtendrá un programa bien documentado, porque cada línea estará identificada,
así como cada subrutina, que se define como un algoritmo separado del
algoritmo principal que resuelve una tarea específica. La ventaja de estas es
que pueden ser referidas cada vez que sea necesario tan solo llamando a la
etiqueta que las define; la etiqueta debe ir siempre al inicio.

21
Figura 22. Ejemplo de subrutina

Fuente: Subrutina. [Link] Consulta: 2017.

Las etiquetas son operadores de la programación, están diseñadas para


facilitar y minimizar el tamaño de los programas, otros operadores utilizados son
variables, identificadores, constantes, comentarios, símbolos, etc.

A continuación se define algunas de las herramientas de mayor


importancia en la programación de PIC, en lenguaje de programación
PICBASIC:

 Define: esta herramienta está relacionada directamente con dispositivos


externos al microprocesador, un ejemplo es si se utiliza un oscilador de
diferente frecuencia al valor establecido por defecto, en cuyo caso será
de gran importancia definir la velocidad de este con la herramienta de la
siguiente manera:

Define Osc {frecuencia a la que necesita que el


oscilador trabaje}

22
También es utilizado para comunicaciones seriales o I2C, dispositivos
como pantallas LCD, en que se definen los puertos de conexión del bus de
datos y buses de control.

Tabla I. Definición de parámetros de variable Define


PARAMETRO DESCRIPCIÓN
OSC {frecuencia} Frecuencia de oscilador en Mhz
LCD_DREG {puerto} Puerto de datos LCD
4 Bit inicla del puerto de datos
LCD_RSREG {puerto} Puerto para RS (Register Select)
LCD_RSBIT {bit} Pin de Puerto para RS
LCD_ereg {puerto} Puerto para E (Enable)
LCD_EBIT {bit} Pind de puerro para E
LCD_RWREG {peurto}Puerto para RW (Read/Write)
LCD_LINES {lineas} Nuero de lineas de la LCD (1,2 o)
Cuando la transfernica es utilizando un
I2C_SLOW 1 oscilador mas lento que 8 Mhz
Fuente: Parámetros de Define.
[Link] Consulta: 2017.

 Variables: en estas se puede almacenar datos temporales que pueden


ser consultados o modificados cada vez que sea necesario. Se define la
variable con la palabra VAR, seguida del tipo de variable de acuerdo a la
siguiente tabla:

Tabla II. Definición de variable


Nombre de la Variable VAR Tipo de Varialble Descripción
A1 Var Bit Toma los valores de 0 y 1 unicamente
Temp Var Byte toma los valores de 0 y 256 (8 bit)
dig1 Var Word Toma valores entre 0 y 65535 (16 bit)
Fuente: Definición de variable.
[Link] Consulta: 2017.

23
El nombre de la variable es definido por el programador y el tipo de
variable se define de acuerdo al tipo de dato que se desea almacenar.

 Arrays: estas tienen un número específico de elementos definidos según


el tamaño de la variable:

o Las variables Array tipo bit pueden almacenar 256 elementos


o Las variables Array tipo byte puenden almacenar 96 elementos
o Las variables Array tipo Word pueden almacenar 48 elementos

Para entender cómo declarar una variable Array se muestra el siguiente


ejemplo:

Almacenar los siguientes datos: 200, 15, 56, 75, 80, 20, 33 y 45.

Para esto se declara una variable Array tipo bit de la siguiente manera:
Dato bit byte[7].

De acuerdo a lo anterior se definieron 8 variables que pueden almacenar


los datos de la siguiente forma:

Dato [0] = 200


Dato [1] = 15
Dato [2] = 56
Dato [3] = 75
Dato [4] = 80
Dato [5] = 20
Dato [6] = 33
Dato [7] = 45

24
Es de gran importancia verificar las especificaciones técnicas del
microcontrolador, ya que, dependiendo del modelo, las variables byte o Word
pueden almacenar diferentes elementos.

 Constantes: con esta herramienta se define un valor constante en el


programa y se declara de la siguiente manera:

Tabla III. Definición de constantes


Nombre de la constante CON Valor de la constante
Tem_Max CON 150
Tem_Min CON 50
Fuente: Definición de constantes.
[Link] Consulta: 2017.

 Símbolos o alias: indican un nombre único y especifican elementos o


variables en el programa y se definen de la siguiente manera:

Symbol {alias} = {elemento}

 Operadores aritméticos: se definen de acuerdo a la siguiente tabla:

25
Tabla IV. Operadores aritméticos
Operador Descripción
+ Suma
- Resta
* Multiplicación
/ División
// Residuo
<< Desplaza a la izquierda
>> Desplaza a la derecha
= Asignacion de varlores
ABS Valor Absoluto
SIN Seno del Angulo
COS coseno del angulo
MIN Minimo de un numero
MAX Maximo de un numero
REV Inverti un Bit
Valor de un digito para
DIG un número decimal

Fuente: Operadores aritméticos.


[Link]
Consulta: 2017.

 Operadores binarios: se describen en la siguiente tabla.

Tabla V. Operadores binarios


Operador Descripción
& AND Lógico
I OR Lógico
˄ XOR Lólgico
~ NOT Lógico
&/ NAND Lógico
I/ NOR Lógico
˄/ NXOR Lógico
Fuente: Operadores binarios.
[Link]
. Consulta: 2017.

 Operadores de comparación.

26
Tabla VI. Operadores de comparación

Fuente: Operadores de comparación.


[Link]
. Consulta: 2017.

Las ventajas del lenguaje BASIC incluyen que es un lenguaje muy simple
con instrucciones fácilmente legibles, inclusive por los principiantes. Las
desventajas, por otro lado, son:

 Nunca se tiene el control del programa en cuanto a tiempos de ejecución


y control de registro de bit a bit.
 Es complicado el manejo de interpretaciones simultáneas.
 Tienen limitaciones en cuanto a generar archivos .hex, esto indica que
no optimizan el tamaño de la memoria del microcontrolador.
 La mayoría de los compiladores basados en Basic solo se pueden utilizar
en ambiente Windows.

Como ejemplo de programación BASIC se presenta un LED que parpadea


cada 200 ms conectado en el PIN cero del puerto B.

27
Figura 23. Ejemplo de programa Basic

Fuente: Ejemplo de programa Basic.


[Link]
. Consulta: 2017.

1.4.2. Lenguaje C

Este lenguaje de programación es muy útil cuando está orientado a los


microcontroladores, dado que su compilación es muy eficiente y óptima
acercándose a la codificación de lenguaje de máquina. Los elementos básicos
para iniciar con dicha programación son: comentarios, inicio y final de bloque y
los identificadores.

 Comentarios: estos permiten documentar el código y su sintaxis es la


siguiente:

/* comentario */ y se puede hacer también así //


comentario

28
 Inicio y final de bloque: se utiliza para para agrupar un número de
instrucción que se puede ejecutar con cierta prioridad, para esto se usan
las llaves de la siguiente manera: { inicio de bloque y } final de bloque.

 Identificadores: es el nombre de una función o variable que va asociada


a un tipo de dato que realiza una función específica. Cuando se
menciona tipo es el nombre reservado que indica el tipo de variable que
define su enlace numérico, como se visualiza a continuación.

Tabla VII. Identificadores

TIPO CODIGO
Char Entero de 8 bit
int Entero de 16 bit
long Entero de 32 bit
float Real de decodificado de 32 bit
double Real codificado de 64 bit
Fuente: Identificadores. [Link] Consulta: 2017.

La estructura básica de un programa en lenguaje C se puede definir por


medio de bloques, los cuales deben contener un bloque principal y bloques de
funciones, o dependiendo de la aplicación se puede tener solo un bloque
principal.

29
Figura 24. Estructura básica de un programa en C

Fuente: Programa en C. [Link] Consulta: 2017.

Un ejemplo de un programa en C se muestra a continuación:

// Ejemplo de programa
// Aquí se definen las variables globales
// Aquí se escriben las funciones
void main()
{
// Aquí se definen las variables globales
// Aquí van las instrucciones y llamadas a funciones
}

Las instrucciones básicas para la generación de un programa son:


asignaciones, operadores lógicos y operadores matemáticos. Una asignación
es darle un valor determinado a una variable.

char i, j; //se declaran las variables

void main ( )
{
i=20;

30
j=10;

// aquí puede ir otras instrucciones


}

A nivel del microcontrolador todas las instrucciones trabajan en binario,


por ejemplo si se asigna 49 a una variable, este valor se almacena en la
memoria 00110001.

void main ( )
{
char dato;
dato=49;
}

Figura 25. Representación gráfica de almacenamiento en la memoria

Fuente: Almacenamiento en la memoria. [Link]


Consulta: 2017.

Sentencias de control: estas son condiciones muy importantes al momento de la


programación, entre estas están: los operadores de condición, sentencia if-else,
sentencia while, swich-case, for.

31
Tabla VIII. Operadores de condición
Operador de condición Descripcion
== Igual
!= Distinto
>< Mayor, menor
>= = < Mayor o igual, Menor o igual
&& Operador &
II Operador O
Fuente: Operadores de condición. [Link] Consulta:
2017.

Para las condiciones se puede usar if o if-else, cuando la condición es


verdadera se ejecuta la instrucción, de lo contrario pasa a la siguiente
instrucción.

Figura 26. Ejemplo de instrucción if-else

Fuente: Instrucción if-else. [Link] Consulta: 2017.

32
 Sentencia while: aquí se evalúa la condición de inicio y si esta es
verdadera se ejecuta el bloque, de lo contrario salta a la siguiente
instrucción.

Figura 27. Ejemplo de condición while

Fuente: Condición while. [Link] Consulta: 2017.

 Sentencia switch-case: su aplicación es cuando se debe seleccionar


entre varias opciones tipo numérico, se considera como un selector.

Figura 28. Sentencia switch

Figura: Sentencia switch. [Link] Consulta: 2017.

Las funciones y llamadas a funciones se utilizan para agrupar código y


de esta manera optimizar el programa. Los tipos de funciones que existen son:

 Las que ejecutan tareas y no devuelven valores

33
 Las que se ejecutan y devuelven un valor
 Las que reciben parámetros y no devuelven valor
 Las que reciben parámetros y no devuelven valor

Por su parte, los punteros son variables que almacenan la dirección de


una variable, el contenido de estas variables es visto de forma indirecta, las
variables tipo puntero se definen igual a las variables de almacenamiento, con
la diferencia que a estas se les coloca un asterisco (*).

Figura 29. Definición de una variable tipo puntero

Fuente: Variable tipo puntero. [Link] Consulta: 2017.

Los arreglos son vectores unidimensionales llamados cadenas o string, y


cuando son bidimensionales son llamados matrices. Se definen de la siguiente
manera:

tipo ident_arreglo [num_elementos];


tipo ident_arreglo [num_fila] [num_col];

Dadas las funciones básicas del lenguaje C para microcontroladores, a


continuación se presentan las ventajas que se encuentran en este tipo de
lenguaje:

 Es un lenguaje de alto nivel más cercano a la máquina.


 Se puede construir rutinas matemáticas fácilmente.

34
 Puede ser de ayuda al combinarlo con Assemble, sobre todo en la
gama alta.
 Es aceptado por las empresas fabricantes de microchip.

Entre sus desventajas están las siguientes:

 Los programas, al compilarlos, pueden resultar un poco extensos y


pesados, por esta razón debe tomarse en cuenta la capacidad de
memoria del programa del microcontrolador a utilizar.
 Con este lenguaje no se puede controlar todos los tiempos y
registros bit a bit de los microcontroladores.

A continuación se presenta el mismo ejemplo y se presenta un LED que


parpadea cada 200 ms conectado en el PIN cero del puerto B:

Figura 30. Ejemplo Led que parpadea cada 200 ms

Fuente: LED que parpadea. [Link] Consulta: 2017.

35
1.4.3. Lenguaje Assembler

Es el único lenguaje que entienden los microcontroladores. Es un lenguaje


de máquina formado por ceros y unos. Este lenguaje trabaja con nemónicos,
que son grupos de caracteres alfanuméricos que simbolizan las tareas a
realizar.

Es necesario un programa ensamblador para trasladar los nemónicos a


código de máquina, ya que el programa escrito en lenguaje ensamblador, que
es denominado código fuente, tiene una extenison *.asm y el código de
máquina tiene una extensión *.hex.

El código fuente está compuesto por una sucesión de líneas de texto, las
cuales pueden estar escritas en un máximo de cuatro columnas o campos
separados entre sí por tabulaciones. Estos campos son los siguientes:

 Campo de etiquetas, que identifica una línea en el código fuente.


 Campo de código, que corresponde al nemónico de una instrucción,
directiva o llamada a un macro. Este campo puede ser de instrucciones,
directivas o macros.
 Campo de operadores y datos: contiene los operadores que necesita el
nemónico, soporta los sistema de numeración decimal, hexadecimal,
octal, binario y ASCII. La sintaxis que se utiliza es la siguiente:

36
Tabla IX. Sintaxis de nemónicos
TIPO SINTAXIS
Hexadecimal H´ <valor>´ h´ <valor>´ Ox <valor> <valor>H <valor>h
Decimal D´ <valor>´ d´ <valor>´ .´ <valor>´
Octal O´ <valor>´ o´ <valor>´
Binario B´ <valor>´ b´ <valor>´
ASCII A´ <valor>´ a´ <valor>´
CADENA "<cadena>"

Fuente: elaboración propia.

 Campo de comentario: el código fuente entiende que todo lo que se


describa del ; es un comentario.

Inicio bsf PORTB,0 ;Activa RB0

Tabla X. Descripción de elementos de código fuente

Fuente: Elementos de código fuente. [Link]


[Link]. Consulta: 2017.

 Etiqueta (label): son expresiones alfanuméricas asignadas por el usuario


y son utilizadas para identificar un instrucción dentro del programa. Las
restricciones de estas es que no pueden utilizarse nombres de las
instrucciones de Assemble y/o operadores, tampoco se puede iniciar el
nombre de una etiqueta con un número o un espacio.
 Instrucción: esta le indica al microcontrolador la instrucción que debe
realizar, esta instrucción suele ser una del microcontrolador.
 Operando y datos: los operando pueden ser uno o más, los cuales deben
ser separados por comas y pueden contener datos o no.

37
 Comentarios: para estos, antes de iniciar a editarlos, debe colocarse ;
(punto y coma), y son utilizados para dar una explicación breve del
programa.

Los cuatro campos que se describieron anteriormente no siempre se


encuentran en las líneas del programa, dado que las etiquetas suelen utilizarse
de vez en cuando y algunos operadores no llevan datos.

 Instrucciones: es un juego reducido de 35 instrucciones muy simples y


agrupadas de la siguiente manera.

Tabla XI. Instrucciones de carga

Fuente: [Link]
Consulta: 2017.

Tabla XII. Instrucciones de salto

Fuente: [Link]
Consulta: 2017.

38
Tabla XIII. Instrucciones aritméticas

Fuente: [Link]
Consulta: 2017.

Tabla XIV. Instrucciones para manejar subrutinas

Fuente: [Link]
Consulta: 2017.

Tabla XV. Instrucciones lógicas

Fuente: [Link]
Consulta: 2017.

39
Tabla XVI. Instrucciones especiales

Fuente: [Link]
Consulta: 2017.

Tabla XVII. Instrucciones de bit

Fuente: [Link]
Consulta: 2017.

40
Tabla XVIII. Descripción de ficheros de instrucciones

Fuente: [Link]
Consulta: 2017.

La mayoría de estas instrucciones se ejecutan en cuatro ciclos de reloj. A


excepción de los saltos y llamadas a programas estos se ejecutan a ocho ciclos
del reloj. También se puede mencionar que todas las instrucciones tienen la
misma longitud en gama media que son catorce bits.

41
La memoria del microcontrolador es para leer y escribir los datos para que
se ejecuten las acciones del microcontrolador y se necesita de una memoria,
por lo cual el microcontrolador cuenta con una memoria que está dividida en
cuatro bancos (del 0 al 3) y cada banco está dividido en registros y cada
registro está subdividido en 8 bit.

Tabla XIX. Mapa de memoria de un PIC 16F628A

Fuente: [Link]
Consulta: 2017.

Las ventajas de usar lenguaje ensamblador son:

 Este lenguaje es de bajo nivel natural para microcontroladores de


gama alta, media o baja.

42
 El aprovechamiento del microcontrolador es máximo con este
lenguaje.
 Con este lenguaje se puede crear marcos para simplificar el código
fuente.
 Se pude controlar los tiempos y los registros de los bits.
 Es excelente al momento de utilizar interrupciones simultáneas.
 Los archivos generados en extensión .hex son totalmente
optimizados.

Las desventajas son:

 Al momento de programar se tiene que tener bastante experiencia


en comparación con otros lenguajes que son más sencillos de
utilizar.

A continuación se presenta el mismo ejemplo: un LED que parpadea cada


200 ms conectado en el PIN cero del puerto B:

Figura 31. Ejemplo Led que parpadea cada 200ms

43
Fuentes: LED que parpadea. [Link]
[Link]. Consulta: 2017.

1.5. Lenguajes de programación de PLC

Los lenguajes de programación de los PLC surgieron simultáneamente


con la aparición de los PLC en la década de los sesenta, para estos se
emplearon lenguajes simples y fáciles de entender. Se definen los siguientes 5
lenguajes de programación:

44
 Diagrama de funciones secuenciales (SFC), este lenguaje se basa en
funciones secuenciales.
 Diagrama de bloque de funciones (FBD), este lenguaje se basa en
bloques secuenciales.
 Diagrama tipo escalera (LAD), este lenguaje es denominado tipo
escalera y se basa en diagrama de relés.
 Texto estructurado (ST), este lenguaje es de alto nivel similar a C y
Pascal.
 Listado de instrucciones, (IL O STL), este lenguaje es tipo ensamblador
utilizando acumuladores.

Entre los cinco lenguajes de programación que se mencionaron, los SFC,


FBD y LAD son del tipo visual, ya que se programa por medio de símbolos, y
los lenguajes ST e IL o STL son del tipo escrito, ya que para realizar programas
se usan sentencias que describen las funcionas a realizar.

A continuación se describirá cada uno de los lenguajes de programación,


exponiendo cada una de sus características y funciones básicas:

 Diagrama de funciones secuenciales (SFC): este es un lenguaje de


modo gráfico y automatismo secuencial, los elementos básicos de este
lenguaje son las etapas, acciones y transiciones.

Las etapas en este lenguaje están representadas gráficamente por


rectángulos, los cuales están conectados entre sí por una línea vertical que en
este caso representa una transición. Las etapas representan para el programa
un estado particular.

45
Las transiciones son condiciones que pueden variar entre verdadero o
falso. Cuando una transición es verdadera se pasará al siguiente estado, si esta
es falsa se procede a la desactivación de la etapa anterior.

Para la creación de un programa en este lenguaje hay que seguir una


serie de pasos lógicos:

 Definir la estructura de la cadena secuencial y definir las señales de


la instalación.
 Crear el proyecto en el programa SYMATIC.
 Realizar la programación simbólica (creación de tabla de símbolos).
 Crear cadena secuencial.
 Cargar el programa.
 Comprobar la cadena secuencial.

El único lenguaje de este tipo es el S7-GRAPH de SYMATIC DE


SIEMEMS y es denominado lenguaje gráfico de programación.

46
Figura 32. Programa utilizando el lenguaje SFC

Fuente: Lenguaje SFC. [Link]


programacion/[Link]. Consulta: 2017.

 Diagrama de bloque de funciones (FBD): este lenguaje de programación


es gráfico y permite programar de una forma sencilla debido a que se
puede utilizar expresiones o lógica booleana.

Este es un lenguaje de alto nivel, utilizado en procesos de baja


complejidad, en este las funciones y bloques funcionales aparecen como
circuitos integrados y es muy utilizado en aplicaciones con flujo de información
o datos entre componentes de control.

47
Figura 33. Lenguaje de programación FBD

Fuente: Lenguaje FBD. [Link]


programacion/[Link]. Consulta: 2017.

 Diagrama tipo escalera (LAD): lenguaje tipo gráfico, es similar a conectar


relés, ya que se debe dirigir el flujo de energía en diagramas eléctricos.

También se apoya en la lógica booleana pero no es recomendable para


trabajar con variables analógicas. En este lenguaje se puede utilizar figuras que
representan barras de alimentación, elementos de enlace, contactores, bobinas,
bloques funcionales, entre otros, con la ventaja que se puede evaluar las redes
en orden de arriba a abajo o de izquierda a derecha.

Figura 34. Lenguaje tipo LAD

Fuente: Lenguaje tipo LAD. [Link]


lenguajes-programacion/[Link]. Consulta: 2017.

48
Como se visualiza en la figura anterior, tiene una estructura simple con red
de izquierda a derecha, se suministra energía y llega a cada elemento
dependiendo de su estado lógico.

 Texto estructurado (ST): este lenguaje es de alto nivel y es más


moderno que los anteriores, ya que está basado en texto, es muy similar
a la programación en Basic o C, y no es muy popular, ya que requiere
conocimientos previos en programación.

Las principales ventajas de este tipo de lenguaje en comparación al tipo


visual es la clara construcción de los programas en bloques, con instrucciones y
ciclos como if, while, for, case, además proporciona una potente construcción
para el control, como se observa en el siguiente ejemplo:

Q 4.0:= I 0.0 AND I 1.1 OR NOT I 0.1


IF Q 4.0 == 1 THEN GOTO M001
ELSE Q 1.0 = NOT Q 4.0;
END_IF;
M001 MW 2= 1+MW 2;

 Listado de instrucciones (IL O STL): este lenguaje es de tipo textual,


similar a un ensamblador, su principal característica es que todos los
operadores trabajan con un registro especial denominado acumulador
(LD, ST).

49
Tabla XX. Instrucciones IL

Fuente: Instrucciones IL. [Link]


programacion/[Link]. Consulta: 2017.

 Entorno de programación CODESYS (sistema de desarrollo controlado):


es un sistema de programación de PLC, desarrollado en el año 2012 por
la empresa alemana 3S GMBH. Es un sistema que se puede descargar
de manera gratuita y cuenta con soporte para lenguajes textuales (texto
estructurado, lista de instrucciones) y lenguajes gráficos (diagrama de
funciones secuenciales, diagrama de bloque de funciones, diagrama tipo
escalera).

En la actualidad más de 250 fabricantes de PLC ofrecen interfaz con


CODESYS, debido a que este proporciona soporte, consultoría, formación,
programación de aplicaciones e integración de sistema. Este programa trabaja
en comunicación mediante preguntas y respuestas con el PLC, mientras las
entradas y salidas van conectadas a la maquinaria o equipo que esté
conectado.

50
Figura 35. Relación entre CODESYS y un PLC

Fuente: Relación entre CODESYS y PLC.


[Link]
. Consulta: 2017.

1.6. Ventajas y desventajas de programación del PIC y el PICPLC

Los lenguajes de programación analizados en el capítulo anterior para los


PIC fueron lenguaje Basic, lenguaje C y lenguaje Assemble, los cuales
proporcionan ventajas y desventajas entre cada uno de ellos.

Las ventajas y desventajas del lenguaje Basic son:

Ventajas:

 Es un lenguaje muy simple y con instrucciones muy fácilmente legibles,


incluso los principiantes pueden adaptarse rápidamente a este.

Desventajas:

 Nunca se tiene el control del programa en relación a tiempo de ejecución


y control de registro de bits.

51
 El manejo de interrupciones simultáneas es muy complicado inclusive
para los programadores experimentados.
 No optimiza el tamaño de la memoria del programa del PIC.
 Los compiladores basados en este lenguaje normalmente solo pueden
instalarse en sistema operativo Windows.

Las ventajas y desventajas del lenguaje C son:

Ventajas:

 Este lenguaje es de alto nivel, muy cercano al de máquina.


 Es muy útil al momento de construir rutinas matemáticas.
 En PIC de gama alta puede ser de gran ayuda al combinarlo con el
lenguaje Assemble.
 Para simplificar el código fuente, este lenguaje cuenta con la opción de
crear macros.
 Este lenguaje es muy aceptado por la mayoría de fabricantes de
microcontroladores, inclusive la empresa Microchip cuenta con algunos
compiladores.

Desventajas:

 Al momento de compilar los programas, estos son extensos y pesados,


por lo tanto debe tomarse en cuenta la memoria del microcontrolador
utilizado.
 Este lenguaje no tiene la capacidad de controlar todos los registros de bit
a bit y tampoco los tiempos.

Ventajas y desventajas del lenguaje Assembler:

52
Ventajas:

 Este lenguaje es el leguaje natural para los microcontroladores en gama


alta, media o baja.
 El lenguaje optimiza eficientemente los recursos del microcontrolador.
 Para simplificar el código fuente, este lenguaje cuenta con la opción de
crear macros.
 Este lenguaje es el único que puede controlar los tiempos y registros de
bit a bit.
 Es muy eficiente al momento de manejar interrupciones simultáneas.
 El archivo .hex es totalmente optimizado.

Desventajas:

 Los programadores para este lenguaje deben conocer el lenguaje a


fondo, de lo contrario tardará mucho al momento de desarrollar rutinas.

A diferencia de los PIC, los lenguajes de programación de los PLC


analizados son cinco, los cuales se dividen en dos tipos, que son visual y
escrito, estos cuentan con una gran ventaja, ya que están regidos por la norma
IEC61131-3.

Las ventajas de los lenguajes de programación del PICPLC son las


siguientes:

 Disminución de los costos de formación de personal especializado.


 Los lenguajes de programación son únicamente cinco.
 La norma IEC61131-3 define, para todos los programas: sintaxis,
representación gráfica y la estructura para todos los programas.

53
 Los lenguajes visuales son muy fáciles de aprender.
 Cuando se comprende la norma IEC61131-3 se puede utilizar todos los
lenguajes de esta norma.
 Los PLC cuentan con un sistema operativo en su memoria interna, que
en algunos casos permite ser programado sin la necesidad de utilizar un
ordenador.

Desventajas:

 Aún no existe una certificación IEC 1131-3.

1.6.1. Interfaces del PIC con la computadora

Para realizar la comunicación de un microcontrolador con una


computadora es necesario contar con dos elementos básicos: un software y un
hardware. La comunicación del microcontrolador con una computadora se
realiza para la programación del microcontrolador y esto se puede realizar por
medio del puerto serial, el puerto paralelo o puerto USB, utilizando un
programador de microcontroladores, el cual puede ser fabricado, ya que existen
muchos diseños en la web, o comprado en una tienda de electrónica o vía web.

El puerto serial se debe tomar en cuenta al momento de adquirir o fabricar


un programador que este puede trabajar con los diferente modelos de
microcontroladores y sus distintas versiones (-P, -A, -B, -JW), así también debe
tomarse en cuenta sus versiones de bajo consumo (16LF, 18LF).

54
Figura 36. Programador con zócalo ZIF de 40 pines

Fuente: Zócalo ZIF de 40 pines. [Link] Consulta:


2017.

En la figura anterior se presenta un programador con zócalo de 40 pines,


en el cual pueden colocarse la mayoría de los microcontroladores en sus
diferentes versiones. La forma de colocación de cada uno de los
microcontroladores se presenta a continuación:

55
Figura 37. Posición de colocación de PIC de acuerdo al número de
pines

Fuente: Posición de los PIC. [Link] Consulta:


2017.

Existen diferentes tipos de software para programar los


microcontroladores en la web, algunos gratuitos y otros donde se debe pagar la
licencia de usuario, como por ejemplo Winpic800, IC-PROG, EPIC, PonyProg,
Drawning, ATMEL, entre otros.

El programador Winpic800 es muy conocido por los programadores de


microcontroladores, por su versatilidad para trabajar con diferentes modelos de
microcontroladores, además de que su descarga es gratuita en la web. Entre
sus características se menciona las siguientes:

 Freeware
 Permite programar en Windows XP/ME/98/95/NT
 Puede utilizarse en idioma inglés o español
 Puede grabar microcontroladores por el puerto serial o paralelo
56
El puerto paralelo, al igual que el puerto serial, se usa para grabar un
microcontrolador. Para el puerto paralelo es necesario un hardware y un
software. El programador (hardware) es uno de los más sencillo de crear, pero
el gran problema de este es que en la actualidad son muy pocos computadores
los que cuentan con este puerto, ya que es obsoleto. El principio del
programador de puerto paralelo hace uso del protocolo I2C para la grabación
del microcontrolador, como se muestra en la siguiente figura:

Figura 38. Circuito grabador de microcontroladores

Fuente: Circuito grabador. [Link]


programador-por-puerto-paralelo-para-pic/. Consulta: 2017.

Para la grabación de microcontroladores, dependiendo del número de


pines, la conexión se presentan en la siguiente figura:

57
Figura 39. Conexión de microcontroladores al circuito de grabación
para puerto paralelo

Fuente: Conexión de microcontroladores.


[Link]
paralelo-para-pic/. Consulta: 2017.

Descripción del circuito grabador:

 El LED D3 indica que el circuito se encuentra encendido.


 El LED D4 se apaga cuando se produce la grabación del
microcontrolador.
 Los pines del puerto paralelo 2 (D0), 3(D1), 5(D3), 6(D4) y 10 (ACK)
permiten conectar el circuito al computador por medio de los
inversores 74LS04, cada pin del puerto tiene una función específica
que se define de la siguiente manera:

o Pin 2(D2) es encargado de llevar los datos del ordenador a la


línea SDA del dispositivo a programar.
o Pin 3(D1) es el encargado de enviar pulso de reloj para la
programación.
o Pin 10(ACK), por este pin el computador lee los datos para el
reconocimiento y asentimiento.

58
o Pines 5(D3) y 6(D4), por estos se controla el nivel de voltaje
Vpp, cuando se pone un nivel de alimentación de 12V el PIC
entra en modo programación y si se conecta en 5V el PIC
trabaja normalmente. Los pines 5 y 6 se conectan al MCLR /
VPP del PIC.

Para que todo el circuito funcione es necesario conectar una única fuente
de alimentación 12V máximo 13,5V, con una corriente de mínimo 200 mili
imperios. Para la interconexión del computador con el circuito grabador es
necesario un cable macho DB25.

Figura 40. Cable macho DBS25, circuito grabador de PIC para puerto
paralelo

Fuente: Cable macho y circuito grabador.


[Link]
paralelo-para-pic/. Consulta: 2017.

El software necesario para la programación de microcontroladores PIC es


el IC-PROG, para esto hay que utilizar la siguiente configuración en ajustes del
hardware:

59
 Casilla de programador de selecciones ProPic 2 Programmer
 En puerto; si tiene más de dos puerto debe seleccionarse LPT 1
 En interfaz seleccionar Direc I/O
 En configuración se debe dejar en blanco

Figura 41. Configuración IC-PROG en sistema operativo Windows XP

Fuente: Configuración IC-Prog.


[Link]
paralelo-para-pic/. Consulta: 2017.

Los grabadores de microcontroladores PIC por medio de puerto USB son


una buena opción, ya que en la actualidad los puertos USB están presentes en
todos los computadores, además en relación al software la mayoría de
programas que se utilizan para grabar microcontroladores PIC son compatibles
con las versiones más recientes de Windows.

60
Los grabadores de microcontroladores PIC por medio de puerto USB son
muy comunes y pueden ser adquiridos vía web o tiendas de accesorios
electrónicos por un precio estimado entre $20.00 y $30.00. Si se opta por la
construcción de grabador de PIC, por medio del puerto USB se tendrá el
inconveniente de que se utiliza un PIC18F2550 para la misma construcción del
grabador y este debe ser grabado con un programa para su correcto
funcionamiento dentro del circuito, por lo cual es necesario contar con un
grabador de PIC serial o paralelo, por esta razón esta opción no es
recomendada.

Figura 42. Grabador de microcontroladores PIC

Fuente: Grabador PIC. [Link] Consulta: 2017.

El software utilizado para la grabación de microcontroladores PIC es el


USBPICPROG, este puede ser instalado en Windows XP/vista/7/8 en sus
versiones de 32 y 64 bit. La ventaja de este software es que cuenta con un
sistema de detección automática del microcontrolador PIC al momento de ser
conectado al circuito grabador, de esta manera no es necesario configurar el
programa. Cuenta con una opción PIC info, la cual muestra la disposición de

61
señales del circuito y resalta los pines que serán empleados para las señales
estándar ICSP.

Figura 43. Pantalla Pic info que muestra características del circuito
seleccionado

Fuente: Pantalla PIC info. [Link] Consulta:


2017.

Este programa también puede leer los archivos en formato .hex. Una
ventaja ante los otros puertos es que la velocidad de escritura es mucho más
rápida: aproximadamente cinco segundos por cada mil palabras de memoria de
código. A diferencia de los otros, este no necesita fuente de alimentación
externa.

62
Figura 44. Ventana de programa USBPICPROG

Fuente: Ventana de programa. [Link]


Consulta: 2017.

A continuación se mencionan los Microcontroladores PIC que pueden ser


programados:

12F629, 12F675, 12F683, 16F84, 16F84A, 16F88, 16F628A, 16F635,


16F684, 6F648A, 16F818, 16F819, 16F870, 16F873A, 16F874A, 16F876A,
16F877A, 16F887, 6F252, 18F2455, 18F2550, 18F4455, 18F4520, 18F4550.
De 28 y 40 pines.

1.6.2. Interfaces del PLC con la computadora

El controlador lógico Programable PLC cuenta con cables serial, USB y


TCP/IP para comunicación con la computadora, también en la actualidad hay
comunicación por métodos inalámbricos tales como Bluetooth y Wifi. Algunos
fabricantes aprovechan la comunicación de los controladores lógicos
programables para crear sistemas más sofisticados con el sistema Scada y la
red PPI, que es exclusiva del S7-200 de Siemens.

63
Para la conexión y transmisión de datos desde el puerto serial de un
computador hacia un PLC, es necesario que el PLC cuente con un puerto serial
o un módulo de expansión serial, y que el computador que se va a conectar
cuente con un puerto serial. Dicho puerto en ambos puede ser RS-232, además
es necesario contar con un cable serial para la transmisión de datos.

Figura 45. PlC con puerto serial, módulo PlC de puerto serial,
computadora con puerto serial, cable serial

Fuente: PLC y puerto serial. [Link]


Consulta: 2017.

La interfaz RS232 es una interfaz de tensión cuya función es la


transmisión de series de datos. Esta interfaz puede trabajar con señales TXD,
RXD, RTS, CTS, DRT, DSR, RI, DCD, GND, cuyo significado se describe en la
siguiente tabla:

64
Tabla XXI. Significado de señales calificadoras RS232

Fuente: Señales calificadoras. [Link] Consulta:


2017.

Para el puerto serial RS232 las longitudes normalizadas son de 5, 10 y 15


metros; la longitud máxima del cable RS232 es de 15 metros, esto se debe a
que el ruido limita la transmisión de un alto número de bits por segundo cuando
la longitud es mayor a 15 metros.

En la siguiente tabla encontrará la asignación de pines de un PLC en vista


frontal de módulo de comunicaciones:

65
Tabla XXII. Asignación de pines de un PLC en vista frontal

Fuente: Asignación de pines de un PLC. [Link]


Consulta: 2017.

Para la comunicación es necesario un software, cada PLC cuenta con un


CD de instalación, ya que cada software es propio de la marca del PLC que se
utilice, como ejemplo, para el Siemens S7-1500 se utiliza el STEP 7 o para un
PLC de la marca Omron modelo CJ1M se utiliza el software CITECT.

Ppara poder conectar un controlador lógico programable a una


computadora por medio del puerto USB es necesario instalar el software o
driver que el fabricante del PLC entrega, como ejemplo se presenta la siguiente
figura de ubicación de driver de un PLC de la marca Scheneider Electric:

66
Figura 46. Driver de un PLC de la marca Scheneider

Fuente: Driver de un PLC.


[Link]
em_manual_es-ES_es-[Link]. Consulta: 2017.

Instalado el driver, es necesario reiniciar la computadora, y al momento de


conectar el PLC por el puerto USB, se iniciará automáticamente el
reconocimiento del PLC. Cuando esto finalice aparecerá en la barra de
información un icono donde se informa que el PLC está ejecutando el driver
correctamente. Es de gran importancia mencionar que el método de instalación
de un PLC puede variar de acuerdo a la marca y modelo del mismo.

En cuanto a la conexión de Ethernet, la conexión de un controlador lógico


programable PLC es necesaria cuando se requiere una velocidad de
transferencia mucho mayor a la que proporciona una red PPI, ya que la
conexión de Ethernet es de 10Mbps y la PPI es 9,6Kbps. Esto quiere decir que
en Ethernet es 1000 veces mayor la transmisión de datos.

67
Los elementos necesarios son un hardware y un software. Los hardware
son una computadora, un modem, un router, un adaptador de Ethernet y
finalmente un controlador lógico programable, y el software consiste en la
utilización de un servidor OPC, el cual es un estadar de comunión definido por
IEEE dígito 802. En el campo de control y supervisión de procesos industriales
entre los más conocidos está el IFIX, además de los driver de conexión del
PLC, que son propios de cada marca y modelo.

Figura 47. Esquema de conexión de un PC-PLC

Fuente: Esquema de conexión de un PC-PLC.


[Link]
em_manual_es-ES_es-[Link]. Consulta: 2017.

Las conexiones de Ethernet cuentan con cuatro componentes básicos que


se definen a continuación:

 Medios físicos: son los componentes para transmisión de señal


(cables y conectores).
 Componentes de señalización: solo los dispositivos electrónicos
que envían y reciben señales.
 Norma de accesorio al medio: protocolo utilizado por la tarjeta de
red para utilizar de forma compartida un canal de Ethernet.
 Patrón trama: paquete de bits organizados bajo un estándar,
transporta la información y datos para orientar en el mismo viaje.

68
Figura 48. Ejemplo de trama

Fuente: Ejemplo de trama.


[Link]
em_manual_es-ES_es-[Link]. Consulta: 2017.

Dentro de la trama se puede transportar distintos tipos de datos


multimedia, como por ejemplo TCP/IP, IPX/SPX, y Apple Talk. La configuración
de un PLC por el puerto de Ethernet se realiza de diferente manera,
dependiendo de la marca y modelo del mismo, ya que en esta configuración se
puede configurar el comportamiento del PLC.

El módulo de Ethernet proporciona la interfaz para que el programa


interprete los parámetros, estos parámetros deben ser entendibles para el
usuario, por esta razón es necesario una HIM, que son las siglas en inglés de
Human Machine Interface. Las HIM son las encargadas de interpretar de forma
gráfica las variables y parámetros del PLC, en estos también se puede
encontrar botones para cambio de variables.

69
Figura 49. Interfaz Hombre Máquina (HIM)

Fuente: HIM. [Link] Consulta: 2017.

Las HIM son software que pueden ser proporcionados por los fabricantes
de PLC o pueden ser elaborados en programas genéricos como iFIX. Este
programa tiene la capacidad de conectarse remotamente a un controlador
lógico programable, por medio de Ethernet, siempre y cuando estos
pertenezcan a la misma área de red local. Para conectar el controlador lógico
programable por iFIX se puede realizar de dos formas:

 Conexión directa: el PLC debe contar con una IP estática y la


computadora donde se controlará el PLC debe tener la base de
datos de las variables a controlar.
 Conectar por medio de servidor: el servidor debe tener una IP
estática, y el programa iFIX se conecta a través de Internet al
servidor que contiene la base de datos a controlar, y este servidor
le envía ordenes al PLC por medio de Ethernet.

En cuanto a la red PPI (interfaz punto a punto), esta se configura con


varios S7-200 de Siemens, trabaja con un protocolo maestro esclavo, esto
significa que los maestros envían peticiones a las esclavos y estos responden,

70
esto significa que los esclavos no inician mensajes, ellos esperan a que un
maestro les envíe una petición y ellos responden. El protocolo PPI puede
contener hasta 32 maestros en una sola red interactuando con los esclavos que
estén conectados a la misma.

Figura 50. Dispositivos en red PPI

Fuente: Dispositivos en red PPI. [Link]


ingenieria/automatas-programables/2014/i/[Link]. Consulta: 2017.

Existen dos tipos de red PPI: las monomaestro y las multimaestro. Las red
PPI monomaestro son aquellas que cuentan con un solo maestro, el cual puede
ser una computadora o un interfaz hombre-máquina y un esclavo, el cual puede
ser un CPU-S200, como se muestra en la siguiente figura:

71
Figura 51. Red PPI monomaestro

Fuente: Red PPI monomaestro. [Link]


ingenieria/automatas-programables/2014/i/[Link]. Consulta: 2017.

En cuanto a la red PPI multimaestro, esta debe contar con dos o más
maestros, los cuales pueden ser computadoras (el cual debe contar con el
software STEP-7Micro/WIN) con un cable multimaestro PPI o interfaces
hombre-máquina. Cada maestro debe contar con direcciones unívocas,
mientras que los esclavos pueden ser las CPU S7-200.

Figura 52. Red PPI multimaestro

Fuente: Red PPI multimaestro. [Link]


ingenieria/automatas-programables/2014/i/[Link]. Consulta: 2017.

Para la comunicación de una red PPI multimaestro se pueden usar dos


tipos de profibus: el estándar con protocolo RS-485 y una segunda opción de
profibus que incorpora un puerto de programación, este segundo con la ventaja

72
que permite conectar una computadora o un dispositivo HMI (interface humano-
máquina) a la red, sin perturbar ningún enlace existente. Esto se debe a que
este profibus transmite todas las señales del S7-200, incluyendo las de potencia
a través del puerto de programación. También este profibus dispone de
interruptores para polarizar y cerrar de forma selectiva la red.

Figura 53. Polarización y cierre de red

Fuente: Polarización y cierre de red. [Link]


ingenieria/automatas-programables/2014/i/[Link]. Consulta: 2017.

El sistema SCADA es denominado así por sus siglas Supervisor Control y


adquisición de datos. Este sistema le permite al ser humano interactuar en los
procesos industriales sin necesidad de asumir riesgos, ya que con ayuda de
software y hardware se representa todo el proceso de manera gráfica en una
computadora, facilitando el control y toma de decisiones desde una cabina de
control alejada del proceso industrial.

En el caso de un sistema SCADA, los controladores lógicos programables


son dispositivos que se acoplan con otros como sistemas de dosificación o
controladores autónomos, para formar en conjunto un sistema automatizado y

73
controlado por aplicaciones de software especialmente diseñadas para
funcionar sobre ordenadores de control de producción.

Gracias a la estandarización de las comunicaciones de los dispositivos de


campo, el sistema SCADA se puede implementar sobre casi cualquier bus de
datos, tales como RS232, RS422 y RS485, y mediante un protocolo TCP/IP se
puede utilizar buses modernos tales como Bluetoo, microondas, satélites o
cables.

Figura 54. Pantalla de un SCADA en Kimberly Clark

Fuente: Pantalla de un SCADA. [Link]


ingenieria/automatas-programables/2014/i/[Link]. Consulta: 2017.

74
1.6.3. Ventajas de los programas en los sistemas operativos
existentes

En la actualidad existen diversos sistemas operativos y estos han ido


evolucionando con el tiempo, al igual que los PLC han ido evolucionando y
actualizando sus software. Los sistemas operativos actuales se mencionan a
continuación:

 Microsoft Windows versión 7/8/10


 Mc OS última versión Yosemite
 GNU/Linux
 Unix
 Solaris
 Google Chrome OS
 Debian
 Ubuntu

Y los lenguajes que se analizaron son para los microcontroladores PIC:


lenguaje Basic, lenguaje C y lenguaje Ensamblador (Assembler), y para el
controlador lógico programable se analizó los siguientes: diagrama de funciones
secuenciales (SFC), diagrama de bloque de funciones (FBD), diagrama tipo
escalera (LAD), texto estructurado (ST) y listado de instrucciones (IL O STL).

75
Tabla XXIII. Lenguajes de programación en los sistemas operativos
LENGUAJE SISTEMA OPERATIVO
PIC Windows 7,8, 10 Mc OS Linux Unix Solaris STEP 7-Micro/WIN
Basic X X X x x
C X x x x x
Assembler x x x
PLC
SFC x x x x x x
FBD x x x x x
LAD x x x x
ST x x x x x
IL o STL x x x x

Fuente: elaboración propia.

Estos lenguajes pueden ser instalados en algunos de los sistemas


operativos actuales. La ventaja de estos es la simulación de los procesos antes
de cargar el programa, ya sea en los microcontroladores o los PLC, y para esto
existen los siguientes programas:

 GPSIM, este es un simulador de código abierto que soporta la variedad


de microcontroladores PIC de 12, 14 y 16 bit, es un programa gratuito y
se puede instalar en sistema operativo Windows y Linux.
 Real PIP simulator, que es un simulador profesional de
microcontroladores PIC, este trabaja con la interacción del usuario en
tiempo real a través de diferentes componentes visuales, es el simulador
más rápido del mercado pero este tiene un costo por licencia de uso.
Soporta sistemas operativos Linux y Windows.
 PIC Development, que es un simulador de microcontroladores de PIC
F16F84, con este es posible desarrollar componentes y es gratuito,
soporta sistemas operativos Linux y Windows.
 PICSIM, que es un emulador de microcontroladores PIC de la familia
16F628, además cuenta con periféricos como USART, EEPROM, WDT y
timer, la implementación de estos elementos es muy sencilla, ya que

76
viene definida en lenguaje C. La ventaja de este programa es que es
gratuito y se puede instalar en sistema operativo Windows.
 OSHON Software, este software puede simular AVR, PIC, PIC18,
PIC10F, Z80 y 8085, este programa es comercial y puede adquirirse
pagando la licencia, se puede instalar en sistema operativo Windows y
Linux.

Figura 55. Simulador de PIC y otros componentes de Picsum

-
Fuente: Simulador de PIC. [Link]
microcontrolador-una-buena-alternativa/. Consulta: 2017.

Existen gran variedad de simuladores de PCL (controlador lógico


programable), estos simuladores son de gran utilidad, ya que se pueden hacer
pruebas de funcionamiento de los programas en PLC simulados y simular todo
el sistema que se desee controlar, evitando así fallas en el sistema real. Entre
los simuladores más conocidos está el MacroPlc, que es un simulador de
programación Ladder para PLC muy sencillo pero que cuenta con contadores,
temporizadores, comparadores, entre otras cosas, y soporta:

 Simulación de lógica de escalera


 Ejecución en tiempo real

77
 Simulación de entradas y salidas
 Temporizadores de PLC
 Banderas internas de PLC
 Comparadores de PLC
 Detectores de flacos de PLC

Una de sus grandes ventajas es que es gratis y puede instalarse en


sistema operativo Windows, por tal razón es muy utilizado en la educación.

También existe el simulador de PLC S7-200, este es un programa que


permite simular autómatas de forma gráfica, intercambiando las entradas y
salidas, evitando así tener que activar interruptores o visualización de LED de
salida del PLC; puede trabajar de dos maneras que se describen a
continuación:

 Con el simulador S7-200 el intercambio de datos de entradas y salidas


entre S7-200 y PC_SIMU se realiza por medio del portapapeles de
Windows. Si cuenta con el autómata físico el intercambio de datos entre
entradas y salidas entre el PLC y el programa PC_SIMU se realiza a
través del puerto serie.
 Otra ventaja de este programa es que se ha incorporado un pequeño
simulador para cargar directamente los programas en formato STEP 5, y
con esto simular las operaciones básicas con bits.

78
Figura 56. Simulador PLC S-200

Fuente: Simulador PLC S-200. [Link]


Consulta: 2017.

VIRPLC es un simulador de controlador lógico programable (PLC) visual,


con un software de diagrama de escalera en una pantalla y con un práctico
simulador HARD, el cual cuenta con efectos multimedia en otra pantalla. Este
simulador es utilizado para aprender a programar PLC, de una forma práctica y
sencilla, puede controlar HARD desde la PC, convirtiendo así la PC en un PLC,
utilizando el puerto paralelo para esta acción. Puede ser instalado solo en
sistema operativo Windows.

Figura 57. Pantalla de inicio de VirPLC

Fuente: Pantalla de inicio de VirPLC. [Link]


Consulta: 2017.

79
80
2. PRÁCTICAS DEL PIC PLC

En este capítulo se estudiarán algunos ejemplos prácticos aplicando el


PIC PLC, los cuales fueron probados en sistemas reales.

2.1. Prácticas en sistemas eléctricos

Como primera práctica se aplicará una placa de la marca Arduino como un


controlador lógico programable (PLC), con la ventaja que este se podrá
programar con lenguaje escalera tal y como se haría con un PLC. Esta
aplicación se realizará utilizando hardware y software, en los hardware están las
interfaces apropiadas para entrada y salida de señales y en los software el
LDmicro, o se puede usar como segunda opción PLCLIB, que es una biblioteca
modificada para aprovechar las entradas y salidas de Ardruino, para que se
pueda editar el código similar a AWL (instrucciones If, And, OR, temporizadores
y otras funciones).

Se realiza el siguiente ejemplo de domótica automatización de sobrias


eléctricas, se necesita controlar las sombrías para que en caso de fuerte viento
estas deban ser desenrolladas y, cuando el viento se calme, estas deberán ser
enrolladas. También debe darse esta situación con la iluminación, ya que debe
desenrollarse durante el noche y durante el día deben ser enrolladas
nuevamente, tomando en cuenta que el viento debe prevalecer sobre la
iluminación. Para iniciar con este proyecto se deben seguir los siguientes
pasos:

81
Paso 1: descargar el ejecutable de LDmicro del siguiente enlace
[Link]
Paso 2: se ejecutar el programa LDmicro.
Paso 3: se debe definir las variables de entrada y salida a utilizar en el
programa.

Entrada
WIND SENSOR: XSEN_VIENTO
LIMIT SWITCH ROLL: XFINE_COR_A
LIMIT SWITCH ROLL: XFINE_COR_S
TWILIGHT SWITCH: XIN_ILUM

Salidas
ROLLER: YAVVOLG
LED ROLLER: YL_AVV
UNROLLER: YSVOLG
LED UNROLLED LED: YL_SVO
IDLE STATE: YL_RIP

Las “X” y “Y” colocadas en cada una de las variables indican entradas y
salidas, respectivamente, y estas letras serán colocadas automáticamente por
el software durante la codificación.

Ya declaradas las variables, se procede a escribir las ecuaciones lógicas,


teniendo en cuenta que Arduino interpreta todas las entradas como altas (1)
cuando el contacto está abierto y las salidas como bajas (0) cuando el contacto
está cerrado. Por tal motivo se debe negar la lógica de todas las entradas para
asegurar que se ejecuten correctamente.

82
Figura 58. Programa LDmicro

Fuente: Programa LDmicro. [Link]


controller-plc/. Consulta: 2017.

En el programa LDmicro, moviendo el cursor hasta Xnew y presionando C,


se obtiene un nuevo segmento, siempre llamado Xnew, paralelo al existente,
ahora debe hacerse clic en Ynew y colocar el cursor verticalmente a la izquierda
antes de la salida, y presionar “C” dos veces, haciendo esto se añadirían dos
contactos más, en serie con los dos en paralelo a los anteriores. Para finalizar
se debe hacer clic en Ynew, pero esta vez se debe colocar el cursor debajo del
símbolo de salida y luego presionar “L”, así se añadirá otra salida en paralelo al
Ynew existente.

Ahora se necesita modificar todos los nombres de los contactos de


acuerdo con los utilizados en las ecuaciones, para hacer esto simplemente se
hace doble clic en el primer contacto Xnew que se ha creado, luego debe
establecerse el nombre y el tiempo de contacto en el Shell emergente. Luego es
necesario asignar el nombre “SEN_VIENTO” y seleccionar “INPUT PIN” y

83
“NORMALMENTE CERRADO (NC)”. Es importante recordar que el programa
coloca automáticamente la letra inicial “X” o “Y” si la variable significa INPUT O
OUTPUT, respectivamente.

Figura 59. Ventana emergente de contactos

Fuente: Ventana emergente de contactos. [Link]


programmable-logic-controller-plc/. Consulta: 2017.

Todo el procedimiento se repite para todos los contactos y ecuaciones


restantes.

Figura 60. Formato final del programa LDmicro editado de acuerdo al


circuito a trabajar

Fuente: Formato final de LDmicro. [Link]


programmable-logic-controller-plc/. Consulta: 2017.

84
Para insertar un nuevo segmento se hace clic en Editar e insertar
segmento detrás de. Después de haber completado la configuración, en menú,
ajustes, microcontroller, ANCI C Code, entonces se puede compilar la selección
en el menú copilar, compilar como.

Se debe elegir guardar el archivo en “Escritorio” con esta configuración:

Guardo como: Todos los archivos


Nombre de archivo: [Link]

Después de guardar el archivo, una ventana emergente advertirá que para


configurar las E/S de las direcciones del mapa, debe hacerse clic en “Aceptar”,
ahora en el programa LDmicro en menú, archivo, guardar cómo y en el
escritorio se guarda el programa con el nombre [Link].

Ahora se abre el archivo [Link] con el block de notas, se selecciona


todo el texto y se copia en el sitio web: [Link]
Después de hacer clic en generar se obtendrá un nuevo código, se copia y
pega este código en un nuevo archivo de block de notas y se guarda de la
siguiente manera:

Guardar como: Todos los archivos.


Nombre de archivo: ladder.h

Ahora debe configurarse los pines como sigue:

PinMode (2, INPUT);


PinMode (3, INPUT);
PinMode (4, INPUT);
85
PinMode (5, INPUT);
PinMode (8, OUTPUT;
PinMode (9, OUTPUT;
PinMode (10, OUTPUT;
PinMode (11, OUTPUT;
PinMode (12, OUTPUT;

Para esto se debe modificar la biblioteca “Ladder.h”, con esta


configuración de pinout, como se muestra en la lista de códigos 1:

Figura 61. Configuración de biblioteca ladder.h

Fuente: Ladder.h. [Link]


plc/. Consulta: 2017.

86
Figura 62. Continuación de configuración de biblioteca ladder.h

Fuente: Ladder.h. [Link]


plc/. Consulta: 2017.

Haciendo los cambios en la biblioteca, como se muestra en la figura


anterior, se debe guardar los cambios sin modificar el nombre ni la extensión
del archivo, guardando la biblioteca en el escritorio.

Ahora debe crearse un archivo con nombre “[Link]”, en este archivo


se declararán los nombres de las variables y los pines, respectivamente.

87
Figura 63. Declaración de variables y pines

Fuente: Variables y pines. [Link]


controller-plc/. Consulta: 2017.

Teniendo los cuatro archivos:

 [Link]
 [Link]
 Ladder.h
 [Link]

Estos deben ser colocados en la siguiente carpeta, para Windows 7:


C:\programmix86\Audrino\bibliotecas, y para Windows XP: C:\archivo de
programa\Arduino\bibliotecas).

88
Se abre y reinicia el IDE de Arduino y se escribe el siguiente código;
desde menú SKETCH se selecciona “import library” y “ladder” y se escribe el
siguiente código:

Figura 64. Código de carga de programa

Fuente: Código de carga de programa. [Link]


programmable-logic-controller-plc/. Consulta: 2017.

Se hace clic en el “cheque de verificación” del código y se espera hasta


que el boceto se ha compilado. Se hace clic en el icono de panel lateral para
transferir el código a Arduino, hasta que el código este cargado y con esto el
programa también.

Ahora debe realizarse las conexiones de entradas y salidas y el Arduino


trabajará como un PLC como fue configurado. En relación a la entrada y salidas
para el Arduino, es necesario colocar un hardware adicional para que soporte
las corrientes necesarias y el Arduino no sea dañado.

89
Figura 65. Módulo de cuatro relés para Arduino

Fuente: Módulo de cuatro relés. [Link]


logic-controller-plc/. Consulta: 2017.

Los módulos de relés son accionados con cinco voltios de corriente directa
y pueden soportar como máximo diez amperios y 250 voltios en corriente
alterna. De acuerdo a la figura anterior se describen las partes que lo
conforman:

1. LED que indica el estado de cada entrada.


2. Jumper selector para alimentación de entradas.
3. Cuatro optoacopladores del tipo FL817C.
4. Diodos de protección.
5. Relés con bobinas de 5 voltios y contactos capaces de controlar 10
amperios y 250 voltios.
6. Bobinas con tres contactos (común, normalmente abierto y normalmente
cerrado).
7. Salidas de relés.

90
Figura 66. Circuito esquemático de un canal de salida

Fuente: Canal de salida. [Link]


controller-plc/. Consulta: 2017.

2.2. Prácticas en sistemas neumáticos e hidráulicos

Los sistemas neumáticos son sistemas que utilizan el aire u otro gas como
medio para transmitir señales o potencia. Dentro de la industria se utilizan para
la automatización de procesos de ensamblado o etiquetado, entre otras
aplicaciones.

En un sistema electroneumático, la energía eléctrica sustituye la energía


neumática como elemento natural para la generación y transmisión de señales
de control que se ubican en los sistemas de mando. Para visualizar este tipo de
sistemas se considera la siguiente práctica de una estampadora
electroneomática utilizando un Arduino:

Consiste en la programación con Arduino de una secuencia de tres


cilindros neumáticos que simualn un punzón, un alimentador de cilindro, una
imagen y un escape del cilindro.

91
Para llevar a cabo el control de un cilindro con Arduino se utiliza electro-
neumático y un tablero de relés RELAY SHIELD V2.1. No se puede realizar el
control directamente con Arduino, ya que el voltaje de funcionamiento del
solenoide es de 24 voltios y la tensión de trabajo de Arduino es de 5 voltios.
Además la corriente de control de Arduino es de 40 miliamperios y esto no es
suficiente para hacer funcionar las válvulas.

Figura 67. Características de la placa de Relay Shied V2.1

Fuente: Características de la placa. [Link]


Consulta: 2017.

Las conexiones de las terminales de los relés son:

 COM: polo común.

92
 NC: pin normalmente cerrado (LOW).
 NO: pin normalmente abierto (HIGT).

Figura 68. Diagrama de un relé

Fuente: elaboración propia.

Las bobinas de los relés son controladas por los pines de 4 al 7, como se
aprecia en la figura anterior.

 D7: relé 1
 D6: relé 2
 D5: relé 3
 D4: relé 4

El ciclo de la estampadora se define de la siguiente manera:

 A: cilindro alimentador-mordaza
 B: cilindro estampa
 C: cilindro extractor
 Ciclo A+B+(A-B)C+C-

93
Para simplificar la automatización del circuito desarrollado en secuencia
con los tiempos de espera en lugar de trabajar con el final de carrera, se da la
automatización con el tiempo, que es lo que permite hacer el controlador con
Arduino. Para el buen funcionamiento del rodillo de alimentación en el
desplazamiento de la pieza se hace una regulación de velocidad de este
accionado en avance y retroceso.

Figura 69. Circuito neumático y circuito eléctrico

Fuente: Circuitos neumático y eléctrico. [Link]


Consulta: 2017.

Ya con los esquemas eléctricos y neumáticos se procede a la


programación de Arduino, quedando de la siguiente manera:

int controlB1=7;
int controlB2=6;
int controlB3=5;
int controlB4=4;

void setup () {
pinMode (controlB1, OUTPUT);

94
pinMode (controlB2, OUTPUT);
pinMode (controlB3, OUTPUT);
pinMode (controlB4, OUTPUT);
}
Voide pool () {
digitalWrite (controlB2, LOW); // Retira la unidad de
la izquierda con retardo de 500ms
digitalwrite (controlB1, HIGH); // Comienza ciclo A+
(Alimentcion – mordaza )
delay(1000); // Espera 1 segunod para la salida
completa de A
digitalwtire(cotrolB, HIGH); // Sale Cilindro B
+(estampación)
delay(1000);
digitalWrite(controlB1, LOW); // Elimana Señal en B1
digitalWrite(controlB2, LOW); // Elimana Señal en B3
digitalWrite(controlB1, HIGH); // Energisa el relé 2
para retroceder el Cilindro A-B-
Delay(1000); // Tiempo de retraso de A y B
DigitalWrite(controlB4,HIGH); //Sale cilindro C para
extraer la pieza
Delay(1000); //Tiempo necesario para extracción de
pieza
digitalWrtie(controlB4,LOW); // Retrocede el cilindro C
delay(1000); //Esperamos para comenzar de nuevo el
ciclo
}

95
Figura 70. Partes del sistema de estamparadora electroneomática, 1.
Fuente de alimentación, 2. Arduino uno, 3. Cilindro alimentador, 4. Cilindro
estampador, 5. Cilindro extractor

Fuente: Partes del sistema. [Link] Consulta: 2017.

 Ejemplo 2:

Este ejercicio se puede aplicar a válvulas neumáticas o hidráulicas,


consiste en una prensa que está compuesta por dos cilindros o actuadores de
la siguiente manera:

Un cilindro sujeta la pieza y el otro la estampa:

96
Figura 71. Esquema de cilindros

Fuente: Esquema de cilindros. [Link] Consulta:


2017.

Cada cilindro o actuador consta de dos sensores (pueden ser limit switch)
y estos deben ser colocados al final de la carrera.

 Estos sensores serán denominados como A y B


 Siendo a0 la posición de inicio y a1 la posición final de A
 Siendo b0 la posición de inicio y b1 la posición final de B

El circuito consta de un botón de encendido y apagado. Se definirá el


movimiento del vástago del cilindro de la siguiente forma:

 Cuando el vástago sale se dice que está en movimiento A+


 Cuando el vástago regresa se dice que está en movimiento A-

Por lo anterior, se define que la prensa funciona de la siguiente manera:


A+,B+,B-,A-, esto quiere decir que primero se activará el botón pulsador (BP),
sale el vástago del cilindro A y sujeta la pieza, una vez sujeta la pieza el

97
vástago del cilindro B sale y estampa la pieza, luego de estampar la pieza el
vástago B regresa y, hasta que este regresa totalmente, el vástago A regresa a
su posición inicial. Ya que se ha analizado el circuito se procede a escribir la
ecuación booleana:

BP*A0*B0=SOL1
A1*BO=SOL2
A1*B1= DESACTIVIACION (SOL2)
A1*B0=SOL1

Se observa que A1*B0 se repite dos veces teniendo instrucciones


diferentes, por esta razón es necesario tener una memoria para que no haya
interferencia entre las instrucciones, para eso se utilizara M1 como memoria,
cuando esté activa solo se pondrá M1 y cuando esté desactivada se pondrá M1.

BP*A0*B0* M1=SOL1 (activación del solenoide del cilindro A)


A1*BO*M1=SOL2 (activación del solenoide del cilindro B)
A1*B1*M1= SOL2 (desactivación del solenoide del cilindro B)
A1*B1*M1=M1 (activación de la memoria M1)
A1*B0*M1=SOL1 (desactivación del solenoide del cilindro A)
A0*B0*M0=M1 (desactivación de la memoria M1)

La programación para luego ser cargada en Arduino se debe realizar de la


siguiente manera:

//A+ B+ B- A-
int SENSOR_A0=3;
int SENSOR_A1=4;
int SENSOR_B0=5;
int SENSOR_B1=6;

98
int BOTON=2;
int SOL_1=7;
int SOL_2=8;
int DESAC_SOL_1=0;
int DESAC_SOL_2=0;
int ACT_SOL_2=0;
int ACT_SOL_1=0;
int B;
int SA0:
int SB0:
int SA1:
int SB1:

void setup()
{
pinMode (BOTON, INPUT)
pinMode(SENSOR_A0,IMPUT);
pinMode(SENSOR_A1,IMPUT);
pinMode(SENSOR_B0,IMPUT);
pinMode(SENSOR_B1,IMPUT);
pinMode(SOL_1, OUTPUT);
pinMode(SOL_2, OUTPUT);
}

Void loop()
{
B=digitalRead(BOTON);
SA0=digitalRead(SENSOR_A0);
SB0=digitalRead(SENSOR_B0);
SA1=digitalRead(SENSOR_A1);
SB1=digitalRead(SENSOR_B1);

If (B==HIGH && SA0 == HIGH && SB0 ==HIGH && SOL_1==LOW


&& SOL2==LOW)
99
{
ACT_SOL_1=1;
}
if (ACT_SOL_1==1)
{
digitalWrite(SOL_1, HIGH);
digitalWrite(SOL_2,LOW);
}
if (SA1==HIGH && SB0==HIGH && SOL_1==HIGH &&
SOL_2==LOW)
}
ACT_SOL_2= 1;
}
if (ACT_SOL_2==1)
{
digitalWrite(SOL_1,HIGH);
digitalWrite(SOL_2,HIGH);
}
if (SA1==HIGH && SB1==HIGH && SOL_1==HIGH &&
SOL_2==HIGH)
{
DESAC_SOL_2=1;
ACT_SOL_2=0;
}
if (DESAC_SOL_2==1)
{
digitalWrite(SOL_1,HIGH);
digitalWrite(SOL_2,LOW);
}
if (SA1==HIGH && SB0==HIGH && SOL_1==HIGH &&
SOL_2==LOW)
{
DESAC_SOL_1=1;
ACT_SOL_1=0;
100
if (DESAC_SOL_1==1)
{
digitalWrite(SOL_1,LOW);
digitalWrite(SOL_2,LOW);
if (SA0==HIGH && SB0==HIGH && SOL_1==LOW && SOL_2==LOW)
{
DESAC_SOL_1=0;
DESAC_SOL_2=0;
ACT_SOL_2=0;
ACT_SOL_2=0;
}
}

El diagrama eléctrico se realiza a través de un transistor 2n222 y un


relevador de 5 voltios.

Figura 72. Diagrama eléctrico con transistor 2n222

Fuentes: Diagrama eléctrico. [Link] Consulta:


2017.

101
También se puede realizar con un optoacoplador:

Figura 73. Diagrama eléctrico por optoacoplador

Fuente: Diagrama eléctrico por optoacoplador.


[Link] Consulta: 2017.

2.3. Ventajas y desventajas de aplicar el PIC PLC

Las ventajas y desventajas de aplicar un PIC PLC son varias, ya que hay
que tomar en cuenta que el PLC ha evolucionado desde hace ya más de cuatro
décadas y este ha sido aplicado en la industria.

Ventajas:

 Se puede obtener los PIC PLC a bajo costo.

102
 La versatilidad de los PIC PLC para conectar diferentes tipos de
tarjetas tales como Wifi, microSd, GPS, bluetooh, clic de presión,
calidad de aire, térmico, nivel de presión, entre otros.
 Con algunos ajustes se puede utilizar lenguaje escalera para
programar.
 Bajo consumo de energía.
 Existen placas aplicables como PLC de muy pequeñas dimensiones
(5cm x 3cm).
 La programación del PIC PLC se realiza en alto nivel, por esta
razón se optimiza su uso.
 Permite programar, controlar y sincronizar tareas a través del
tiempo, realizando una correcta programación.
 Con los PIC PLC se simplifica el proceso de trabajar con
microcontroladores.
 Los software para PIC PLC son multiplataformas.
 El entorno de programación es simple y directo, por lo cual es fácil
de usar para principiantes y flexible para usuarios avanzados.
 Los software para PIC PLC en su mayoría son de código abierto,
esto significa que la distribución de licencias es libre.
 El hardware es ampliable y de código abierto, ya que los planos de
los módulos están publicados bajo licencia Creative Commons, por
lo que diseñadores de circuitos con experiencia pueden hacer uso
de su propia versión de módulos, ampliándolos u optimizándolos.
Incluso usuarios relativamente inexpertos pueden construir la
versión para placa de desarrollo para entender cómo funciona.

103
Desventajas:

 Los PIC PLC no son muy promocionados para la industria, por lo


cual son poco conocidos.
 Al programar es necesario llamar muchas instrucciones para
realizar una tarea particular, por lo cual los programas se vuelven
extensos.

104
3. MODELOS Y ACCESORIOS EXISTENTES DE PIC PLC

Es muy importante analizar los modelos existentes de los PIC PLC, ya que
de acuerdo a su aplicación se debe escoger el modelo a escoger, además se
debe conocer los fabricantes de estos equipos y verificar cuáles son sus
diferencias. Estos temas serán ampliados en este capítulo.

3.1. Fabricantes

3.1.1. Mikroelektronika

Mikroelektronika nace en el año 2001, dedicada a la producción de tarjetas


de desarrollo para microcontroladores, entre 2004 y 2015 la compañía ha
lanzado al mercado compiladores C, Basic y Pascal para siete arquitecturas de
microcontrolades PIC, PIC32, dsPIC/PIC24, FT90X, AVR, 850 y ARM. En el
año 2012 laza al mercado el tablero EASYPIC Fusion V7, el cual fue nominado
como mejor herramienta en la Embedded Exposición Mundial de 2013 en
Nuremberg.

3.1.2. Industrial Shields

Es una empresa que nace en el año 2012, Alber Prieto es un ingeniero en


la búsqueda de equipos PLC más flexibles y a un mejor costo, por lo cual
decide desarrollar su propia solución usando Open Source Hardware. Industrial
Shields es la marca que identifica el hardware libre que a la vez sigue
parámetros de diseño, uso y seguridad industriales.

105
3.1.3. Controllino

Es un PLC preparado para la industria, programable, se basa en la


tecnología de código abierto de Arduino. Puede servir virtualmente a cualquier
propósito de control, automatización y registro de datos para uso industrial.

3.2. Ubicación del fabricante

Los fabricantes analizados son Mikroelektronika, Industrial Shields y


Controllino, la ubicación de cada uno es la siguiente: Mikroelectronika se
encuentra ubicado en Belgrado, Serbia, pero actualmente cuenta con
distribuidores en América, Europa, Asia, África y Australia.

Tabla XXIV. Distribuidores de Mikroelektronika en el mundo


CONTINENTE PAIS REPRESENTANTE PAGINA WEB
Estados Unidos Allied Electronic [Link]
Mexico MENSAJES ELECTRONICOS [Link]
Argentina Adichip [Link]
Ecuador APM MICRO [Link]
Colombia ELECTRONICA I + D [Link]
America Brasil Microgenios Soluções Eletrônicas [Link]
Paises Bajos, Belgica Antratek Electrónica [Link]
Alemania, Australia Suiza Bürklin [Link]
Hungria ChipCAD Distribución Electrónica [Link]
Federación Rusa Chip & Dip [Link]
Suecia Electrokit [Link]
Italia Futura Elettronica [Link]
Eslobaquia COMPONENTES RLX [Link]
Europa Reino Unido La tienda de depuración [Link]
Irak Al-Hekma Electrónica [Link]
Turquia Beti Elektronik Sanayi ve Ticaret [Link]
Jórdan Fabricantes de control [Link]
Pakistan Electrónica creativa y automatización [Link]
Malasia Cytron Technologies [Link]
India Dynalog [Link]
China Tecnología Hongke [Link]
Taiwan Experimento innovador [Link]
Japon Microtecnica [Link]
Asia Hong Kong MikroCity [Link]
Túnez ADVANCE TEC [Link]
Sudáfrica Dizzy Enterprises [Link]
Argelia Orbit Electronic [Link]
Egipto Sistemas Inteligentes [Link]
Africa Nigeria SmartPhenix [Link]
Australia Glyn [Link]
Australia Nueva Zelanda Glyn [Link]

Fuente: elaboración propia.

106
Industrial Shields se encuentra en Barcelona, España, cuenta con
distribuidores en algunos países que se verán en la siguiente tabla:

Tabla XXV. Distribuidores de Industrial Shields en el mundo

Distribuidor PAIS PAGINA WEB

Italy
Latvia
Lithuania
Luxembourg
Netherlands
Norway
Malta
Montenegro
Poland
Portugal
Romania
Russia
Serbia
Slovakia
RS Components [Link]
Slovenia
Spain
China
Hong Kong (English)
Hong Kong (Chinese)
Japan
South Korea
Taiwan (English)
Argentina
Brazil
Brazil (Distributors)
Chile
Canada
Mexico
USA
Estados Unidos
Canada
RS Components Francia [Link]
Reino Unido
Japon
Blue Dot Engineering-BDE Guatemala [Link]

Fuente: elaboración propia.

107
Controllino es una empresa que actualmente cuenta únicamente con
representación en Rusia, los datos de esta empresa se presentan a
continuación:

Tabla XXVI. Ubicación de empresa Controllino


PAIS REPRESENTANTE Oficinas PAGINA WEB
Rusia Controllino Grazhdansky pr-t 47, oficina 2-2 [Link]
Fuente: elaboración propia.

3.3. Tipos y características del PIC PLC

3.3.1. Mikroelektronika

El cátalo de Mikroelektronika comprende más de 500 productos, estos se


pueden definir de acuerdo a la línea a que pertenecen:

Tabla XXVII. Descripción de productos de compañía Mikroelektronika


Linea de Producto DESCRIPCIÓN PRODUCTOS REPRESENTATIVOS
Compiladores (con Entorno de Desarrollo Integrado) disponibles para 7
MicroC Microbasic arquitecturas de microcontroladores (PIC, PIC32, dsPIC / PIC32, FT90x, AVR,
y Micropascal 8051 y ARM), notable por tener más de 500 bibliotecas de funciones MikroC PRO para ARM
compiladores integradas e integración de la herramienta de diseño GUI para Pantallas
pequeñas.
Tableros de desarrollo completos con programadores integrados. Los EasyPIC v7
Easy boards usuarios pueden conectar diferentes microcontroladores a través de PICPLC16 v6
zócalos DIP o tarjetas PCB especializadas. AVRPLC16 V6
250+ tableros adicionales con un conector y un factor de forma
GSM click
click boards estandarizados.
LoRa click Weather click
Cada placa lleva un único sensor o transceptor de numerosos vendedores.
Placas compactas de prototipado rápido con un microcontrolador integrado
clicker boards y periféricos básicos junto con uno o dos conectores mikroBUS ™ para clicker 2 for STM32
tableros de clics.
Tableros de desarrollo de tamaño medio con una carcasa de plástico que lo
Ready boards hacen adecuado para su uso como productos de consumo una vez Ready for AVR
programado.
Pequeñas placas de desarrollo fabricadas en formato DIP-40, que permiten
MINI boards a los usuarios añadir potencia de procesamiento de 32 bits a sistemas MINI-M4 for STM32
diseñados originalmente para microcontroladores de 8 bits.
Programadores y depuradores USB 2.0 que soportan varias familias de
mikroProg mikroProg for PIC, dsPIC, and PIC32
microcontroladores.
Tableros de desarrollo de pantalla táctil TFT para la creación de prototipos
mikromedia
de interfaces gráficas integradas. Equipado con un microcontrolador, mikromedia Plus for STM32F7
boards
controlador gráfico y numerosos periféricos.
TFT con pantalla táctil opcional, alimentado por microcontroladores FTDI
mikromedia HMI
Chip y controladores gráficos y conjunto de características reducidas para mikromedia HMI 5 inch capacitive
boards
que sea adecuado para su uso como parte OEM.

Fuente: elaboración propia.

108
3.3.2. Industrial Shields

Los productos son dedicados a satisfacer las necesidades de la industria y


actualmente comercializan:

 Variedad de PLC basados en Arduino


 Touch Screen son sistema Linux integrado
 Sensores industriales
 Automatismos y sistemas mecatrónicos
 Equipos y maquinarias

Los PLC basados en Arduino, que a su vez está basado en tecnología de


microcontroladores, se muestran en la siguiente página:

109
Tabla [Link]ón de productos de compañía Industrial Shields

Fuente: elaboración propia.

3.3.3. Controllino

Controllino actualmente se ofrece en tres tamaños de dispositivos, los


cuales son MINI, MAXI, MAXI Automation Y MEGA. Además se ofrecerá una
versión libremente personalizable llamada CONTROLLINO myPLC.

110
Tabla XXIX. Descripción de Controllino

Fuente: elaboración propia.

111
3.3.4. Implementación de los PIC PLC al laboratorio de
Electrónica III

En el curso de Electrónica III de la Escuela Mecánica Eléctrica de la


Facultad de Ingeniería de la Universidad de San Carlos de Guatemala, se
estudian los microcontroladores PIC, entre otros elementos, ya que estos son
de una gran variedad pero los principios básicos son los mismos para todos.
Sería de gran ayuda para el estudiante de ingeniería eléctrica y electrónica
contar con un equipo actualizado y especializado en el área de
microcontroladores PIC; por ello surge la necesidad de proponer una
alternativa.

Ya analizados los PIC PLC del mercado se puede seleccionar la mejor


opción para ser implementada al laboratorio de Electrónica III. El fabricante que
proporciona una solución a este tema es MIKROELEKTRONIKA, ya que cuenta
con una línea de productos llamada kits de desarrollo, en esta se presentan
más de treinta kits dedicados al desarrollo de proyectos. Además, el costo de
estos kits de desarrollo oscila en precios de doscientos dólares hasta
setecientos dólares, lo cual es un precio bajo en comparación al beneficio que
obtendrá el estudiante. El kit que se analizará para ejemplificar será el MikroLab
para PIC L, esta es una herramienta para el desarrollo de PIC de 8 bits, para
chip con alto número de pines. Este kit contiene los siguientes elementos:

 Placa de desarrollo EasyPic Pro V7.


 MikroC, Mikrobasic o Mikropascal para PIC. Instalado en la
memoria flash + licencia.
 Visual GLCD.
 Tablero EasyPROTO.
 Placa SmartProto.

112
 Tablero EasyTest.
 Proto Click.
 Carácter LCD 2x16 con luz de fondo azul.
 Graphic LCD 128x64 con TouchPanel.
 Sensor de temperatura DS1820.
 Cables de puentes hembra a hembra de 15 cm de longitud.
 Puente de cables macho a macho de 15 cm de longitud.
 Cables de puente hembra a macho de 15 cm de longitud.
 Ver en anexos la tabla de compatibilidad de PIC para esta placa.

Figura 74. Kit Mikrolab para PIC L

Fuente: Kit Mikrolab. [Link] Consulta: 2017.

El kit Mikrolab para PIC L, es un kit de desarrollo para todas las


características de microcontroladores de 8 bits de alto número de pines. El
programador y depurador MikroPROG de este soporta más de 155
microcontroladores, la placa entrega un zócalo MCU que contiene un

113
microcontrolador PIC18F87K22, y además contiene los siguientes módulos de
aplicaciones de desarrollo:

 MikroProg, es un rápido programador USB 2.0 con el circuito de


hardware MikrolCD. Admite dispositivos PIC18F, PIC18FJ y PIC18FK en
un solo programador.
 Tarjeta MCU de 80 pines con PIC18F87K22 está incluida en el paquete
con la placa.
 Módulo de Ethernet para conector RJ48 que permite desarrollo de
aplicaciones Ethernet.
 Módulo UART para escribir aplicaciones UART para computadoras
portátiles, y además de RS232 también cuenta con USB-UART.
 Módulo de salidas de alimentación de 5V y 3.3V.
 Módulo GND de tres pines para facilitar el acceso a las ondas de
osciloscopio.
 Módulo Display Socket, son soportes especiales de plástico GLCD y LCD
diseñados para asegurar que las pantallas encajen de forma segura en
su lugar.
 Módulo de poder, es una fuente de alimentación de doble conmutación
que permite que la placa sea compatible con dispositivos boath 3.3V y
5V.
 Módulo de tomas MikroBUS, cuenta con tres mikroBUS, con esto puede
agregar docenas de nuevas funcionalidades a la placa con ajustes
mínimos del hardware, ya que existe una colección de Clickboards
compatibles con mikroBus y la configuración de estas no es complicada.

Debido a la facilidad y el bajo costo de estas tarjetas es recomendable la


aplicación de estas al laboratorio de Electrónica III, ya que en estas se
aprovecha al máximo la programación de los microcontroladores PIC y se dan

114
aplicaciones de este. Además, en los anexos se encuentra la dirección donde
puede descargarse algunos ejemplos que han sido probados, por lo cual
funcionan correctamente. Con estos kits el estudiante tendrá una forma fácil,
sencilla y práctica de familiarizarse con los microcontroladores, ya que no se
necesita ningún elemento adicional, ni la inversión monetaria del estudiante.

115
116
4. ANÁLISIS ECONÓMICO DEL PIC PLC EN COMPARACIÓN
CON EL PLC

4.1. Estudio de ingeniería

En este capítulo se estudiarán y compararán características de algunos de


los PLC de marcas reconocidas con los PIC PLC del mercado actual.

 Simatic S7-1200

El controlador modular SIMATIC S7-1200 es el núcleo de la nueva línea


de productos Siemens para tareas de automatización sencillas pero de alta
precisión. Ofrece las siguientes características técnicas:

 Alta capacidad de procesamiento, cálculo de 64 bits.


 Interfaz Ethernet / PROFINET integrado.
 Entradas analógicas integradas.
 Bloques de función para control de ejes conforme a PLCopen.
 Programación mediante la herramienta de STEP 7 Basic V13.
 En la parte frontal se puede añadir módulos de señales analógicas
o digitales sin afectar el tamaño físico del contactor.
 Se pueden equipar con tres módulos de comunicación, lo que
permite una comunicación sin discontinuidades.
 Entradas de alta velocidad para contaje y medición
 Salidas de alta velocidad para regulación de velocidad, posición y
punto de operación.

117
 Bloque de funciones para control de movimientos conforme a
PLCopen.
 Funcionalidades PID para lazos de regulación.
 Se puede conectar pantallas táctiles de alto contraste, con
funciones básicas de red y comunicación homogénea.

Los datos técnicos de las CPU del S7-1200 se muestran a continuación:

Tabla XXX. Datos técnicos de S7-1200 parte 1

Fuente: Siemens. Manual S7-1200.

118
Tabla XXXI. Datos técnicos de PLC S7-1200 parte 2

Fuente: Siemens. Manual S7-1200.

119
Tabla XXXII. Datos técnicos de PLC S7-1200 parte 3

Fuente: Siemens. Manual S7-1200.

120
Allen Bradley, para sistemas de control con PLC´s, cuenta con diversos
modelos de controladores lógicos programables, tales como:

 Familia Micrologix 1000


 Familia SLC500
 Familia PLC-5

Estas familias son la parte central de las arquitecturas y sistemas de


automatización, fundamentalmente el sistema de automatización 1746 (basado
en las familias SLC 500) y el sistema de automatización 1771 (basado en los
procesadores de la familia PLC-5). Cabe indicar que estos sistemas y
arquitectura no son rígidos, ya que permiten integrarse a través de las redes (de
información, de control, de dispositivos, serial, etc.) y enlaces universales
remotos I/O.

La familia Micrologix 1000 son los controladores programables más


pequeños y económicos. Pueden ser utilizados en cinco configuraciones
eléctricas y diversas opciones de E/S. Cuentan con un puerto de comunicación
RS-232C que es configurable para protocolo DF1, para conexión directa a
dispositivo programador o interface de operador, y con el convertidor 1761-
NET-AIC pude configurarse el controlador para ser usado en una red DH-485.

Pueden ser programados estos controladores con los siguientes software:


Micrologix 1000 A.I. Serie, PLC 500 A.I. Series, RSLogix 500, utilizando Ladder
Logic, o el programador Micrologix Hand-Held, utilizando lista de instrucciones
mejoradas.

Las principales características de estos controladores son:

121
 Dos tamaños de E/S (16 o 32 E/S).
 Tamaño compacto, le permite al controlador ser ubicado en
espacios reducidos.
 Canal de comunicación RS-232, que permite conectar directamente
el controlador al dispositivo de programación o módem telefónico.
 Comunicación DH-485 vía un covertidor AIC+ (1761-NET-AIC),
permitiendo que se enlace con procesadores SLC u otros
procesadores MicroLogix, interace de operador o dispositivo de
programación en una red DH-485.
 Diversas configuraciones eléctricas.
 Entrada 24 Vdc y salida tipo relay con una fuente de alimentación
120/240Vac.
 Entrada 120Vac y salida tipo relay con una fuente de alimentación
120/240Vac.
 Entrada de 24Vdc y salida tipo relay con una fuente de alimentación
de 24Vdc.
 Entradas de 120Vac y salidas tipo relay y triacs con una fuente de
alimentación de 120/240Vac.

MicroLogix está dividido en varios modelos que son: MicroLogix 1000,


1200, 1400 y 1500. A continuación se presenta una tabla con las características
de cada uno de estos:

122
Tabla [Link]ón técnica de MicroLogix

Fuente: Especificación técnica de MicroLogix.


[Link]
1100#documentation. Consulta: 2017.

La gama de equipos programables PLC de ABB es variada, en este caso


se analizará el AC500, el cual es una terminal de operación robustoa y confiable
que fue lanzada en el 2006.
123
El AC500 puede ser programado en software de ingeniería de control
Buider Plus PS501, que cuenta con los cinco lenguajes según IEC 61131-3 y
con librerías extensas de bloques de funciones. Al AC500 se le pueden adaptar
hasta cuatro módulos de comunicación y hasta diez módulos de E/S.

Figura 75. PLC ABB AC500

Fuente: Catálogo de productos de automatización ABB.

124
Tabla XXXIV. Especificación técnica PLC ABB AC500

Fuente: Catálogo de productos de automatización ABB.

125
M-duino son una gama de PIC PLC basados en Arduino, los cuales son
aplicados con hardware Open Source, listos para para ser usados en entornos
industriales. La ventaja de estos es que utilizan plataformas abiertas, por lo cual
no hay que pagar licencias de usuario, estos equipos pueden ser controlados
desde PC, laptop, tablet, amartphones, entre otros. Las características de estos
PIC PLC se presentan a continuación:

Tabla XXXV. Especificación técnica de M-DUINO

Fuente: M-DUINO. [Link]


[Link]. Consulta: 2017.

126
Analizando las especificaciones técnicas de cada uno de los PLC
presentados anteriormente, se puede verificar que los PLC Siemens, ABB y
Allen Bradley tienen características más completas que el M-duino, esto se
debe a que los M-duino fueron lazados en el 2012 y es un sistema de PIC PLC
en crecimiento, el cual día a día sigue avanzando, mientras que los PLC de
marca Siemens, ABB y Allen Bradley tienen varios años en el mercado. Sin
embargo, las aplicaciones de los M-duino son variadas en aplicaciones
industriales, comerciales y domiciliarias.

4.2. Análisis costo-beneficio

Los precios de los PLC, dependiendo las marcas y aplicaciones, pueden


parecer elevados, pero hay que analizar los beneficios que estos
proporcionaran en los procesos que controlarán. Por ello se realiza una
comparación de precios de los PLC presentados en el punto anterior, tomando
en cuenta que cada uno de estos puede tener diferentes aplicaciones.

Tabla XXXVI. Costo de PLC Siemens

Fuente: elaboración propia.

127
Tabla XXXVII. Costo de PLC Allen Bradley

Fuente: elaboración propia.

Tabla XXXVIII. Costo de PLC ABB

Fuente: elaboración propia.

Tabla XXXIX. Costo de PLC M-Duino

Fuente: elaboración propia.

128
Como se puede observar en las tablas anteriores, el PLC de costo más
bajo es el de la marca M-Duino, esto se debe a que está fabricado con base en
Arduino, que es una placa basada en PIC. Las aplicaciones de un PLC de la
marca M-Duino son variadas, como las de un PLC de cualquier otra marca.

129
130
CONCLUSIONES

1. Es de gran importancia conocer la diferencia entre un controlador de


interfaz periférica (PIC) y un controlador lógico programable (PLC). Un
PIC es un circuito integrado que incluye en su interior las tres unidades
funcionales de una computadora, las cuales son las unidad central de
procesamientos (CPU), y las memorias y unidades de E/S, es decir se
trata de un computador completo en un solo circuito integrado, pero con
una capacidad de almacenamiento mucho menor. Estos funcionan
dependiendo el código de programación, rutinas o instrucciones que se
suban a su memoria y tienen una capacidad de almacenamiento acorde
al tipo o modelo de PIC. Por su parte, un PLC es un dispositivo que fue
desarrollado para reemplazar los circuitos secuenciales de relevadores
para el control de máquinas. El PLC trabaja atendiendo sus entradas y,
dependiendo de su estado, conecta o desconecta sus salidas. El usuario
introduce un programa, normalmente vía software, que proporciona los
resultados deseados. Los PLC son utilizados en muchas aplicaciones
reales, casi cualquier aplicación que necesite algún tipo de control
eléctrico necesita un PLC, entonces se define un PLC como una
computadora especializada, diseñada para controlar máquinas y
procesos en ambientes industriales, operando en tiempo real. Como se
pudo observar el PIC y el PLC tienen muchas cosas en común pero son
dispositivos totalmente diferentes, pero en la actualidad se ha
aprovechado estas congruencias para fabricar un PLC con base en un
PIC, tal es el caso de las empresas Mikroelektronika, Industrial Systems,
entre otras.

131
2. Para poder iniciar trabajando con un PIC PLC es necesario conocer los
lenguajes de programación que existen. Según la IEC 61131-3 existen
cinco lenguajes para programar los PLC, estos son diagrama de
funciones secuenciales (SFC), diagrama de bloques de funciones (FBD),
diagramas tipo escalera (LAD), texto estructurado (ST) y lista de
instrucciones (IL/STL), y esto también se aplica a algunos PIC PLC,
dependiendo del fabricante, ya que otros fabricantes de PIC PLC utilizan
lenguajes de programación de alto nivel como Basic, C o lenguaje de
bajo nivel como Assembler.

3. Los fabricantes de PIC PLC son pocos en comparación con los


fabricantes de PLC, pero cada fabricante de PIC PLC cuenta con una
variedad de productos que se pueden adecuar a las necesidades del
proceso a controlar, con el único inconveniente de que en Guatemala
aún no existen representantes de esta marcas, por lo cual cada producto
que se necesita debe ser solicitado a fábrica y hay que tomar en cuenta
los tiempos de entrega y el costo por envío al país.

4. El costo de un PIC PLC es más económico que un PLC de marca


reconocida, tomando en cuenta las limitaciones con que este cuenta.

5. El fabricante Mikroelektronica cuenta con una sección llamada Mikro


Labs, dedicada a universidades e instituciones de aprendizaje. Las
herramientas de este sitio pueden ser aplicadas a los laboratorios de
electrónica de instituciones educativas de Guatemala, con la finalidad de
implementar nuevas tecnologías que están en crecimiento.

132
RECOMENDACIONES

1. Este trabajo es una recopilación de información de las nuevas


tecnologías en PLC basadas en PIC. Es necesario que los ingenieros y
personas interesadas en este tema profundicen aún más, ya que en la
actualidad siguen surgiendo nuevas versiones de PIC PLC.

2. Es necesario que, para poder entender de una mejor manera la


programación de los PIC PLC, los técnicos e ingenieros controlen en su
totalidad los cinco lenguajes de programación estandarizados por la IEC
61131-3, además de los compiladores de alto y bajo nivel.

3. Para la selección del PIC PLC de un proyecto es necesario que se


estudie la ficha técnica de este, ya que deben conocerse sus
limitaciones, pues además del costo del dispositivo se debe sumar el
costo de envío y el tiempo de entrega, ya que en un proyecto estos
factores son esenciales.

4. Se debe implementar en las carreras de Ingeniería Eléctrica e


Ingeniería Electrónica los conocimientos básicos de las nuevas
tecnologías que surgen día a día, para que los nuevos ingenieros
puedan aplicar dichos conocimientos y con esto disminuir costos en los
proyectos ejecutados.

133
134
BIBLIOGRAFÍA

1. ABB. PLC Automation PLCs, control panels, automation builders.


Germany, 2016, 92 p.

2. CUBIAS BARRERA, Renato. Diseño y contrucción de un PLC o


Controlador Lógico Programable basado en la tecnología del
mecrocontrolador. Tesis de Ingeniería Eléctrica. Universidad de El
Salvador. Facultad de Ingenieria Eléctrica, 2004. 110 p.

3. Industrial Shields. Mduino R family. User Guide. España: Primera


Edición, 2012. 61 p.

4. Mikroelektronika. Manual de usuario PICPLC16 v16. Mikroelektronika,


Segunda Edición, 2010. 43 p.

5. REYES A. Carlos. Microcontroladores PIC. Programación en Basic.


Ecuador: Tercera Edición, Rispergraf, 2008. 211 p.

6. SIMATIC. Manual de sistema de automatización S7-200. Estados


Unidos: Edición 8/2008. 358 p.

7. VALENZUELA. René. Prácticas con microcontroladores PIC.


Guatemala: Primera Edición, 2008. 86 p.

135
136

También podría gustarte