|
  |
M340 и Ethernet (modbus Tcp), помогите плз (лучше семплом) |
|
|
|
3.6.2013, 15:41
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Первый раз сталкиваюсь с этой системой, помогите плз (лучше семплом)
Задача. 1. Получить данные с другого оборудования по modbus TCP 2. отдать данные другому устройству по modbus TCP Контроллер modicon m340 BMX P34 2020? причем реализовать надо все через встроенный ethernet port Перерыл весь форум, но либо com, либо с помощью NOE модуля
|
|
|
|
|
3.6.2013, 16:03
|
Группа: New
Сообщений: 15
Регистрация: 22.3.2013
Пользователь №: 186400

|
1 способ. Выставить IP-адрес крутилками сзади процессорного модуля. Подключиться через выставленный IP-адрес.
2 способ. Создать подключение в Unity, прописав требуемый адрес. Отправить программу на ПЛК посредством USB-подключения. После того, как программа с заложенным IP-адрессом окажется на ПЛК, можно перейти на Ethernet подключение.
|
|
|
|
|
3.6.2013, 16:09
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
|
|
|
|
|
3.6.2013, 16:19
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Цитата(FullJuice @ 3.6.2013, 17:03)  1 способ. Выставить IP-адрес крутилками сзади процессорного модуля. Подключиться через выставленный IP-адрес.
2 способ. Создать подключение в Unity, прописав требуемый адрес. Отправить программу на ПЛК посредством USB-подключения. После того, как программа с заложенным IP-адрессом окажется на ПЛК, можно перейти на Ethernet подключение. К контроллеру подключился Все касается уже программирования
|
|
|
|
|
3.6.2013, 16:23
|
Группа: New
Сообщений: 15
Регистрация: 22.3.2013
Пользователь №: 186400

|
Если все внешние проводки уже готовы и конфигурация контроллера завершена:
1. Создать переменные (входные/выходные/внутренние); 2. Прописать адреса переменных; 3. Создать программы для обработки входных/выходных переменных.
Это интересует?
Сообщение отредактировал FullJuice - 3.6.2013, 16:24
|
|
|
|
|
3.6.2013, 17:22
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Цитата(FullJuice @ 3.6.2013, 17:23)  Если все внешние проводки уже готовы и конфигурация контроллера завершена:
1. Создать переменные (входные/выходные/внутренние); 2. Прописать адреса переменных; 3. Создать программы для обработки входных/выходных переменных.
Это интересует? Да и часть из них должны читаться по modbus tcp\ip SCADA системой А часть надо получать с весов тоже по modbus tcp\ip т.е. Контроллер должен быть и клиентом и сервером
|
|
|
|
|
3.6.2013, 18:01
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Цитата(FullJuice @ 3.6.2013, 18:35)  https://sites.google.com/site/fieldbusbook/...y-bystryj-startОт пользователя san. Выполнив этот "Быстрый старт", всё станет понятно. Спасибо завтра попробую ток остался еще вопрос, получать данные вроде как прояснилось, а от куда читать данные другим устройством? (использование в качестве слайва)
|
|
|
|
|
3.6.2013, 20:53
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
|
|
|
|
|
4.6.2013, 8:14
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Цитата(san @ 3.6.2013, 21:53)  сейчас все попробую и отпишусь
|
|
|
|
|
4.6.2013, 8:41
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Все сделал, при компиляции выдает ошибку: (l: 13, c: 50) E1208 usage of dynamic arrays is disabled Цитата Вот нашел тоже от тебя на другом форуме, огромное спасибо Цитата Нужно поставить галочку Tools->Project settings->Allow Dynamic Arrrays и Tools->Project settings->Directly represented array var, или использовать в качестве входа созданый массив. Сам когда-то на это наткнулся.
Сообщение отредактировал CoDa - 4.6.2013, 8:45
|
|
|
|
|
4.6.2013, 9:16
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Цитата(CoDa @ 4.6.2013, 8:41)  (l: 13, c: 50) E1208 usage of dynamic arrays is disabled Вот нашел тоже от тебя на другом форуме, огромное спасибо Уже поправил. Если будут опечатки или непонятки, или синтаксис глаза режет - пишите, буду исправлять. А то вопросы частые, лучше один раз написать и всех туда отправлять, чем много раз писать одно и то же. :-)
|
|
|
|
|
4.6.2013, 9:49
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Огромадное пасибки, все заработало !!
|
|
|
|
|
4.6.2013, 12:27
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
А в какие адреса писать данные что бы считать с контроллера? пробовал в %MW0 и %MW100 читаю с контроллера - данных нет, точнее почему то не проходят команды с PC Сори опять не разобрался, аксесс не включил
Сообщение отредактировал CoDa - 4.6.2013, 12:43
|
|
|
|
|
4.6.2013, 12:34
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Не понял вопроса. Если данные в М340 локализованные, то нужно искать их по этому адресу. СКАДА какая? Если какая-то чужая, то нужно читать/писать данные с Holding Regters, таблицу соответствия на приведенной страничке я приводил.
|
|
|
|
|
14.6.2013, 16:31
|
Группа: Участники форума
Сообщений: 28
Регистрация: 21.5.2013
Пользователь №: 193116

