TIA Portal navodila

Datum in čas
Časovna logika

Osvojite uro vašega PLC. Od natančnega časovnega žigosanja dogodkov do kompleksnih časovnih izračunov in pretvorb formatov, nadzorujte vsako milisekundo.

Zakaj upravljati čas v PLC?

Upravljanje časa je ključnega pomena za industrijsko avtomatizacijo. Omogoča natančno beleženje proizvodnih dogodkov, sprožanje načrtovanih vzdrževalnih opravil, izračunavanje cikličnih časov strojev in sinhronizacijo porazdeljenih sistemov prek NTP protokolov.

Sodobni Siemens PLC-ji ponujajo napredne podatkovne tipe, kot je DTL (Date and Time Long), ki omogoča neposreden dostop do posameznih komponent (leto, mesec, dan, ura) brez zapletene bitne manipulacije, kar močno poenostavi programiranje v primerjavi s starejšimi DT formati.

Branje časa

Dostop do sistemske in lokalne ure

T_CONV — Ekstrakcija sistemskega časa

T_CONV

Kaj naredi

Ekstrahira specifične komponente iz vrednosti datuma/časa ali pretvarja med formati. Bistveno je za pridobivanje berljivih ur/minut iz surovega časovnega žiga.

Kdaj uporabiti

Ko morate na HMI prikazati samo čas iz celotne Date_And_Time oznake.

Strokovni nasveti

Uporabite T_CONV za pretvorbo TOD (Time_Of_Day) v String za enostavno beleženje.

Zagotovite, da so vhodni in izhodni tipi združljivi, da se izognete napakam zaradi prekoračitve.

V SCL to navodilo pogosto implicitno obravnavajo preproste določitve.

RD_SYS_T — Branje sistemskega časa

RD_SYS_T

Kaj naredi

Bere trenutni sistemski čas CPU (UTC). Za razliko od RD_LOC_T ne vključuje poletnega časa ali odmikov časovnih pasov.

Kdaj uporabiti

Idealno za interno beleženje, kjer je potrebna neprekinjena časovna referenca brez skokov (izogne se težavam med spremembami poletnega časa).

Strokovni nasveti

Za shranjevanje v bazo podatkov vedno uporabite UTC, da zagotovite globalno doslednost.

Izhod RET_VAL zagotavlja informacije o stanju (npr. če je ura sinhronizirana).

Kombinirajte z RD_LOC_T, če želite prikazati tako 'tehnični' kot 'človeški' čas.

Aritmetika

Izračuni trajanj in časovnih žigov

T_ADD — Seštevanje časa

T_ADD

Kaj naredi

Doda trajanje (Time ali LTime) določeni točki datuma/časa. Pravilno obravnava prekoračitve minut, ur in dni.

Kdaj uporabiti

Izračun časa poteka ali načrtovane točke ponovnega zagona (npr. trenutni čas + 24 ur).

Strokovni nasveti

Zelo uporabno za implementacijo watchdogs po meri z dinamičnim trajanjem.

Uporabite LTime tipe za nanosekundno natančnost na S7-1500 CPU-jih.

Če rezultat preseže največji datum (leto 2262), CPU nastavi status napake.

T_DIFF — Časovna razlika

T_DIFF

Kaj naredi

Izračuna razliko med dvema časovnima žigoma in vrne rezultat kot trajanje (Time ali LTime).

Kdaj uporabiti

Merjenje natančnega trajanja procesnega koraka ali izračun časa delovanja stroja.

Strokovni nasveti

Popolno za izračune OEE (Overall Equipment Effectiveness).

Odštevanje večjega datuma od manjšega vrne negativno Time vrednost.

Na S7-1200/1500 uporabite DTL oznake za lažji dostop do komponent razlike.

Pretvorba

Spremembe formatov in ravnanje s String-i

T_CONV — DT v DTL pretvorba

T_CONV

Kaj naredi

Pretvori starejši DATE_AND_TIME (8 bajtov) v sodobni DTL format ali obratno.

Kdaj uporabiti

Pri povezovanju starejše kode ali komunikacijskih blokov z novo S7-1500 optimizirano logiko.

Strokovni nasveti

Dajte prednost DTL za vse nove projekte, da se izognete kompleksnosti BCD (Binary Coded Decimal).

Pretvorba v DTL vam omogoča neposredno pisanje 'MyTag.MONTH' v vašo kodo.

Bodite previdni z milisekundno natančnostjo, ki je v nekaterih formatih lahko odrezana.

DT_TO_STRING — Serializacija časa

DT_TO_STR

Kaj naredi

Pretvori vrednost datuma/časa v berljiv String format. STRING_TO_DT naredi obratno.

Kdaj uporabiti

Pošiljanje časovnih žigov v CSV datoteko na pomnilniško kartico ali komunikacija s spletnim API-jem.

Strokovni nasveti

Izhodni niz sledi formatu ISO 8601 (YYYY-MM-DD-HH:MM:SS.ms).

Uporabite STRING_TO_DT za razčlenjevanje datumov, prejetih iz zunanje SQL baze podatkov.

Upoštevajte, da so operacije String bolj CPU intenzivne; uporabljajte jih zmerno v hitrih zankah.

DATE_AND_TIME proti DTL

Izbira prave časovne strukture

FunkcijaDATE_AND_TIME (Starejši)DTL (Sodobni)
Velikost8 bajtov12 bajtov
KodiranjeBCD (Zapleteno za branje)Cela števila (Neposredno berljivo)
Dostop do komponentZahteva bitno maskiranjeStrukturno (Tag.Month)
Obseg1990 do 20891970 do 2262
S7-1200/1500 podporaSamo kompatibilnostNaravno in priporočeno
Natančnost10 ms1 nanosekunda

Pogosto zastavljena vprašanja

Kakšna je razlika med sistemskim časom in lokalnim časom?

Sistemski čas (RD_SYS_T) je vedno UTC, kar zagotavlja stabilno referenco. Lokalni čas (RD_LOC_T) se prilagaja vašemu specifičnemu časovnemu pasu in pravilom poletnega časa (DST), nastavljenim v lastnostih CPU.

Kako sinhronizirati uro PLC s strežnikom?

Omogočite NTP (Network Time Protocol) v strojni konfiguraciji CPU. Navedite IP vašega časovnega strežnika in PLC bo samodejno prilagodil svojo notranjo uro.

Zakaj moj DATE_AND_TIME prikazuje čudne vrednosti v Hex?

Starejši DT uporablja BCD kodiranje. Vrednost 25 v decimalnem zapisu je shranjena kot 16#25 v BCD. Vedno uporabljajte navodila za pretvorbo ali DTL za pravilno branje vrednosti.

Ali lahko neposredno izračunam razliko med dvema DTL oznakama?

V SCL lahko preprosto uporabite operator '-' med dvema DTL oznakama. TIA Portal bo samodejno poklical navodilo T_DIFF namesto vas.

Avtomatizirajte upravljanje časa

Ali želite ustvariti proizvodna poročila z natančnimi časovnimi žigi ali sinhronizirati 50 PLC-jev? T-IA Connect avtomatizira generiranje časovne logike.