единица 8 / 9

Автоматизация, PLC логика и данни от сензори/IoT

Печалби:

  • Възможност за разделяне на сценарий за автоматизация на входно/изходен списък и логически стъпки и изискване на стълба/ST чернова от AI
  • Възможност за наблюдение на PLC логика, генерирана от AI по отношение на предпазни ключалки, аварийно спиране и условия на състезание
  • Възможност за проверка на калибриране, обем и сигнали за повреда при интерпретиране на сензорни и IoT телеметрични данни с AI

Индустриалната автоматизация е една от най-докосващите полето области на електрическото и електронното инженерство: PLC (Програмируем логически контролер) чете сигнали от сензори и задвижва двигатели, клапани и аларми според определена логика. Логическа грешка тук не е просто "грешен резултат"; Заседнал конвейер, клапан, който остава отворен, или аварийно спиране, което не се задейства, могат да доведат до реални наранявания. AI е бърз в очертаването на логиката на автоматизацията, предлагането на стълбовиден/ST код и интерпретирането на сензорни/IoT телеметрични данни; Но защитните брави и безотказният дизайн са отговорност на инженера. В този модул ще разгледаме как да дефинираме сценария за автоматизация към AI, как да контролираме генерираната PLC логика и как безопасно да интерпретираме данните от сензорите.

Конфигуриране на сценария за автоматизация: I/O списък и логически стъпки

Да се ​​каже на AI да „програмира конвейер“ е недостатъчно. Първо, разделете процеса на вход (сензор, бутон), изход (мотор, вентил, лампа) и логически стъпки. Това разграничение едновременно изяснява подканата и прави логиката контролируема.

Примерен I/O списък (обикновена станция за пълнене): Входове: I0.0 Бутон за стартиране, I0.1 Бутон за спиране, I0.2 E-stop (NC), I0.3 Сензор за откриване на бутилка, I0.4 Сензор за заетост Изходи: Q0.0 Конвейерен мотор, Q0.1 Пълначен клапан, Q0.2 Лампа за грешка Логически стъпки: 1) Разрешаване на работа, ако E-stop НЕ е натиснат и системата е готов.2) Конвейер със стартово връщане; Спрете конвейера, когато сензорът за бутилка се задейства. 3) Отворете клапана за пълнене; Затворете вентила, когато сензорът за заетост е пълен. 4) Рестартирайте конвейера; Процесът се повтаря. 5) E-stop или Stop отвежда всички изходи към безопасната страна по всяко време.

Слаба подкана / Силна подкана

СЛАБ: „Напишете PLC код за конвейера.“ (Резултат: I/O адресите, блокировките за безопасност и логиката на състоянието са неясни; потенциално опасен непълен код.) СИЛЕН: „Предложете чернова на PLC логика (структуриран текст) за бензиностанция въз основа на I/O списъка и логическите стъпки по-горе. УВЕРИТЕ: - E-stop е настроен с нормално затворена (NC) логика и като приоритетно условие, че поставя всички изходи на безопасна страна.- Конвейер и клапан "Не създавайте опасна ситуация едновременно (заключване). - Коментирайте всяка стъпка. Посочете, че това е чернова; веригата за сигурност, безопасността при отказ и полеви тестове принадлежат на инженера."

Контролиране на PLC логика: Безопасност, Fail-Safe, Състезателни условия

Не е достатъчно произведената логика да „изглежда, че работи“. Следвайте този контролен списък:

контрол

Какво да търсите

аварийно спиране

NC контакт, безопасен при повреда, най-висок приоритет, превключване на всички изходи към безопасната страна

Блокировки

Конфликтните изходи не трябва да са активни по едно и също време

състезателно състояние

Конфликтни задачи в един и същи цикъл, недефинирана ситуация

начално състояние

Стартиране в безопасно, познато състояние при захранване

Таймер/брояч

Правилна логика, препълване, условие за нулиране

неизправност на сензора

Безопасно поведение при повреда на датчика/късо съединение

Аварийното спиране (E-stop) е най-критичната точка. Функцията за безопасност трябва да е безопасна при отказ: тоест, ако кабелът се скъса, контактът се повреди, системата трябва да падне от безопасната страна, а не опасна. Следователно E-stop се установява с нормално затворен (NC) контакт; Ако кабелът се скъса, веригата се отваря и системата спира. Освен това софтуерната логика сама по себе си не е достатъчна; Хардуерната защитна верига (реле за безопасност/контактор) трябва да бъде проектирана и проверена от инженера.

Предупреждение: Ако видите в генерирана от изкуствен интелект стълба/ST код, че E-stop е зададен с нормално отворен (NO) контакт или просто софтуерен флаг, това е уязвимост. Функциите за сигурност никога не се оставят само на софтуера; Безопасната хардуерна верига и съответствието със съответните стандарти за безопасност на машината са отговорност на инженера и се проверяват чрез полеви тестове.

