10.07.2015 Views

EsiDet - návod na obsluhu - AMiT

EsiDet - návod na obsluhu - AMiT

EsiDet - návod na obsluhu - AMiT

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ESIDETHistorie revizíJméno dokumentu: esidet_g_cz_100.pdfAutor: Petr Lati<strong>na</strong>Verze Datum Změny100 23. 5. 2012 Nový dokumentSouvisející dokumentace1. Nápověda k návrhovému prostředí DetStudio2. Aplikační poznámka AP0016 – Zásady používání RS485soubor: ap0016_cz_xx.pdfesidet_g_cz_100 4/41


ESIDET1. Základní pojmyDetStudio<strong>EsiDet</strong>AplikaceAMREGMODBUSObjektMetodaVlastnostNápovědaobrazovekNápovědaprostředíNápověda<strong>EsiDet</strong>Návrhové prostředí pro programování řídicích systémů a programovatelnýchregulátorů firmy <strong>AMiT</strong>.Část návrhového prostředí DetStudio sloužící ke tvorbě aplikací pro programovatelnéregulátory firmy <strong>AMiT</strong>.Uživatelský program vytvořený v návrhovém prostředí DetStudio.Oz<strong>na</strong>čení řady programovatelných regulátorů firmy <strong>AMiT</strong>.Otevřený komunikační protokol vyvinutý firmou Modicon.Základní stavební prvek vytvářené aplikace pro regulátory AMREG.Výkonná funkce konkrétního objektu.Zprostředkovává přístup k vnitřním parametrům objektů.Nápověda ke tvorbě obrazovek v DetStudiu. Nápověda je dostupná pod položkouz hlavního menu Nápověda/Nápověda obrazovek.Nápověda pro <strong>na</strong>stavení, ovládání a práci v DetStudiu. Nápověda je dostupnápod položkou z hlavního menu Nápověda/Nápověda prostředí.Nápověda pro vytváření uživatelských aplikací programovatelných regulátorů<strong>AMiT</strong>. Nápověda je dostupná z hlavního menu pod položkouNápověda/Nápověda prostředí.5/41 esidet_g_cz_100


ESIDET2. Instalace návrhového prostředíVeškerý potřebný software lze získat <strong>na</strong> www.amit.cz v sekci „Produkty/Download/Návrhováprostředí pro tvorbu aplikací“.• Spusťte instalační soubor DetStudia (DetStudioSetup.exe) a postupujte podlepokynů instalátoru.Pro běh DetStudia je nutný .NET Framework. V případě, že <strong>na</strong> PC není, budeautomaticky stažen ze serveru firmy Microsoft a <strong>na</strong>instalován (PC musí být připojenok internetu).Pro podporu tvorby aplikací pro regulátory řady AMREG, ovladačů NOA,spuštění simulátoru obrazovek apod., je nutné doinstalovat softwarovýbalíček DetStudioTools.esidet_g_cz_100 6/41


ESIDET3. Cíl průvodce první aplikacíCílem tohoto dokumentu je ukázat tvorbu, vygenerování a zavedení uživatelskéaplikace pro AMREG regulátory prostřednictvím návrhového prostředíDetStudio. Dokument se nebude zabývat detailním popisem ovládání samotnéhonávrhového prostředí, tento popis lze <strong>na</strong>lézt v Nápovědě prostředí.Příklad ukázkové aplikace bude vytvářen pro regulátor AMR-FCT10, který jeurčen k řízení jedné fancoil jednotky. U fancoil jednotky se bude předpokládat,že obsahuje dvoutrubkový systém, tedy společný rozvod pro topné i chladícímédium.Regulátor ARM-FCT10 bude zajišťovat následující funkce.• Čtení vstupů (měření teploty v místnosti a teploty proudícího média).• Rozhodnutí, zda se topí nebo chladí.• Určení žádané teploty místnosti.• Výpočet akčního zásahu pro topení nebo chlazení.• Určení polohy regulačního ventilu.• Určení výkonu ventilátoru.• Zápis <strong>na</strong> výstupy.7/41 esidet_g_cz_100


ESIDET4. Vytvoření ukázkové aplikaceTvorbu aplikace lze rozdělit do následujících kroků.• Založení projektu.• Konfigurace vstupů / výstupů.• Tvorba regulačních algoritmů.• Generování projektu.• Zavedení projektu do regulátoru.• Ladění projektu.4.1. Založení projektuZaložení projektu se ve spuštěném návrhovém prostředí provede <strong>na</strong>př. kliknutím<strong>na</strong> ikonu nového projektu , po kterém se otevře okno „Nový projekt“.Obr. 1 - Okno pro vytvoření nového projektuV okně projektu musí být vyplněny následující parametry.Řídicí systémTento parametr specifikuje typ zařízení, pro který bude aplikace vytváře<strong>na</strong>. Výběrzařízení se vyvolá kliknutím myši <strong>na</strong> tlačítko Změnit. Otevře se okno „Výběrřídicího systému“, ve kterém se v levé části pod složkou „Programovatelné regulátory“vybere požadovaný typ regulátoru AMREG (prostřední část ok<strong>na</strong>).Pravá část ok<strong>na</strong> informuje, zda vybraný regulátor obsahuje terminál. Tato položkase vyplňuje automaticky.esidet_g_cz_100 8/41


ESIDETObr. 2 - Výběr regulátoru AMREG (zvolen typ AMR-FCT10)Výběr zvoleného regulátoru se potvrdí tlačítkem OK.TerminálJménoprojektuUmístěníInformace, zda daný typ regulátoru obsahuje terminál.Jméno vytvářené aplikace.Umístění projektu.Obr. 3 - Okno „Nový projekt“ se zadanými parametryPřed potvrzením zadaných parametrů se může vybrat možnost automatickéhovytvoření adresáře se stejným jménem, které je vyplněno v parametru „Jménoprojektu“. Do tohoto adresáře bude uložen vytvořený projekt. Po potvrzení tlačítkemOK se otevře okno „Parametry projektu“, ve kterém lze provést základníkonfiguraci celého projektu.9/41 esidet_g_cz_100


