RSLogix 500: Moving Timer ACC into Another Timer PRE — figure 1

RSLogix 500: Egy időzítő ACC értékének áthelyezése egy másik időzítő PRE értékébe

RSLogix 500 időzítőprogramozás: egy futó időzítő ACC értékének kiolvasása és átvitele egy másik időzítő PRE értékébe megfordítható ajtószimulációhoz biztonsá...

Az RSLogix 500-ban a kétirányú mozgás emulációjához gyakran olyan időzítőre van szükség, amely az ellenkező irányban már megtett mozgás idejének megfelelő ideig fut. Klasszikus példa erre a garázskapu-tréner: ha a fotocella három másodperc lefelé mozgás után aktiválódik, a visszafelé, felfelé irányuló mozgásnak három másodpercig kell tartania, nem pedig a kódolt hat másodperces előbeállítás szerint. Ez a követelmény nem teljesíthető a forrásidőzítő akkumulátorának módosításával. Az élő .ACC szót az időzítőutasítás minden letapogatáskor felülírja, amíg a létra igaz. A tartós megoldás az, hogy az .ACC értékét egy impulzuson, egy one-shot élén egész számba rögzítjük, majd ezt az egész számot a célidőzítő .PRE értékébe írjuk, mielőtt engedélyeznénk a visszafelé mozgást.

RSLogix 500: Időzítő-ACC áthelyezése egy másik időzítő-PRE-be — 1. ábra

Olvasd ki az .ACC értékét, tárold átmenetileg N7-en keresztül, majd írd a .PRE-be — az akkumulátort soha ne kezeld tartós beállított értékként.

Időzítőfájl-architektúra

Minden SLC-időzítő három szót foglal el: állapotbitek (EN/TT/DN), .PRE és .ACC. Az időalap 0,01 s, 0,1 s vagy 1,0 s lehet. 0,01 s-os időalap esetén a 600-as előbeállítás hat másodpercnek felel meg. Az 1747-6.15 számú kiadvány részletesen dokumentálja az utasításkészlet működését.

Elem Szerep Írható beállított érték?
T4:x.PRE Célszámlálóérték Igen — ez a helyes cél
T4:x.ACC Eltelt számlálóérték Amíg az EN igaz, nincs tartós hatása
T4:x/TT Időzítési feltétel Rögzítés engedélyezésére használható

Miért nem működik az .ACC-ba történő MOV

Amíg az EN igaz, a TON/TOF/RTO utasítás minden letapogatáskor frissíti az .ACC értékét. A felhasználó által az .ACC-ba írt MOV értéket a következő (vagy akár ugyanazon) letapogatáskor felülírja. Az .ACC újratöltése emellett nem határozza meg újra az összehasonlítási célt; az utasítás az .ACC értékét a .PRE értékével hasonlítja össze. Új .PRE érték írása és az .ACC = 0 értékről történő újraindítása a szabályozott módja az időtartam módosításának.

Rögzítés ONS-sel, átvitel MOV-val

Létra rögzítés:
XIC Door_Going_Down  XIC Down_Timer/TT  ONS Capture_Bit  MOV T4:2.ACC N7:10

Létra előbeállítás betöltése:
XIC Capture_Bit  MOV N7:10 T4:3.PRE

Létra reteszelés:
XIC Capture_Bit  OTL Preset_Loaded

Létra alapértelmezett (engedélyezett):
XIC Door_Idle  XIO Preset_Loaded  MOV 600 T4:3.PRE

Sor törlése:
XIC Up_Timer/DN  OTU Preset_Loaded

Az RSLogix 500 nem fogad el olyan MOV utasítást, amely ugyanazt az időzítőelemet használja forrásként és célként. Mindig iktass be egy egészértékű fájlszót, például az N7:10-et. Az ONS-tárolóbit a fénysorompó felfutó élén tartja a rögzítést, így egy tartósan aktív bemenet nem írja át az előbeállítást minden letapogatáskor.

RSLogix 500: Időzítő ACC értékének áthelyezése egy másik időzítő PRE értékébe — 2. ábra

Állapotgép az átvitel körül

Állapot Belépési feltétel Művelet
ÜRESJÁRAT Bekapcsolás / mindkettő kész Egyszeri impulzusok és iránybitek törlése
FELFELÉ_HALADÁS FELFELÉ irányú él Alapértelmezett felfelé irányú előbeállítás, ha nincs betöltve
LEFELÉ_HALADÁS LEFELÉ irányú él Alapértelmezett lefelé irányú előbeállítás
FORDÍTÁS Fénysorompó éle lefelé haladás közben ACC rögzítése → PRE növelése, növelés engedélyezése

