63
Programación de dispositivos lógicos Conceptos básicos

Programación conceptos básicos

Embed Size (px)

Citation preview

Page 1: Programación conceptos básicos

Programación de dispositivos lógicos

Conceptos básicos

Page 2: Programación conceptos básicos

EL SISTEMA DE CONTROL Un sistema de control es un conjunto de elementos interconectados

que permiten el funcionamiento automático de una máquina, instalación o proceso.

Los sistemas de control se componen de tres elementos fundamentales: Sensores: captan la información (velocidad, temperatura,

humedad del ambiente etc.) Controladores: recogen la información de los sensores y la

gestionan (circuitos eléctricos, autómatas programables, ordenadores etc.)

Actuadores: reciben la orden del controlador y actúan (bombillas, motores, cilindros neumáticos o hidráulicos etc.)

SENSOR CONTROLADOR ACTUADOR

Page 3: Programación conceptos básicos

TIPOS DE SISTEMAS DE CONTROL

SISTEMAS DE CONTROL EN LAZO ABIERTONo necesitan sensor, sólo tienen un controlador y un actuador. Por tanto no son sensibles a las variaciones del entorno y no pueden reaccionar

CONTROLADOR ACTUADORENTRADA SALIDA

Ejemplos pueden ser: reloj, semáforo etc.

Page 4: Programación conceptos básicos

TIPOS DE SISTEMAS DE CONTROL

SISTEMAS DE CONTROL EN LAZO CERRADOSe produce una realimentación, es decir, un sensor está midiendo la variable a la salida y la compara con la de la entrada para poder reajustarse el sistema. Son sistemas retroalimentados, sensibles al entorno

Este tipo de sistemas se dan en instalaciones como llenados automáticos de tanque, controles de temperatura etc.

Page 5: Programación conceptos básicos

Objeto

Salida

Retroalimentación

Entrada

Sistema Automatizado HumanoComunicación(Información)

Percepción Sensorial

Computación RaciocinioControl Acción

COMPARACIÓN CONTROL AUTOMATICO/CONTROL HUMANO

Page 6: Programación conceptos básicos

SISTEMA DE CONTROL PARA LA TEMPERATURA DE UNA HABITACIÓN

Los sensores se conectan a las entradas del dispositivo controlador

Las salidas del dispositivo controlador se conectan a los actuadores

Page 7: Programación conceptos básicos

SENSORES DE TEMPERATURA

SENSORES DE TEMPERATURA

Basados en la dilatación

Basados en la variación de resistencia eléctrica

Sensibles a la radiaccíon infrarroja

Page 8: Programación conceptos básicos

SENSORES DE POSICIÓN

SENSORES DE POSICIÓN

INTERRUPTORES MECÁNICOS

INTERRUPTORES DE

PROXIMIDAD MAGNÉTICOS

SENSORES DE POSICIÓN ÓPTICOS

Los más comunes son los finales de carrera que, mediante el choque del objeto contra el sensor se consigue la apertura o cierre del interruptor.

Page 9: Programación conceptos básicos

SENSORES DE PRESIÓN

SENSORES DE FUERZA Y PRESIÓN

GALGAS EXTENSIOMÉTRIC

ASSENSORES TIPO

BOURDON

Page 10: Programación conceptos básicos

SENSORES DE PRESIÓN

SENSORES DE FUERZA Y PRESIÓN

GALGAS EXTENSIOMÉTRIC

ASSENSORES TIPO

BOURDON

Page 11: Programación conceptos básicos

SENSORES DE POSICIÓN ÓPTICOS

Se basan en emitir un rayo de luz y comprobar que la alcanza el receptor, se suele utilizar un diodo LED de radiación infrarroja para evitar interferencias con la luz visible

Page 12: Programación conceptos básicos

CONTROL MEDIANTE AUTÓMATAS PROGRAMABLES

Un autómata programable es un aparato que contiene un microcontrolador de forma que se puedan realizar y almacenar programas para el funcionamiento deseado.

Un microcontrolador es un pequeño ordenador miniaturizado e incluído en un circuito integrado.

Eléctricamente se le conectan una serie de entradas para los sensores, elementos de mando etc. y una vez el autómata gestiona el programa a realizar, se conectan salidas para los actuadores.

