PDA

Просмотр полной версии : Сквозное именование переменных modbus.



nicton
10.03.2024, 16:43
Предстоит делать большую распределенную систему на ПР100 (порядка 20 шт), связь через modbus, в голове masterscada на ПК.
Сам я не программист, осуществляю концептуальное проектирование системы, буду писать ТЗ, поэтому нюансов не знаю, а надо бы.
Программы на блоки будут писать разные люди, беспокоит взаимодействие, а именно следующий момент: насколько я знаю по модбасу мастер запрашивает переменные по номеру, тут возможна потенциальная проблема, если программист исполнительного блока что то не правильно укажет в таблице регистров или программист головного блока ошибется, то это очень трудно выявить (на мнемосхеме будет отображаться давление вместо температуры, или вообще перепутаны номера блоков).
В связи с этим возник вопрос: есть ли возможность верифицировать блоки по именам переменных? Написал, например, программист исполнительного блока программу, назвал его Block_nargeva, указал номер в сети 05, в нем есть термодатчик t1, а в программе головного блока синтаксис обращения к переменной Block_nargeva:t1, далее компилятор сам увязывает номера регистров и блоков.

kondor3000
10.03.2024, 17:08
Предстоит делать большую распределенную систему на ПР100 (порядка 20 шт), связь через modbus, в голове masterscada на ПК.
Сам я не программист, осуществляю концептуальное проектирование системы, буду писать ТЗ, поэтому нюансов не знаю, а надо бы.
Программы на блоки будут писать разные люди, беспокоит взаимодействие, а именно следующий момент: насколько я знаю по модбасу мастер запрашивает переменные по номеру, тут возможна потенциальная проблема, если программист исполнительного блока что то не правильно укажет в таблице регистров или программист головного блока ошибется, то это очень трудно выявить (на мнемосхеме будет отображаться давление вместо температуры, или вообще перепутаны номера блоков).
В связи с этим возник вопрос: есть ли возможность верифицировать блоки по именам переменных? Написал, например, программист исполнительного блока программу, назвал его Block_nargeva, указал номер в сети 05, в нем есть термодатчик t1, а в программе головного блока синтаксис обращения к переменной Block_nargeva:t1, далее компилятор сам увязывает номера регистров и блоков.

Назвать в скаде регистры и блоки можно как вам угодно. В ваших интересах, что бы работали одни и те же люди, а не куча сторонних. Компилятор сам ничего не увяжет, для этого должна быть пусконаладка объекта, где проверяются все соответствия датчиков и каналов измерения.
Для вашего случая достаточно 1 -2 человек, всего то 20 шт. ПР100.

FPavel
10.03.2024, 17:34
Наверное, что-то возможно, т.к. при подключении ПР к OwenConfigurator для каждой сетевой переменной в ПР указывается возможность редактирования, диапазон ввода, комментарий.

Но тоже склонен пренебречь этим, т.к. при готовности программ к ПР должны формироваться документы с описанием алгоритмов, параметров, таблицы Modbus регистров.

Причём, таблицы Modbus регистров формируются как по мере написания программ, так и заранее, т.к. ряд состояний и команд известны до написания программы, т.е. некоторые вещи вручают программисту в виде ТЗ.

Cs-Cs
10.03.2024, 18:01
Протокол Modbus НЕ подразумевает никакой передачи имён переменных ВООБЩЕ. Только значения регистров, и всё.
Поэтому в данном случае нужно или разрабатывать свой протокол, или же хорошо документировать проект и вести учёт изменениям.

Dimensy
10.03.2024, 18:07
В ПР100 можно экспортировать сетевые переменные в .csv файл. У ОРС сервера должна быть возможность импортировать такой файл. Так что ручками вводить адреса не потребуется. Далее, насколько я знаю, в СКАДе вы создаете проект и привязываете объекты к тэгам ОРС сервера
А, вообще, вам, наверное, сюда надо https://owen.ru/forum/forumdisplay.php?f=36

In_Da_Cher_A
10.03.2024, 18:41
ТЗ для программистов пишет человек, ничего не понимающий в программировании и наладке
куда катится этот мир....

тут возможна потенциальная проблема, если программист исполнительного блока что то не правильно укажет в таблице регистров или программист головного блока ошибется, то это очень трудно выявить вот прям даже интересно, кто этот человек, что прогнал писателю эту телегу? :D

МихаилГл
10.03.2024, 18:47
ТЗ для программистов пишет человек, ничего не понимающий в программировании и наладке
куда катится этот мир....
вот прям даже интересно, кто этот человек, что прогнал писателю эту телегу? :D

Ибо нефиг разбивать проект на кучу программистов. Один на визуализацию, один на контроллер, один два в поле на пуско-наладку. В крайнем случае ещё один на сопряжение со сторонними системами.

nicton
11.03.2024, 06:48
Протокол Modbus НЕ подразумевает никакой передачи имён переменных ВООБЩЕ. Только значения регистров, и всё.
Поэтому в данном случае нужно или разрабатывать свой протокол, или же хорошо документировать проект и вести учёт изменениям.

Понятное дело, что сам транспорт этого не предусматривает, а работает чисто с числовыми адресами, так же как ядро микроконтроллера не работает с именами переменных, а только с их адресами в памяти, имена остаются в исходнике, вот я и подумал что вдруг существует надстройка, которая назначает адреса, подобно компилятору С. Насколько я понял это реализовано на Ethernet версиях, видимо его придется использовать вместо modbus.

Николаев Андрей
11.03.2024, 08:23
Коллеги, это достаточно нормальный подход, если проект крупнее, чем одна установка.
Чтобы не было путаницы не надо придумывать сложные пути. Просто внесите требованием, чтобы программисты, создающие логику на ПР предоставили вместе с проектом "Карту регистров ModBus". Адрес устройства, регистр(тип), соответствующий параметр в программе. Прям в excel. Это совершенно нормальное требование и обычно такой листинг прикладывают к описанию проекта.

Тем более как заметили коллеги - такой список достаточно просто сделать выгрузив список переменных из Owen Logic. Если OPC сможет еще и автоматически csv файл подгружать - шоколадно.
Но я бы требовал именно в формате документа. Потом проект изменят, а в карту регистров изменения забудут внести - сиди - гадай.

nicton
11.03.2024, 16:10
Эту "Карту регистров ModBus" программист будет делать в последнюю ночь перед дедлайном, корректность ее проверить невозможно автоматизированными методами, человеческий фактор, как ни крути. Ну а выбор Ethernet в качестве транспорта разве не решает всех этих проблем?

МихаилГл
11.03.2024, 16:16
Эту "Карту регистров ModBus" программист будет делать в последнюю ночь перед дедлайном, корректность ее проверить невозможно автоматизированными методами, человеческий фактор, как ни крути. Ну а выбор Ethernet в качестве транспорта разве не решает всех этих проблем?

Вообще-то с этой карты надо начинать программировать. Если это будет в конце, то всё переменные будут не пойми в какой последовательности.

In_Da_Cher_A
11.03.2024, 16:45
Ну а выбор Ethernet в качестве транспорта разве не решает всех этих проблем?нет. Ваше желание менеджера всё заадминистрировать "на берегу" а потом якобы только сидеть и ничего не надо будет делать, исходит из непонимания "технологического" процесса проектирования и программирования. Ну и последующей наладки. Написание "жосского" ТЗ не равносильно грамотному управлению проектом

nicton
11.03.2024, 17:07
нет. Ваше желание менеджера всё заадминистрировать "на берегу" а потом якобы только сидеть и ничего не надо будет делать, исходит из непонимания "технологического" процесса проектирования и программирования. Ну и последующей наладки. Написание "жосского" ТЗ не равносильно грамотному управлению проектом

А можно узнать почему не решит? Вот отрывок из описания CODESYS V3.5 "Альтернативный вариант – организовать обмен по Modbus TCP. В данном случае пользователь
должен добавлять в проект соответствующие компоненты (Ethernet, Modbus TCP Master, Modbus TCP
Slave), настраивать их, разбираться в используемых функциях и адресации регистров.
Преимуществом использования сетевых переменных является простота их настройки – достаточно
создать на одном устройстве список читаемых/записываемых переменных и импортировать его на
другом." Вроде как обозначена моя проблема и пути ее решения.

imaex
11.03.2024, 18:19
Эту "Карту регистров ModBus" программист будет делать в последнюю ночь перед дедлайном, корректность ее проверить невозможно автоматизированными методами, человеческий фактор, как ни крути.

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


Ну а выбор Ethernet в качестве транспорта разве не решает всех этих проблем?

Нет. А должно? С чего бы? Вы, как я понимаю, совсем не в теме.

nicton
11.03.2024, 19:35
Раз никто не знает, пришлось самому разбираться: кодесис поднимает имена переменных из соседнего контроллера (видел это на видео), но эта история про ПЛК. Овен конфигуратор поднимает имена из ПР103 (тоже видел на видео), возможно кодесис может поднять имена из овен логик. Т.е. имеет смысл использовать ПЛК вместо ПР (в голову так и так ПЛК ставить, у ПР мало сетевых переменных), т.е. укрупнять кластеры, в тех же местах где ПЛК откровенное излишество ставить ПР103, хотя бы есть вариант верифицировать номера регистров через конфигуратор.

In_Da_Cher_A
11.03.2024, 20:36
Вот отрывок из описания CODESYS V3.5а причём здесь КДС 3,5? и как это избавит ваш проект от ошибок

если программист исполнительного блока что то не правильно укажет в таблице регистров или программист головного блока ошибется?
каким волшебным образом Модбас ТСР вылечит кривые руки программиста?

, то это очень трудно выявить это вообще элементарно так-то, и профилактика и диагностика этого также элементарная, и проверка сделанного также элементарная.

чисто вот по-менеджерски - вы полезли регулировать и администрировать туда, где ничего не понимаете, причём даже не в модбасе, и даже не в овен лоджике, а в общем процессе проектирования в общем и асу в частности
вам не в модбас втыкать надо, оставьте это исполнителям, это их проблемы и это их работа
любой проект начинается с системы кодирования. почитайте что такое KKS, это база, если поймёте, дальше будет полегче

nicton
12.03.2024, 07:09
а причём здесь КДС 3,5? и как это избавит ваш проект от ошибок
?
каким волшебным образом Модбас ТСР вылечит кривые руки программиста?
это вообще элементарно так-то, и профилактика и диагностика этого также элементарная, и проверка сделанного также элементарная.



Отрывок из описания был не полный, вот как там написано: "Сетевые переменные позволяют организовать обмен между несколькими контроллерами,
программируемыми в CODESYS V3.5 (и CoDeSys V2.3), по протоколу UDP, который работает поверх
Ethernet. Соответственно, все контроллеры, участвующие в обмене, должны находиться в одной
локальной сети. В настройках сетевого оборудования должна быть отключена блокировка UDPпакетов.
Альтернативный вариант – организовать обмен по Modbus TCP. В данном случае пользователь
должен добавлять в проект соответствующие компоненты (Ethernet, Modbus TCP Master, Modbus TCP
Slave), настраивать их, разбираться в используемых функциях и адресации регистров. Преимуществом
использования сетевых переменных является простота их настройки – достаточно создать в одном
устройстве список читаемых/записываемых переменных и импортировать его в другом."

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

КДС 3,5 здесь при том, что я могу и на ПЛК сделать систему.

Sergej_
12.03.2024, 08:18
Вы в своем первом посте задали вопрос, Вам многие люди дали конкретные и правильные рекомендации, начать с карты регистров, задокументировать это. Вопрос простой и ответ очевиден, особенно если во всех 20 - и пр 100 однотипная программа.
Даже если и различные, отдали эти задания программистам и пусть делают, каждый свою задачу, в чем проблема? Вся это ваша идея по автоматической верификации, только необоснованно усложнит все, в итоге путаница будет ещё та.

Cs-Cs
12.03.2024, 08:39
Да везде документация ВАЖНА. Тот, кто работает без документации - это не АСУТПшник, а наколенный ларёчник.
Меня поражает даже то, как люди (в том числе и автор темы) не удосужатся почитать чужую документацию (протокол Modbus) и думают что в нём есть передача имён переменных, просто надо хорошо поискать и додолбаться до людей, которые секрет не хотят говорить!!!
Это всё так же грустно, как целый слой мутного народа, который на каждом ОВЕНском вебинаре про ПРки спрашивает, когда в ПРках будет Pyhton.

In_Da_Cher_A
12.03.2024, 09:39
Отрывок из описания был не полный, вот как там написано:вы цитируете документацию, ничего в этом не понимая

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


КДС 3,5 здесь при том, что я могу и на ПЛК сделать систему.вы уже поменяли свои же условия, не прошло и пары дней

делайте, удачи

In_Da_Cher_A
12.03.2024, 09:40
как целый слой мутного народа, который на каждом ОВЕНском вебинаре про ПРки спрашивает, когда в ПРках будет Pyhton.слишком много развелось "программистов" :D

nicton
12.03.2024, 11:56
Есть еще OPC UA, тот тоже передает имена переменных из ПЛК в скаду.
В общем то понятная цепочка выстраивается, с разделением доступа, все как надо. Еще бы завязать кодесис и овен логик с elpan (или какой другой схемотехнической программой), чтобы имена сигналов со схемы увязывались с именами переменных, было бы вообще хорошо, никто такого не встречал?

melky
12.03.2024, 12:02
Чтобы сократить время, то программисту выдается список переменных для Scada и обговаривается их количество и последовательность, назначение. типа первыми идут регистры с битовым наполнением, дальше целочисленные, потом float например.
ПР как бы ограничена объемом переменных.

1exan
12.03.2024, 13:31
Есть еще OPC UA, тот тоже передает имена переменных из ПЛК в скаду.
В общем то понятная цепочка выстраивается, с разделением доступа, все как надо. Еще бы завязать кодесис и овен логик с elpan (или какой другой схемотехнической программой), чтобы имена сигналов со схемы увязывались с именами переменных, было бы вообще хорошо, никто такого не встречал?

Дались вам эти имена переменных, а теперь ещё и к схемам хотите их привязать

nicton
12.03.2024, 14:35
Дались вам эти имена переменных, а теперь ещё и к схемам хотите их привязать

Я бы еще штрихкода прикрутил, чтобы скада могла верифицировать датчик, при отладке проще и в обслуживании.
Кстати, в 1С такие плюшки допиливаются без проблем, а в мастерскаде ничего нельзя так же допиливать?

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

Sergey666
12.03.2024, 14:49
слишком много развелось "программистов" :D

Эт точно, ну ничего на Колыме снега белого дохрена, лопатами раскидывать всем хватит.

nicton
12.03.2024, 15:18
Датчик должен быть биркой маркирован, а в скаде должно быть окно с данными датчика, т.н паспорт, где указаны имя, фамилия, тип, параметры, текущее значение, текущий статус.


У любого элемента схемы есть наименование (по нему сам датчик отыскивается на складе, тоже верифицируется по коду, а то дежурный электрик может и перепутать спросоне, но с этим то проблем нет, это все работает в 1С), а есть позиционное обозначение, это разные вещи, в системе будет куча одинаковых датчиков, могут стоять рядом, вот выходит какой то датчик из строя ночью, процесс встал, далее счет идет на минуты, ибо если долго ковыряться придется его перезапускать. Вот находит Вася нужный датчик на складе, смотрит где он примерно стоит, лезет на 4й уровень, ложиться под бункер, там таких 5 шт рядом, как он из будет отличать? Схему с собой возьмет или что? А так просканирует коды, система на нужный укажет. Нет, датчик конечно без всего этого заменится, но это может растянуться на долго, заменят да не тот, а оно опять не работает, будут звонить на завод изготовитель, разбираться, все это на неделю может затянуться, плавали - знаем.
Я вообще не понимаю что тут сверхнеестественного, в машине жгут весь в штрихкодах, на датчиках QR коды, по которым EBU настраивается, все это лет 20 уже применяется в обычных машинах а не межгалактических кораблях.

МихаилГл
12.03.2024, 15:24
Вы смешали в кучу всё, и ERP, и mes, и scada, и PLC. Ещё и io приплели. Вы всю пирамиду АСУТП в одном проекте зах...ть хотите. Да без проблем. Только это проект огромного предприятия. А там где ПР и прочая мелочевка такое никогда не применят. На это вам нужно как минимум 5 программистов для разных типов систем.

capzap
12.03.2024, 15:38
У любого элемента схемы есть наименование (по нему сам датчик отыскивается на складе, тоже верифицируется по коду, а то дежурный электрик может и перепутать спросоне, но с этим то проблем нет, это все работает в 1С), а есть позиционное обозначение, это разные вещи, в системе будет куча одинаковых датчиков, могут стоять рядом, вот выходит какой то датчик из строя ночью, процесс встал, далее счет идет на минуты, ибо если долго ковыряться придется его перезапускать. Вот находит Вася нужный датчик на складе, смотрит где он примерно стоит, лезет на 4й уровень, ложиться под бункер, там таких 5 шт рядом, как он из будет отличать? Схему с собой возьмет или что? А так просканирует коды, система на нужный укажет. Нет, датчик конечно без всего этого заменится, но это может растянуться на долго, заменят да не тот, а оно опять не работает, будут звонить на завод изготовитель, разбираться, все это на неделю может затянуться, плавали - знаем.
Я вообще не понимаю что тут сверхнеестественного, в машине жгут весь в штрихкодах, на датчиках QR коды, по которым EBU настраивается, все это лет 20 уже применяется в обычных машинах а не межгалактических кораблях.

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

Sergey666
12.03.2024, 15:46
Да я ж и говорю Остапа понесло, все складно и ладно, только вот Васюки изначально не соответствовали, хотя необходимые денежки там водились и задача Остапа была их(денежки) заполучить, стать объектом донатов, инвестиций и пр.


смотрит где он примерно стоит, лезет на 4й уровень, ложиться под бункер, там таких 5 шт рядом, как он из будет отличать? Схему с собой возьмет или что?
Да зачем схему, просто получит задание, наряд, др. орг. документ на замену датчика температуры "TIRA-12.25", установленном в линии напорного трубопровода насоса Н12.01, либо иное. Чего проще?


А так просканирует коды, система на нужный укажет.
Какая нах система? С помощью чего укажет? Вася с нубуком, блюпупом, фрэшкой и ви-фи по заводу носится должен?


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



Я вообще не понимаю что тут сверхнеестественного, в машине жгут весь в штрихкодах, на датчиках QR коды, по которым EBU настраивается, все это лет 20 уже применяется в обычных машинах а не межгалактических кораблях.
Сравнили...мащин состоит из 10000 деталей, серийное конвейерное производство, склад комплектующих и прочего...
Все, утомил, начал с бредятины по протоколу Модбас, свернул к штрихкодам...

nicton
12.03.2024, 16:50
Я бы еще штрихкода прикрутил, чтобы скада могла верифицировать датчик, при отладке проще и в обслуживании.
Кстати, в 1С такие плюшки допиливаются без проблем, а в мастерскаде ничего нельзя так же допиливать?

По этому вопросу ни у кого нет информации?

МихаилГл
12.03.2024, 16:59
По этому вопросу ни у кого нет информации?

Я же написал, вы ERP и scada в одно понятие запихнули. Остановитесь...

AlexandrGr
12.03.2024, 18:31
https://owen.ru/forum/showthread.php?t=39243

In_Da_Cher_A
12.03.2024, 19:43
в системе будет куча одинаковых датчиков, могут стоять рядом, вот выходит какой то датчик из строя ночью, процесс встал, далее счет идет на минуты, ибо если долго ковыряться придется его перезапускать. Вот находит Вася нужный датчик на складе, смотрит где он примерно стоит, лезет на 4й уровень, ложиться под бункер, там таких 5 шт рядом, как он из будет отличать? про KKS автор так ничего и не прочитал
судя по этоим строкам - эффективный менегер даже ни разу не был ни на производстве, ни даже в самой зачуханной котельной или теплопункте не был, а если и был, то в белой каске, чистой спецовке и с бейджиком "экскурсия"

Я же написал, вы ERP и scada в одно понятие запихнули. Остановитесь...не мешайте человеку увеличивать энтропию вселенной:D
пойду попкорна возьму....

Cs-Cs
12.03.2024, 20:02
Не, ну типа я написал на своей старой 1Ске учёт устройств по серийникам (https://cs-cs.net/crm-devices-manage) (и мне зашло) и сделал там возможность создавать IDшники для них (например датчик DD-15).
Но при чём тут ПЛК, ПРки и Modbus? Типа надо доделать протокол Modbus, чтобы датчик температуры ДТС 50М имел встроенный Modbus и по нему сообщал свой ID? =)
Не надо смешивать одно с другим.

Sergey666
12.03.2024, 21:10
Я же написал, вы ERP и scada в одно понятие запихнули. Остановитесь...

Вот ведь не успокаивается...Может быть возомнил себя мастером Левшой, призывавшим ружья кирпичем не чистить? Так Левша был прежде всего Мастер (хотя на аглицком мастер это хозяин), т.е мог сделать что-то реальное... А это вот:-"Предстоит делать большую распределенную систему на ПР100 (порядка 20 шт), связь через modbus, в голове masterscada на ПК.
Сам я не программист, осуществляю концептуальное проектирование системы, буду писать ТЗ, поэтому нюансов не знаю, а надо бы."-
я ни чего не знаю, не понимаю, но осуществляю и составляю- беда, товарищи, но скорее всего просто фрик.

AlexandrGr
12.03.2024, 21:13
Типа надо доделать протокол Modbus
Протокол доделывать не надо. Там уже все есть.
https://www.google.com/search?q=modbus+user+defined+function+code&oq=Modbus+user+&gs_lcrp=EgZjaHJvbWUqBwgBEAAYgAQyBggAEEUYOTIHCAEQAB iABDIICAIQABgWGB4yCAgDEAAYFhgeMggIBBAAGBYYHjIICAUQ ABgWGB4yCAgGEAAYFhgeMggIBxAAGBYYHjIICAgQABgWGB4yCA gJEAAYFhge0gEIOTY3MWowajeoAgCwAgA&sourceid=chrome&ie=UTF-8 (https://www.google.com/search?
q=modbus+user+defined+function+code&oq=Modbus+user+&gs_lcrp=EgZjaHJvbWUqBwgBEAAYgAQyBggAEEUYOTIHCAEQAB iABDIICAIQABgWGB4yCAgDEAAYFhgeMggIBBAAGBYYHjIICAUQ ABgWGB4yCAgGEAAYFhgeMggIBxAAGBYYHjIICAgQABgWGB4yCA gJEAAYFhge0gEIOTY3MWowajeoAgCwAgA&sourceid=chrome&ie=UTF-8)

Cs-Cs
12.03.2024, 22:18
AlexandrGr Это плохой ответ. Зачем давать ссылку на непойми что и большой длины? Надо было просто написать про User Function Code.
Да, это есть. НО тогда ОВЕН обязан для этого чувака поддержать эту функцию во всех устройствах. Ну, что? Идите все в ОВЕН =)

melky
12.03.2024, 23:01
у меня ссылка не открылась. А вообще в Beckhoff есть то, что хочет автор. Список переменных с адресацией, типами и т.д. Пользуйтесь. Правда я так понял не во всех типах контроллеров. Одни хранят инфу об именах, другие нет. И вроде как там тот же CodeSys ну так же допиленный производителем.

к ПР не относится, не умеет он такого. в Modbus тоже такого не видел.

nicton
13.03.2024, 07:20
про KKS автор так ничего и не прочитал


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

Еще такой вопрос возник: насколько я понимаю (теоретически) кодесис может выдавать двоичный код, который напрямую заливается в ПЛК, как в микроконтроллерах, можно ли оперировать только этим файлом? Ну т.е. программист, в случае необходимости внесения изменений, компилирует проект и отправляет на объект двоичный файл, его там заливают в ПЛК. Это нужно чтобы заказчик никак не мог скорректировать код на высоком уровне.

nicton
13.03.2024, 07:22
к ПР не относится, не умеет он такого. в Modbus тоже такого не видел.

ПР103 через ethernet передает инфу по переменным, по крайней мере ОвенКонфигуратор выводит эту информацию (имя, описание и пр)

МихаилГл
13.03.2024, 07:27
ПР103 через ethernet передает инфу по переменным, по крайней мере ОвенКонфигуратор выводит эту информацию (имя, описание и пр)

Вы о чем? Он выводит пользовательские переменные или настроечные?

nicton
13.03.2024, 09:05
Вы о чем? Он выводит пользовательские переменные или настроечные?

Сетевые, которые прописаны в Овен логике, может конечно конфигуратор их просто из кода достает.

МихаилГл
13.03.2024, 09:13
Сетевые, которые прописаны в Овен логике, может конечно конфигуратор их просто из кода достает.

Конфигуратор из кода?
Вообще ничего не понимаю.

capzap
13.03.2024, 09:22
Конфигуратор из кода?
Вообще ничего не понимаю.

да хватит уже, ПР103 автоопредеяемый прибор, в облаке и в конфигураторе он сам покажет свои переменные доступные для обмена по модбас

МихаилГл
13.03.2024, 09:27
да хватит уже, ПР103 автоопредеяемый прибор, в облаке и в конфигураторе он сам покажет свои переменные доступные для обмена по модбас