ESIDETObr. 4 - Okno „Parametry projektu“.Pro účel ukázkové aplikace není potřeba další parametry projektu <strong>na</strong>stavovat,a proto se tlačítkem OK okno potvrdí.Podrobný popis jednotlivých kroků pro založení a <strong>na</strong>stavení parametrů projektulze <strong>na</strong>lézt v Nápovědě <strong>EsiDet</strong>.4.2. Konfigurace vstupů / výstupůPro konfiguraci vstupů / výstupů se nejprve vybere kliknutím levým tlačítkemmyši objekt IO v okně „Projekt“. Tento objekt zabezpečuje <strong>obsluhu</strong> vstupů / výstupů,kterými daný regulátor disponuje.esidet_g_cz_100 10/41


ESIDETObr. 5 - Okno „Projekt“ s vybraným objektem IOSamotná konfigurace se poté provádí v okně „Vlastnosti“. Protože regulátorAMR-FCT10 bude měřit teploty a<strong>na</strong>logovými vstupy, je nutno <strong>na</strong>stavit typ teplotníchčidel, které budou použity. V okně „Vlastnosti“ se tedy vybere <strong>na</strong> řádcíchoz<strong>na</strong>čených „AI0 Sensor“ a „AI1 Sensor“ <strong>na</strong>př. typ čidla „Ni1000_6180ppm“.Obr. 6 - Výběr typu čidla v okně „Vlastnosti“Protože další konfigurovatelné vstupy / výstupy tento typ regulátoru nemá, jetímto konfigurace dokonče<strong>na</strong>.11/41 esidet_g_cz_100


ESIDET4.3. Tvorba regulačních algoritmůPod tvorbu regulačních algoritmů lze zahrnout jak zápis samotného regulačníhokódu, tak vytváření potřebných proměnných, import a konfigurace objektů apod.Vytvářený regulační algoritmus lze rozdělit do následujících kroků.• Zpracování měřených teplot.• Rozhodnutí, zda se topí nebo chladí.• Určení žádané teploty.• Výpočet akčního zásahu.• Výpočet polohy regulačního ventilu.• Určení výkonu ventilátoru.• Zápis <strong>na</strong> výstupy.Měření teploty místnosti a teploty médiaMěřené teploty se budou <strong>na</strong>čítat do proměnných, které se založí ve vybranémpaměťovém objektu. U regulátoru AMR-FCT10 jsou k dispozici dva paměťovéobjekty – Ram a EEprom. Proměnné založené v objektu Ram mají neomezenýpočet zápisů, ale ztrácí svůj obsah po odpojení <strong>na</strong>pájení regulátoru. Proměnnézaložené v objektu EEprom neztrácí svůj obsah po odpojení <strong>na</strong>pájení, ale početzápisových cyklů tohoto paměťového typu je omezen.Více informací o paměťových objektech lze <strong>na</strong>lézt v Nápovědě Esidet.Proměnné, které se budou v ukázkové aplikaci používat, se založí <strong>na</strong>př. následujícímpostupem.Dvojklikem levým tlačítkem myši <strong>na</strong> objekt Ram v okně „Projekt“ se v pracovnímokně otevře záložka Ram se sez<strong>na</strong>mem vytvořených proměnných.Obr. 7 - Okno „Projekt“ s vybraným objektem Ramesidet_g_cz_100 12/41


ESIDETPřidání / založení nové proměnné se <strong>na</strong>př. provede kliknutím pravého tlačítkamyši do prostoru záložky Ram, čímž se vyvolá kontextové menu s jednotlivýmidatovými typy proměnných.Obr. 8 - Otevřená záložka objektu Ram s kontextovým menu datových typů přizakládání nové proměnnéTímto postupem budou založeny následující proměnné datového typu float.Tm_misTm_mediaPro zápis regulačního kódu je nutno otevřít obsah některého z procesů. Obsah<strong>na</strong>př. procesu Process1 lze zobrazit dvojklikem levým tlačítkem myši <strong>na</strong> položkuProcess1 v okně „Projekt“.Obr. 9 - Okno „Projekt“ s vybranou položkou Process1Pro samotný zápis se může s výhodou využít tzv. intellisense nápovědy. Ta sevyvolá, po umístění kurzoru <strong>na</strong> požadovaný řádek záložky Process1, stisknutím13/41 esidet_g_cz_100


ESIDETkláves Ctrl+j. Tím se zobrazí plovoucí okno se sez<strong>na</strong>mem všech aktuálně dostupnýchobjektů, proměnných a vlastností, které lze využít.Protože se nyní bude pracovat s proměnnými objektu Ram, vybere se popsanýmzpůsobem objekt Ram. Výběr se potvrdí klávesou Enter.Obr. 10 - Výběr objektu Ram pomocí intellisense nápovědyPo dokončeném výběru se za vypsaný text Ram <strong>na</strong>píše z<strong>na</strong>k tečka „.“. Tím dojdek otevření plovoucího ok<strong>na</strong>, ve kterém bude vybrá<strong>na</strong> proměnná Tm_mis.Obr. 11 - Výběr proměnné Tm_mis z objektu RamDále následuje přiřazení měřené hodnoty teploty z a<strong>na</strong>logového vstupu AI0 doproměnné Tm_mis. Výběr a<strong>na</strong>logového vstupu AI0 objektu IO se provede tak,že se nejprve pomocí intellisense nápovědy vybere objekt IO a po zapsání z<strong>na</strong>kutečka „.“ se vybere a<strong>na</strong>logový vstup AI0.Obr. 12 - Výběr objektu IOesidet_g_cz_100 14/41