.

Page 13: Programación conceptos básicos

CONTROL MEDIANTE ROBOTS

Un robot es una máquina automática capaz de captar la información de su entorno y reaccionar ante ella. Además puede programarse para realizar distintas tareas. Se trata de un sistema de control completo, ya que integra sensores, un elemento de control y actuadores.

Los robots se utilizan en la realización de tareas que requieren mucho esfuerzo o de labores repetitivas, así como para trabajos que supongan un riesgo para la salud de las personas.

El programa de control de un robot se integra en un microcontrolador.

.

Page 14: Programación conceptos básicos

DESCRIPCION ESQUEMATICA DE UN MICROCONTROLADOR

Unidad Central de Proceso (CPU ó UPC)

Unidades de Entrada Unidades de Salida

Nbo es muy diferente de lo que nos encontramos en la CPU de un ordenadorFísicamente podemos diferenciar tres unidades:

A continuación se hace una breve descripción de cada unidad

Page 15: Programación conceptos básicos

ARQUITECTURA INTERNA DEL CEREBRO LÓGICO

UNIDAD CENTRAL DE PROCESO

Unidad Central de Proceso (CPU): es elsistema principal de un microcomputador, ya quees el elemento capaz de interpretar las instruccionesy coordinar su ejecución. Se encuentra constituidapor tres subsistemas:

UAL

UNIDAD ARITMETICO-LOGICA: es el elementocalculador del sistema, capaz de realizar operacionesaritméticas y lógicas

UNIDAD DE CONTROL: se encarga de controlar el flujo de información (instrucciones y datos) en el sistema. Algunas de sus funciones son: búsqueda de instrucciones en memoria; decodificación, interpretación y ejecución de instrucciones; control de la secuencia de ejecución; etc.

UC

MEMORIA: es el lugar donde se almacenan datos y las instrucciones que hacen uso de esos datos. Podemos pensar en la memoria como un conjunto de celdas, cada una de ellas identificadas con una dirección. A esta dirección suele llamársela posición de memoria.

MEMORIA CENTRAL

MEMORIA AUXILIAR

Page 16: Programación conceptos básicos

ENTRADAS SALIDAS

UNIDAD CENTRAL DE PROCESO

UALUC

MEMORIA CENTRAL

MEMORIA AUXILIAR

PROCESAMIENTO

A las entradas conectamos los controles de arranque y parada (interruptores y pulsadores, y los sensores del sistema

El cerebro activa o desactiva las salidas, y estas irán conectadas a los actuadores (motores, válvulas, etc), que harán funcionar el conjunto

La unidad central, es el cerebro que almacena y ejecuta el programa, calculando que salidas deben activarse y cuales no

Page 17: Programación conceptos básicos

CONCEPTOS FUNDAMENTALES: Algoritmo

DEFINICION DE ALGORITMOSecuencia ordenada de pasos, de forma tal que al seguirlos se obtenga el resultado deseado. Tiene 3 características: Secuencia ordenada de pasos (debe ser

preciso) General pero no ambiguo (si se sigue dos

veces el algoritmo, debo obtener el mismo resultado cada vez)

Finito en tiempo (número definido de pasos) Ejemplo:

Un cliente realiza un pedido a una fábrica. La fábrica verifica la ficha del cliente, si es solvente entonces la empresa acepta el pedido, en caso contrario lo rechazará.

Page 18: Programación conceptos básicos

CONCEPTOS FUNDAMENTALES: Algoritmo

La resolución posible para el ejemplo sería:

1) Inicio2) Leer el pedido3) Examinar la ficha del cliente4) Si el cliente es solvente, aceptar el

pedido; sino rechazar el pedido5) Fin

Page 19: Programación conceptos básicos

CONCEPTOS FUNDAMENTALES: Flujogramas

DEFINICION DE DIAGRAMA DE FLUJOEs la representación gráfica de un algoritmo a través de figuras geométricas. Este permite mayor legibilidad en la solución de problemas. Los símbolos que se utilizan para realizar los diagramas de flujo son:

SINOCOMIENZO Y/O FIN

OPERACIONES

