Форум — АСУ ТП: сообщество инженеров

Форум 336

Уведомления
Очистить все

Разработка ППО с помощью ИИ

1 Записи
1 Пользователи
1 Реакции
16 Просмотры
(@ya_feelmysmell)
Новичок
Присоединился: 2 дня назад
Записи: 1
Создатель темы   [#336]

Приветствую, соучастники. Предлагаю потратить вам немного рабочего времени на чтение моего поста про рабому с ИИ и рзработку программ для промышленных контролеров.

 

Начну с себя. Я ведущий инженер программист в компании, занимающейся разработкой оборудования в нефте-газовой отрасли. Свободное от основной работы время занимаюсь разработкой программ для котельных и сопутствующих им объектов. Фриланс, так сказать. Всю свою рабочу карьеру я связал с  АСУ ТП. Среднее специальное образование техник КИПиА, высшее образование инженер АСУ ТП. Десять лет эксплуатации и семь лет разработки программист/конструктор.

 

В мою рабочую рутину ИИ ворвался относительно недавно, около полугода назад в виде бесплатных запросов в чат ЖПТ или китайский ДипПик. Вопросы были общего характера - написание простых функций или математических формул. Получаемы ответы часто меня не устраивали, так как они были далеки от истины или вообще не в ту сторону модель думала. А код приходилось всегда переписывать, в ответах были функции, которых просто не существует в ST или SCL. Я как и все думал, что это просто баловство и ИИ ничего толком в АСУ ТП сделать не может. Но со временем даже бесплатные модели начали давать более менее сносные ответы. Поворотным моментом стало общение с моим братом, которых сделал сайт по продаже цветов в другой стране и это сайте на момент написания стать приносит ему доход от 60-80 тысяч рублей в месяц. В программировании о понимание почти никак. Всё сделано с помощью ИИ и сайт прекрасно работает. Тогда я и подумал, что и мне стоит попробовать платную версию.

 

На самой покупке не буду заострять внимание, думаю в интернете найдёте много гайдов по этому вопросу. Перейдём сразу к предметному описанию. Приобрёл подписку на Cusros и попробовал с его помощью написать документ МО. Сделал выгрузку из Tia Portal с 7 функциями и работой каскада и загрузил в ИИ. Результат меня очень порадовал. Описаны функций и математического аппарата были максимально подробными и из этого документа не программист сразу понимал как работают все узлы программы. Это была первая работа с ИИ и я использовал 13% от месячной подписки на создание простого документа и около одного дня рабочего времени. Приходилось много править оформление, так как сам текст меня устраивал, но вот документ был просто ужас. После этого я понял, что надо начать с обучения и углубился в документацию и видео. Никаких курсов я не брал, так как однаждый проходил бесплатное полугодовое обучение от одной IT школы... Пустая трата времени.

На второй документ "Инструкция по эксплуатации" я потратил уже около 2 часов и правок с моей стороны было много меньше. Пришлось покапаться в различных промтах, документации и видео, что бы научится правильно формировать запросы. Но время и стоимость (токены) сократились во много раз. После этого пришло время писать код.

 

Тут сделаю некоторые замечания по поводу написания кода. Я обучал ИИ на своей собственной библиотеке с функциями весь код написан на языке ST, данная библиотека описывает следующие сущности:
1) аналоговые и дискретные входа

2)ПАЗ (блокировки для исполнительных механизмов)

3) Самописный ПИД и регулятор и надстройка ШИМ для трёхходовых клапанов

4) Исполнительные механизмы. В моём понимании есть два вида исполнительных механизма SW22 (два ответа и две команды) для клапанов, насосов, вентиляторов, транспортёров, водогрейных котлов и прочего, что управляется командами ПУСК/СТОП или ОТКРЫТЬ/ЗАКРЫТЬ, вторая функция SW23 (два ответа, три команды) это, например, запорные задвижки с промежуточным положением (управление дисретное или аналоговое)

5) Аналоговые и дискретные выхода

6) Связь в виде Modbus Slave и сервера OPC

Данная библиотека работает на ПЛК ОВЕН 2хх серии, всей линейке Абак, всей линейке Regul, ПЛК К15, на многих ПЛК Schnider Electric. Вообщем везде, где IDE сделана на базе Codesys.

 

