Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Reporte Control Discreto
Reporte Control Discreto
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