Curso Controladores inteligentes industriales Mdulo 1 Controladores Lgicos

  • Slides: 45
Download presentation
Curso: Controladores inteligentes industriales Módulo 1 – Controladores Lógicos Programables (PLCs) Tarea 1. 2:

Curso: Controladores inteligentes industriales Módulo 1 – Controladores Lógicos Programables (PLCs) Tarea 1. 2: PLC – Software y lenguajes de programación. Petrov, PU – Departamento ECIT Traducción al ingles realizada por Mariana Ilieva

Puntos principales 1. Composición del software de los PLCs 2. Sistema operativo (ОS) –

Puntos principales 1. Composición del software de los PLCs 2. Sistema operativo (ОS) – funciones 3. Lenguajes de programación – tipos: • Diagrama de funciones secuenciales (SFC) – lenguaje de bloques de funciones secuenciales; • Diagrama de bloques de funciones (FBD) – lenguaje de diagrama de bloques secuenciales; • Diagramas de tipo escalera (LАD) – lenguaje de diagramas de escalera; • Texto estructurado (ST) – lenguaje de tipo texto estructurado a alto nivel (parecido a Pascal); • Lista de instrucciones (IL/STL) – ensamblador con un tipo de lenguaje basado en instrucciones. 4. Entorno de programación Co. De. Sys (Sistema de desarrollo controlado) 5. Ejemplos de diagramas de escalera 2

Composición del software para los PLCs § El software para los PLCs se compone,

Composición del software para los PLCs § El software para los PLCs se compone, principalmente, de un sistema operativo y un entorno de programación, capaz de soportar uno o mas lenguajes de programación, utilizados en la programación de los PLCs. § Los componentes adicionales del software para PLCs pueden ser: programas para diagnosticar y encontrar fallos, programas de visualización, programas de comunicación etc. Muy a menudo, estos programas son parte del sistema operativo. § El sistema operativo puede ser de tipo convencional (en el caso de un PLC basado en un PLC) tales como Windows, Linux, Mac OS etc. o de tipo especializado por una empresa, ej. STEP 7 -Micro/WIN por la empresa Siemens para los controladores programables que fabrica Siemens. § Los sistemas operacionales de tipo especializado tienen más a menudo interfaces de usuario gráficas, similares a Windows. § Los PLCs contienen a menudo librerías con módulos de programación suplementarios en su memoria. 3

Principales funciones del sistema operativo § Las funciones principales del sistema operativo (OS) de

Principales funciones del sistema operativo § Las funciones principales del sistema operativo (OS) de los PLCs son: Ø Inicialización de los PLC; Ø Escaneo (lectura) de las entradas digitales y actualización de las tablas PII (ver Tarea 1 para las tablas PII y PIO); Ø Escaneo de las entradas y salidas analógicas; Ø Ejecución del programa del usuario; Ø Mantenimiento de los temporizadores, contadores, etc. ; Ø Actualización de las salidas de control por medio de las tablas PIO; Ø Mantenimiento de los programas en caso de que se encienda; Ø Auto-diagnostico del sistema; Ø Comunicación en el entorno de red; Ø Gestión de las tareas cuando los PLCs se controlan por multitareas del OS en tiempo real. 4

Ejecución del ciclo operativo de un PLC (1) § Un programa es una secuencia

Ejecución del ciclo operativo de un PLC (1) § Un programa es una secuencia de instrucciones, que terminan con una orden de finalización del proceso, devolviendo así el control al operador o al monitor del OS. El programa se puede ejecutar de manera asíncrona, cuando se producen ciertos eventos, o síncrona, cuando la CPU ejecuta de forma secuencial todas las instrucciones desde la primera hasta la ultima y vuelve de nuevo a la primera. § El ciclo está compuesto de dos fases - una fase entrada-salida y una fase de usuario, relacionada con el procesamiento de los datos. Sus duraciones dependen del número de entradas y salidas, la extensión del programa y de la velocidad de operación del PLC. La estructura del ciclo, ej. , el ratio entre dos fases, se define por la forma en la que direcciona las entradas y salidas, el número de transferencias incondicionales y la duración de los cálculos. 5

Ejecución del ciclo de operación de un PLC (2) § La organización del ciclo