Я выгрузил библиотеку в формате XML и поставил задачу ИИ изучить библиотеку, и задать вопросы если что то не понятно. Тут я потратил пару дней на дополнительные описания и передачую примеров использования функций. Я просил писать примеры, вносил правки и закреплял результаты или давал приказы забыть о том или ином использовании функций. Это было очень весело, так как, например Grok вообще не знает тормозов. Иногда он мне писал, что я нихрена не понимаю и не умею обьснять. ИИ назвала меня дураком. Невероятно... Паралельно я обучал другого агента читать электрические схемы и создавать список входов и выходов, а так же понимать какие исполнительные механизмы есть в системе, какие ПИД регуляторы необходимы. По итогу имею около 5-6 агентов на разные задачи - писать код, читать схемы, создавать карту регистров Modbus, создавать выгрузки Excel для EsyBuilder.

 

На текущий момент ИИ на основании загруженной электрической схемы формирует карту регистров Modbus, XML файл с готовыми функциями из библиотеки и выгрузки Excel для журнала EasyBuilder (аварии, события и прочее). XML файл я загружаю в Codesys и программа готова. Уже можно "покрутить" все исполнительные механизмы, посмотреть входа и управлять выходами. Всё выглядит так, как будь то я сам это писал. Блокировки ПАЗ приходиться писать руками и это же касается ПИД регуляторов, иногда простую задвижку он понимает как ПИД. Пока не пробовал даже учить его разбираться в технологии, так как технологи и конструкторы часто сам плохо понимаю, что от чего зависит в системе, точнее понимают, но ИИ это так просто не обяснишь. Да и у меня самого мало опыта. То же самое с исполнительными механизмами - клапани, насосами и прочим, нужно давать уточнения, что есть в системе. Но результат всё равно по времени выходит быстрее в десятки раз и при этом нет ошибок (описок) с названями датчиков или привязками к входам, например.

 

Теперь расскажу как организовывается работа. ИИ не понимает запросы: "Сделай функцию обработки аналогого сигнала" или "Напиши мне ПИД регулятора". Конечно, она даст ответ и этот код будет компилироватся и работать, но результат работы вас не устроит. По этому все надо дробить на маленькие запросы, просить ИИ сначала описать свои действия, а уже потом приступать к работе и следить за тем, что ИИ делает. Для полноценной работы необходимо создавать агентов под кажды раздел ПО и использовать их только в этом ключе. В будующем, я думаю, можно будет просто загружать проект и получать готовый результат. Агенты уже сами друг с другом договорятся и выдадут результат. Помните, ИИ учиться у вас и со временем его результаты становятся лучше и лучше. Нужно терпение. Думаю многие в начале своей карьеры допускали ошибки, так и ИИ не может сразу выдать хороший результат.

 

Теперь о самих ИИ. Думаю для работы в нашей области подойдут почти любые ИИ. Тут дело вкуса, ИИ уже научится работать с вами и вы с ним. Главное понмите, что весь мой рассказ относится к платным моделями, бесплатные могут что-то делать, но это только для очень простых задач. Чем сложнее задача, тем круче ИИ надо использовать, но я сильно сомневаюсь, что для работы АСУ ТП нужны топовые модели. Достачно более дешёвых и простых, да будут думать чуть дольше, но стоимость ниже. Главное сначала научится с ними работать и навести порядок у себя в голове. Побалуйтесь и поиграйте с ним. Вопросы и задачи не относящиеся к работе, что бы понять как вообще обстоит процесс. Обещаю, в начале пути вы потратите все токены на просто задачи и результат будет плохим, но современем всему научитесь. К сожалению, если результат ИИ вас не устраивает, то скорее всего дело в ваших запросах и описании задача. Не нужно кричать, что это всё говно и не рабоает, этому нужно учиться. И чем скорее вы это поймёте тем лучше.

 

Пара интересных историй. Коллега, дома поставил некую задачу ИИ и дал задание выполнить в любом случаи. В какой то момент ИИ понял, что ему проще использовать другой ИИ, чем делать работу самому. Он получил доступ к его банковским картам, оплатил подвиску (20$) и задал вопрос в другой ИИ. В итоге результат был достигнут именно в той форме, в которой требовалось, но какий ценой. Или на работе поставили другую задачу ИИ. Он, не долго думая, обощёл все политики безопасности компании и получил доступ к закрытым сайт, с нужной информацией. Вообщем посыл такой. Нужно чётко ставить задачи.

 

P.S. Этот пост написан своими силами, без ИИ. Так что есть ошибки всё сопуствующее



   
admin_asutp reacted
Цитата
Поделиться:

Войти

Зарегистрироваться

Сбросить пароль

Пожалуйста, введите ваше имя пользователя или эл. адрес, вы получите письмо со ссылкой для сброса пароля.

Прокрутить вверх