%% Optimale Regelung
%% Entwurf einer optimalen Zustandsregelung
%% für ein Labormodell (Inverses Pendel)
close all
clear all
clc

%Definieren der Konstanten
m=1*10^3;
M=10*10^3;
l=1;
g=9.80655;
beta1=M+m;
beta2=1/(M+0.5*m);
a11=0;
a12=1;
a13=0;
a14=0;
a21=0;
a22=0;
a23=(-0.5*g*m)/beta2;
a24=0;
a31=0;
a32=0;
a33=0;
a34=1;
a41=0;
a42=0;
a43=(g*beta1)/(2*l*beta2);
a44=0;
b1=0;
b2=1/beta2;
b3=0;
b4=(-1)/(2*l*beta2);
c1=0;
c2=0;
c3=1;
c4=0;
fuehrungsgroesse=1;

%Simulieren
sim('invpen_oreg.mdl',100);
%sim('invpen_mreg.mdl',10);

%Ausgabe 
hold off
rgroesse=plot(zeit,regelgroesse_oreg,'r');
set(rgroesse,'LineStyle','-');
set(rgroesse,'LineWidth',1.75);
grid on
grid MINOR
title('Inverses Pendel\newline(linearisiertes Modell)\newline(ohne Regelung)','FontSize',14,'FontWeight','Bold');
xlabel('Zeit in [sec] \rightarrow');
ylabel('Ausgangsgröße in [m] \rightarrow');
legend('Auslenkung des Inversen Pendels','location','SouthEast');