INGRESO DE DATOS

RUTINAS

DECISION SIMPLE

IMPRESIONCONECTOR DE HOJA O LINEA

CICLO MIENTRAS/VARIAR

DECISION MULTIPLE

Page 20: Programación conceptos básicos

CONCEPTOS FUNDAMENTALES: Flujogramas

NORMAS PARA LA DIAGRAMACIONSe debe tener en cuenta: Todo diagrama debe indicar claramente cual es su

inicio y cual es su finalización Los símbolos se escriben de arriba hacia abajo y

de izquierda a derecha Se aconseja un símbolo por acción Dentro de los símbolos no se debe especificar

instrucciones propias de un lenguaje de programación

A todos los símbolos llega una y solo una línea de conexión

Cuando un diagrama ocupa más de una carilla u hoja, se utilizan los conectores, tratando que sean la menor cantidad posible

El diagrama de flujo en conjunto debe guardar una simetría

Page 21: Programación conceptos básicos

CONCEPTOS FUNDAMENTALES: Programa

DEFINICION DE PROGRAMASon las instrucciones en un lenguaje entendible por el programador y decodificable por la computadora, habitualmente llamado lenguaje fuente u origen. Una vez escrito el programa en lenguaje fuente, para que la computadora lo pueda ejecutar, con un programa traductor lo transforma en lenguaje de máquina u objeto.

PROGRAMAFUENTE TRADUCTOR PROGRAMA

OBJETO

Page 22: Programación conceptos básicos

ETAPAS EN LA ELABORACIÓN DE PROGRAMAS

RESOLUCIONDE UN PROBLEMA

DISEÑO DELALGORITMO

RESOLUCIONDEL PROBLEMA EN

COMPUTADORAANALISIS DEL

PROBLEMA

CODIFICACIONDEL PROGRAMA

EJECUCIONDEL PROGRAMA

COMPROBACIONDEL PROGRAMA

Page 23: Programación conceptos básicos

ETAPAS EN LA ELABORACIÓN DE PROGRAMAS

ANALISIS DEL PROBLEMA: consiste en estudiar el problema planteado para obtener una idea clara sobre los datos de entrada, procesos y salidas.

DISEÑO DEL ALGORITMO: es indicar en forma clara la sucesión de pasos a ejecutar y luego representarlo gráficamente a través de los diagramas de flujo.

Una vez realizadas estas dos etapas se puedepasar a la resolución del problema con lacomputadora.

Page 24: Programación conceptos básicos

ETAPAS EN LA ELABORACIÓN DE PROGRAMAS

CODIFICACION DEL PROBLEMA: es la conversión del algoritmo y/o diagrama de flujo a un lenguaje de programación.

EJECUCION DEL PROGRAMA: permite ver en la computadora el programa en funcionamiento.

COMPROBACION DEL PROGRAMA: permite verificar la correcta ejecución del mismo, teniendo en cuenta los diferentes tipos de errores (lógicos y de sintaxis). Una comprobación sucesiva del programa permitirá localizar , verificar y corregir los posibles errores, con lo que se conforma la puesta a punto del programa.

Page 25: Programación conceptos básicos

Por último y una vez que todas las etapas precedentes se encuentran finalizadas se debe realizar la documentación del programa.

ETAPAS EN LA ELABORACIÓN DE PROGRAMAS

DOCUMENTACIONDEL PROGRAMA

DOCUMENTACIONEXTERNA

DOCUMENTACIONINTERNA

Comentarios (nombre delprograma, qué realiza,programador, versión, etc.)Presentación: forma en quese encuentra codificado elprograma (legible por cualquier persona)

Constituida entre otras cosas por el manual del usuario, manual del operador, manual de mantenimiento del programa, especificaciones del programa, datos de prueba, algoritmos y diagramas de flujo, etc.

Page 26: Programación conceptos básicos

OTROS CONCEPTOS

VARIABLESEs una dato cuyo valor puede ser modificado durante la ejecución de un proceso. Si este valor se modifica en algún momento, el nuevo valor sustituirá al que existía anteriormente.Todas las variables se componen de: Un nombre, elegido por el programador y que

generalmente indica el contenido Un tipo, que define que clase de dato va a

contener la variable Un contenido, es el valor que está almacenado

en las posiciones de memoria.

Page 27: Programación conceptos básicos

OTROS CONCEPTOS

CONSTANTEEs una dato cuyo valor no se modifica durante la ejecución de un proceso.

OPERADORESSon aquellos símbolos que permiten enlazar cada uno de los argumentos que intervienen en un operación.Ellos son: ARITMETICOS LOGICOS RELACIONALES

2008

Page 28: Programación conceptos básicos

OTROS CONCEPTOS

OPERADORES ARITMETICOSJunto con las variables numéricas formas expresiones aritméticas. Ellos son:

SIMBOLO SIGNIFICADO EJEMPLO+ SUMA 4 + 1 = 5- RESTA 5 – 2 = 3* MULTIPLICACION 5 * 2 = 10/ DIVISION 2 / 3 = 0.666

^ POTENCIACION 2 ^ 3 = 8

- NEGATIVOS -(1.5) = -1.5

\ DIV. ENTERA 22 \ 5 = 4

MOD MODULO 22 MOD 5 = 2

2008

Page 29: Programación conceptos básicos

OTROS CONCEPTOS

OPERADORES LOGICOSPermiten generar expresiones lógicas más complejas que una igualdad u orden.

SIMBOLO SIGNIFICADO EJEMPLO^ (AND – CONJUNCION) La expresión es cierta

cuando ambos argumentos son ciertos

al mismo tiempoEs de día y hay sol

v (OR – DISYUNCION) La expresión es cierta cuando al menos uno de sus argumentos es

ciertoEstudiamos o vamos al cine

!NOT (NEGACION) Afecta a la expresión cambiando su estado

lógico

No es de día

Page 30: Programación conceptos básicos

OTROS CONCEPTOS OPERADORES RELACIONALES

Permiten obtener, en una comparación, un resultado verdadero o falso. Ellos son:

SIMBOLO SIGNIFICADO EJEMPLO RESULTADO> MAYOR 22 > 5 VERDADERO< MENOR 22 < 5 FALSO

>= MAYOR-IGUAL 22 >= 22 VERDADERO<= MENOR-IGUAL 5 <= 4 FALSO

= IGUAL 13 = 13 VERDADERO

<> DISTINTO 13 <> 13 FALSO

Page 31: Programación conceptos básicos

OTROS CONCEPTOS

CONTADOREs una variable destinada a contener diferentes valores que se van incrementando o disminuyendo en forma constante.En forma general se lo puede definir como:

VAR= VAR ± K Ejemplo:

Para contar la cantidad de goles que realiza un equipo de fútbol durante un encuentro, la operación sería:

GOL = GOL + 1Cada vez que el equipo realiza un gol, la variable se incrementa con el valor 1.

Page 32: Programación conceptos básicos

OTROS CONCEPTOS

ACUMULADOREs una variable que permite guardar un valor que se incrementa o disminuye en cantidad no constantes.En forma general se lo puede definir como:

VAR= VAR ± VAR2 Ejemplo:

Para conocer la recaudación de un almacén al final del día, la operación sería:

RECAUDACION = RECAUDACION + IMPORTE_VENTA

Cada vez que se realiza una venta, la variable recaudación se incrementa con el valor de la variable importe_venta.

Page 33: Programación conceptos básicos

OTROS CONCEPTOS

ESTRUCTURASSe pueden definir 3 estructuras básicas. ESTRUCTURA SECUENCIAL: formada por un

grupo de acciones que se realizan todas y en el orden en que están escritas, sin posibilidad de omitir ninguna de ellas. Por ejemplo:

Acción-1

Acción-2

Acción-n

Page 34: Programación conceptos básicos

OTROS CONCEPTOS

ESTRUCTURA CONDICIONAL: permite la evaluación de una o más condiciones y en función del resultado se realiza una acción u otra. Este tipo de estructura puede ser:

CONDICIONAL SIMPLE: obliga solo a realizar las acciones si se cumple la condición. Por ejemplo:

Acción-1

Acción-n

condición SI

NO

Page 35: Programación conceptos básicos

OTROS CONCEPTOS