|
Извиняюсь за смешной вопрос как записывать/считывать данные я понял, но каким образом присвоение самих данных происходит (для записи/чтения) в контроллере в котором нужно получить данные от другого контроллера TCP клиента (организую связь между двумя М340, нужно от одного передать информацию другому о состоянии процесса). Или все таки для двухстороннего обмена нужно в обоих контроллера прописывать чтение/запись?
|
|
|
|
|
14.6.2013, 18:41
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Там (в сервере) данные нужно писать/читать в область %MW. Можно непосредственно, а можно привязать туда переменную. ОС Юнити уже сама организует запись/чтение в эту/(с этой) области с Модбас как к регистрам.
|
|
|
|
|
14.6.2013, 20:18
|
Группа: Участники форума
Сообщений: 28
Регистрация: 21.5.2013
Пользователь №: 193116

|
Нет, с сервером обмен уже отстроен, меня не это интересует, мне нужен прямой обмен между двумя контроллерами на картинке программа, read_var, считываем булевые переменные из другого контроллера, вопрос как мне из массива remout_date (состоящего из интеджер) вытащить булевые
Прикрепленные файлы
image.png ( 158,07 килобайт )
Кол-во скачиваний: 31
|
|
|
|
|
14.6.2013, 22:52
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Обращаться к ним через точку. Еще вариант - привязать массив к %MW. А самый лучший вариант - считвать не %M а %MW, куда упаковывать все булы (можно просто отображать туда, например булевую переменную привязать скажем к %Mw200.0). Каждый бул в М340 занимает один байт, а запаковавши бит в слово, он займет только один бит. Экономия в 8 раз и гемора меньше, так как и булы и инты можно передавать в одной посылке.
|
|
|
|
|
15.6.2013, 5:17
|
Группа: Участники форума
Сообщений: 28
Регистрация: 21.5.2013
Пользователь №: 193116

|
Спасибо, сделаем тогда так во избежание гемора
|
|
|
|
|
17.6.2013, 13:59
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Возник вот такой вопросик. Отвалилось modbus\tcp устройство(проблема с устройством). Его (устройство) перегрузили. На контроллере связь не восстанавливается до перезагрузки контроллера. Кто с этим сталкивался. Как побороли данный косяк?
|
|
|
|
|
17.6.2013, 14:09
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Цитата(CoDa @ 17.6.2013, 13:59)  Возник вот такой вопросик. Отвалилось modbus\tcp устройство(проблема с устройством). Его (устройство) перегрузили. На контроллере связь не восстанавливается до перезагрузки контроллера. Кто с этим сталкивался. Как побороли данный косяк? Если работа идет через коммун. функцию, думаю поможет выставленный таймаут в параметрах функиции.
|
|
|
|
|
17.6.2013, 14:21
|
Группа: Участники форума
Сообщений: 28
Регистрация: 21.5.2013
Пользователь №: 193116

|
Возможно ли запустить симуляторы ПЛК в юнити на разных компьютерах, при этом что бы они между собой запросы по TCP отрабатывали, так называемая симуляция двух контроллеров с возможностью обмена данными?
|
|
|
|
|
17.6.2013, 14:27
|
Группа: Участники форума
Сообщений: 36
Регистрация: 3.6.2013
Пользователь №: 194710

|
Цитата(san @ 17.6.2013, 15:09)  Если работа идет через коммун. функцию, думаю поможет выставленный таймаут в параметрах функиции. Таймаут не помогает  можно ли как нибудь сделать так сказать софт ресет контроллера?
Сообщение отредактировал CoDa - 17.6.2013, 14:28
|
|
|
|
|
17.6.2013, 15:38
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Цитата(Константин Ж @ 17.6.2013, 14:21)  Возможно ли запустить симуляторы ПЛК в юнити на разных компьютерах, при этом что бы они между собой запросы по TCP отрабатывали, так называемая симуляция двух контроллеров с возможностью обмена данными? Нет, только со стороны сервера, клиентский должен быть аппаратный. Цитата(CoDa @ 17.6.2013, 14:27)  Таймаут не помогает  можно ли как нибудь сделать так сказать софт ресет контроллера? Не задумывался над этим. Надо поклупаться в IODDT для порта Ethernet. Поройте в хелпе.
|
|
|
|
|
1.6.2020, 8:40
|
Группа: New
Сообщений: 8
Регистрация: 20.2.2015
Пользователь №: 260196

|
Здравствуйте, есть вопрос. При обмене данными со скада системой используется 502 порт, настраивается как либо номер порта в модиконе м340, например 503 и т.д.?
|
|
|
|
|
2.6.2020, 16:28
|
Группа: Участники форума
Сообщений: 172
Регистрация: 19.9.2010
Пользователь №: 72709

|
Добрый день!
Нет, насколько я знаю, в самом М340 настраивается только параметры самого IP, Mask, Gateway и способы получения адреса (Static, DHCP, BOOTP)
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
Реклама
ООО «Арктика групп» ИНН: 7713634274
ООО "Русич" ИНН 9721068883 / ЕРИД 2VtzqvMjLF8
ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqxXgvJi
Реклама: ООО «СибСтронг» | ИНН 6670013662 | ERID: 2VtzqwyM2dc
Последние сообщения Форума
|