Studio 5000-migrálási megjegyzések

A Logix-időzítők ugyanazt a .PRE / .ACC szemantikát használják címkealapú címzéssel. Rögzítsd az értéket egy DINT-be, írd be a fordított irányú időzítő .PRE értékét, és tartsd meg az egyszeri élérzékelést ONS-sel vagy azzal egyenértékű megoldással. Az A-43402 tudásbáziscikk a felhalmozott értékek más címkékbe történő áthelyezését tárgyalja ControlLogix esetén; az elemek szerepei megegyeznek az SLC-mintával.

ACC-rögzítési és PRE-írási élvizsgálatok

A fénysorompó megszakadását ismert eltelt időpontban érzékeld, majd ellenőrizd, hogy a fordított irányú előbeállítás megegyezik-e a rögzített ACC-értékkel, egyetlen időalap-kattintáson belül. Ellenőrizd, hogy az alapértelmezett előbeállítások csak akkor töltődnek-e be, ha a Preset_Loaded értéke false. Gyakori hibák a .ACC írása, az egészértékű köztes lépés kihagyása, a /TT-minősítés nélküli rögzítés, valamint az, ha egy inicializáló programsor a rögzítés után felülírja a .PRE értékét. A trénerlogika Logixra történő migrálásakor tartsd egységesen az időzítők dokumentációját a többi PLC- és PAC-szabvánnyal.

A szerzőről

Mark Townsend | Vezető automatizálási mérnök – Allen-Bradley-rendszerek

Mark Townsend vezető automatizálási mérnök, aki több mint 18 éve dolgozik Allen-Bradley-platformokon, többek között ControlLogix, CompactLogix és régebbi SLC-500 rendszereken. Napi munkája az RSLogix / Studio 5000 logikájának fejlesztése, valamint a FactoryTalk View HMI üzembe helyezése elöregedett és vegyes eszközparkokon.

RSLogix 500: Egy időzítő ACC értékének áthelyezése egy másik időzítő PRE értékébe

RSLogix 500 időzítőprogramozás: egy futó időzítő ACC értékének kiolvasása és átvitele egy másik időzítő PRE értékébe megfordítható ajtószimulációhoz biztonsági fénysorompóval.

Az RSLogix 500-ban a kétirányú mozgás emulációjához gyakran olyan időzítőre van szükség, amely az ellenkező irányban már megtett mozgás idejének megfelelő ideig fut. Klasszikus példa erre a garázskapu-tréner: ha a fotocella három másodperc lefelé mozgás után aktiválódik, a visszafelé, felfelé irányuló mozgásnak három másodpercig kell tartania, nem pedig a kódolt hat másodperces előbeállítás szerint. Ez a követelmény nem teljesíthető a forrásidőzítő akkumulátorának módosításával. Az élő .ACC szót az időzítőutasítás minden letapogatáskor felülírja, amíg a létra igaz. A tartós megoldás az, hogy az .ACC értékét egy impulzuson, egy one-shot élén egész számba rögzítjük, majd ezt az egész számot a célidőzítő .PRE értékébe írjuk, mielőtt engedélyeznénk a visszafelé mozgást.

RSLogix 500: Időzítő-ACC áthelyezése egy másik időzítő-PRE-be — 1. ábra

Olvasd ki az .ACC értékét, tárold átmenetileg N7-en keresztül, majd írd a .PRE-be — az akkumulátort soha ne kezeld tartós beállított értékként.

Időzítőfájl-architektúra

Minden SLC-időzítő három szót foglal el: állapotbitek (EN/TT/DN), .PRE és .ACC. Az időalap 0,01 s, 0,1 s vagy 1,0 s lehet. 0,01 s-os időalap esetén a 600-as előbeállítás hat másodpercnek felel meg. Az 1747-6.15 számú kiadvány részletesen dokumentálja az utasításkészlet működését.

Elem Szerep Írható beállított érték?
T4:x.PRE Célszámlálóérték Igen — ez a helyes cél
T4:x.ACC Eltelt számlálóérték Amíg az EN igaz, nincs tartós hatása
T4:x/TT Időzítési feltétel Rögzítés engedélyezésére használható

Miért nem működik az .ACC-ba történő MOV

Amíg az EN igaz, a TON/TOF/RTO utasítás minden letapogatáskor frissíti az .ACC értékét. A felhasználó által az .ACC-ba írt MOV értéket a következő (vagy akár ugyanazon) letapogatáskor felülírja. Az .ACC újratöltése emellett nem határozza meg újra az összehasonlítási célt; az utasítás az .ACC értékét a .PRE értékével hasonlítja össze. Új .PRE érték írása és az .ACC = 0 értékről történő újraindítása a szabályozott módja az időtartam módosításának.

Rögzítés ONS-sel, átvitel MOV-val

Létra rögzítés:
XIC Door_Going_Down  XIC Down_Timer/TT  ONS Capture_Bit  MOV T4:2.ACC N7:10

Létra előbeállítás betöltése:
XIC Capture_Bit  MOV N7:10 T4:3.PRE

Létra reteszelés:
XIC Capture_Bit  OTL Preset_Loaded

Létra alapértelmezett (engedélyezett):
XIC Door_Idle  XIO Preset_Loaded  MOV 600 T4:3.PRE

Sor törlése:
XIC Up_Timer/DN  OTU Preset_Loaded

Az RSLogix 500 nem fogad el olyan MOV utasítást, amely ugyanazt az időzítőelemet használja forrásként és célként. Mindig iktass be egy egészértékű fájlszót, például az N7:10-et. Az ONS-tárolóbit a fénysorompó felfutó élén tartja a rögzítést, így egy tartósan aktív bemenet nem írja át az előbeállítást minden letapogatáskor.

RSLogix 500: Időzítő ACC értékének áthelyezése egy másik időzítő PRE értékébe — 2. ábra

Állapotgép az átvitel körül

Állapot Belépési feltétel Művelet
ÜRESJÁRAT Bekapcsolás / mindkettő kész Egyszeri impulzusok és iránybitek törlése
FELFELÉ_HALADÁS FELFELÉ irányú él Alapértelmezett felfelé irányú előbeállítás, ha nincs betöltve
LEFELÉ_HALADÁS LEFELÉ irányú él Alapértelmezett lefelé irányú előbeállítás
FORDÍTÁS Fénysorompó éle lefelé haladás közben ACC rögzítése → PRE növelése, növelés engedélyezése

Studio 5000-migrálási megjegyzések

A Logix-időzítők ugyanazt a .PRE / .ACC szemantikát használják címkealapú címzéssel. Rögzítsd az értéket egy DINT-be, írd be a fordított irányú időzítő .PRE értékét, és tartsd meg az egyszeri élérzékelést ONS-sel vagy azzal egyenértékű megoldással. Az A-43402 tudásbáziscikk a felhalmozott értékek más címkékbe történő áthelyezését tárgyalja ControlLogix esetén; az elemek szerepei megegyeznek az SLC-mintával.

ACC-rögzítési és PRE-írási élvizsgálatok

A fénysorompó megszakadását ismert eltelt időpontban érzékeld, majd ellenőrizd, hogy a fordított irányú előbeállítás megegyezik-e a rögzített ACC-értékkel, egyetlen időalap-kattintáson belül. Ellenőrizd, hogy az alapértelmezett előbeállítások csak akkor töltődnek-e be, ha a Preset_Loaded értéke false. Gyakori hibák a .ACC írása, az egészértékű köztes lépés kihagyása, a /TT-minősítés nélküli rögzítés, valamint az, ha egy inicializáló programsor a rögzítés után felülírja a .PRE értékét. A trénerlogika Logixra történő migrálásakor tartsd egységesen az időzítők dokumentációját a többi PLC- és PAC-szabvánnyal.

A szerzőről

Mark Townsend | Vezető automatizálási mérnök – Allen-Bradley-rendszerek

Mark Townsend vezető automatizálási mérnök, aki több mint 18 éve dolgozik Allen-Bradley-platformokon, többek között ControlLogix, CompactLogix és régebbi SLC-500 rendszereken. Napi munkája az RSLogix / Studio 5000 logikájának fejlesztése, valamint a FactoryTalk View HMI üzembe helyezése elöregedett és vegyes eszközparkokon.

Hozzászólás írása

Felhívjuk a figyelmedet, hogy a hozzászólásokat jóvá kell hagyni a közzétételük előtt.