Ejecución del ciclo de operación de un PLC (2) § La organización del ciclo puede estar fijada de manera rígida o elegirse entre las siguientes opciones: Ø Todas las entradas se visitan al comienzo del ciclo, y las salidas se actualizan después de resolver todas las ecuaciones; Ø Todas las entradas se visitan al comienzo del ciclo, y las salidas se actualizan después de resolver cada ecuación; Ø Todas las entradas se visitan cada n ms, mientras que las salidas se actualizan cuando existen ciertas condiciones; § Un ciclo de escaneo típico puede observarse en las Figuras 1 y 2 § Los principales intervalos de tiempo son: Ø Tiempo de escaneo del programa - Tscan; Ø Tiempo total de ciclo - Tcycle; Ø Tiempo de respuesta - Tresponse – un intervalo de tiempo entre el cambio de una señal de entrada y el cambio de la salida, relacionado a ella. Depende de la estructura y de la lógica del programa. Fig. 1 6

Ciclo operativo de un PLC Fig. 2 7

Ciclo operativo de un PLC Fig. 2 7

Ciclo de operación de un PLC S 7 - 300 y S 7 -

Ciclo de operación de un PLC S 7 - 300 y S 7 - 400 fabricados por Siemens Fig. 3. Para el PLC S 7 -300 y el S 7 -400 y STEP 7 el proceso cíclico de programación se controla por OB 1 (OB – Bloque de organización – ver más adelante). Después de encender la fuente de alimentación y de poner la CPU en el modo RUN, OB 1 es llamado y se produce el procesado de cada ciclo del PLC hasta que la CPU se para o se apaga la fuente de alimentación. Mientras OB 1 este continuamente procesando, la mayoría de los cloques tienen que ser llamados por él. Fig. 3 8

Lenguajes de programación de los PLCs § Los lenguajes de programación para los PLCs

Lenguajes de programación de los PLCs § Los lenguajes de programación para los PLCs surgieron junto a la aparición del primer PLC en 1968, esto explica porque no fueron utilizados lenguajes de alto nivel como Pascal y C y, en su lugar, se emplearon otros lenguajes más simples y fáciles de entender, como podremos ver a continuación. § Los lenguajes para la programación de los PLCs han sido considerados en la tercera parte del estándar IEC 61131, designado como IEC 61131 -3 (solía ser designado como IEC 1131, antes de que el sistema de numeración cambiase por la comisión internacional electro-técnica). Se definieron los siguientes cinco lenguajes: Ø Diagrama de Funciones Secuenciales (SFC) – un lenguaje de bloques de funciones secuenciales; Ø Diagrama de Bloques de Funciones (FBD) – un lenguaje de diagramas de bloques secuenciales; Ø Diagramas de Tipo Escalera (LАD) – un lenguaje de diagramas de relés (denominado de tipo escalera); Ø Texto Estructurado (ST) – un lenguaje de alto nivel como el del tipo de texto estructurado (similar a C y, sobre todo a Pascal); Ø Lista de instrucciones (IL o STL) – lenguaje de tipo ensamblador con uso de acumuladores. § Estos lenguajes se describen brevemente en las siguientes transparencias. 9

Lenguaje de programación ST: q Basado en texto, alto nivel. Similar a PASCAL, BASIC

Lenguaje de programación ST: q Basado en texto, alto nivel. Similar a PASCAL, BASIC y C q No es muy popular aun (es el nuevo lenguaje – requiere el conocimiento de la programación) q Ventajas en comparación con IL: incluye la formulación de las tareas del programa, una clara construcción de los programas en bloques con reglas (instrucciones) y una potente construcción para el control; q Es el más apropiada para la ejecución condicional y para formar ciclos (IF, WHILE, FOR, CASE) q En STEP 7 este lenguaje se denomina SCL (Lenguaje de Control Estructurado). q En la parte derecha se muestra un extracto de programa en este lenguaje. Q 4. 0 : = I 0. 0 AND I 1. 1 OR NOT I 0. 1 IF Q 4. 0 == 1 THEN GOTO M 001 ELSE Q 1. 0 = NOT Q 4. 0; END_IF; M 001 MW 2= 1+MW 2; 10

Lenguaje de programación IL (o STL) q Lenguaje de texto, similar a un ensamblador

Lenguaje de programación IL (o STL) q Lenguaje de texto, similar a un ensamblador q Mucho más utilizado en Europa q Todos los operadores trabajan con un registro especial, denominado acumulador (LD, ST) q Es conveniente para los programas pequeños q En el ОS STEP 7, desarrollado por Siemens, este lenguaje se denomina STL (Lista de Instrucciones – una lista de reglas e instrucciones). En la parte inferior se muestra estructura y en la parte derecha puede verse un extracto de un programa. 11