ESIDETObr. 13 - Výběr a<strong>na</strong>logového vstupu AI0 objektu IOVýsledný zápis kódu pro <strong>na</strong>čtení měřené teploty místnosti <strong>na</strong> a<strong>na</strong>logovém vstupuAI0 bude následovný.Ram.Tm_mis = IO.AI0;.Podobně se sestaví kód pro <strong>na</strong>čtení měřené teploty média <strong>na</strong> a<strong>na</strong>logovémvstupu AI1.Ram.Tm_media = IO.AI1;.K potlačení kmitání <strong>na</strong>měřených hodnot lze využít objekt Filtr1R. Tento se doprojektu přidá <strong>na</strong>př. přetažením myší z ok<strong>na</strong> „Toolbox“.Obr. 14 - Přidání objektu Filtr1R do projektu s pořadovým číslem „1“Po vložení objektu tímto postupem je následně zobrazeno okno, ve kterém semůže danému objektu změnit jméno a po potvrzení tohoto ok<strong>na</strong> se objekt zobrazív okně „Projekt“ v sekci „Regulace“.PoznámkaJmé<strong>na</strong> nelze měnit u těch objektů, které lze do projektu vložit v jediné instanci.15/41 esidet_g_cz_100


ESIDETObr. 15 - Zobrazené okno po vložení objektu do projektuObr. 16 - Vložený objekt Filtr1R v sekci „Regulace“Po klinutí myši <strong>na</strong> tento objekt lze v okně „Vlastnosti“ <strong>na</strong>stavit časovou konstantuT [s].Obr. 17 - Okno „Vlastnosti“ objektu „Filtr1R“Filtrovaná hodnota <strong>na</strong>měřených teplot se bude ukládat do proměnnýchTm_mis_f a Tm_media_f, které je nutno založit v objektu Ram. Pro každou teplotuje potřeba využít samostatný objekt Filtr1R, tzn., že je do projektu nutnéimportovat dva objekty Filtr1R, každý s jedinečným jménem.esidet_g_cz_100 16/41


ESIDETZápis kódu pak bude následovný.Ram.Tm_mis_f = Filtr1R1.Output(Ram.Tm_mis);Ram.Tm_media_f = Filtr1R2.Output(Ram.Tm_media);Rozhodnutí, zda se chladí nebo topíPříz<strong>na</strong>k, který informuje, zda se topí nebo chladí, bude určován <strong>na</strong> základěmezní hodnoty měřené teploty proudícího média.Test této meze bude prováděn objektem Hyst a výsledek bude ukládándo proměnné Rezim_HC, kterou je nutno založit v objektu Ram. Mezní hodnotateploty a velikost hystereze se zadá v okně „Vlastnosti“ objektu Hyst.Zápis kódu.Obr. 18 - Okno „Vlastnosti“ objektu Hyst1Ram.Rezim_HC = Hyst1.Output(Ram.Tm_media_f);Určení žádané teploty místnostiŽádaná teplota bude určová<strong>na</strong> <strong>na</strong> základě režimu místnosti a režimu ohřevu.Pro žádané teploty režimu ohřevu (topení a chlazení) se do projektu vloží dvaobjekty DayPlan. Jednotlivé časové zlomy a jim odpovídající hodnoty teplotse <strong>na</strong>staví v editačním režimu konkrétních objektů DayPlan. Editační režim sevyvolá dvojklikem levého tlačítka myši <strong>na</strong> zvolený objekt DayPlan.17/41 esidet_g_cz_100


ESIDETObr. 19 - Editační režim objektu DayPlan1Více informací o editaci objektu DayPlan lze <strong>na</strong>lézt v Nápovědě <strong>EsiDet</strong>.Pro žádanou hodnotu teploty se založí proměnná Tz_mis v objektu Ram.K uložení žádané hodnoty z objektu DayPlan1 do proměnné Tz_mis se použijenásledující zápis.Ram.Tz_mis = DayPlan1.Output();Výběr žádané teploty s ohledem <strong>na</strong> režim místnosti a režim ohřevu lze zapsatpomocí konstrukce podmínky „if-else-endif;“. Před zápisem kódu je nutné založitnásledující proměnné.Rezim_mis – dle hodnoty této proměnné se určuje režim místnosti, viz následujícítabulka.Hodnota Výz<strong>na</strong>m0 Časový plán1 Útlum2 KomfortProměnná založe<strong>na</strong> v objektu Ram.Tz_H_utlum a Tz_C_utlum jsou proměnné, ve kterých je ulože<strong>na</strong> žádanáhodnota v režimu Útlum pro topení nebo chlazení. Proměnné jsou založenyv objektu EEprom.Tz_H_komf a Tz_C_komf jsou proměnné, ve kterých je ulože<strong>na</strong> žádaná hodnotav režimu Komfort pro topení nebo chlazení. Proměnné jsou založenyv objektu EEprom.// Pokud je režim místnosti „Časový plán“if Ram.Rezim_mis == 0 thenif Ram.Rezim_HC then// Pokud se topíesidet_g_cz_100 18/41


ESIDETRam.Tz_mis = DayPlan1.Output();else// Pokud se chladíRam.Tz_mis = DayPlan2.Output();endif;endif;// Pokud je režim místnosti „Útlum“if Ram.Rezim_mis == 1 thenif Ram.Rezim_HC then// Pokud se topíRam.Tz_mis = EEprom.Tz_H_utlum;else// Pokud se chladíRam.Tz_mis = EEprom.Tz_C_utlum;endif;endif;// Pokud je režim místnosti „Komfort“if Ram.Rezim_mis == 2 thenif Ram.Rezim_HC then// Pokud se topíRam.Tz_mis = EEprom.Tz_H_komf;else// Pokud se chladíRam.Tz_mis = EEprom.Tz_C_komf;endif;endif;Výpočet akčního zásahu pro topení nebo chlazeníPro výpočet akčního zásahu bude do projektu vložen objekt PID. Po vloženíobjektu do projektu je nutné v okně „Vlastnosti“ <strong>na</strong>stavit jednotlivé parametryjako jsou zesílení, integrační a derivační časová konstanta apod.Obr. 20 - Okno „Vlastnosti“ objektu PIDZápis kódu, v závislosti <strong>na</strong> režimu topení nebo chlazení, může být <strong>na</strong>př. následovný.if Ram.Rezim_HC then19/41 esidet_g_cz_100


ESIDET// Pokud se topíPid1.SetPoint = Ram.Tz_mis;Ram.Akcni_zasah = Pid1.Output(Ram.Tm_mis_f, 0);else// Pokud se chladíPid1.SetPoint = Ram.Tm_mis_f;Ram.Akcni_zasah = Pid1.Output(Ram.Tz_mis, 0);endif;Určení polohy regulačního ventiluPo vložení objektu Valve do projektu se poloha regulačního ventilu určí pomocítohoto objektu následujícím zápisem.Valve1.Solve(Ram.Akcni_zasah);Určení výkonu ventilátoruVýkon ventilátoru bude určován automaticky dle stanoveného akčního zásahunebo dle zvoleného režimu, který je dán aplikací a je v rukou tvůrce kódu.Pro volbu režimu ventilátoru je nutné založit v objektu Ram proměnnouRezim_Ventilatoru, jejíž hodnota bude definovat zvolený režim, viz následujícítabulka.Hodnota Výz<strong>na</strong>m0 Vypnuto1 Stupeň 12 Stupeň 23 Stupeň 34 AutoRežim AutoStupeň 1,2,3Ruční režimV tomto režimu bude výkon ventilátoru určován dle velikosti akčního zásahu.Hodnota akčního zásahu bude porovnává<strong>na</strong> pomocí třech objektů Hyst, kteréje nutné do projektu vložit. Na základě jejich výstupu budou <strong>na</strong>stavovány prvnítři bity proměnné Ram.Vykon_Ventilatoru <strong>na</strong> hodnotu true nebo false.Proměnnou je třeba vytvořit v objektu Ram.Ovládání zapnutí / vypnutí 1 až 3 stupně ventilátoru fancoil jednotky.Výkon ventilátoru se <strong>na</strong>stavuje ručně, <strong>na</strong>př. pomocí nástěnného ovladače.Zápis kódu může být následovný.if Ram.Rezim_Ventilatoru == 4 then// Pokud je režim „Auto“// Pokud je vyhodnocen test pro <strong>na</strong>stavení druhého bitu// <strong>na</strong> hodnotu „true“if Hyst4.Output(Ram.Akcni_zasah) thenRam.Vykon_Ventilatoru.2 = true;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.0 = false;else// Pokud je vyhodnocen test pro <strong>na</strong>stavení prvního bitu // <strong>na</strong> hodnotu„true“if Hyst3.Output(Ram.Akcni_zasah) thenesidet_g_cz_100 20/41


ESIDETRam.Vykon_Ventilatoru.2 = false;Ram.Vykon_Ventilatoru.1 = true;Ram.Vykon_Ventilatoru.0 = false;else// Pokud je vyhodnocen test pro <strong>na</strong>stavení nultého bitu // <strong>na</strong> hodnotu„true“if Hyst2.Output(Ram.Akcni_zasah) thenRam.Vykon_Ventilatoru.2 = false;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.0 = true;elseRam.Vykon_Ventilatoru = 0;endif;endif;endif;else// Ruční režim ventilátoru// Režim „Vypnuto“if Ram.Rezim_Ventilatoru == 0 thenRam.Vykon_Ventilatoru = 0;endif;// „Stupeň 1“if Ram.Rezim_Ventilatoru == 1 thenRam.Vykon_Ventilatoru.0 = true;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.2 = false;endif;// „Stupeň 2“if Ram.Rezim_Ventilatoru == 2 thenRam.Vykon_Ventilatoru.0 = false;Ram.Vykon_Ventilatoru.1 = true;Ram.Vykon_Ventilatoru.2 = false;endif;// „Stupeň 3“if Ram.Rezim_Ventilatoru == 3 thenRam.Vykon_Ventilatoru.0 = false;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.2 = true;endif;endif;Zápis <strong>na</strong> výstupyZápis <strong>na</strong> výstupy, podobně jako čtení vstupů, zabezpečuje objekt IO.Zápis <strong>na</strong> triakové výstupy ovládající polohu regulačního ventilu bude následovný.IO.Ty0 = Valve1.Down;IO.Ty1 = Valve1.Up;Zápis <strong>na</strong> reléové výstupy ovládající výkon ventilátoru bude následovný.IO.RL0 = Ram.Vykon_Ventilatoru.0;IO.RL1 = Ram.Vykon_Ventilatoru.1;IO.RL2 = Ram.Vykon_Ventilatoru.2;21/41 esidet_g_cz_100


ESIDET4.4. Generování projektuCílem generování projektu je kontrola projektu a jeho následný překlad do binárníhosouboru, který se po úspěšném generování zavádí do regulátoru.Samotná generace se spustí <strong>na</strong>př. z položky hlavního menu „Generace/Generujvše“.Obr. 21 - Spuštění generace projektuPokud projekt neobsahuje chyby, je po dokončení generace zobrazeno oknoinformující o obsazenosti pamětí a tlačítka, pro zahájení přenosu a zavření ok<strong>na</strong>.Obr. 22 - Okno po úspěšně dokončené generaci projektuJestliže generace projektu skončí neúspěšně, je zobrazeno okno s touto informacía v okně „Sez<strong>na</strong>m chyb“ lze zjistit důvody neúspěšné generace projektu.Obr. 23 - Okno po neúspěšné generaci projektuesidet_g_cz_100 22/41


ESIDETObr. 24 - Okno „Sez<strong>na</strong>m chyb“ po neúspěšné generaci projektuVíce informací o generaci projektu lze <strong>na</strong>lézt v Nápovědě <strong>EsiDet</strong>.4.5. Zavedení projektu do regulátoruJestliže generace projektu skončí úspěšně, lze vygenerovaný projekt zavést doregulátoru. K zavedení je nutno v projektu správně <strong>na</strong>stavit komunikační parametry.Komunikační parametry regulátoru jsou dány polohou jednotlivých DIP přepí<strong>na</strong>čů(viz návod <strong>na</strong> <strong>obsluhu</strong> konkrétního regulátoru). Jestliže těmito přepí<strong>na</strong>či regulátornení osazen, <strong>na</strong>stavují se komunikační parametry pomocí SW nástrojeAMRConfig (viz kapitola 6.1).Nastavení komunikačních parametrů lze zobrazit pomocí položky hlavního menu„Přenos/Nastavení komunikace“.Obr. 25 - Okno „Parametry projektu“ – <strong>na</strong>stavení komunikačních parametrůV tomto okně je nutno <strong>na</strong>stavit následující komunikační parametry.AdresastaniceAdresa, která je <strong>na</strong>stave<strong>na</strong> v tomto případě v regulátoru AMR-FCT10.23/41 esidet_g_cz_100


