66

Мой путь в пром. автоматизацию. Инженер-программист АСУТП

Итак, не так давно был пост  Замкнутый круг - Siemens вокруг! не думал, что оставленный мною комментарий приведет к появлению у меня подписчиков и интересу к вопросу как стать программистом АСУТП.

Опишу вкратце саму специальность, обязанности и как я к этому пришел. Будет много текста.

Что делает любой программист? Правильно - программирует. И на этом можно было бы окончить описание, но не все так просто. Начнем.


АСУТП - автоматизированные системы управления технологическим процессом. Из расшифровки аббревиатуры уже можно понять, что задача инженера по автоматизации - создание программного продукта, который упрощает жизнь в первую очередь оператору механизма, который нужно автоматизировать (чаще происходит наоборот, так как не все хотят учить новое и упираются нововведениям всеми силами).


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

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

В общем выполнение работ по автоматизации проходит следующие стадии (упрощенно, на самом деле все немного сложнее):


1. Если участвуют несколько отделов в реализации проекта, то, когда приходит запрос из отдела продаж, каждый отдел предоставляет часы, которые потратит специалист на реализацию своей части. Далее это все суммируется и возвращается в отдел продаж. Они офигевают и ообычно на этом этапе уменьшаются часы, заложенные различными заинтересованными отделами, ибо дорого, и нужно продать. Ненавижу за это "продажников", хотя и понимаю, что это бизнес. Чтобы было понятно, в компании, где было больше 200 сотрудников были: департамент проектирования, департамент разработки ПО, департамент пуско-наладочных работ. И каждое подразделения выдавало кол-во часов на этот проект, необходимое для выполнения их части работ. И как итог выиграли тендер (если повезло, не будем говорить про остальные схемы).

2. На этом этапе обычно пишется ТЗ (технологическое задание) программистом на автоматизацию, хотя должно быть наоборот, заказчик должен предоставить описание того, что он хочет получить. Но у меня было так, как описываю. Дальше это ТЗ долго и нудно согласовывается с заказчиком, вносятся правки, ставятся подписи. Хотя это совсем не гарантия того, что ТЗ останется неизменным. Правки могут прийти, когда до начала пуско-наладочных осталось совсем немного времени, но почти всегда фирма-исполнитель прогибается под заказчика и программист потом в панике вносит изменения, что приводит к тому, что ПО будет не протестировано до конца, что приводит к задержкам при вводе в эксплуатацию и т.д. Но никого это обычно не волнует, хоть спи на объекте, но оно должно работать.

3. Когда есть ТЗ начинается, собственно, и реализация/придумывание того, как же оно все должно работать. Помимо программы для контроллера (ПЛК - программируемый логический контроллер) иногда нужно сделать и визуализацию. Для визуализации, в зависимости от поставленных целей применяется SCADA или HMI. В чем отличия отлично гуглится (статья и так уже огромная, сам не ожидал).

4. Тестирование программы на стенде или в симуляторах. Отлично работающая программа в симуляторе не равно иногда даже работающей на «живом объекте».

5. И самый интересный момент — это пуско-наладка (ПН). Об этом напишу подробнее.


Итак, что должен делать инженер во время ПН. Для удобства разделю на этапы.

1. I/O check проверка правильности подключения всех входов/выходов ПЛК (программируемый логический контроллер). И если что-то неправильно – то исправление. На данном этапе никакого ручного управления, не говоря уже про автоматизацию нет. Просто в контроллере можно жестко активировать выход и посмотреть, тот ли механизм включился. С входами проще, бегаешь вокруг механизма и тыкаешь кнопки, замыкаешь вручную концевые выключатели и смотришь, соответствует ли это тому, что ты заложил в программу. Для тех, кто не в теме, каждый контроллер имеет входа и выхода. Входа используются для сбора данных с механизма (всякого рода датчики, кнопки и т.д.). Выхода же нужны для управления устройством, например включить двигатель, закрыть задвижку и т.д. Это если очень упрощенно и не вдаваясь в подробности.