Lenguaje de programación FBD: q Lenguaje gráfico q Es conveniente cuando no hay ciclos

Lenguaje de programación FBD: q Lenguaje gráfico q Es conveniente cuando no hay ciclos y varias ramas en el programa q Consiste en un aritmética gráficamente conectada, Booleana y otros tipos de elementos funcionales y bloques de funciones. q FBD proviene del campo del procesamiento de señal. q Es muy popular actualmente Fig. 4. Ejemplo del lenguaje FBD del STEP 7 12

Lenguaje de programación SFC: q Lenguaje gráfico q Programa bien estructurado q Consiste en

Lenguaje de programación SFC: q Lenguaje gráfico q Programa bien estructurado q Consiste en pasos y transiciones q Los pasos contienen programas en cada lenguaje estándar q No tiene ningún lenguaje análogo q El primer nivel de la estructura en el SFC es la red de trabajo, compuesta por elementos llamados pasos y transiciones. Un paso puede ser bien activo o inactivo. Cuando esta activo, las instrucciones asociadas se ejecutan hasta que el paso se vuelve inactivo. q En STEP 7 este lenguaje se denomina lenguaje gráfico de programación (S 7 GRAPH) – ver la figura. Fig. 5 13

Lenguaje de programación LD q Lenguaje gráfico, que pueden soportar casi todos los PLCs

Lenguaje de programación LD q Lenguaje gráfico, que pueden soportar casi todos los PLCs q LD es una conexión gráfica entre variables Booleanas, comparable a los antiguos controles de tipo relé y representa el flujo de energía en los diagramas de circuitos eléctricos. Este lenguaje de programación se utiliza para la mayoría de las señales Booleanas. q Los denominados buses o relés rodean una red LD por la izquierda y por la derecha. Para el bus de la izquierda, suministrado con la señal lógica “ 1”, “la energía” llega a todos los elementos conectados. Dependiendo de su condición, los elementos dejan ir la energía hasta los siguientes elementos o interrumpen el flujo. q Prácticamente no se utiliza para trabajar con variables analógicas. q En STEP 7 este lenguaje se conoce como LAD (Ladder Logic). La Fig. 6 inferior muestra un ejemplo de un programa LAD, y más adelante se muestran también otros ejemplos. Fig. 6 14

Sistema de programación Co. De. Sys (SIStema de DЕsarrollo COntrolado) es un entrono de