ESIDETZpůsobkomunikaceParitySerialPortBaudrateTyp připojení komunikační linky v závislosti <strong>na</strong> typu regulátoru. Pro tento případje <strong>na</strong>staveno „RS485 (Modbus)“.Parita <strong>na</strong>stavená v AMR-FCT10.Číslo sériového portu <strong>na</strong> PC.Komunikační rychlost <strong>na</strong>stavená <strong>na</strong> AMR-FCT10.Správnost <strong>na</strong>stavených komunikačních parametrů lze ověřit <strong>na</strong>př. pomocí funkceidentifikace, která se vyvolá přes položku hlavního menu „Přenos/Identifikace“.Pokud identifikace proběhne korektně, zobrazí se oknos informací o typu připojeného regulátoru a verzi aplikace, jestliže je aplikacespuště<strong>na</strong>.Obr. 26 - Okno s identifikací připojeného regulátoruPokud je tedy komunikace s regulátorem <strong>na</strong>stave<strong>na</strong> / ověře<strong>na</strong>, lze zahájit přenosvygenerovaného projektu <strong>na</strong>př. pomocí položky hlavního menu „Přenos/Přenosprogramu“. O výsledku, zda se projekt podařil zavést, informuje okno„Zprávy“.esidet_g_cz_100 24/41


ESIDET4.6. Ladění projektuObr. 27 - Výsledek přenosu projektu v okně „Zprávy“Podrobný popis <strong>na</strong>stavení komunikačních parametrů a zavedení projektu lze<strong>na</strong>lézt v Nápovědě <strong>EsiDet</strong>.Pro ladění projektu bude možné v budoucnu použít speciálního nástroje,tzv. „Inspektora“, který je v současnosti vyvíjen. Pomocí tohoto nástroje budemožné sledovat/editovat hodnoty jednotlivých proměnných <strong>na</strong>definovanýchv projektu, ale také parametry vložených objektů v projektu.25/41 esidet_g_cz_100


ESIDET5. Rozšíření ukázkové aplikaceVytvořená ukázková aplikace bude rozšířená o další regulátor AMREG, konkrétněo programovatelný nástěnný ovladač AMR-OP7x s dotykovým displejem.Regulátory budou spolu komunikovat prostřednictvím protokolu MODBUS posériové lince RS485. Regulátor AMR-FCT10 bude v roli Mastera a AMR-OP7xv roli Slave.Výhodou tohoto rozšíření aplikace je, že AMR-OP7x disponuje interním čidlemteploty a může tedy měřit a poskytovat <strong>na</strong>dřazenému regulátoru vnitřní teplotumístnosti. Tím se uvolní a<strong>na</strong>logový vstup <strong>na</strong> AMR-FCT10 a lze jej využít <strong>na</strong>př.pro měření venkovní teploty a zohlednit tak vliv této teploty v aplikaci. DáleAMR-OP7x bude určovat žádanou hodnotu, korekci teploty a zpracování časovýchplánů.V neposlední řadě přináší použití AMR-OP7x komfortní <strong>obsluhu</strong> zadávání provozníchrežimů, teplot apod. prostřednictvím dotykového displeje.5.1. Vytvoření aplikace pro AMR-OP7xPostup založení projektu pro vytvoření aplikace je stejný, jako bylo uvedenov kapitole 4.Stejný postup také platí pro zakládání proměnných, vkládání objektů do projektua zápis aplikačního kódu do některého z procesů AMR-OP7x.Pro možnost <strong>na</strong>stavování režimů a editace <strong>na</strong>př. žádané teploty, prostřednictvímdispleje, je v kapitole 5.2 <strong>na</strong>z<strong>na</strong>če<strong>na</strong> tvorba obrazovek.Aplikace pro AMR-OP7x bude vykonávat následující funkce.• Měřit teplotu místnosti.• Určovat žádanou hodnotu teploty <strong>na</strong> základě informace od AMR-FCT10, zdase topí nebo chladí.• Volit režim místnosti.• Editovat časové plány.• Volit režim ventilátoru.Jak již bylo uvedeno, bude AMR-OP7x <strong>na</strong> sériové lince v roli Slave. Z tohotodůvodu je nutné do projektu vložit objekt ModbusSlave, ve kterém se budoudefinovat komunikační registry.Komunikační registry jsou v podstatě proměnné, které slouží pro výměnu dat(měřená teplota, režim místnosti apod.) mezi zařízením typu Master a Slave.Založení komunikačních registrůKomunikační registry se definují v otevřené záložce objektu ModbusSlave.Záložku lze otevřít <strong>na</strong>př. dvojklikem levým tlačítkem myši <strong>na</strong> položkuModbusSlave v okně „Projekt“ v sekci „Komunikace“.esidet_g_cz_100 26/41


ESIDETObr. 28 - Okno „Projekt“ s vybraným objektem ModbusSlavePotřebné registry lze jednoduše založit pomocí předdefinovaného sez<strong>na</strong>mu,přetažením položky „RoomUnit“ do otevřené záložky „ModbusSlave“.Obr. 29 - Založení registrů pro komunikaciPráce s registry v regulačním algoritmu je obdobná jako s proměnnými vytvořenými<strong>na</strong>př. v objektu Ram.Měření teploty místnostiV následujícím zápisu kódu bude uveden příklad <strong>na</strong>čtení měřené teploty přímojako parametr objektu Filtr1R1, do registru TempMeasured. Objekt Filtr1R jenutno do projektu vložit.Pro zápis kódu je opět výhodné vyvolat nápovědu intellisense klávesovouzkrtakou Ctrl+j a vybrat objekt ModbusSlave.27/41 esidet_g_cz_100