CONDICIONAL DOBLE: permite que el diagrama se bifurque en 2 ramas diferentes. Si al evaluar la condición el resultado es verdadero entonces se sigue por un camino específico y se ejecutan ciertas acciones; si el resultado es falso entonces se sigue por otro camino y se ejecutan otras acciones. Por ejemplo:

Acción-1

Acción-1n

condición SI

Acción-2

Acción-2n

NO

Page 36: Programación conceptos básicos

OTROS CONCEPTOS

ESTRUCTURA REPETITIVA (Bucles): permite la reiteración de una o varias instrucciones un número de veces determinado. También son conocidas como bucles o ciclos, y al hecho de repetir una secuencia de acciones se lo denomina iteración.

MIENTRAS: se los denominan bucles controlados por condición, debido a que necesitan de una condición determinada para finalizar. Suelen utilizarse cuando no se conoce el número de veces que hay que repetir una tarea.

VARIAR o REPETIR: se los denominan bucles controlados por contador debido a que necesitan una variable numérica que actúa como contador y que se incrementa o disminuye en un valor constante a partir de un valor inicial, después de cada iteración del bucle.

Todas estas estructuras suelen usarse entremezcladas ya sean del mismo tipo o no. Por ejemplo: un bucle puede contener una estructura condicional y ésta a su vez una secuencial; un bucle puede formar parte de otro; etc.

Page 37: Programación conceptos básicos

PROGRAMACIÓN LÓGICA BINARIA

Señal analógica frente a Señal digital Una señal analógica puede tener infinitos valores,

positivos y/o negativos. La señal digital sólo puede tener dos valores 1 o 0. La gran ventaja es que la señaldigital es más fiable en la transmisión de datos. En el ejemplo, la señal digital toma el valor 1 cuando supera al valor a, y toma valor 0 cuando desciende por debajo del valor b. Cuando la señal permanece entre los valores a y b, se mantiene con el valor anterior.

Page 38: Programación conceptos básicos

SISTEMAS DE NUMERACIÓN

2.1.- Sistema decimal.Se define la base de un sistema de numeracióncomo el número de símbolos distintos que tiene. Normalmente trabajamos con el sistema decimalque tiene 10 dígitos: 0,1,2,3,4,5,6,7,8,9.

 Por ejemplo:a) El número 723,54 en base 10, lo podemosexpresar:723,54 = 7x102 + 2x101 + 3x100 + 5x10-1 + 4x10-2

Page 39: Programación conceptos básicos

Hexadecimal Decimal Binario

0 0 0000 1 1 00012 2 00103 3 00114 4 01005 5 01016 6 01107 7 01118 8 10009 9 1001A 10 1010B 11 1011C 12 1100D 13 1101E 14 1110F 15 1111

Equivalencia entre los sistemas Hexadecimal, Binario y Decimal

SISTEMAS DE NUMERACIÓN

Page 40: Programación conceptos básicos

FUNCIÓN LÓGICA NOT (Inversor)

INVERSORRealiza la función negación lógica. La función toma valor lógico

“1” cuando la entrada a vale “0” y toma el valor “0” cuando la entrada a vale “1”. También se la conoce como función Inversión.

Negación (¯): S = ā

a S = ā

0 11 0

Tabla de verdad

Símbolo Símbolosantiguos

Page 41: Programación conceptos básicos

FUNCIÓN LÓGICA NOT (Inversor) (2)

INVERSOR (continuación)Implementación de la puerta lógica mediante circuito eléctrico.Si el interruptor a está sin pulsar (“0”) la bombilla está encendida (S= “1”). Si pulso el interruptor (a = “1”) la bombilla se apaga (S = “0”).

Page 42: Programación conceptos básicos

FUNCIÓN LÓGICA OR(Suma lógica)

FUNCIÓN ORRealiza la función suma lógica o función OR. La función toma

valor lógico “1” cuando la entrada a o la entrada b valen “1” y toma el valor “0” cuando las dos entradas valen “0”.

Funciones Tabla de verdad

Símbolos Símbolosantiguos

a b S = a+b

0 0 00 1 11 0 11 1 1

Suma (OR): S = a + b

Page 43: Programación conceptos básicos

