Обновить
28
0
Alexander Kuznetsov @akcount

АСУ ТП

Отправить сообщение
Коллега, привет!

Классный вопрос, ответ на него я не знаю )

В моем представлении именно такая ситуация, куча ПЛК (издателей), разбросанных территориально с приватными айпишниками за натом, один брокер (меньше нет смысла) и несколько подписчиков, которые эти данные собирают, складывают в БД, визуализируют (в конце публикации про Node-RED и прочие MariaDB, вот как раз оно этим и занимается).

Тут еще такое дело. АСУшники в большинстве своем не очень то любят и (честно признаться) умеют программировать. Поэтому готовая реализация mqtt меня сильно заинтересовала.
Только что опубликовал статью про первую часть озвученного Вами безобрания — работу с mqtt на контроллере.

Со стороны компа надо поднять mqtt broker, Node-RED и какую-нибудь базу данных.

Это все у меня уже реализовано, но еще не оформлено в виде статьи.
Странно, очень странно.

Поработав как-то с ПЛК110 (вроде бы) в кодесис 3, был абсолютно уверен, что таргеты под новые ПЛК будут исключительно для 3ей версии.

За исключением мутности с версией таргета и версией библиотек, и с учетом стоимости, решение, в принципе, удовлетворительное. Не знаю, правда, то ли эта тенденция у них, то ли мне так «везло», но цепи в 24 Вольта у них дохнут, как мухи в полдень.
Конечно. Можно еще и рутить соединения, а в тысячной серии — рутить и HMI, и S7, а не только PG.
Я вспомнил, о чем Вы говорили, коллега

Справедливости ради замечу, что безусловное удобство работы с модбасом является заслугой компании 3S software, являющейся автором среды codesys третьей версии, где и программируется ряд ПЛК фирмы Овен. Некоторые же модели ПЛК, например, плк63 и плк73 программируются в кодесис версии 2, и опрос по модбас превращается в тьму и ужас )

Но в третьей версии — красота.
Коллега, я не стремлюсь вдаваться в дискуссию и поэтому позволю себе только один вопрос.
Реализовать на овене проще или привычнее? Это разные вещи.
Когда эту серию проектировали, вопросы кибербезопасности так остро не стояли, а в качестве основной шины применялся профибус
Коллега, Вы не поверите, но
1. Являясь технической поддержкой Сименс на Урале, я постоянно сталкиваюсь с вопросами про модбас и s7-связь. Несмотря на то, что мануала вполне достаточно. Все мои публикации написаны, в том числе, с корыстной целью упростить себе жизнь.
2. Выкладывайте, конечно. Будет полезно и познавательно, особенно новичкам, которые вряд ли даже понимают, что значит «количество байт далее» в пакете modbus tcp
Коллега, у Вас очень много вопросов на общие темы.
Так я все пальцы сотру )
Напишите мне в приват, я могу позвонить Вам и дать ответы в общем.
Коллега, для ответов на Ваши вопросы рекоммендую прочитать два документа, оба находятся по ссылке:
support.industry.siemens.com/cs/document/81318674/programming-guidelines-and-programming-styleguide-for-simatic-s7-1200-and-s7-1500?dti=0&lc=en-WW
Что значит «интерфейс» внешнего ФБ?.. Изменение его структуры, добавление новых данных и т.д.?


Интерфейс функционального блока — это его входные, выходные и статические переменные, то есть, то, что является частью экземпляра ФБ.

Можно ли как-то автоматически отслеживать, что произошла загрузка\изменение ФБ и запуск инициализации коммуникации «с начала»?.. Либо даже не с начала а с последнего шага…


Возможно. Тут можно завести отдельную статическую переменную, вроде аналога «FirstScan», которая при инициализации будет держать значение «истина». Внутри блока при поднятии этой переменной надо будет проводить инит. Тут надо вдумчвиво смотреть и пробовать, описанное выше является предположением.

Может ли в таком случае быть потерян какой-то управляющий сигнал на запись?.. (если мы использовали что-то в стиле one shot в шаге 3, а пере-инициализация началась на шаге 1 и мы «потеряли» команду управления?) В-общем, похоже нужно быть внимательным… Может быть, можно и автоматически останавливать коммуникацию?..


Если связь останавливается, то разумеется у нас рвутся коммуникации. На секунду, а то и больше, к примеру. При этом ряд оборудования держит специальный watchdog, и если от мастера длительное время не прилетает уставка, это считается неисправностью, и ПЧ может остановиться.

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

Вот что должно было быть написано:
А сам продукт так и называется — Step 7.
Уточняется либо номером версии (v16, например) или примечанием, что он портальный: Step 7 (TIA Portal).
Например:
mall.industry.siemens.com/mall/en/ru/Catalog/Products/10317037?tree=CatalogTree
Соответственно, нужно делать некий кроссчек на проверку, была ли переменная изменена, чтобы не было такого, что слейв пишет на выход «0», а мы туда статически пишем «1». В ПЧ и т.д. обычно используют режим local\remote либо как здесь некий ControlFromPLC бит, как подтверждение «легитимности» записи.
В-общем, за счёт того, что Modbus в Siemens прописывается «руками» о циклической записи нужно помнить, я так понимю.


Речь не о Модбас в Сименс, речь про Модбас вообще. И даже не только про Модбас. Любое устройство, если оно спроектировано с умом, будет выбирать источник получения команд, «место управления». В случае частотно-регулируемых приводов, как правило, это реализуется выбором управления с локальной панели, с дискретных/аналоговых входов или по интерфейсу, неважно какому. Опять же, как правило, если ПЧ управляется от ПЛК по интерфейсу, то это его штатный режим работы, выбрано место управления, выставлены соответствующие разрешения.

Можно ещё раз другими словами?.. Я немного не понял… ПЛК грузится в RUN «онлайн» без стопа? соответственно, модбас драйвер уже инициализирован и новые значения при их прогрузке не подхватывает, так? Напомните, S7-1200 может грузиться онлайн или через стоп?


ПО ПЛК серии Simatic возможно загружать без останова CPU, это его нормальная работа.
Речь в данном случае идет про то, что в моем примере применяется т.н. мультиэкземпляр функционального блока, где внутри одного ФБ завернуты другие экземпляры ФБ, в частости — отвечающие за коммуникацию. Если на лету изменить интерфейс «внешнего» ФБ, то загрузка по умолчанию будет выполнена с переинициализацией всех его переменных, включая коммуникационные ФБ. Если в это время идет обмен, то такое финт является грубым вмешательством в коммуникации, и обмен попросту останавливается от такого пинка. Это неправильно.

Рестарт контроллера — это самый простой, но самый тупой способ устранить последствия такого наглого вмешательства.

В боевых проектах надо действовать иначе. Хотя бы останавливать коммуникации, проводить загрузку и после этого возобновлять их.

Приведенный мной пример не является боевым проектом, но может послужить базой для его разработки.
А сам продукт там и называется — Step 7'
Уточняется либо номером версии (v16, например) или примеяанием, что он портальный
Например:
mall.industry.siemens.com/mall/en/ru/Catalog/Products/10317037?tree=CatalogTree
Анна Разгоева теперь стала Анной Чистяковой, а в целом ситуация не изменилась )
Пишите/звоните в ближайшее местном бюро Сименс
Например, при обмене двух ПЛК разных производителей
При необходимости шифрования дааных
Я прекрасно понял Ваше недоумение и осознаю свою ошибку.
Никаких обид не испытываю, Ваше замечание более чем справедливое )
Прошу простить, исправлюсь.
Версия Step 7 Basic для программирования контроллеров серии S7-1200 распространяется в РФ безвозмездно, т.е. даром. Свяжитесь с представительством компании Сименс в Вашем регионе.

Информация

В рейтинге
Не участвует
Откуда
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Дата рождения
Зарегистрирован
Активность