ESIDETObr. 30 - Výběr objektu ModbusSlavePo dokončeném výběru se za vypsaný text ModbusSlave <strong>na</strong>píše z<strong>na</strong>k tečka „.“a ze sez<strong>na</strong>mu zobrazeného plovoucího ok<strong>na</strong> se vybere položka (registr)TempMeasured.Obr. 31 - Výběr položky (registru) TempMeasuredDále následuje uložení filtrované měřené teploty interního čidla do registruTempMeasured. Výsledný zápis kódu bude následovný.ModbusSlave.TempMeasured=Filtr1R1.Output(IO.DeviceTemperature);Určení žádané teplotyŽádaná teplota se bude podobně jako v kapitole 4.3 určovat <strong>na</strong> základě režimuohřevu a režimu místnosti. Do projektu je tedy nutné vložit dva objekty DayPla<strong>na</strong> založit v paměťovém prostoru EEprom proměnné Tz_utlum a Tz_komf prozadávání žádané teploty režimu útlum a režimu komfort.Informaci, zda se topí nebo chladí, získává AMR-OP7x z <strong>na</strong>dřazenéhoAMR-FCT10 prostřednictvím registru ModbusSlave.DI, který <strong>na</strong>bývánásledujících hodnot.HodnotaTrueFalseVýz<strong>na</strong>mTopeníChlazeníesidet_g_cz_100 28/41


ESIDETZápis kódu pro určení žádané hodnoty teploty <strong>na</strong> základě režimu ohřevu a režimumístnosti může být následovný.if ModbusSlave.DI then// Pokud se topí// Pokud je režim místnosti „Časový plán“if ModbusSlave.RoomMode == 0 thenModbusSlave.TempSetpoint = DayPlan1.Output();endif;// Pokud je režim místnosti „Útlum“if ModbusSlave.RoomMode == 1 thenModbusSlave.TempSetpoint = EEprom.Tz_utlum;endif;// Pokud je režim místnosti „Komfort“if ModbusSlave.RoomMode == 2 thenModbusSlave.TempSetpoint = EEprom.Tz_komf;endif;else// Pokud se chladí// Pokud je režim místnosti „Časový plán“if ModbusSlave.RoomMode == 0 thenModbusSlave.TempSetpoint = DayPlan2.Output();endif;// Pokud je režim místnosti „Útlum“if ModbusSlave.RoomMode == 1 thenModbusSlave.TempSetpoint = EEprom.Tz_utlum;endif;// Pokud je režim místnosti „Komfort“if ModbusSlave.RoomMode == 2 thenModbusSlave.TempSetpoint = EEprom.Tz_komf;endif;endif;Volba režimu místnostiPro určování režimu místnosti bude využit registr RoomMode. Parametrizacea <strong>na</strong>vázání tohoto registru <strong>na</strong> ovládací prvek obrazovky je uvedeno v kapitole 5.2.Editování časových plánů žádané teploty pro topení a chlazeníPro <strong>na</strong>definování potřebných časových plánů se opět využije objekt DayPlan.Do projektu budou tedy vloženy dva objekty DayPlan. Postup editace při návrhuje totožný jako v kapitole 5.2.Pro editaci časových plánů ze strany obsluhy (z displeje) je do aplikace při návrhuobrazovek vložen prvek „APlan“, který tuto funkci zajišťuje (viz kapitola 5.2).Volba režimu ventilátoruPro volbu režimu ventilátoru bude využit registr FanMode , který bude <strong>na</strong>vázán<strong>na</strong> ovládací prvek obrazovky (viz kapitola 5.2)29/41 esidet_g_cz_100


ESIDET5.2. Tvorba obrazovek pro AMR-OP7xTvorba obrazovek spočívá v umisťování různých prvků <strong>na</strong> plochu editoru obrazoveka jejich parametrizaci v okně „Vlastnosti“.Sez<strong>na</strong>m <strong>na</strong>definovaných obrazovek lze zobrazit dvojklikem levým tlačítkem myši<strong>na</strong> položku „Obrazovky“ v okně „Projekt“. V otevřeném sez<strong>na</strong>mu obrazovekje nutno <strong>na</strong>definovat obrazovky dle obr. 32. Nová obrazovka se vytvoří <strong>na</strong>př.pomocí klávesy Insert.Obr. 32 - Založené obrazovky v záložce „Obrazovky“Editace jednotlivých obrazovek se vyvolá dvojklikem levým tlačítkem myši<strong>na</strong> vybranou obrazovku.Obrazovka MainNa této obrazovce bude zobraze<strong>na</strong> hodnota měřené teploty místnosti, žádanáteplota, tlačítko pro volbu režimu místnosti, tlačítko pro volbu režimu ventilátorua tlačítko pro další <strong>na</strong>stavení teplot a časových plánů.Jednotlivé prvky se vloží <strong>na</strong> plochu editoru obrazovek <strong>na</strong>př. přetažením myšiz ok<strong>na</strong> „Toolbox“.Pro zobrazení hodnoty proměnné lze použít prvek NumericView. Do editoruobrazovek budou vloženy dva tyto prvky. Jeden bude zobrazovat měřenouhodnotu teploty místnosti a druhý bude zobrazovat hodnotu žádanou.Obr. 33 - Vložení prvků NumericViewVeškerou parametrizaci, jako je typ fontu, výška / šířka prvku, proměnnou, jejížhodnotu prvek zobrazuje apod., se provede v okně „Vlastnosti“.esidet_g_cz_100 30/41


ESIDETProměnná, kterou bude prvek zobrazovat, se <strong>na</strong>váže <strong>na</strong>př. kliknutím levým tlačítkemmyši <strong>na</strong> tlačítko , <strong>na</strong> řádku „Variable“, v okně „Vlastnosti“.Obr. 34 - Okno „Vlastnosti“ prvku NumericView1Poté se zobrazí okno se sez<strong>na</strong>mem <strong>na</strong>definovaných proměnných, které lze<strong>na</strong> tento prvek <strong>na</strong>vázat.Obr. 35 - Okno „Výběr proměnné“Protože prvek NumericView1 bude zobrazovat měřenou teplotu místnosti, budevybrá<strong>na</strong> proměnná TmepMeasured objektu ModbusSlave. Výběr se potvrdí tlačítkemOK.31/41 esidet_g_cz_100