FUNCIÓN LÓGICA OR(Suma lógica)(2)

FUNCIÓN OR (continuación)Implementación de la puerta lógica mediante

circuito eléctrico.Si se pulsa cualquier interruptor (a o b estarían en estado “1”) la bombilla se enciende (S= “1”). Si no pulso ninguno (a = “0” y b =“0”) la bombilla se apaga (S =“0”).

Page 44: Programación conceptos básicos

FUNCIÓN LÓGICA AND(Producto lógico)

FUNCIÓN ANDRealiza la función producto lógico o función AND. La función

toma valor lógico “1” cuando la entrada a y la entrada b valen “1” y toma el valor “0” cuando alguna de las dos entradas vale “0”.

Funciones Tabla de verdad

Símbolos Símbolosantiguos

Multiplicación (AND): S = a * b

a b S = a·b

0 0 00 1 01 0 01 1 1

Page 45: Programación conceptos básicos

FUNCIÓN LÓGICA AND(Producto lógico)

FUNCIÓNAND (continuación)Implementación de la puerta lógica mediante

circuito eléctrico.Si se pulsan los dos interruptores (a y b estarían en estado “1”) la bombilla se enciende (S= “1”). Si no pulso alguno (a = “0” o b =“0”) la bombilla se apaga (S = “0”).

Page 46: Programación conceptos básicos

FUNCIÓN LÓGICA NOR(OR Negada)

FUNCIÓN NORRealiza la función suma lógica negada o función NOR. La función

toma valor lógico “1” cuando la entrada a y la entrada b valen “0” y toma el valor “0” en el resto de los casos. Es la función contraria a la OR .

Funciones Tabla de verdad

Símbolos Símbolosantiguos

Suma negada (NOR):

baS

a b

0 0 10 1 01 0 01 1 0

baS

Page 47: Programación conceptos básicos

FUNCIÓN LÓGICA NAND(AND Negada)

FUNCIÓN NANDRealiza la función producto lógico negado o función NAND. La

función toma valor lógico “1” cuando la entrada a y la entrada b valen “0” y toma el valor “0” en el resto de los casos. Es la función contraria a la AND .

Funciones Tabla de verdad

Símbolos Símbolosantiguos

Multiplicación negada (NAND):

baS

baS a b

0 0 10 1 11 0 11 1 0

Page 48: Programación conceptos básicos

FUNCIÓN LÓGICA XOR(OR Exclusiva)

FUNCIÓN OR EXCLUSIVARealiza la función OR EXCLUSIVA. La función toma valor lógico

“1” cuando las entradas a y b tienen distinto valor y toma el valor “0” cuando las entradas a y b son iguales.

Funciones Tabla de verdad

Símbolos Símbolosantiguos

a b

0 0 00 1 11 0 11 1 0

OR exclusiva (XOR):

baS

baS

babaS ··

Page 49: Programación conceptos básicos

Funciones lógicas

cbacabaS )(

Función lógica: Ecuación que define el comportamiento de un sistema lógico combinacional

a b c S0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 11 1 0 11 1 1 1

Tabla de verdad

cbacbacbacbacbaS Por Minterms

La función se puede obtener de dos formas, como suma de productos (Minterms) o como producto de sumas (Maxterms).

Por Maxterms )()()( cbacbacbaS

Page 50: Programación conceptos básicos

MAPAS DE KARNAUGH

Dos variables Tres variables Cuatro variables

Page 51: Programación conceptos básicos

SIMPLIFICACIÓN POR KARNAUGH

a b c S0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 11 0 1 01 1 0 01 1 1 1

1.-Tabla de verdad

2.- Mapa de tres variables

3.- Agrupamos unos

4.- Función obtenida

Page 52: Programación conceptos básicos

Resolución de problemas

Pasos a seguir:

1.- Identificar las entradas y salidas

2.- Crear la tabla de verdad

3.- Obtener la función simplificada

4.- Simular la función lógica en Crocodile Clips

Page 53: Programación conceptos básicos

Enunciado de un problema lógico

Para poner en marcha un motor se requiere tres interruptores (a, b y c) de tal forma que el funcionamiento del mismo se produzca únicamente en las siguientes condiciones:

• Cuando esté cerrado solamente b.• Cuando estén cerrados simultáneamente a y b y no lo esté

c.• Cuando estén cerrados simultáneamente a y c y no lo esté

b.a) Crea la tabla de verdad que represente el funcionamiento

