Овладяване на системните стойности: Отключване на задълбочена диагностика в програмирането на ПЛК

Повечето техници лесно управляват стандартните входно-изходни стойности за сензори и изпълнителни механизми в рамките на автоматизация на фабрики мрежа. Въпреки това, високо ниво на промишлена автоматизация изисква по-задълбочен поглед към вътрешния механизъм на контролера. Освен обикновените входове и изходи, всеки ПЛК генерира вътрешни „системни стойности“, които предоставят критични данни за състоянието и средата на процесора. Достъпът до тези скрити променливи позволява на разработчиците да създават по-устойчиви и самосъзнателни системи за управление.
Основни системни данни за инженери по автоматизация
Системните стойности действат като „телеметрия под капака“ за вашия контролер. Докато стандартният потребител може да се интересува само от цифровите входове, напредналият потребител следи Първия бит на сканиране за безопасно инициализиране на променливите. Освен това, цели числа за часовник позволяват прецизно регистриране на събития без излишно натоварване на процесора с ръчни таймери. Други важни данни включват режим на изпълнение (Работа срещу Програма) и реално време на времена на сканиране, които помагат да се предотвратят прекъсвания от сторожеви таймери в сложни системи за разпределено управление (СРС) среда.
Мониторинг на здравето на процесора и фърмуера
Разширената диагностика изисква достъп до информация за процесора и регистрите за грешки. Вместо да разчитате само на физически светодиоди, можете да извлечете номера на модела и версията на фърмуера директно в HMI. Тази практика е от съществено значение за мащабна автоматизация на фабрики където може да съществуват множество хардуерни ревизии в завода. Освен това, проследяването на конкретни кодове за грешки позволява на отдалечени табла за управление да локализират повреди преди техникът да пристигне до шкафа.
Достъп до вътрешни тагове чрез директно адресиране
Методът за извличане на системни данни варира значително между производителите. Някои платформи включват тези променливи директно в стандартния списък с тагове за удобство. Въпреки това, за да се запази интерфейсът чист, други скриват тези тагове от главното меню. В тези случаи трябва ръчно да въведете конкретния системен адрес в логическите си команди. Този метод на „директен достъп“ е често срещан при наследен хардуер и специфични нискобюджетни контролери.
Използване на системни инструкции за динамично извличане
Модерните системи за управление често използват специални инструкции за „извличане“ на данни от паметта на процесора. Вместо да имат статичен таг, потребителят изпълнява команда за попълване на персонализирана променлива. Този подход е много ефективен за промишлена автоматизация защото консумира процесорна мощ само когато данните са действително необходими. Той също така позволява на програмистите да преобразуват сложни цели числа за състоянието на процесора в четими формати за крайния потребител.
Rockwell Automation: SLC 500 и Studio 5000
В екосистемата на Rockwell подходът зависи от поколението на хардуера. Наследените SLC 500 процесори съхраняват всички диагностични данни в S: Файл (Файл за състояние). Обратно, платформата Logix5000 използва инструкциите GSV (Вземи системна стойност) и SSV (Задай системна стойност) . За да следите здравето на контролера, трябва да насочите към класа ControllerDevice . По мое мнение, използването на S:FS (Първо сканиране) бит е най-надеждният начин за нулиране на последователности след прекъсване на захранването.
Siemens S7-1200 и S7-1500 диагностика
Siemens използва функционален подход чрез специфични функционални блокове (ФБ). Например, инструкцията LED връща физическото състояние на светлините на дисплея на процесора, докато Get_IM_Data извлича идентификационна информация. Освен това, GetStationInfo предоставя критични мрежови данни като IP адреси. Тази модулност гарантира, че ПЛК остава бърз, тъй като вие извиквате само диагностичните блокове, които са релевантни за текущата ви рутина.
AutomationDirect Productivity серия
За тези, които отдават предпочитание на лесната употреба, линията AutomationDirect Productivity трябва системните стойности като стандартни тагове. Те са предварително дефинирани и готови за използване веднага след създаването на проекта. Този „отворен“ подход намалява кривата на обучение за екипите по поддръжка. Позволява бързо внедряване на монитори за сърдечен ритъм и флагове за готовност на системата без ровене в технически ръководства.
Авторски поглед: Защо системните стойности са важни
На практика съм виждал много инженери да се борят с „фантомни“ грешки, които се появяват само при включване на захранването. Използвайки Първия бит на сканиране, можете да принудите логиката си да влезе в познато „безопасно състояние“ всеки път. Освен това, следенето на времето за сканиране е професионална необходимост; ако кодът ви стане твърде обемен, времето за сканиране ще се увеличи, което води до непредсказуемо поведение на хардуера. Отнасяйте се към системните стойности като към основен диагностичен инструмент, а не като към нещо второстепенно.