Sistema de programación Co. De. Sys (SIStema de DЕsarrollo COntrolado) es un entrono de desarrollo de programas de PLC, creado por la empresa Alemana 3 S Gmb. H (1994 г. ). Desde 2012 se ha escrito como CODESYS (http: //en. wikipedia. org/wiki/Co. De. Sys ) q CODESYS permite el funcionamiento de los PLC producidos por las empresas como IFM, OVEN y otras muchas. Se instala por medio de un PC, con la ayuda de interfaces en serie normales (RS 232), interfaz CAN-PC (ej. EC 2070). Soporta tres funciones básicas: 1. Establecer todos los parámetros del PLC en cuestión. 2. Programar un PLC en uno de los lenguajes estándar, definido por la IEC 61131 -3: Lista de instrucciones (IL), diagrama de función secuencial (SFC), diagrama de funciones por bloques (FBD) diagrama de lógica en escalera (LD) o texto estructurado (ST); Testeando y ajustando los programas creados. 3. Diagnostico/visualización de los datos recibidos en el controlador. 4. Contiene una librería de funciones integrada: q El sistema se descarga de manera gratuita. 15

Relación entre CODESYS y un PLC CODESYS Respuesta Pregunta PLC E/S s Fábrica Fig.

Relación entre CODESYS y un PLC CODESYS Respuesta Pregunta PLC E/S s Fábrica Fig. 7 16

Reglas para la programación en PLCs q Retorno a la función de llamada q

Reglas para la programación en PLCs q Retorno a la función de llamada q Llamar la atención utilizando ciclos (para tener en cuenta el tiempo de ejecución) q Incrementar el interés hacia el uso de índices para los matrices y punteros Entrada Programa PLC Salida Fig. 8 17 17

Estructura de un programa de un PLC Projecto POUs Variables globales Declaraciones Código Estructuras

Estructura de un programa de un PLC Projecto POUs Variables globales Declaraciones Código Estructuras Fig. 9 18

¿Qué es POU? q En la IEC 61131 -3 los bloques, que constituyen los

¿Qué es POU? q En la IEC 61131 -3 los bloques, que constituyen los programas y los proyectos, se denominan Unidades Organizativas de los Programas, POU. q Los tres tipos de POU, declarados por el estándar, son Función (FUN), Bloque funcional (FB) y Programa (PROG). q La función es POU, y puede tener parámetros fijados (argumentos) pero no tiene variables estáticas, ej. no tiene memoria – siempre se proporcionan los mismos valores de salida con los mismos parámetros de entrada. q El bloque funcional tiene variables estáticas (memoria). Sus salidas siempre dependen de la condición de sus variables tanto internas como externas, cuyos valores permanecen iguales entre las ejecuciones individuales del bloque funcional. Estos son también los bloques principales para generar un programa de PLC. q El programa es de tipo POU, como el programa principal. Un elevado número de programas principales puede ejecutarse simultáneamente en los PLCs multitareas. 19 19

Datos y direcciones Validez: local (1 POU) o global (todas POU) Co. De. Sys

Datos y direcciones Validez: local (1 POU) o global (todas POU) Co. De. Sys suporta tres métodos de declaraciones: texto, tabular y automática Tipos de variables, fijadas a su dirección: A un área de entrada, a un área de salida, a marcadores de área 20

Sintaxis de las variables, fijadas a las direcciones Se designan con ‘%’ Ejemplos: Prefijos

Sintaxis de las variables, fijadas a las direcciones Se designan con ‘%’ Ejemplos: Prefijos para el area: %IW 215 I – entrada %QX 1. 1 Q – salida %MD 48 M – marcador Tamaño: X – un solo bit B – un byte (8 bits) W – una palabra (16 bits) D – una palabra doble (32 bits) 21

Tipos de datos estándar (1) El estándar IEC 61131 -3 define una multitud de

Tipos de datos estándar (1) El estándar IEC 61131 -3 define una multitud de tipos de datos estandarizados, denominados tipos de datos elementales. Se caracterizan por tener muchos bits, y un rango de valores admisible. Además, el usuario define los tipos de datos que pueden crearse y utilizarse analógicamente. Son muy similares a los lenguajes utilizados en niveles elevados como C/C++ y PASCAL: Ø BOOL – una variable Booleana (8 bits, valores: VERDADERO, FALSO); Ø SINT – ENTero CORto (8 bits, valores: -128 ÷ 127); Ø INT – ENTero (16 bits, valores: -32768 ÷ 32767); Ø DINT – ENTero DOble (32 bits, valores: -2147483648 ÷ 2147483647); Ø USINT – ENTero CORto Sin designar (8 bits, valores: 0 ÷ 255); Ø UINT – ENTero Sin designar (16 bits, valores: 0 ÷ 65535); Ø UDINT – ENTero Doble Sin designar (32 bits, valores: 0 ÷ 4294967295); Ø BYTE – un byte (8 bits, bit-direccionables, valores: 0 ÷ 255); Ø WORD – una palabra (16 bits, bit-direccionables, valores: 0 ÷ 65535); Ø DWORD – una palabra doble (32 bits, bit-direccionables, valores : 0 ÷ 4294967295); 22

Tipos de datos estándar(2) • REAL- numeros con punto flotante (32 bits, valores: 1.

Tipos de datos estándar(2) • REAL- numeros con punto flotante (32 bits, valores: 1. 175494351 e-38 ÷ 3. 402823466 e+38; • LREAL – REAL Largo, números con punto flotante (64 bits, valores: 2. 2250738585072014 e-308 ÷ 1. 7976931348623158 e+308); • STRING – variables de texto (sin tamaño límite); Ejemplo: str. Text: STRING(35): = ‘Hola mundo!’; • TIME – variables de tiempo (tamaño y valores como para los de tipo DWORD); Ejemplo: t. Time: TIME: = t#14 ms t. Time 1: TIME: = t#12 h 34 m 15 s • TOD – Tiempo De Día (tamaño y valores como para los de tipo DWORD); • DATE – variables de fechas (tamaño y valores como para los de tipo DWORD); Ejemplo: d. Date: DATE: = d#1972 -03 -29; • DT – Fecha y Tiempo (tamaño y valores como para los de tipo DWORD). 23 23

Operaciones en Co. De. Sys • asignación; • operaciones de tipo Booleano; • operaciones

Operaciones en Co. De. Sys • asignación; • operaciones de tipo Booleano; • operaciones analógicas; • comparaciones; • selección; • conversión de tipo; • operaciones con números reales; • desplazamientos de bits; • operaciones especiales. • En las siguientes diapositivas se proporcionan ejemplos de algunas operaciones en ciertos lenguajes de PLC estándar. 24

Operación de asignación IL: ST: FBD: LD, LDN, STN, S, R A : =

Operación de asignación IL: ST: FBD: LD, LDN, STN, S, R A : = B; A B S A C A D IN SALIDA 1 () SALIDA 2 (/) SALIDA 3 (S ) SALIDA 4 (R )

Operaciones Booleanas AND, OR, XOR y NOT Las operaciones AND, OR y XOR pueden

Operaciones Booleanas AND, OR, XOR y NOT Las operaciones AND, OR y XOR pueden ser ejecutadas para un número ilimitado de entradas. Cuando se aplican a datos de tipo BOOL, el resultado puede ser o VERDADERO o FALSO. Cuando se aplican a datos del tipo BYTE, WORD, DWORD, el resultado se obtiene tras una ejecución bit a bit de la operación correspondiente. Ejemplo en IL: Var 1: BYTE; LD 2#10010011 AND 2#10001010 ST Var 1 (* El resultado es 2#10000010 *)

Operaciones analógicas: IL, FBD, LD ADD SUB MUL DIV MOD ST + * /

Operaciones analógicas: IL, FBD, LD ADD SUB MUL DIV MOD ST + * / MOD Estas operaciones pueden realizarse con cualquier tipo de datos, excepto los Booleanos.

Comparación IL, FBD, LD EQ NE GE GT LE LT ST = <> >=

Comparación IL, FBD, LD EQ NE GE GT LE LT ST = <> >= > <= < Estas operaciones pueden realizarse con cualquier tipo de datos, excepto los Booleanos. 28

Operaciones con números reales: ABS – valor absoluto SQRT – raíz cuadrada LN –

Operaciones con números reales: ABS – valor absoluto SQRT – raíz cuadrada LN – logaritmo neperiano LOG – logaritmo decimal EXP – función exponencial (e. X) SIN, COS, TAN, ASIN, ACOS, ATAN – funciones trigonométricas EXPT – función exponencial de una variable, relacionada con otra variable (XY) 29

Desplazamiento de bits ab c de f gh a bc de f gh 0

Desplazamiento de bits ab c de f gh a bc de f gh 0 SHL (DESplazamiento a la Izquierda) SHR (DESplazamiento a la Derecha) ab c de f gh 0 ab c de f g h ROL (Rotación a la Izquierda) ab c de f gh bc de f gha ROR (Rotación a la Derecha) ab c de f gh hab c de f g 30

Llamada a varios tipos de POU Función Bloque Funcional Programa Ejemplo Funcción Fun 1:

Llamada a varios tipos de POU Función Bloque Funcional Programa Ejemplo Funcción Fun 1: INT 3 Entradas (INT): A, B, C Bloque_Funcional Fun. Blck 1 3 Entradas (INT): A, B, C 2 Salidas (INT): D, E Caso: Instance 1 Programa Prgr 1 3 Entradas (INT): A, B, C 2 Salidas (INT): D, E IL LD Fun 1 ST CAL. . . LD ST ST 5 3, 2 Resultado: =Fun 1(5, 3, 2); Instance 1(A: =5, B: =3, C: =2) Instance 1. D Resultado 1 Instance 1. E Resultado 2 Instance 1(A: =5, B: =3, C: =2); . . . Resultado 1: =Instance 1. D; Resultado 2: =Instance 1. E; FBD / LD 31 Prgr 1(a : = 5, b : = 3, c : = 2) Prgr 1. D Resultado 1 Prgr 1. E Result 2 Prgr 1(a : = 5, b : = 3, c : = 2); . . . Resultado 1: = Prgr 1. D; Resultado 1: = Prgr 1. E;

Creación de un programa PLC q El proceso de creación de un programa PLC

Creación de un programa PLC q El proceso de creación de un programa PLC (fase de modelo) consiste en las siguientes fases (Fig. 10): Ø Especificación: descripción de la tarea; Ø Diseño: descripción de la solución; Ø Realización: ejecución de la solución; Ø Integración/revisión: integración en el medio y testeo de la solución. Fig. 10 32

Direccionamiento de los módulos del PLC q. Las direcciones de las ranuras, módulos y

Direccionamiento de los módulos del PLC q. Las direcciones de las ranuras, módulos y las correspondientes entradas y salidas se tienen en cuanta en el proceso de direcionamiento. La Fig. 11 ofrece un ejemplo del direccionamiento de los módulos del PLC Siemens S 7 -300 (http: //www. automatic-project. eu/Modules_bg/Module%204, %20 Chapter%203. pdf ) Fig. 11 33

Ejemplos de diagramas de tipo escalera (1) q“Un programa de tipo escalera" consiste en

Ejemplos de diagramas de tipo escalera (1) q“Un programa de tipo escalera" consiste en cierta secuencia lógica de instrucciones (“contacto”), por medio de la cual el estado de cada uno de los elementos (los contactos) de los sistemas electro-mecánicos (contacto-relé) se utilizan para identificar el control de las máquinas (y/o un proceso). q. La condición real de los contactos del sistema electro-mecánico es reemplazado por una secuencia lógica. Como un elemento separado del control del sistema (contacto) pueden utilizarse todos los bits de las áreas de datos direccionables de un determinado PLC, de acuerdo con el sistema de direccionamiento empleado. q. Las siguientes diapositivas muestran ejemplos de contactos y diagramas lógicos con sus escaleras equivalentes (peldaños) http: //www. plc-course. com/PLC-Basics/introduction-to-ladder-diogramscourse. html 34

Ejemplos de diagramas de tipo escalera (2) 35

Ejemplos de diagramas de tipo escalera (2) 35

Ejemplos de diagramas de tipo escalera (3) 36

Ejemplos de diagramas de tipo escalera (3) 36

Instrucciones de salida 37

Instrucciones de salida 37

Funciones lógicas básicas (OR, AND) 38

Funciones lógicas básicas (OR, AND) 38

Funciones lógicas básicas (NOR, NAND) 39

Funciones lógicas básicas (NOR, NAND) 39

Funciones lógicas básicas (EXOR, EXNOR) 40

Funciones lógicas básicas (EXOR, EXNOR) 40

LD: ejemplo – representación de la expresión Diagrama de tipo escalera Diagrama equivalente LD

LD: ejemplo – representación de la expresión Diagrama de tipo escalera Diagrama equivalente LD Equivalente en lenguaje Booleano 41

Instrucciones para temporizadores y contadores (1) 42

Instrucciones para temporizadores y contadores (1) 42

Instrucciones para temporizadores y contadores (2) 43

Instrucciones para temporizadores y contadores (2) 43

Preguntas de control 1. Cuáles son los principales lenguajes para la programación de un

Preguntas de control 1. Cuáles son los principales lenguajes para la programación de un PLC de acuerdo al estándar IEC 61131 -(3)? Realiza una comparación entre ellos (ventajas y desventajas). 2. Qué opciones ofrece la el sistema de programación CODESYS? 3. Da ejemplos de diagramas de escalera, representando ciertos circuitos eléctricos y lógicos (no utilizar aquellos que se han descrito en la teoría). 44

Referencias: 1. http: //81. 161. 248. 42/ntt/aep/readings/aep_u 4. pdf 2. http: //en. wikipedia. org/wiki/Programmable_logic_controller

Referencias: 1. http: //81. 161. 248. 42/ntt/aep/readings/aep_u 4. pdf 2. http: //en. wikipedia. org/wiki/Programmable_logic_controller 3. http: //www. idconline. com/technical_references/pdfs/instrumentation/introtoplcs. pdf 4. http: //2 k 9 meduettaxila. files. wordpress. com/2012/12/plc-lecture. pdf 5. http: //www. ormec. com/portals/0/library/documents/software/smlcsoftware/tutorials /smlc_opc_tutorial. pdf 6. http: //me. emu. edu. tr/majid/IENG 447/PLC%20 examples. pdf 7. http: //www. automatic-project. eu/Modules_bg/Module%204, %20 Chapter%203. pdf 8. http: //gendocs. ru/v 4285/? download 2=11 9. http: //www. consys. ru/sites/default/files/documents/prog-rus. pdf 45