Funciones

20
“CONTROL DIGITA L” MAESTRIA EN CIENCIAS EN INGENIERIA ELÉCTRICA Especialidad: Mecatrónica y Cntrl  !RESENTA: In"# ISMAEL MEDINA L$!E% Matric&la: M'(')*(* Catedr+tic: Dr# Rica rd E,,an&el C a,pa Cc, TORRE$N- COA.# MÉ/ICO 01 SE!TIEM2RE 0*'( TECNOLÓGICO NACIONAL DE MÉXICO TAREA )  DIS!OSITI3OS DE CONTROL A 2A4O NI3EL GR56ICA DE 67NCIONES

description

Descripción de funciones básicas en Control Digital realizadas en Matlab y el software Mathematica. Las principales funciones en coordenadas polares y cartesianas

Transcript of Funciones

Page 1: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 1/20

“CONTROL DIGITAL”

MAESTRIA EN CIENCIAS EN INGENIERIA ELÉCTRICAEspecialidad: Mecatrónica y Cntrl

 !RESENTA:

In"# ISMAEL MEDINA L$!E%Matric&la: M'(')*(*

Catedr+tic: Dr# Ricard E,,an&el Ca,pa Cc,

TORRE$N- COA.# MÉ/ICO 01 SE!TIEM2RE 0*'(

TECNOLÓGICO NACIONAL DEMÉXICO

TAREA )

  DIS!OSITI3OS DE CONTROL A

2A4O NI3EL GR56ICA DE 67NCIONES

Page 2: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 2/20

 Control Digital

DIS!OSITI3OS DE CONTROL A 2A4O NI3EL

Micrcntrladr

Un microcontrolador (abreviado μC, UC o MCU) es un circuito integrado programable, capaz de

ejecutar las órdenes grabadas en su memoria. Está compuesto de varios bloues !uncionales, los

cuales cumplen una tarea espec"!ica. Un microcontrolador inclu#e en su interior las tres principales unidades !uncionales de una computadora$ unidad central de procesamiento, memoria

# peri!%ricos de entrada&salida.

'lgunos microcontroladores pueden utilizar palabras de cuatro bits # !uncionan a velocidad de

reloj con !recuencias tan bajas como *z, con un consumo de baja potencia (m+ o

microvatios). or lo general, tendrá la capacidad de mantenerse a la espera de un evento como

 pulsar un botón o de otra interrupción- as", el consumo de energ"a durante el estado de reposo