Не знал. Ну я туповат иногда. что уж теперь...

Возраст дает о себе знать. Лишь бы в маразм не впасть...

Sergey666
13.03.2024, 11:44
да хватит уже, ПР103 автоопредеяемый прибор, в облаке и в конфигураторе он сам покажет свои переменные доступные для обмена по модбас

То, что ПО Облака и Конфигуратора показывают список переменных к протоколу модбас не имеет никакого отношения...К хотелкам автора темы тоже, но это не точно, т.к он сам не знает чего ему надо...видимо концепция такая

capzap
13.03.2024, 12:00
То, что ПО Облака и Конфигуратора показывают список переменных к протоколу модбас не имеет никакого отношения...К хотелкам автора темы тоже, но это не точно, т.к он сам не знает чего ему надо...видимо концепция такая

протокол модбас и для обмена по модбас дейцствительно не связаны, в чем претензия ко мне.
Автор знает, в первом посте он описал что хочет, так же как я пользуюсь именами тегов в формате контроллера в панели вейнетк в связке с сименсом
ЗЫ А так же с овеновским плк210 через символьную конфигурацию 74310

Sergey666
13.03.2024, 14:26
Ну, было так

осуществляю концептуальное проектирование системы, буду писать ТЗ, поэтому нюансов не знаю, а надо бы.

А нюансы могут быть ведь?


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

ай-ай-ай, как это все ужасно, и вместо написания детального ТЗ с единой картой регистров модбас, о чем ему и писали, пропихивается нечто, подвыдернутое из описания других протоколов

В связи с этим возник вопрос: есть ли возможность верифицировать блоки по именам переменных? Написал, например, программист исполнительного блока программу, назвал его Block_nargeva, указал номер в сети 05, в нем есть термодатчик t1, а в программе головного блока синтаксис обращения к переменной Block_nargeva:t1, далее компилятор сам увязывает номера регистров и блоков.

И все сама:p

capzap
13.03.2024, 15:13
И все сама:pи что не так, всё что Вы процитировали осуществляет протокол codesys, со своим синтаксисом точка вместо двоеточия например. На панелях это работает, в выложеном мною скрине предыдущего поста это есть, со скадами работают ОРС сервера, некоторые из них так же понимают символьную конфигурацию. поэтому есть возможность программистам плк и визуализации рабоать с одними переменными/тегами

AlexandrGr
13.03.2024, 17:53
протокол codesys

Какое отношение это имеет к ПР100?

nicton
13.03.2024, 18:16
Какое отношение это имеет к ПР100?

Цель первого поста была не в том, чтобы блеснуть знаниями, как раз таки наоборот. Если бы вы знали что все запросы реализуются если ПР заменить на ПЛК, то так бы и написали, ну вот теперь это знание появилось у вас и у широкого круга лиц, хорошо же.

МихаилГл
13.03.2024, 18:45
Цель первого поста была не в том, чтобы блеснуть знаниями, как раз таки наоборот. Если бы вы знали что все запросы реализуются если ПР заменить на ПЛК, то так бы и написали, ну вот теперь это знание появилось у вас и у широкого круга лиц, хорошо же.

Ну ПЛК бывают разными. И протоколы, по которым они общаются, у разных производителей не одинаков от слова "совсем"... Вот теперь это знание появилось и у вас, теперь живите с этим. Многие ПЛК не могут делать того, о чем вы предположили. Вам заказчик скажет, хочу Delta контроллер, и вам опять придётся изучать, а может ли этот контроллер то, что вы " по умолчанию" приписали всём устройствам с функционалом ПЛК...

Типа мы идиоты и только сейчас это выяснили от вас?

AlexandrGr
13.03.2024, 18:55
Если честно я уже запутался о чем мы говорим.
Мне кажется разговор идет с "Алисой".

МихаилГл
13.03.2024, 19:10
Если честно я уже запутался о чем мы говорим.
Мне кажется разговор идет с "Алисой".

О том как космические корабли бороздят просторы вселенной!

In_Da_Cher_A
13.03.2024, 20:24
Если честно я уже запутался о чем мы говорим.
Мне кажется разговор идет с "Алисой".автор настолько преисполнился Величием своего гениального Замысла, что уверовал в своё Предназначение раскрыть нам глаза на наши грехи и обратить нас, твердолобых варваров, в Истинную Веру