clear;clc

%% init
%Time;1. (AI) Teplota kompresorovny [C];2. (AI) Teplota kompresor - výstupní [C];3. (AO) žádaná poloha klapky 3 - cirkulační;4. (AI) Teplota venkovního vzduchu;5. (AI) Teplota lakovna;6. (DO) Ventilátor přívod - kompresorovna
table = readtable('data/export.csv');
klapka = table2array(table(:,4));

ventilator = table2array(table(:,7));

%1. Kompresorovna ,2. Výstupní kompresor, venek , lakovna
teplomery = [table2array(table(:,2)),table2array(table(:,3)),table2array(table(:,5)),table2array(table(:,6))];

%% nastavení simulace
start = 1;
cas = 1:length(klapka);
stop  = cas(end);

%% filtr teplot - venkovni, lakovny
sim('modely/filtrTeplot');
teplomery(:,3) = venek.Data(2:end);
teplomery(:,4) = lakovna.Data(2:end);
clear venek lakovna

%% konstanty
initTep = 22;

rho = 1.1885;
c = 1010;           % J/kgK
x = 0.00515;        % kg/kg pro RH: 40%, p: 1005hPa, T: 18°C ---> x = 0.00515 kg/kg

Vair = 10*7*4;
Mair = Vair*rho;    % kg - Vzduch v místnosti
Cair = c*Mair;

Vkomp = .5*2*1;
Mkomp = Vkomp*rho;  % kg - Vzchuch v řídící jednotce kompresoru (součástí kompresoru, vzduchově oddělená)
Ckomp = c*Mkomp;

prutok_komp = 650/3600*rho;              % m^3/s - rozměry 260mm, 650 m^3/h - údaj výrobce  https://www.schmachtl.cz/plastim-ventilatory-do-rozvadecu-pl-ptf4500
prutok_vent = 7500/3600*rho;             % m^3/s - 7500 m^3/h - údaj výrobce - http://www.elektrodesign.cz/web/cs/product/tcbb-4-500-h-ip65-axialni-ventilator
kompresor_vzduch = 14/60*rho;            % kg/s - průtok pro vzduch ke stlačení
Hmotnostni_prutok = 0.65*0.4*0.9*rho;    % kg/s - průtok chlazení kompresoru - vychází z měření u cirkulační klapky 

%% výpočet tepelných kapacit zdí - ztráty
% citace: Normové hodnoty součinitele prostupu tepla dle ČSN 73 0540-2:2011. In: Tzb-info.cz [online]. 2011 [cit. 2019-05-19]. Dostupné z: https://stavba.tzb-info.cz/tabulky-a-vypocty/136-normove-hodnoty-soucinitele-prostupu-tepla-un-20-jednotlivych-konstrukci-dle-csn-73-0540-2-2011-tepelna-ochrana-budov-cast-2-pozadavky

UstenaVenS = 7*4;                   % m^2
UstenaVen  = 0.2;                   % W/(m^2*K)
UstenaV = UstenaVenS * UstenaVen;   % W/K

UstenaLakovnaS = (10+7+10)*4;       % m^2
UstenaLakovna  = 0.2;               % W/(m^2*K)
UstenaL = UstenaLakovnaS * UstenaLakovna; % W/K

%% simulace kompresoru - výpočet výkonového profilu
sim('modely/vykonKompresoru');
kompresor_vykon = vykon_kompresoru.Data(1:end-1);
clear vykon_kompresoru

%% Původní regulator
Kp = 1;
Ti = 30;
Td = 0;
Tvz = 1;

LoLimDY = -10;       %   %/s
HiLimDY = 10;        %   %/s
HiLimY = 100;        %   %   
LoLimY = 0;          %   %

Max = 8000;
Min = 0;

%% koeficient do teploměru
Ttep = 5;