ESIDETStejným postupem se <strong>na</strong>váže proměnná TempSetpoint objektu ModbusSlave<strong>na</strong> prvek NumericView2.Pro zobrazení statických textů (<strong>na</strong>př. pro zobrazení jednotek měřené a žádanéteploty) bude použit prvek Label.Obr. 36 - Vložení prvků se statickým textemEditaci zobrazovaného statického textu lze provést <strong>na</strong>př. v okně „Vlastnosti“prvku Label1 a Label2.Obr. 37 - Okno „Vlastnosti“ prvku Label1Pro přepnutí <strong>na</strong> další obrazovku lze použít prvek „Button“.Obr. 38 - Vložení prvku „Button“Aby tuto funkci prvek vykonával, je nutné ve skriptu této obrazovky doplnitdo události „OnButtonDown“ prvku „Button1“ následující kód.esidet_g_cz_100 32/41


ESIDETObr. 41 - Okno „Vlastnosti“ prvku CaseButton1Obr. 42 - Definice položek prvku CaseButton1 pro režim místnostiPodobným postupem se <strong>na</strong>staví prvek CaseButton2 pro zadávání režimu ventilátoru.PoznámkaIkony použité pro prvky CaseButton1 a CaseButton2 jsou po instalaciDetStudia k dispozici v adresáři:„C:\Documents and Settings\user_<strong>na</strong>me\Dokumenty\DetStudio\Icons\“.Obrazovka TempNa obrazovce „Temp“ bude editová<strong>na</strong> teplota pro režim místnosti „Komfort“,„Útlum“ a korekce teploty. Pro editaci hodnoty proměnné se použije prvekNumericEdit. Tento se do návrhu obrazovky přidá stejně jako u předchozíchprvků z ok<strong>na</strong> „ToolBox“.Dále je <strong>na</strong> této obrazovce umístěno tlačítko „Zpět“ pro návrat <strong>na</strong> předchozí obrazovkua tlačítko „Další“ pro přechod <strong>na</strong> následující obrazovku. Jednotlivé prv-esidet_g_cz_100 34/41


ESIDETky se <strong>na</strong>definují stejně jako u obrazovky „Main“. Navázání proměnných <strong>na</strong> jednotlivéprvky se provede <strong>na</strong>př. pomocí ok<strong>na</strong> „Vlastnosti“, jak bylo ukázánou obrazovky „Main“. Dále je nutno ve skriptu obrazovky doplnit prvkům Buttondo události „OnButtonDown“ skript pro zobrazení požadované obrazovky. Výslednáobrazovka vypadá následovně.Obr. 43 - Obrazovka „Temp“Skript pro tlačítko „Zpět“ (přechod <strong>na</strong> obrazovku „Main“).event Button1_OnButtonDown()Main.Show();end;Skript pro tlačítko „Další“ (přechod <strong>na</strong> obrazovku „CP_menu“).event Button2_OnButtonDown()CP_menu.Show();end;Obrazovka CP_menuObrazovka „CP_menu“ slouží pro zobrazení editoru časového plánu pro režimtopení nebo chlazení. Do návrhu obrazovky se vloží dva prvkyButton, které budou sloužit pro přechod <strong>na</strong> obrazovky s editorem časovýchplánů. Dále se <strong>na</strong> obrazovky vloží ještě jeden prvek Button, pomocí kterého sebude vracet <strong>na</strong> předchozí obrazovku. Opět je nutno ve skriptu obrazovky doplnitprvkům Button do události „OnButtonDown“ skript pro zobrazení požadovanéobrazovky. Výsledná obrazovka vypadá následovně.Obr. 44 - Obrazovka „CP_menu“Skript pro tlačítko „Topení“ (přechod <strong>na</strong> obrazovku „CP_heating“).event Button2_OnButtonDown()CP_heating.Show();end;35/41 esidet_g_cz_100


ESIDETSkript pro tlačítko „Chlazení“ (přechod <strong>na</strong> obrazovku „CP_cooling“).event Button3_OnButtonDown()CP_cooling.Show();end;Skript pro tlačítko „Zpět“ (přechod <strong>na</strong> obrazovku „Temp“).event Button1_OnButtonDown()Temp.Show();end;Obrazovky CP_heating, CP_coolingObrazovky „CP_heating“ a „CP_cooling“ slouží pro editaci časových plánů pomocíprvku APlan. Tento prvek je konkrétně <strong>na</strong>vržen pro tuto činnost. Prvekse <strong>na</strong> jednotlivé obrazovky přidá z ok<strong>na</strong> „Toolbox“ a v okně „Vlastnosti“ tohotoprvku se <strong>na</strong>váže vybraný objekt DayPlan.Obr. 45 - Okno „Vlastnosti“ prvku APlanPodrobný popis ovládání prvku APlan pro editaci časových plánů je uvedenv nápovědě Nápověda obrazovek. Obrazovky „CP_heating“ a „CP_cooling“budou po vložení prvku APlan vypadat následovně.Obr. 46 - Obrazovka „CP_heating“, „CP_cooling“5.3. Doplnění aplikace pro AMR-FCT10Protože se aplikace rozšířila o regulátor AMR-OP7x, je nutné vložit do aplikacepro AMR-FCT10 objekt ModbusMaster, který zajistí aktivní komunikaci meziesidet_g_cz_100 36/41


ESIDETregulátory, a dále objekt RoomUnit, který zabezpečí <strong>obsluhu</strong> předdefinovanýchregistrů v objektu ModbusSlave regulátoru AMR-OP7x.Obr. 47 - Okno „Projekt“ s vloženými objekty ModbusMaster a RoomUnitV okně „Vlastnosti“ objektu ModbusMaster se zvolí <strong>na</strong> řádku „Baudrate“požadovaná komunikační rychlost (komunikační rychlosti obou regulátorů musíbýt shodné), <strong>na</strong> řádku „Modbus Parity“ se zvolí partita a <strong>na</strong> řádku „SerialPort“ sevybere číslo sériového portu, <strong>na</strong> kterém bude probíhat komunikace sAMR-OP7x.Obr. 48 - Okno „Vlastnosti“ objektu ModbusMasterV okně „Vlastnosti“ objektu RoomUnit je nutné zadat <strong>na</strong>stavenou adresuAMR-OP7x.37/41 esidet_g_cz_100


ESIDETObr. 49 - Okno “Vlastnosti“ objektu RoomUnit1Výše popsanými kroky je <strong>na</strong>parametrizová<strong>na</strong> komunikace mezi oběma regulátory.Úprava aplikaceProtože AMR-OP7x vykonává část kódu stejně jako AMR-FCT10, doplní seaplikace o podmínku, která bude zohledňovat stav komunikace s AMR-OP7x,tzn., že pokud bude komunikace v pořádku, bude měřenou teplotu, žádanouteplotu, korekci, režim místnosti a režim ventilátoru poskytovat AMR-OP7x.V případě, že bude komunikace rozpadlá, bude vykonávat AMR-FCT10 původníkód.Zápis kódu zahrnující test připojení AMR-OP7x a zpracování <strong>na</strong>čtených hodnotz registrů může být zapsán <strong>na</strong>př. následovně.// Test, zda je jednotka připoje<strong>na</strong>if RoomUnit1.Disconnected then// Jednotka je odpoje<strong>na</strong>…„Zde je umístěn původní zápis kódu z kap. 4.3.“…else// Jednotka je připoje<strong>na</strong>// Výpočet akčního zásahuif Ram.Rezim_HC then// Pokud se topíPid1.SetPoint = RoomUnit1.TempSetpoint;Ram.Akcni_zasah = Pid1.Output(RoomUnit1.TempMeasured, 0);else// Pokud se chladíPid1.SetPoint = RoomUnit1.TempMeasured;Ram.Akcni_zasah = Pid1.Output(RoomUnit1.TempSetpoint, 0);endif;// Výpočet polohy regulačního ventiluValve1.Solve(Ram.Akcni_zasah);// Výkonu ventilátoru dle akčního zásahu a režimu ventilátoruif RoomUnit1.FanMode == 4 then// Pokud je režim Auto// „Stupeň 3“if Hyst4.Output(Ram.Akcni_zasah) thenRam.Vykon_Ventilatoru.2 = true;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.0 = false;esidet_g_cz_100 38/41


ESIDETelse// „Stupeň 2“if Hyst3.Output(Ram.Akcni_zasah) thenRam.Vykon_Ventilatoru.2 = false;Ram.Vykon_Ventilatoru.1 = true;Ram.Vykon_Ventilatoru.0 = false;else// „Stupeň 1“if Hyst2.Output(Ram.Akcni_zasah) thenRam.Vykon_Ventilatoru.2 = false;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.0 = true;elseRam.Vykon_Ventilatoru = 0;endif;endif;endif;else// Ruční režim ventilátoru// „Vypnuto“if RoomUnit1.FanMode == 0 thenRam.Vykon_Ventilatoru = 0;endif;// „Stupeň 1“if RoomUnit1.FanMode == 1 thenRam.Vykon_Ventilatoru.0 = true;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.2 = false;endif;// „Stupeň 2“if RoomUnit1.FanMode == 2 thenRam.Vykon_Ventilatoru.0 = false;Ram.Vykon_Ventilatoru.1 = true;Ram.Vykon_Ventilatoru.2 = false;endif;// „Stupeň 3“if RoomUnit1.FanMode == 3 thenRam.Vykon_Ventilatoru.0 = false;Ram.Vykon_Ventilatoru.1 = false;Ram.Vykon_Ventilatoru.2 = true;endif;endif;endif;39/41 esidet_g_cz_100


ESIDET6. Další SW nástroje pro regulátory AMREG6.1. AMRConfig6.2. MultidownloadTento SW nástroj slouží ke konfiguraci AMREG regulátorů po linceRS485, kteří nemají DIP přepí<strong>na</strong>če pro <strong>na</strong>stavení komunikačních parametrůa také lze tímto nástrojem do regulátoru zavést vygenerovanou aplikaci.Při použití tohoto nástroje musí být <strong>na</strong> linku RS485 připojen jen jeden regulátorAMREG.Nástroj lze spustit z DetStudia přes položku hlavního menu „\Nástroje\Modbuskonfigurace stanice“.Příklad práce s tímto nástrojem lze <strong>na</strong>lézt v Nápovědě <strong>EsiDet</strong>.SW nástroj Multidownload je určen pro zavádění vygenerované aplikacepo sběrnici RS485, do které jsou zapojeny AMREG regulátory. Aplikaci lze zavádětjak do jednoho zařízení, tak do více zařízení.Nástroj lze spustit z DetStudia přes položku hlavního menu „\Nástroje\Modbusmultidownload“.Příklad práce s tímto nástrojem lze <strong>na</strong>lézt v Nápovědě <strong>EsiDet</strong>.esidet_g_cz_100 40/41


ESIDET7. Ukázkové a typové aplikace7.1. Ukázkové aplikace7.2. Typové aplikaceUkázkové aplikace, vytvořené v tomto dokumentu, jsou součástí instalaceDetStudia. Lze je <strong>na</strong>lézt v adresáři DetStudio/Examples.Na webových stránkách www.amit.cz lze stáhnout typové aplikace pro regulátoryAMREG. Typové aplikace řeší konkrétní příklad použití daného regulátoru,<strong>na</strong>příklad typová aplikace pro nástěnný programovatelný ovladač AMR-OP33.Ke každé typové aplikaci je k dispozici zdrojový kód aplikace pro DetStudio.Tyto typové aplikace může uživatel použít „tak jak jsou“ nebo si je může upravitdle vlastních specifikací.41/41 esidet_g_cz_100

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!