del circuito de control. b) Obtén la función expresada como suma de productos

(Minterms).c) Obtén la expresión simplificada por Karnaugh de la

función.d) Implementa la función utilizando puertas lógicas de todo

tipo.

Page 54: Programación conceptos básicos

Identificar entradas y salidas

1.- Identificar las entradas y salidas

Entradas: serán los interruptores a, b y c.

Interruptor pulsado será “1” y no pulsado será “0”

Salida: será el motor que está gobernado por los interruptores.

Cuando la salida de la función valga “1” indicará que en ese caso el motor funciona.

Page 55: Programación conceptos básicos

Tabla de verdad

2.- Crear la tabla de verdad

Page 56: Programación conceptos básicos

SIMPLIFICAR LA FUNCIÓN

3.- Obtener la función simplificada

La función del motor M la obtenemos por Karnaugh

Page 57: Programación conceptos básicos

COMPROBACIÓN MEDIANTE SIMULACIÓN

4.- Implementar la función en simulador

Page 58: Programación conceptos básicos

OTRO ENUNCIADO Máquina expendedora de refrescos Puede suministrar agua fresca, agua

con limón y agua con naranja. Pero no puede suministrar nunca limón solo, naranja sola, ni limón con naranja solos o con agua.

La cantidad de cada líquido sale cuando se activa la electroválvula correspondiente, Sa (agua), Sl (limón), Sn (naranja), Y está activada la salida general (ST), y se encuentra el vaso en su sitio (V). Tenemos tres pulsadores Pa (agua), Pl (limón) y Pn (naranja). Deben pulsarse uno o dos según lo que deseemos.

Page 59: Programación conceptos básicos

IDENTIFICAR ENTRADAS Y SALIDAS

1.- Identificar las entradas y salidas Entradas, serán los pulsadores Pa, Pl, Pn y el sensor que detecta la presencia del vaso V.

Pulsador pulsado será “1” y no pulsado será “0”

Salidas, serán todas las electroválvulas sobre las que hay que actuar, Sa, Sl, Sn y ST.

Cuando la electroválvula en cuestión valga “1” permitirá que salga la cantidad de líquido necesario

Page 60: Programación conceptos básicos

Tabla de verdadEntradas Salidas

V Pa Pl Pn ST Sa Sl Sn0 0 0 0 0 0 0 00 0 0 1 0 0 0 00 0 1 0 0 0 0 00 0 1 1 0 0 0 00 1 0 0 0 0 0 00 1 0 1 0 0 0 00 1 1 0 0 0 0 00 1 1 1 0 0 0 01 0 0 0 0 0 0 01 0 0 1 0 0 0 01 0 1 0 0 0 0 01 0 1 1 0 0 0 01 1 0 0 1 1 0 01 1 0 1 1 1 0 11 1 1 0 1 1 1 01 1 1 1 0 0 0 0

2.- Crear la tabla de verdad

Page 61: Programación conceptos básicos

SIMPLIFICAR LA FUNCIÓN

La función de la electroválvula ST y Sa es la misma, la obtenemos por Karnaugh

El resto de variables no se pueden simplificar puesto que sólo tienen un término en el que vale “1”.

)( PnPlPaVPlPaVPnPaVSaST

PnPlPaVSl

PnPlPaVSn

3.- Obtener la función simplificada

Page 62: Programación conceptos básicos

SIMULAR Y COMPROBAR

4.- Implementar las funciones con puertas de todo tipo

)( PnPlPaVSaST

PnPlPaVSl

PnPlPaVSn

Page 63: Programación conceptos básicos

BIBLIOGRAFIA Fundamentos de Programación

Luis Joyanes Aguilar Programación en QuickBasic

Luis Joyanes Aguilar Páginas de Internet Metodología de la Programación

M. Angel Rodriguez Almeida Metodología de la Programación

M. Dolores Alonso - Silvia Rumeu Informática Básica

Eduardo Alcalde – Miguel García

2015