Nastavení automatické změny zimního a letního času
Jak… … nastavit automatickou změnu letního a zimního času
20.9.2016
Klíčová slova: SoMachine, RTC, čas, zimní, letní, automatická změna
Cíl: Podat informace o mžnostech nastavení automatické změny zimního a letního času
OEM solution
1
Nastavení automatické změny zimního a letního času
NEŽ ZAČNETE Tento manuál předpokládá, že máte základní znalosti práce s vývojovým prostředím SoMachine. Je nutné znát, jak vytvořit nový projekt a nahrát ho do PLC. Pokud těmito znalostmi nedisponujete, doporučujeme nastudovat dokumentaci k SoMachine nebo se zúčastnit školení.
ÚVOD V ukázkovém projektu RTC_Control_Timezone_DaylightSaving.project je příklad použití řízení reálného času (RTC) kontroléru v závislosti na časovém pásmu a zimním a letním čase. Pro RTC regulátoru je považován Koordinovaný světový čas (UTC). Nastavení časové zóny a současného časového období je přidáno do programu. V tomto příkladu jsou předdefinována tato časová pásma: Středoevropský (UTC+1), Severoamerický (UTC-6) a Východoaustralský (UTC+10). Je možné použít či modifikovat tato pásma nebo si nastavit jiná. Nastavená časová pásma jsou schraňována jako perzistentních proměnné v trvalé paměti kontroléru. Díky tomu jsou uchovávána při nahrávání programu. Příklad aplikace implementuje SoMachine vizualizaci, která poskytuje funkce monitorování a řízení pro RTC regulátoru.
Hlavní prvky Hlavní prvky této ukázkové aplikace zahrnují: •
Vizualizaci SoMachine pro řízení a monitorování RTC kontroléru
•
Výber mezi třemi předem definovanými časovými pásmy
•
Převod místního času na UTC vybraného časového pásma
•
Nastavení RTC kontroléru na místní čas
•
Cyklické čtení RTC kontroléru
•
Převod UTC na místní čas podle vybraného časového pásma
•
Výstup aktuálního času a data v UNIXovém formátu času
•
Výstup aktuálního času a data ve strukturovaném a ergonomickém formátu
•
Výstup přepínacích mezí pro letní čas
•
Úprava týdenní odchylky RTC kontroléru
•
Sledování stavu záložní baterie kontroléru
OEM solution
2
Nastavení automatické změny zimního a letního času Přístup k ukázkovému příkladu V tomto projektu popsaný ukázkový projekt je nainstalován na vašem počítači současně se SoMachine. Pro jeho otevření postupujte následovně:: Krok
Akce
1
Spusťte SoMachine Central na vašem počítači dvojitým kliknutím na jeho ikonu na vaší ploše.
2
Na uvítací stránce Get Started SoMachine Centra, klikněte vpravo na tlačítko Help Center.
3
Klikněte na tlačítko Example.
4
Dvakrát klikněte na ikonu složky System.
5
Dvakrát klikněte na ikonu složky RTC_Control_with_Timezone_Management.
6
Dvakrát klikněte na ikonu projektu RTC_Control_Timezone_DaylightSaving.project Výsledek: Kopie ukázkového příkladu se otevře v nové instanci SoMachine.
Hardwarové požadavky Ke spuštění ukázkové aplikace je potřeba hardwarová konfigurace na obrázku níže.
Figure 1: Hardware Installation
1
PC se SoMachine V4.2 nebo novější
2
PLC TM251MESE
3
USB programovací kabel - BMX XCA USB H018 nebo TCS XCN AM UM3P
Poznámka: Tento příkladu používá kontrolér M251, ale princip je stejný i pro jiné SoMachine kontroléry.
OEM solution
3
Nastavení automatické změny zimního a letního času Informace o projektu Tento ukázkový projekt zahrnuje PLC TM251MESE. Pro tento projekt již nejsou potřeba žádná další jeho nastavení.
Library manager Spravce knihoven (library manager) je standardní objekt aplikace. Většina knihoven uvedených ve správci knihoven se automaticky nahravá při přidávání zařízení nebo objektů do aplikace. V tomto příkladě, byly knihovny uvedeny v tabulce níže přidány ručně:
Název knihovny
Popis
SysTimeRtc
Postytuje funkce a datové typy potřebné k přístupu RTC kontroléru.
POUs and Datové typy Pro implementaci správy časových pásem v této aplikaci byly vytvořeny další funkce a datové typy, které nejsou obsaženy v knihovně. Tyto funkce a datové typy jsou dostupné v aplikaci a nachází se ve složce POUs_ And_Datatypes v Applications tree. Tabulka níže obsahuje tyto přidané funkce a datové typy:
Název objektu
Typ
Popis
ST_DateAndTime
STRUCT
Datový typ postytující čas ve strukturovaném a ergonomickém formátu
ST_DstConfig
STRUCT
Datový typ k definování přípínací meze letního času.
ST_TimeZoneConfig
STRUCT
Datový typ poskytující parametr nastavení časového pásma používaný v převodových funkcích. Data type to provide the time zone configuration
FC_CreateDstParam
Funkce
Tato funkce je používána k výpočtu přípínacích mezí letního času pro vybraný rok
FC_DateTimeConcat
Funkce
Tato funkce je používána k převodu času a data ve strukturovaném a ergonomickém formátu na UNIXový formát času.
OEM solution
4
Nastavení automatické změny zimního a letního času
FC_DateTimeSplit
Funkce
Tato funkce je používána k převodu času a data v UNIXovém formátu na strukturovaný a ergonomický formát.
FC_LocalToUtc
Funkce
Tato funkce je používána k převodu lokálního času ve strukturovaném a ergonomickém formátu na UTC v UNIXovém formátu.
FC_UtcToLocal
Funkce
Tato funkce je používána k převodu UTC z UNIXového formátu na místní čas v strukturovaném a ergonomickém formátu.
Globální proměnné Ukázkový projekt obsahuje dva seznamy globálníh proměnných (GVL), GVL_RTC_Control a PersistentVars.
V rámci GVL_RTC_ Control jsou deklarovány proměnné, které jsou dostupné globálně v projektu, a které není potřeba uchovávat po studeném startu kontroléru.
GVL PersistentVars je typu Persistent list. Je to speciální typ GVL, který umožňuje vytvoření proměnných, jejich hodnoty jsou uchovávány, i při nahrávání aplikace. GVL PersistentVars obsahuje deklaraci proměnných parametrů nastavení..
Program aplikace Program aplikace obsahuje dva programy, Prg_Main a Prg_RTC_Control. Program Prg_RTC_Control implementuje programovou logiku k řízení RTC kontroléru v závislosti na nastavení časového pásma. Program poskytuje vstupní a výstupní parametry, aby mohl být vlán z jiného programu.
Program Prg_Main implementuje volání Prg_ RTC_Control zároveň s přiřazením souvisejících globálních proměnných k jeho vtupním a výstupním parametrům. Dále Prg_Main obsahuje programovou logiku pro nastavení týdenní odchylky pro RTC kontroléru. Prg_Main je volán cyklicky v rámci MAST úlohy.
Diagram programu běžícího na kontroléru je zobrazen níže:
OEM solution
5
Nastavení automatické změny zimního a letního času
Figure 2: Application Program – Flowchart
Dodatečné informace k diagramu jsou v tabulce níže:
Prvek
Popis
1
Parametry nastavení časového pásma jsou uloženy v trvalé paměti kontroléru. Parametry se skládají z :
OEM solution
Standardní předpoklady k UTC
6
o
Nastavení automatické změny zimního a letního času
Další předpoklady k UTC během letního času Parametr pro přepínání mezi On a Off během letního času o Měsíc ve kterém přepínat o Číslo neděle v měsící ve které přepínat o Hodinu ve kterou přepínat
2
Uživatel aplikace vybírá datum a čas (místní), ketré se má nastavit pro RTC kontroléru.
3
Čas k nastavení vybraný v 2 je převeden na UTC v závislosti na parametru nastavení časového pásma funkce FC_LocalToUtc. Funkce poskytuje čas k nastavení jako timestamp v UNIXovém formátu.
Prvek
Popis
4
Detekuje-li aplikace vzestupnou hranu příkazu Set RTC, systémová funkce SysTimeRtcSet z knihovny SysTimeRtc je vykonána pro nastavení RTC kontroléru s vybraným časem nastaveným v 2.
5
V každém cyklu programu je čteno RTC kontroléru systémovou funkcí SysTimeRtcGet z knihovny SysTimeRtc. Funkce poskytuje RTC jako timestamp v UNIXovém formátu.
6
Přečtená hodnota RTC z kontroléru je převedena na místní čas v závislosti na parametru časového pásma s použitím funkce FC_UtcToLocal. Tato funkce poskytuje místní čas ve strukturovaném a ergonomickém formátu
7
Přečtená hodnota RTC z kontroléru je převedena do strukturovaného a ergonomického formátu.
8
Přepínčí mezi pro letní čas jsou vypočítány pro následující rok použitím funkce FC_CreateDstParam. Tato funkce poskytuje přepínací meze v UNIXovém formátu. Ty jsou převedeny do strukturovaného a ergonomického formátu použitím funkce FC_DateTimeSplit.
9
Použitím funkce FC_DateTimeConcat se převede místní čas do UNIXového formátu.
OEM solution
7
Nastavení automatické změny zimního a letního času Vizualizace SoMachine
Ukázkový kód poskytuje vizualizaci SoMachine, která umožňuje řízení a sledování RCT kontroléru v online režimu. Obrázek níže zobratuje vizualizaci SoMachine v online režimu.
Figure 3: SoMachine Visualization – Visu_RTC_Control
Omezení V této ukázkové aplikaci podporuje FC _CreateDstParam přepínací meze letního času, které jsou určeny číslem neděle vybraného měsíce. Potřebuje-li vaše aplikace podporovat jiný způsob výpočtu přepínacích mezí, bude potřeba vytvořit vlastní logiku k poskytnutí parametru pro funkce FC_LocalToUtc a FC_UtcToLocal. Ukázková aplikace byla testována na různých kontrolérech. Testované kontroléry a jejich kompatibilita je v tabulce níže.
OEM solution
8
Nastavení automatické změny zimního a letního času
Rodina kontroléru
Kompatibilita
PLC M241 PLC M251 PLC M258
Ukázková aplikace je plně kompatibilní s firmwarem kontrolérů vydaném ve stojení se SoMachine V4.2 a novějším.
PLC LMC058
Rodina kontroléru Motion kontrolér LMC078
HMI kontrolér HMI SCU
Kompatibilita
Tyto kontroléry nepodporují systémovou funkci SEC.SetRtcDrift ani systémovou proměnnou PLC_GVL.PLC_R.i_wClockBatterystatus. Funkce SEC.SetRtcDrift a související proměnné musí bát odstraněny z systémové aplikace. Dále sledování stavu baterie musí být odstraněno z vizualizační obrazovky.
Spuštění ukázkového příkladu Spuštění příkladu Nahrání aplikace Nahrajte aplikaci do kontroléru a spusťte jej. Pro více informací o nahrávání aplikace se obraťte na průvodnce SoMachine Programming Guide. Přejděte s aplikací do režimu online připojením (login) k připojenému kontroléru Kvakrát klikněte na uzel Visu_RTC_Control v Tools tree k otevření SoMachine vizualizační obrazovky.
Čtení aktuálního RTC kontroléru V rámečku Status Controller RTC vizualizační obrazovky je aktuální hodnota RTC kontroléru zobrazena jako UTC a jako místní čas. Místní čas je vypočítáván přidáním předpokladů definovaných vybraným časovým pásmem. Pro místní čas je indikováno, je-li aktivní letní čas.
OEM solution
9
Nastavení automatické změny zimního a letního času Kromě toho je zobrazen stav záložní baterie. Poznámka: Je-li záložní baterie vybitá, hodnota RTC kontroléru není při přerušení napájení uchována.
Výběr časového pásma V rámečku Timezone Configuration vizualizační obrazovky lze vybrat předem definované časové pásmo. Podle nastavení časového pásma jsou zobrazeny parametry předpokladu a přepínacích mezí letního. Kromě toho můžete upravovat parametry nastavení vybraného časového pásma. Výběr časového pásma okamžitě ovlivňuje výpočet výpočet místního času zobrazeného v rámečku Status Controller RTC.
Nastavení nové hodnoty RTC kontroléru V rámečku Set Controller RTC vizualizační obrazovky můžete vybrat datum a čas RTC kontroléru. Poznámka: V případě, že je čas nastaven v hodině, kdy dochází k přepnutí z letního na zimní čas, je potřeba vybrat, je-li čas letní nebo zimní. Klikněte na tlačítko Set RTC pro nastavení RTC kontroléru s vybraným datem a časem.
Set a Weekly Drift for the RTC of the controller V rámečku Set Controller RTC vizualizační obrazovky můžete vybrat týdenní odchylku o kterou se má RTC zrychlit (kladná hodnota) nebo zpomalit (záporná hodnota). Kromě toho je potřeba vybrat den v týdnu a čas, pro který se se má týdenní odchylka vypočítat. Klikněte na tlačítko Set RTC Drift pro nastavení vybrané týdenní odchylky pro RTC kontroléru.
OEM solution
10
Nastavení automatické změny zimního a letního času
Schneider Electric CZ, s. r. o.
Schneider Electric Slovakia, s. r. o.
U Trezorky 921/2 – 158 00 Praha 5 Zákaznické centrum Tel.: 382 766 333 E-mail:
[email protected]
Karadžičova 16 – 821 08 Bratislava Zákaznícke centrum Tel.: 02 4552 4010 E-mail:
[email protected]
www.schneider-electric.cz
www.schneider-electric.sk
09 – 2016. S1545CZ_10
©2016 Schneider Electric. Všechna práva vyhrazena. Všechny ochranné známky jsou ve vlastnictví společnosti Schneider Electric Industries SAS nebo jejích přidružených společností.
OEM solution
11