Algoritmy

Algoritmy a programy k volnému použití.

Optimální seřízení PID regulátoru

   Našel jsem krásně popsané seřízení regulátorů v knize Měření a regulace ve vytápění (04-226-74) od Ing. Jiřího Cikharta, CSc., za které se v klidu mohu postavit. Snad mi autor tuto osvětu odpustí:

Vhodně zvolený regulátor je třeba seřídit tak, aby regulační pochod splňoval požadavky na jakost regulace. Toto seřízení je všeobecně dosti obtížné, i když existují metody vycházející z vlastností regulované soustavy, které umožňují stanovit předem hodnoty nastavitelných parametrů regulátoru. Přesto je třeba regulátor seřídit přímo na místě definitivně. Nejvíce se osvědčila metoda Zieglerova-Nicholsova, při níž se seřizuje regulátor v provozním zapojení. Výsledky seřízení jsou uspokojivé.
Postup seřizování regulátoru připojeného k regulované soustavě bude uveden pro každý typ regulátoru.

Seřízení P-regulátoru. Zesílení regulátoru r0 se pomalu zvětšuje tak dlouho, až v obvodu nastanou harmonické kmity. Odpovídající zesílení je r0 krit. Optimální nastavení zesílení r0 opt je pak

   r0 opt 0,5r0 krit

Seřízení I-regulátoru. Integrační konstantu Ti nastavujeme tak dlouho, až v obvodu vzniknou harmonické kmity. Určíme odpovídající dobu kmitu Tkrit. Optimální nastavení integrační časové konstanty Ti opt je pak

Meteo stanice

   Meteo obrazovka

Vytvořil jsem meteo-obrazovku, a protože jsem velmi nadšen jejím vzhledem i funkčností, rozhodl jsem se podělit o ní i s Vámi. Základem jsou meteo-údaje a výpočet pro východ a západ slunce. Popis algoritmu a realizace meteostanice později najdete v připravované knize, případně zašlu dříve na vyžádání (popis + výpočet v Excelu). Jestli to dobře půjde, tak s chlapama z AMiTu vytvoříme funkční blok pro výpočet východu/západu slunce.

Programátorský postup východ / západ slunce:

   Vyzkoušel jsem několik uveřejněných algoritmů pro výpočet východu/západu slunce, ale přesnost byla velmi špatná, až jsem narazil na algoritmus, kde výsledek se liší oproti oficiálním údajům o 1 maximálně 2 minuty. Chyba je nejspíše daná zaokrouhlováním, nevím na čí straně, ale podle mého je už v přijatelném rozmezí.

EM24 komunikace Modbus

   Vážený pane, rád bych se optal z hlediska Vaší zkušenosti se zařízením EM24 DIN od společnosti ENIKA a komunikací MODBUS. Snažíme se tuto komunikaci rozchodit ale již druhý den bez úspěchu. Je možné nám poradit? V současné době máme AMINI4DS a následně chceme aplikaci přenést na ART. Již v minulosti jsme bez problémů komunikovali se zařízením pro měření teplot CometSystem. Je nějaká zrada na zařízení ENIKA?

Vývojové diagramy z webu programujte

   Při procházení webu http://programujte.com/ jsem narazil na články o vývojových diagramech, které mě oslovili jak stylem, tak hlavně obsahem, který je hodně podobný mému stylu programování. Jelikož to píší lidé, kteří evidentně vědí, o čem píší a jsou tam zmíněné zásady, které pořád připomínám začátečníkům, tak jsem si jednotlivé články stáhl do PDF formátu pro svojí osobní potřebu, ale poté jsem došel k rozhodnutí, že není fér si takové kvalitní informace „syslit“ jen pro sebe. Uvedené zásady a postupy jsou dobře popsané a hlavně je třeba si uvědomit, že nejsou platné jen pro vývojové diagramy, ale hlavně pro tvorbu algoritmů. Pro začátečníky v programování bych to zařadil jako povinnou četbu.

   Protože nechci vykrádat obsah na zmíněném webu, ale upozornit na tento kvalitní obsah, tak v přiloženém PDF nebudu dále rozšiřovat kapitoly a další pokračování si budete muset vyhledat na webu http://programujte.com/. V PDF souboru jsou kapitoly 1 až 11 a pod nadpisy jednotlivých kapitol naleznete odkaz na originální články. Přeji příjemné čtení.

Soubory: 

Individuální regulace místností s NOA70

Jak udělat s NOA klimatizování místností   Byl jsem postavem před problém udělat inteligentní a uživatelsky příjemnou regulaci teploty jednotlivých místností. Protože se jedná o klimatizování prostoru tz. topení a chlazení více místností, tak jsem se do problému více ponořil. Výsledek předčil i mé očekávání a je hodně zajímavý, tak se o něj podělím.
   Pokud bychom řešili jen topení nebo chlazení tak problém není. Vytvořil by se časový plán se žádanou teplotou a je vyřízeno, ale jak docílit aby uživatel nemusel zadávat jednu žádanou hodnotu pro topení a druhou pro chlazení, když pominu časové plány a zároveň aby regulace nebyla závislá na venkovní teplotě, protože ta nás v podstatě nezajímá, mi chceme mít v prostoru požadovanou teplotu ať je venku jakkoli.

Soubory: 

Aplikační programy v DetStudiu

 

 Připravil jsem pro Vás pár příkladů, co jsem řešil. Jsou to poupravené programy, které neobsahují hrubé chyby, ale drobné asi ano. Prosím zamyslete se nad tím, proč jsem problém řešil tímto způsobem a pokud máte lepší nápad prosím o reakci.

Sledujte aplikační poznámky na stránkách AMiTu.


Na jednu aplikaci jsem musel upravit standardní verzi prostorového ovladače NOA70 tak, aby nedošlo k odstavení topení v celém objektu při topení krbem v prostoru ovladače. Protože je konstrukce funkčního bloku (programu pro obsluhu NOA70 uživatelsky vytvořeném) odlišná od standardní obsluhy NOA70 (DI a DO jsou nyní využívány jen k řízení přenosu a vlastní přenos proměnných se děje pomocí registrů) a trochu jsem se s tím potrápil, tak vám přináším tento funkční blok k ukázce obsluhy uživatelsky upraveného NOA70.
Proč vymýšlet už vymyšlené :-D
fb_NOA70_jarda1 (funkční blok) verze 1.3 (3/2010); doplněn *.dso pro NOA70
Popis obsluhy ovladače NOA70 v módu jarda 1.3 – popis změn oproti verzi č.3 f. AMiT.
Musel jsem přesunout proměnné, proto nešlo přidělat variantu č.4 do firmware AMiT.
- doplněna signalizace poruchy z řídicího systému na ovladači.
- tlačítko režimů má čtyři stavy tj. časový program; komfortní teplota; útlumová teplota; krb – stav bez vlivu prostoru.
- tlačítko ZAP/VYP zůstává, jen schovává ostatní režimy při režimu VYP.

HTML dokumentace funkčního bloku

 


Zjištění stavu kreditu u mobilních operátorů pro použití v řídicím systému. DetStudio NOS

Soubory: