ARIES PLC110[M02]-MS4, HMI, OPC и SCADA, или от колко чай от лайка се нуждае човек. Част 1

Добър ден, скъпи читатели на тази статия. Пиша това във формат на рецензия.

Малко предупреждениеБих искал да ви предупредя, че ако веднага разбрахте за какво говорим от заглавието, съветвам ви да промените първата точка (всъщност ядрото на PLC) на всичко от ценова категория с една стъпка по-висока.
Субективно никое спестяване на пари не струва толкова много нерви.

За тези, които не се страхуват от малко сива коса и амплитудата на нервен тик, по-късно ще опиша подробно как е създадено това технологично чудо. Тази статия предоставя кратък анализ на проекта с известна доза критика.

Произход. Формулиране на проблема

Всъщност аз работя в дизайнерско бюро и ние тестваме оборудване за автоматизация за интегриране в нашите заводи до ключ. Наскоро оборудването на OWEN пристигна в склада и беше решено да се сглоби тестов стенд от него:

  • PLC110[M02]-MS4 (изпълнителна среда MasterSCADA 4D)
  • Операторски панел SP307
  • Универсален модул за вход на аналогов сигнал МВ110-224.2А
  • MV110-4TD тензометричен входен модул за сигнал
  • Електроизмервателен модул MV110-220.3M

Структура на системата е избран с диференциацията на мрежите според предназначението:

  1. Modbus RTU базиран на RS-485 - комуникация между PLC и подчинени устройства (модули, честотни преобразуватели, смарт сензори, HMI панел SP307), PLC мрежов мастер.
  2. Modbus TCP базиран на Ethernet - Комуникация на различни PLC помежду си и с OPC сървъра
  3. Компютърният сървър на OPC и SCADA системата е едновременно шлюз между две различни мрежи (корпоративна LAN на предприятието и Modbus TCP мрежа от контролери (два мрежови адаптера с маршрутизиране на данни с помощта на стандартни инструменти на Windows)
  4. Корпоративната локална мрежа има достъп до Интернет чрез прокси сървър

Общата структура на системата е показана на изображението по-долу:

ARIES PLC110[M02]-MS4, HMI, OPC и SCADA, или от колко чай от лайка се нуждае човек. Част 1

Вградена функционалност

  • Събиране и пренасочване на данни от PLC към OPC сървър
  • Локален контрол и мониторинг чрез HMI панел
  • Контрол и мониторинг от SCADA през OPC сървър
  • Контрол от всеки компютър от корпоративната локална мрежа и през Интернет с помощта на SCADA клиент
  • Свързване на мобилни OPC монитори през LAN и Интернет
  • Разбира се, архивиране и генериране на отчети

Изглежда, че нищо не е пропуснато. Има общо описание на системата и сега всъщност по темата (ще опиша методите за елиминиране в статии с изпълнението на всеки възел):

Възникнали трудности

1. PLC документация

Бета тестването на декларирания PLC на ядрото MasterSCADA 4D беше посочено от производителя през 2012 г. Въпреки толкова впечатляващия живот на концепцията, всичко, с което разработчикът разполага през 2019 г., е ръководство за програмиране от 28 (!?) страници, на които няма малко по-малко от никаква полезна информация, а екранните снимки в ръководството са от MasterSCADA 3D, което е доста смешно, като се има предвид, че интерфейсът е променен.

Нишка във форума от 20 теми също се поддържа активно от трима привърженици и мениджър продажби.

2. Архитектура на PLC модули

Това е отделна тема за обсъждане. Накратко: PLC комуникира с модулите като Modbus RTU slave устройства, които първо трябва да бъдат конфигурирани от помощната програма поотделно чрез свързване на всеки към компютър чрез RS-485 конвертор.

Умните момчета, разбира се, вероятно знаят как да направят това без конвертор чрез PLC, последователно свързване на модули към мрежата и писане на необходимите регистри, но това идва с опит и огромна болка.

За разработчик, който вижда такава архитектура за първи път, тя изобщо не е удобна за потребителя.
Освен това всички аналогови модули обичат да се провалят по неизвестни причини, като вземат със себе си цялата мрежа RS-485 в Terra Incognita, но също така искам да говоря за това отделно, цяла епопея, разбира се. Проблемът, между другото, е от 10 години, производителят се смее „Трябва да признаем, че шаблоните не работят за нас“, но това е единственият интерфейс за комуникация с модули и хората, съвсем сериозно, пишат своите Modbus RTU реализации от доста време.

Междувременно чаят от лайка свършваше... Слънцето залязваше

3. IDE MasterSCADA

Няма да говорим за графични инструменти; не съм ги тествал обстойно, но веднага ще кажа, че не ми хареса.

Говорим за внедряване на обмен на данни и IEC стандартни езици:

Физическите входове и изходи на контролера не са глобални променливи и не могат да бъдат достъпни от никоя част на програмата чрез писане на псевдоним, например „DI1“. Трябва да плъзнете това във всяка програма с манипулатори, там се формира локална променлива, която наследява или прехвърля стойността. Тези. самата същност на PLC, според моето виждане, е малко изгубена: устройството трябва да опрости програмирането на логиката на работа на физическите канали до ниво „Ако се задейства вход DI1, включете изход DO1“и изглежда така "Вход DI1 - Променлива LI1 - Променлива LO1 - Изход DO1", също така, поради непознаване на този принцип на IDE, можете да хванете възхитително предупреждение „Булево-булево преобразуване е невъзможно“ (най-вероятно един от тях е указател, но си представям, че в редакторите на създателите е по-хармонично) .

Библиотеките на езиците ST, FBD, SFC са доста обемни и има избор за лесно програмиране, но тези компоненти не са функции, а класове, в които са вградени методи, и второ, повечето нямат помощ за описание функционалността и типовете данни. Упоритостта ме доведе до библиотеките на ядрото на CodeSys, откъдето бяха взети всички тези функции, тяхната помощ помогна.

4. Смяна с панел SP307

Доста интересно събитие за тези, които нямат къде да прекарат няколко дни.

Стандартното GUI тестване (HMI или SCADA) за мен е да направя 6 теста:

  1. Четене на дискретен сигнал
  2. Записване на дискретен сигнал
  3. Четене на целочислена стойност
  4. Записване на целочислена стойност
  5. Четене на реална стойност
  6. Писане на реална стойност

Съответно рисувам 6 примитивни компонента на екрана и проверявам всеки по ред
Обменът е абсолютно същият като при модулите, но от отделен RS-232/485 PLC порт и, изглежда, по-стабилен. Тъй като е HMI slave, аз му писах чрез промяна и го прочетох в 500ms запитване, за да не пропусна действията на оператора.

Първите 4 точки бяха изпълнени перфектно, но точки 5 и 6 създадоха проблеми.

Изпращаме данни от типа Single Float, показваме ги на екрана и виждаме, че данните не са същите, въпреки че всички изходни настройки (Float, регистър на измерение 1 и т.н.) са правилни. Би било лъжа да се каже, че прецедентът не е описан в документацията, но опитайте се да намерите кой и къде, отвън е смешно.

След истерично търсене на всички настройки относно самите данни и тяхното изпращане, Пишем на техническата поддръжка, отговорът е средно 5-6 календарни дни, работим според стандартния скрипт за техническа поддръжка „Проверете дали захранването е включено - проверете версията на софтуера - моля, изчакайте още една седмица - Да отидем да го разберем сами ”.

Между другото, това се реши с инсталирането на една отметка на абсолютно неадекватно място с абсолютно неадекватен подпис.

Във функционалността на екрана Входът за аналогов сигнал на формата “Slider” не е включен, могат да се въвеждат в текстовото поле само с цифри. Това е просто невероятно, или сами пишем бутоните „±“ и скрипта, или въвеждаме число от клавиатурата и забравяме за мекото управление на някакъв диск.

Няма да претоварвам статията, затова ще опиша проблемите с най-високото ниво в част 2.

Да обобщим, Искам да отбележа, че имах достатъчно свобода и много време, за да реша тези проблеми, които на пръв поглед изглеждат смешни, но причиняват много болка на жертвата. В условията на ограничено време е изключително важно да се сблъскате с подобни проблеми.

PS: Всички тези изложени тук са субективни, и са само опит да предупредя неподготвените, а не да дискриминирам производителите, моля да приемете тази статия от тази гледна точка.

Втората част вече е тук: щракнете

Източник: www.habr.com

Добавяне на нов коментар