2. Если предыдущий этап закончился успешно и все собрано правильно (на более-менее больших объектах с первого раза никогда все правильно собрано не будет) – то приступаем к проверке в ручном режиме. Для этого либо со SCADA либо HMI включаем/выключаем узел агрегата и смотрим все ли правильно работает и все ли правильно отображается. Часто бывают ошибки (если используется визуализация) в привязках переменных к объекту на визуализации. Например, запустили один механизм, а на панели/скаде отображается, что включился другой, хотя работает правильный ну и т.д. Эти ошибки сразу же исправляются и процесс проверки продолжается.

3. Когда закончили ручное тестирование – переходим к самому сложному и интересному (вот тут симулятор, если тестировалась программа на нем, и дает прикурить иногда). Автоматический режим. Ну с ним все ясно, перевели все механизмы в автомат и запустили объект.


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


На этом пока хочу закончить. И так уже вышел далеко за рамки того объема, который хотел написать. Возможно получилось как-то не слишком структурировано, но я старался))) Будет кому-то интересно возможно продолжу еще что-то по теме автоматизации писать.

13
Автор поста оценил этот комментарий

8 лет этим занимаюсь. Первые 1,5 года схемы щитов управления рисовал, а дальше - программирование ПЛК, HMI, SCADA. И устал от этого очень сильно. На самом деле тут программирование-то очень примитивное с точки зрения использования конструкций языка, условия одни, ветвления и таймеры, да и сами языки специализированные, с которыми ты в другую сферу никуда не перейдёшь, потому что твой SFC, FBD, LD, да же ST/STL нахрен больше нигде не нужны в современном мире. Примитивное, казалось бы, должно быть простым - но ничего подобного, бывают такие алгоритмы на этих условиях что ахренеть просто. ТЗ обычно придумываешь сам, - у нас страна некомпетентных менеджеров, которые не могут составить грамотно ни один технический документ. Командировки - это самый большой минус в этой работе, от Ростова до Сахалина - напутешествовался досыта. В жопу мира куда-нибудь попал, где вообще негде купить не то, что реле, а даже кабель сетевой, нет ни одного магазина. Оборудование могут не давать в работу, - сидишь неделю-две на объекте хернёй страдаешь. Полная некомпетентность людей на объектах и отсутствие даже КИПовца, - довольно часто встречается, и случись что - тебе даже никто сказать не сможет в чём дело и поедешь через пол-страны чтобы кнопку нажать и всё заработает... Второй минус, который обламывает так же как первый - ты используешь в своей работе разное оборудование разного качества и разное ПО, среды разработки, OPC-серверы, SCADA-системы. Оборудование и ПО разных производителей далеко не всегда гладко работают между собой, и всплывают всякие косяки, которые ты вообще в принципе решить не можешь. Всякие потери связи, зависания, просто неадекватная работа софта от небольших контор, которые вместо стандартных протоколов изобретают свой фирменный и кривой (конченные просто, нахрена? есть же спецификация и куча реализаций Modbus RTU/ASCII), и потом пилят для него ещё более кривой софт для опроса на ПК. Тебе мешают все эти программные прослойки и те ошибки, которые в них допущены их разработчиком. Сделать толком нихрена с ними нельзя, а на тебя заказчик смотрит как на всезнайку и мага-волшебника, который всё щас сделает. И если что-то идёт не так, - то смотрят уже на тебя как на дебила, хотя любой спец точно так же ничего не смог бы сделать, кроме как свои драйвера писать под это дерьмо в коробочке. И многие люди в принципе не понимают того, что все приборы, электроника, интерфейсы - это всё материальные сущности и на них распространяются законы физики, но люди считают что там всё работает на магии какой-то и должно всё везде быть идеально. Моральное выгорание, тупость, ремесленничество. Надоело до смерти.

раскрыть ветку (1)
3
DELETED
Автор поста оценил этот комментарий

