RSLogix 500: Преместване на ACC на таймер в PRE на друг таймер
Програмиране на таймери в RSLogix 500: запаметяване на текущата стойност ACC на работещ таймер и прехвърлянето ѝ към PRE на друг таймер за симулация на ревер...
Емулацията на двупосочно движение в RSLogix 500 често изисква таймер, който да работи за времето, прекарано в движение в обратната посока. Класически пример е симулаторът на гаражна врата: ако фотоокото се задейства след три секунди движение надолу, обратното движение нагоре трябва да продължи три секунди, а не зададените предварително шест секунди. Това изискване не може да бъде изпълнено чрез редактиране на акумулатора на таймера източник. Текущата стойност .ACC се презаписва от инструкцията на таймера при всяко сканиране, докато редът е истина. Надеждният модел е да се улови .ACC в цяло число при еднократен импулс, след което това цяло число да се запише в .PRE на таймера местоназначение, преди да се разреши обратното движение.
Прочетете .ACC, запазете междинно чрез N7, запишете в .PRE — никога не приемайте акумулатора за трайна зададена стойност.
Архитектура на файловете за таймери
Всеки SLC таймер заема три думи: статусови битове (EN/TT/DN), .PRE и .ACC. Времевите бази са 0,01 s, 0,1 s или 1,0 s. При база 0,01 s предварително зададена стойност 600 означава шест секунди. Публикация 1747-6.15 описва подробно поведението на набора от инструкции.
| Елемент | Роля | Записваема зададена стойност? |
|---|---|---|
| T4:x.PRE | Целеви брой | Да — правилната дестинация |
| T4:x.ACC | Изминал брой | Няма траен ефект, докато EN е истина |
| T4:x/TT | Квалификатор за време | Използвайте за управление на улавянето |
Защо MOV към .ACC не работи
Докато EN е истина, инструкцията TON/TOF/RTO актуализира .ACC при всяко сканиране. Въведена от потребителя стойност чрез MOV в .ACC се презаписва при следващото (или дори при същото) сканиране. Повторното зареждане на .ACC също не променя целта за сравнение; инструкцията сравнява .ACC с .PRE. Записването на нова стойност в .PRE и рестартирането от .ACC = 0 е контролираният начин за промяна на продължителността.
Улавяне с ONS, прехвърляне с MOV
Ред за улавяне: XIC Door_Going_Down XIC Down_Timer/TT ONS Capture_Bit MOV T4:2.ACC N7:10 Ред за зареждане на предварително зададена стойност: XIC Capture_Bit MOV N7:10 T4:3.PRE Ред за задържане: XIC Capture_Bit OTL Preset_Loaded Стандартен ред (управляван): XIC Door_Idle XIO Preset_Loaded MOV 600 T4:3.PRE Стъпка за изчистване: XIC Up_Timer/DN OTU Preset_Loaded
RSLogix 500 няма да приеме MOV, който използва един и същ елемент на таймера едновременно като източник и местоназначение. Винаги използвайте междинен етап през дума от целочислен файл, например N7:10. Битът за съхранение на ONS запазва заснемането на водещия фронт на лъча, така че задържан вход да не записва предварително зададения параметър при всяко сканиране.
Краен автомат около прехвърлянето
| Състояние | Условие за влизане | Действие |
|---|---|---|
| СВОБОДЕН ХОД | Включване / и двете завършени | Изчистване на еднократните импулси и битовете за посоката |
| ДВИЖЕНИЕ НАГОРЕ | Фронт при движение нагоре | Стандартен параметър за движение нагоре, ако не е зареден |
| ДВИЖЕНИЕ НАДОЛУ | Фронт при движение надолу | Стандартен параметър за движение надолу |
| ОБРЪЩАНЕ НА ПОСОКАТА | Фронт на лъча при движение надолу | Заснемане на ACC → задаване на PRE за движението нагоре, активиране на движението нагоре |
Бележки за миграция към Studio 5000
Таймерите в Logix използват същата семантика на .PRE / .ACC с адреси, базирани на тагове. Заснемете стойността в DINT, запишете я в .PRE на обратния таймер и запазете откриването на еднократния фронт чрез ONS или еквивалентен механизъм. Базата знания A-43402 разглежда преместването на натрупани стойности в други тагове в ControlLogix; ролите на елементите съответстват на модела SLC.
Проверки на фронтовете при заснемане на ACC и запис в PRE
Прекъснете лъча в известен изминал момент и потвърдете, че обратният предварително зададен параметър съвпада със заснетия ACC в рамките на един тик на времевата база. Потвърдете, че стандартните предварително зададени параметри се зареждат само когато Preset_Loaded е false. Често срещани грешки са записването в .ACC, пропускането на целочисления етап, заснемането без квалификация /TT и допускането на инициализационна стъпка да презапише .PRE след заснемането. Поддържайте документацията за таймерите съгласувана с другите стандарти за PLC и PAC, когато мигрирате логиката на обучителя към Logix.
За автора
Марк Таунсенд | Старши инженер по автоматизация – системи Allen-Bradley
Марк Таунсенд е старши инженер по автоматизация с над 18 години опит с платформите Allen-Bradley, включително ControlLogix, CompactLogix и наследената SLC-500. Ежедневната му работа включва логика в RSLogix / Studio 5000 и пускане в експлоатация на HMI системи FactoryTalk View при остарели и смесени инсталации.