(reloj de la CU # los peri!%ricos de la ma#or"a) puede ser sólo de nanovatios, lo ue ace uemucos de ellos sean mu# adecuados para aplicaciones con bater"a de larga duración. /tros

microcontroladores pueden servir para roles de rendimiento cr"tico, donde sea necesario actuar más como un procesador digital de se0al (12), con velocidades de reloj # consumo de energ"a

más altos.

Cuando es !abricado el microcontrolador, no contiene datos en la memoria 3/M. ara ue pueda

controlar alg4n proceso es necesario generar o crear # luego grabar en la EE3/M o euivalente

del microcontrolador alg4n programa, el cual puede ser escrito en lenguaje ensamblador u otro

lenguaje para microcontroladores- sin embargo, para ue el programa pueda ser grabado en lamemoria del microcontrolador, debe ser codi!icado en sistema num%rico e5adecimal ue es

!inalmente el sistema ue ace trabajar al microcontrolador cuando %ste es alimentado con elvoltaje adecuado # asociado a dispositivos analógicos # discretos para su !uncionamiento.

Micrcntrladr !IC

6os 7C son una !amilia de microcontroladores tipo 372C !abricados por Microcip 8ecnolog#7nc. # derivados del 7C9:;<, originalmente desarrollado por la división de microelectrónica de

=eneral 7nstrument.

El nombre actual no es un acrónimo. En realidad, el nombre completo es 7Cmicro, aunue

generalmente se utiliza como eriperal 7nter!ace Controller (controlador de inter!az peri!%rico).El 7C original se dise0ó para ser usado con la nueva CU de 9: bits C9:<<<. 2iendo engeneral una buena CU, %sta ten"a malas prestaciones de entrada # salida, # el 7C de > bits se

desarrolló en 9?@; para mejorar el rendimiento del sistema uitando peso de E&2 a la CU. El

7C utilizaba microcódigo simple almacenado en 3/M para realizar estas tareas- # aunue elt%rmino no se usaba por auel entonces, se trata de un dise0o 372C ue ejecuta una instrucción

cada ciclos del oscilador.

Ismael Medina López 1

Page 3: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 3/20

 Control Digital

En 9?>; la división de microelectrónica de =eneral 7nstrument se separa como compa0"a

independiente ue es incorporada como !ilial (el 9 de diciembre de 9?>@ cambia el nombre aMicrocip 8ecnolog# # en 9?>? es aduirida por un grupo de inversores) # el nuevo propietario

canceló casi todos los desarrollos, ue para esas !ecas la ma#or"a estaban obsoletos. El 7C, sin

embargo, se mejoró con E3/M para conseguir un controlador de canal programable. *o# end"a multitud de 7C vienen con varios peri!%ricos incluidos (módulos de comunicación serie,

U'38, n4cleos de control de motores, etc.) # con memoria de programa desde ;9A a BA <<<

 palabras (una palabra corresponde a una instrucción en lenguaje ensamblador, # puede ser de 9A,

9, 9: o BA bits, dependiendo de la !amilia espec"!ica de 7Cmicro).

Cntrladr Ló"ic !r"ra,a8le 9!LC

Un Controlador 6ógico rogramable, más conocido por sus siglas en ingl%s 6C (rogrammable

6ogic Controller), es una computadora utilizada en la ingenier"a automática o automatizaciónindustrial, para automatizar procesos electromecánicos, tales como el control de la mauinaria de

la !ábrica en l"neas de montaje o atracciones mecánicas.

6os 6C son utilizados en mucas industrias # máuinas. ' di!erencia de las computadoras de

 propósito general, el 6C está dise0ado para m4ltiples se0ales de entrada # de salida, rangos detemperatura ampliados, inmunidad al ruido el%ctrico # resistencia a la vibración # al impacto. 6os

 programas para el control de !uncionamiento de la máuina se suelen almacenar en bater"as copia

de seguridad o en memorias no volátiles. Un 6C es un ejemplo de un sistema de tiempo real

duroD, donde los resultados de salida deben ser producidos en respuesta a las condiciones deentrada dentro de un tiempo limitado, de lo contrario no producirá el resultado deseado.

!rcesadr Di"ital de Se;ales 9DS!

Un procesador digital de se0ales o 12 (sigla en ingl%s de digital signal processor) es un sistema

 basado en un procesador o microprocesador ue posee un conjunto de instrucciones, un ardare

# un so!tare optimizados para aplicaciones ue reuieran operaciones num%ricas a mu# altavelocidad. 1ebido a esto es especialmente 4til para el procesado # representación de se0ales

analógicas en tiempo real$ en un sistema ue trabaje de esta !orma (tiempo real) se reciben

muestras (samples en ingl%s), normalmente provenientes de un conversor analógico&digital

('1C).

Ismael Medina López

Page 4: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 4/20

 Control Digital

SISTEMAS O!ERATI3OS DE TIEM!O REAL

Un sistema operativo de tiempo real es un sistema operativo ue a sido desarrollado para

aplicaciones de tiempo real. Como tal, se le e5ige corrección en sus respuestas bajo ciertas

restricciones de tiempo. 2i no las respeta, se dirá ue el sistema a !allado. ara garantizar el

comportamiento correcto en el tiempo reuerido se necesita ue el sistema sea predecible.

Caracter<sticas "enerales

Usado t"picamente para aplicaciones integradas, normalmente tiene las siguientes caracter"sticas$

•  Fo utiliza muca memoria

• Cualuier evento en el soporte !"sico puede acer ue se ejecute una tarea

• MultiGaruitectura (código portado a cualuier tipo de CU)

• Mucos tienen tiempos de respuesta predecibles para eventos electrónicos

2e caracterizan por presentar reuisitos especiales en cinco áreas generales$

• 1eterminismo

• 2ensibilidad

• Control del usuario

• Hiabilidad

• 8olerancia a los !allos

• 2on de tiempo compartido

En la actualidad a# un debate sobre u% es tiempo real. Mucos sistemas operativos de tiempo

real tienen un plani=icadr  (en ingl%s conocido como scheduler ), dise0os decontroladores ue

minimizan los periodos en los ue las interrupciones están desabilitadas, un tiempo !initoconocido (casi siempre calculado para el peor de los casos, t%rmino ue en ingl%s se conoce

como worst case) de la duración de interrupción. Mucos inclu#en tambi%n !ormas especiales de

gestión de memoria ue limitan la posibilidad de !ragmentación de la memoria # aseguran un

l"mite superior m"nimo para los tiempos de asignación # retiro de la memoria asignada.

Ismael Medina López !

Page 5: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 5/20

 Control Digital

Un ejemplo temprano de sistema operativo en tiempo real a gran escala !ue el denominado

programa de controlD desarrollado por 'merican 'irlines e 7IM para el sistema de

reservas 2abre.

!rcesadr

Este tipo de sistemas operativos no es necesariamente e!iciente en el sentido de tener una

capacidad de procesamiento alta. El algoritmo de programación especializado, # a veces una tasade interrupción del reloj alta pueden inter!erir en la capacidad de procesamiento.

'unue para propósito general un procesador moderno suele ser más rápido, para programación

en tiempo real deben utilizarse procesadores lo más predecibles posible, sin paginación. 8odos

estos !actores en un procesador a0ade una aleatoriedad ue ace ue sea di!"cil demostrar ue el

sistema es viable, es decir, ue cumpla con los plazos de tiempo para la ejecución de las tareas #

la atención de los servicios o interrupciones.

Un sistema operativo de tiempo real puede ser implementado en microcontroladores o

 procesadores digitales de se0al J12KsJ, as", se pueden desarrollar aplicaciones embebidas endi!erentes áreas de la electrónica.

Dise;

*a# dos dise0os básicos$

• Un sistema operativo guiado por eventos sólo cambia de tarea cuando un evento necesita

el servicio.

• Un dise0o la compartición de tiempo cambia de tareas por interrupciones del reloj # por eventos.

El dise0o de compartición de tiempo gasta más tiempo de la UC en cambios de tarea

innecesarios. 2in embargo, da una mejor ilusión de multitarea. Formalmente se utiliza un sistema

de prioridades !ijas.

Ismael Medina López "

Page 6: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 6/20

 Control Digital

Uno de los algoritmos ue suelen usarse para la asignación de prioridades es el 3ateGMonotonic

2cedule. 2i el conjunto de tareas ue tenemos es viable con alguna asignación de prioridades

!ijas, tambi%n es viable con el 3ateGMonotonic 2cedule, donde la tarea más prioritaria es la de

menor periodo. Esto no uiere decir ue si no es viable con 3ateGMonotonic 2cedule no seaviable con asignaciones de prioridad variable. uede darse el caso de encontrarnos con un sistema

viable con prioridades variables # ue no sea viable con prioridades !ijas.

!r"ra,ación

En los dise0os t"picos, una tarea tiene tres estados$ ejecución, preparada # bloueada. 6a ma#or"a

de las tareas están bloueadas casi todo el tiempo. 2olamente se ejecuta una tarea por UC. 6a

lista de tareas preparadas suele ser corta, de dos o tres tareas como muco.

El problema principal es dise0ar el programador. Usualmente, la estructura de los datos de la lista

de tareas preparadas en el programador está dise0ada para ue cada b4sueda, inserción #

eliminación necesiten interrupciones de cierre solamente durante un per"odo mu# peue0o,

cuando se buscan partes de la lista mu# de!inidas.

Esto signi!ica ue otras tareas pueden operar en la lista asincrónicamente, mientras ue se busca.

Una buena programación t"pica es una lista conectada bidireccional de tareas preparadas,

ordenadas por orden de prioridad. *a# ue tener en cuenta ue no es rápido de buscar sino

determinista. 6a ma#or"a de las listas de tareas preparadas sólo tienen dos o tres entradas, por lo

ue una b4sueda secuencial es usualmente la más rápida, porue reuiere mu# poco tiempo deinstalación.

El tiempo de respuesta cr"tico es el tiempo ue necesita para poner en la cola una nueva tarea

 preparada # restaurar el estado de la tarea de más alta prioridad.

En un sistema operativo en tiempo real bien dise0ado, preparar una nueva tarea necesita de B a A<

instrucciones por cada entrada en la cola # la restauración de la tarea preparada de má5ima

 prioridad de ; a B< instrucciones. En un procesador :><<< A<M*z, los tiempos de cambio de

tarea son de A< microsegundos con dos tareas preparadas.

Cientos de UC M7 '3M pueden cambiar en unos pocos microsegundos.

C,&nicación entre tareas

6as di!erentes tareas de un sistema no pueden utilizar los mismos datos o componentes !"sicos al

mismo tiempo. *a# dos m%todos para tratar este problema.

Ismael Medina López #

Page 7: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 7/20

 Control Digital

Uno de los m%todos utiliza semá!oros. En general, el  semá!oro binario puede estar cerrado o

abierto. Cuando está cerrado a# una cola de tareas esperando la apertura del semá!oro.

6os problemas con los dise0os de semá!oros son bien conocidos$ inversión de

 prioridades # puntos muertos (deadlocs).

En la inversión de prioridades, una tarea de muca prioridad espera porue otra tarea de baja

 prioridad tiene un semá!oro. 2i una tarea de prioridad intermedia impide la ejecución de la tarea

de menor prioridad, la de más alta prioridad nunca llega a ejecutarse. Una solución t"pica ser"a

otorgar a la tarea ue tiene el semá!oro la prioridad de la tarea más prioritaria de las ue están

esperando dico semá!oro. Esto se denomina algoritmo de erencia básica de prioridad.

En un punto muerto, dos tareas (89,8A) pretenden aduirir dos semá!oros (sem', semI) en orden

inverso. En este caso si 89 aduiere sem' # 8A aduiere semI cuando intenten aduirir el

segundo semá!oro no podrán acerlo #a ue lo tiene la otra tarea. 1e esta !orma entran en un punto muerto del ue ninguna de las dos tareas puede salir sin intervención e5terna. Esto se

resuelve normalmente mediante un dise0o por ej. obligando a aduirir los semá!oros en un orden

concreto.

6a otra solución es ue las tareas se manden mensajes entre ellas. Esto tiene los mismos

 problemas$ 6a inversión de prioridades tiene lugar cuando una tarea está tratando un mensaje de

 baja prioridad, e ignora un mensaje de más alta prioridad en su correo. 6os puntos muertos

ocurren cuando dos tareas realizan env"os bloueantes (se uedan en la !unción de env"o

esperando a ue el receptor reciba el mensaje). 2i 89 manda un mensaje de !orma bloueante a

8A # 8A manda un mensaje de igual !orma a 89 ninguna de las dos tareas saldrá de la !unción deenv"o uedando ambas bloueadas #a ue no podrán llegar a la !unción de recepción. uede

resolverse reordenando env"os # recepciones o empleando env"os no bloueantes o temporizados.

'unue su comportamiento en tiempo real es algo más di!"cil de analizar ue los sistemas de

semá!oros, los sistemas basados en mensajes normalmente son más sencillos de desarrollar ue

los sistemas de semá!oro.

Interr&pcines

6as interrupciones son la !orma más com4n de pasar in!ormación desde el mundo e5terior al

 programa # son, por naturaleza, impredecibles. En un sistema de tiempo real estas interrupciones

 pueden in!ormar di!erentes eventos como la presencia de nueva in!ormación en un puerto de

comunicaciones, de una nueva muestra de audio en un euipo de sonido o de un nuevo cuadro de

imagen en una videograbadora digital.

Ismael Medina López $

Page 8: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 8/20

Page 9: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 9/20

 Control Digital

ara las comunicaciones se suelen usar cone5iones o redes deterministas  C'F bus o puertos

serie, #a ue las redes más usuales, como Eternet son indeterministas # no pueden garantizarnos

el tiempo de respuesta. El sistema C'F bus es utilizado para la intercone5ión de dispositivos

electrónicos de control (ECU) en los ve"culos.

Gra=icar las si"&ientes =&ncines

f a (t )=10 e−( x−1)

sen

(

 π 

2 x+

 π 

4

) Matlab

>> x=linspace(-15,15,3000);>> fa=10*exp(-(x-1)).*sin(((pi/2)*x)+(pi/4));>> plot(x,fa);>> gi! on;

Ismael Medina López &

Page 10: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 10/20

 Control Digital

 Mathcad

!a 5( ) 9< e5 9−( )−L ⋅ sin

  πA

5⋅  π

+     ⋅:=

Ismael Medina López '

Page 11: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 11/20

 Control Digital

9; 9A ? : B < B : ? 9A 9;B .9<

@

A .9<@

9 .9<@

<

9 .9<@

A .9<@

B .9<@

.9<@

; .9<@

: .9<@

@ .9<@

@ 9<@⋅

B− 9<@⋅

!a 5( )

9;9;− 5

 z=f b ( x , y )=( x2− y2 ) cos ( xy )

 Mathematica

 Plot 3 D[( x2− y2)∗cos [ x∗ y ] , { x ,−2,2}, { y ,−2,2}]

Ismael Medina López 1(

Page 12: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 12/20

 Control Digital

 Matlab

>> "#,$% = &es'gi!(-2.12);>> = (#.2 - $.2).*cos(#.*$);>> sf(#,$,)>> gi! on;

Ismael Medina López 11

Page 13: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 13/20

 Control Digital

f c (s )=

[  cos  ( π 

2s)

2 Sen( π 

2s )

s

10

] Matlab

>> s=linspace(-10,*pi,2000);>> plot3(cos((pi/2)*s),2*sin((pi/2)*s),s/10)>> gi! on;

Ismael Medina López 1

Page 14: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 14/20

 Control Digital

 Mathematica

 ParametricPlot 3 D [{cos [π 

2∗s ] ,2∗sin[

 π 

2∗s ] ,

  s

10}, {s ,−10,8 π  }]

Ismael Medina López 1!

Page 15: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 15/20

 Control Digital

f  d (θ )=r=  Sen (θ )cos (θ)

Sen3 (θ )+cos3(θ)

Ismael Medina López 1"

Page 16: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 16/20

 Control Digital

>> t'eta=linspace(-pi,pi,2000);>> 'o = (sin!(t'eta).*cos!(t'eta))./((sin!(t'eta).3)+(cos!(t'eta).3));>> pola(t'eta,'o,--)>> "x,%=pol2cat(t'eta,'o);>> plot(x,)

 

Ismael Medina López 1#

Page 17: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 17/20

 Control Digital

Cnsidere la =&nción

/btener !(5) en !orma anal"tica.

f  ( x )=

{

  0   x<−1

 x+1   −1≤ x<0

1 0 ≤ x<1

( x−2)21 ≤ x<2

−2 x+4 2 ≤ x<3

2cos( π 

2 x−

π 

2 )   3≤ x<4

0 5< x

!N(5) en !orma anal"tica # grá!ica.

Ismael Medina López 1$

Page 18: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 18/20

 Control Digital

f ' ( x )=

{  0   x<−1

1   −1 ≤ x<0

0 0 ≤ x<1

2 x−4 1 ≤ x<2−2 2 ≤ x<3

πCos( π 

2 x)   3 ≤ x<4

0 5< x

  ∫ f  ( x ) dx  en !orma anal"tica # grá!ica.

Ismael Medina López 1%

Page 19: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 19/20

Page 20: Funciones

7/17/2019 Funciones

http://slidepdf.com/reader/full/funciones-568ebdfd6dc04 20/20

 Control Digital