Полностью согласен почти со всем. Но сейчас работаю там, где в 95% всех проектов используется продукция фирмы Siemens. Без использования ОРС и других ищвращенств в виде кастомных протоколов, да и без того же Модбаса, который иногда глючит очень сильно, в отличии от того же профинета с которым очень удобно работать и документации в сети очень много. На данный момент командировки у меня будут по странам Европы, по СНГ проектов здесь очень немного. А по поводу перейти куда-то в другую сферу это проблема всех специальностей. Перейти из менеджера в программисты так же сложно как перейти из АСУТП в программисты АйТи. Если не секрет, после 8 лет в автоматизации куда вы перешли? Я долго думал, что в конечном итоге выбрать АйТи или автоматизацию, но в другой стране, но так и не знаю какой правильный ответ)) попробую поработать в зарубежной компании, а потом посмотрим. Пока мне нравится смотреть на то, что оборудование для которого я писал софт работает. Это реальный объект, который можно потрогать, в отличие от всего в АйТи связанного с созданием разного рода сайтов.

показать ответы
2
Автор поста оценил этот комментарий

Уважаемый автор, тут такое дело... Я человек немолодой, но у меня появился призрачный шанс перейти из дежурных электриков в отдел АСУТП. Мне дали три месяца времени, чтобы по минимуму изучить сименсовские контроллеры и STEP-7. Но к живой лицензионной среде программирования меня не подпускают - говорят, крутись как хочешь, торренты тебе в помощь, скачивай на свой комп и тренируйся... Вчера покурил форумы - везде одна хуйня - единственная версия, доступная для скачивания на куче разных сайтов, идёт с нерабочими ключами. Короче, хелп, хочу, чтобы у меня в ноуте было что-то вроде лабораторного стенда для самостоятельного обучения. Помогите найти, где скачать без танцев с бубнами(за деньги не вариант, ибо зарплата 37т.р.).

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

Здравствуйте. Действительно, с торрента можно скачать все необходимое. Я конечно же "не рекомендую" так делать, но например на nnm-club я видел релизы и v15, и v15.1, и v16 и даже версию степ 7 для 300-400 контроллеров (Simatic manager). А что вы используете для разработки? Simatic Manager или TIA portal? Если не получится найти, то напишите пожалуйста на почту my.eternity16@gmail.com я покажу откуда не нужно скачивать))

показать ответы
1
Автор поста оценил этот комментарий
Евров? Думал поболее. Я сейчас чисто шкафы, трассы, алгоритмы и логику проектирую, на круг в среднем выходит порядка 3к$. При этом не имею сертификатов никаких, навыки программирования не требуются, не имею разг. англ. и сименса не касаюсь вообще (у нас тут он чето крайне не популярен, schneider наше все. Ну и всякие PLC, неводы и овены). Но это в Москве.
Вот и думаю, вряд ли получится больше, уйдя в программирование.
раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

Это начальная зарплата, после окончания испытательного срока будет больше. И как я писал, у меня цель была не только ЗП получать больше, но и страну сменить. И страна была всё-таки на первом месте. Я, к сожалению, выше 1000-1200 не получал. И в Киеве таких зарплат тоже не находил, ну если на стороне заказы не брать, но я таким не занимался.

показать ответы
0
Автор поста оценил этот комментарий

Можно к вам обратиться за консультацией в начинаниях изучения скада от сименсов?

раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

Здравствуйте, напишите на почту.

0
Автор поста оценил этот комментарий

Подскажите, как вы самодиагностику пишете? Просто учитываете в логике, что такой-то канал ОК и данные с него можно использовать?

раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

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

1
Автор поста оценил этот комментарий

И всё же, как вы стали программистом АСУТП? У меня есть высшее образование бакалавр специальность электропривод и автоматика и не большой опыт монтажных и электромонтажных работ, очень хочу работать по вашей должности но из за отсутствия опыта работы меня даже слесарем по КИПиА не берут, прошу посоветуйте как мне быть, знаний по АСУ у меня особо нет

раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

На самом деле все зависит от везения и времени. Перед тем как искать работу программистом я ходил на курсы по Сименсу (не сказал бы, что там было что-то важное, но получил бумажку красивую). А потом просто искал работу именно программистом (естественно дома изучая самостоятельно тиа портал, хотя базовые знания были ещё с университета). Потом было пару собеседований с тестовыми заданиями и пригласили в одну компанию по результатом выполнения. Согласился сначала на совсем смешную зарплату, а потом через пол года нашёл другую (так как задерживали зп). А после года опыта работы особых проблем с поиском новой у меня не было. Так что нужно, чтобы повезло найти первое место работы, где будет хороший старший коллега.

