Está en la página 1de 5

Yair Gonzlez Mora | Control Discreto | 28 de mayo de 2014

Mtodo computacional de la
transformada Z inversa
PROGRAMA EN C
PGINA 1
Objetivo
Elaborar un programa en C que realice la transformada Z inversa
Problema a resolver
Encuentre cuando esta dado por:


Codigo en Dev-C++
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<string.h>

int main ()
{
float y, y1, y2, h, h1, h2, k, sal(50),i; // Seleccin del formato de salida
printf("Mtodo computacional para obtener la trasformada Z inversa\n\n");

y1=0; // Inicializando todas las variables en cero
y2=0;
h1=0;
h2=0;
k=0;

FILE *pf;
pf=fopen("Tarea1 control discreto.xls","w"); // Creacin del archivo en excel y al trmino abre el
archivo

for (k=0; k<=50; i++) // Inicio de las iteraciones (50 iteraciones)
{
if (k==0) // Entrada de datos
{
h=1;
}
else
{
h=0;
}

y= 1.2*y1 - 0.2*y2 + 10*h1 + 5*h2; // Clculo

printf("k=%f\n", k); // Imprime los valores obtenidos de k dentro de la consola ms-2
printf("y=%f\n", y); // Imprime los valores obtenidos de y dentro de la consola ms-2
fprintf(pf,"\n%f\t%f", k,y); // Imprime los valores obtenidos tanto de y y k en el archivo de excel
PGINA 2
h2=h1; // Actualiza todas las variables para seguir con las iteraciones
h1=h;
y2=y1;
y1=y;
k= k+1;
}
fclose(pf); // Cerramos el archivo de excel
getch ();
}
Resultados arrojados por el programa

PGINA 3








PGINA 4
Grfica de los valores obtenidos


Comentarios finales
Elabore este programa con dev-C dado que ya no contaba con visual studio, en lo particular se me
complico ya que desde mis primeras inscripciones no habia vuelto a programar en C.
El mtodo computacional de la transformada inversa resulta de gran ayuda para realizar la
transformada Z inversa de funciones usadas en control discreto, acortando demasiado el tiempo.





0
2
4
6
8
10
12
14
16
18
20
0 10 20 30 40 50 60

También podría gustarte