Състезателни условия и държавни машини

PLC логиката работи циклично; Цялата логика се обработва от началото до края във всеки цикъл. AI понякога пише противоречиви редове, които задават един и същ изход на едно място и го нулират на друго; това кара изхода да трепти непредвидимо (състезание). Конструирането на сложни процеси като ясна машина за състояние намалява този риск: системата е в едно, специфично състояние през цялото време, като преходите зависят от ясни условия.

Интерпретиране на данни от сензори и IoT: калибриране, единица, сигнал за грешка

Въпреки че сензорните и IoT телеметрични данни (температура, налягане, вибрации, ток) са ценни за анализ, те могат да бъдат подвеждащи в необработената си форма. Докато AI обобщава тези данни, трябва да проверите три неща:

  1. Калибриране и мащаб. Дали изходът на сензора е необработената стойност на ADC или действителната физическа единица? AI 4-20 mA може да мащабира неправилно сензор и да обърка физическата стойност.
  2. единица. °C или °F, бар или kPa, RMS или пик? Объркването на единиците разваля цялата интерпретация.
  3. Сигнали за повреда. Заседнала стойност, внезапно падане до нула, показание извън диапазона; Това не са действителни измервания, но може да са неизправност на сензор/линия. Ако AI ги интерпретира като „интересни данни“, ще сгрешите.

# 4-20 mA сензор -> мащабиране на физическата стойност (диапазон 0-100 °C) def ma_to_temp(ma): ако ma < 3,5: # Под 4 mA -> прекъсната линия/връщане на грешка Няма # маркиране като невалидно връщане (ma - 4,0) / (20,0 - 4,0) * 100,0 за четене в [4.0, 12.0, 20.0, 2.0]: t = ma_to_temp(reading) print(reading, "mA ->", "FAULT" if t is None else f"{t:.1f} C")

Съвет: Когато интерпретирате IoT данни, първо попитайте „възможна ли е тази стойност физически?“ Задайте въпроса. Ако сензор за стайна температура отчита 300 °C, това не е реално, вероятно е грешка при калибриране/линия. Елиминирайте сигналите за повреда преди интерпретацията на AI.

Мини калъф

Инженер по поддръжката има AI да интерпретира данните за IoT вибрациите на помпата. AI казва, че „вибрацията се е увеличила с 200% през последната седмица, риск от незабавна повреда“ и предлага аларма. Инженерът преглежда необработените данни: стойността е „заседнала“ на фиксирано високо число след определено време, като никога не се променя. Това не е повишена вибрация, а замръзване/повреда на сензора. При истинска механична повреда стойността варира. Инженерът проверява сензора; Кабелната връзка е разхлабена. AI интерпретира фиксираната стойност като „бичи“. Урок: изключете сигнатури за неизправност (заседнал, извън обхват, пръскане) преди да интерпретирате данните от сензора; AI не прави заявки за необработени данни.

Често срещани грешки

  • Настройване на E-stop без контакт или само софтуерен флаг (не е безопасен).
  • Оставяне на защитната функция единствено на софтуера, без хардуерна верига.
  • Създаване на състояние на състезание с конфликтни редове за задаване/нулиране.
  • Недефиниране на безопасно първоначално състояние при захранване.
  • Интерпретиране на данни от сензори от калибриране и проверка на единица.
  • Сигнали за грешка (заседнали, извън обхват) за реални измервания.

В обобщение

  • Разбийте сценария за автоматизация в I/O списък и изчистете логическите стъпки и попитайте AI по този начин.
  • Функциите за аварийно спиране и безопасност трябва да са безотказни (NC), с най-висок приоритет и хардуерно свързани; проверени чрез полеви тестове.
  • Конфликтните назначения създават състояние на състезание; Настройте сложни процеси със държавна машина.
  • Сигурността никога не се оставя само на софтуера; Одобрението на инженера е задължително.
  • Сигналите за калибриране, единица и грешка в данните от сензора/IoT първо се проверяват.
  • Физически невъзможни стойности и заседнали показания са признаци на неизправност, а не действителни данни.

Задача за приложение

Напишете списък с входно/изходни и логически стъпки за прост сценарий за автоматизация (запълване, контрол на вратата, регулиране на нивото); Попитайте AI за проект на ST/стълба. След това проверете генерираната логика: (1) Безопасен ли е E-stop и е с приоритет, (2) има ли заключване за конфликтни изходи, (3) дефиниран ли е безопасен старт при включване? Отделно помолете AI за коментари относно поредица от показания на сензора (няколко нормални, една блокирана, една стойност извън обхвата) и проверете дали правилно елиминира стойностите на грешката. Поправете грешките и ги запишете.