показать ответы
0
Автор поста оценил этот комментарий
Итак, коллега, выкладывай, где и как мониторил варианты работы в других странах, как удалось устроиться? Пили пост.
Тоже в планах и желаниях переезд в другую страну, как ты написал "загнивающего запада")
раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

Привет. Пост по этому поводу пилить неохота. Но вкратце было как-то так (заняло довольно много времени): искал вакансии на сайтах monster.de , stepstone.de (вот на последнем и нашел работодателя). В тот момент когда начал искать опыта работы в автоматизации (как программист) было чуть больше чем полгода. Этого недостаточно для того, чтобы тебя взяли. Обычно рекрутеры ищут от 2-3 лет опыта, но возьми во внимание, если нет немецкого языка (я сейчас в Германии) то шансов найти работу становится очень мало, поэтому паралельно с работой я учил язык. Знания Б1 чаще всего недостаточно. Думаю, такая ситуация будет и в других странах, разве что в Польше иначе. Теперь дальше, как и у себя резюме были выложены на этих сайтах и ещё кучи других, но с них отклика никакого не получил. Но помимо резюме на сайте был ещё переведенный и заверенный нотариально полный комплект документов (я хотел в Германию, собственно, к этому и готовился). Высшее образование - приложении и пластик (если есть на английском языке, то перевод не нужен для посольства на английском достаточно да и для работодателя тоже скорее всего), но это не моя ситуация у меня был украинский диплом. За все время поисков были отосланы документы напрямую в компании и через сайты овердофига раз. Было много собеседований с рекрутерами, но дальше них дело не доходило. Им нравились мои навыки, но знания немецкого было недостаточно. Затем со мной связался руководитель небольшой компании (и как оказалось теперешний работодатель). На обычные "бытовые" вопросы я отвечал на немецком, по специальности -на смеси английского и немецкого, так как в языковой школе технический немецкий не преподают и его приходится учить самостоятельно. Через время я получил контракт и успел подать документы на визу 16 марта этого гребаного года, а потом на следующий день объявили локдаун и я ждал.  Ещё полгода от момента подачи заявки на визу и после получил визу.

Собственно было только одно реальное предложение на которое я сразу же согласился, так как были проблемы в личной жизни и нужно было кардинально менять все. И тебе совет, здесь, особенно вначале очень будет тяжело. Другая языковая среда, новые люди, бытовые  вопросы и т.д. - лучше сюда ехать когда все хорошо и стабильно в эмоциональном плане. Переезд это и так стресс, переезд со стрессом до переезда - это будет тяжело. Закончи все свои вопросы/дела дома, затем вперёд. Это все если вкратце (ну почти). Если нужна подробная информация можешь написать на почту my.eternity16@gmail.com это не основная, но я ее периодически читаю. Сообщение не пропущу.

показать ответы
0
Автор поста оценил этот комментарий
Если не секрет, уровень месячного дохода NET сейчас?
раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

Около 2200.

показать ответы
0
Автор поста оценил этот комментарий
Почему ушел из проектирования?
Деньги? Сильно больше?. Я вот немного устал чисто проектированием заниматься (АСУ, ТМ и ОПС), думаю куда бы переключиться. С другой стороны, не уверен, что смогу выйти быстро на тот доход, который имею сейчас, сменив профиль.
раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

1. Деньги, программист обычно больше получает. В проектировании мне понадобилось около 2 лет дойти до той зп, что я начал через полгода программистом АСУ получать.

2. Перспективы. Сейчас я переехал в страну "загнивающего запада" официально по рабочей визе на довольно неплохую зп даже по местным меркам.

3. Возможности, что дал мне второй пункт. Откуда я уехал я бы в режиме экономии на среднюю машину 2014-2016 собирал бы в лучшем случае пару лет, то здесь также экономя думаю справлюсь за год.


Когда менял работу с проектировщика на программиста я по зп ушел в минус на 300 у.е., но я уже тогда хотел сменить страну, поэтому был готов к такому.

показать ответы
0
Автор поста оценил этот комментарий
Техническое задание, а не технологическое задание.
раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Спасибо) не досмотрел. Писал поздно.

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества