Просмотр полной версии : ПЛК 210 - ModbusTCP - ПЛК210. Адресация регистров HELP!!!
Добрый день.
Помогите обменяться переменными между двумя ПЛК210.
Правильно ли я делаю и где бы увидеть пример с двумя ПЛК?
На Slave:
1) Создаю Ethernet-ModbusTCP_Slave_Device
2) Соотношу две bool переменные с регистром временного хранения (см. картинку)
73125
На Мастере:
1) Создаю Ethernet-Modbus_TCP_Master-Modbus_TCP_Slave
2) Иду в "Канал Modbus Slave" и зависаю... Как считать две переменные со слейва. Какой адрес нужно прописать?
73126
Связь поднимается, кружки зеленые крутятся.
kondor3000
27.01.2024, 13:36
Добрый день.
Помогите обменяться переменными между двумя ПЛК210.
Правильно ли я делаю и где бы увидеть пример с двумя ПЛК?
Связь поднимается, кружки зеленые крутятся.
В слейве адреса регистров и бит начинаются с 0, советую передавать (принимать) не биты, а регистры. Вместо 16 бит будет 1 регистр с адресом 0.
Биты упаковываются, распаковываются в регистры через точку.
Например упаковка Mask.0:=b0; Mask.1:=b1; где Mask - имя регистра типа WORD
распаковка b0:=Mask.0; b1:=Mask.1;
В слейве адреса регистров и бит начинаются с 0, советую передавать (принимать) не биты, а регистры. Вместо 16 бит будет 1 регистр с адресом 0.
Биты упаковываются, распаковываются в регистры через точку.
Например упаковка Mask.0:=b0; Mask.1:=b1; где Mask - имя регистра типа WORD
распаковка b0:=Mask.0; b1:=Mask.1;
Спасибо, видел такой метод.
Проблема, в моем случае, в адресе - он не 0...
73127
Какой адрес указать тут?
73128
МихаилГл
27.01.2024, 14:00
Спасибо, видел такой метод.
Проблема, в моем случае, в адресе - он не 0...
73127
Какой адрес указать тут?
73128
Именно с нуля. Эти цифры не имеют никакого значения.
IW624 это внутренняя адресация в ПЛК, к адресации модбас она не имеет никакого отношения.
Хорошо, ставлю так:
73129
А тут так:
73130
В результате ничего не происходит :(
73131
Я чего то принципиально делаю не так и не понимаю что...
kondor3000
27.01.2024, 14:27
Хорошо, ставлю так:
Я чего то принципиально делаю не так и не понимаю что...
Вы оставили биты, удалите всё и сделайте заново в обоих проектах, везде поставьте регистр адрес 0, сдвиг это и есть адрес. Присвойте ему имя в программе и выведете в поле программы. После переделки очистить всё, компилировать всё.
МихаилГл
27.01.2024, 14:28
Скиньте хоть проекты. Мы на кофейной гуще гадаем
Скиньте хоть проекты. Мы на кофейной гуще гадаем
Сделал два проекта во вложении. Спасибо, что согласились глянуть. Где ошибка?
МихаилГл
27.01.2024, 15:21
Сделал два проекта во вложении. Спасибо, что согласились глянуть. Где ошибка?
Ну начнём...
В программе слэйва задайте маску сетевого подключения 255.255.255.0 - это в принципе некритично.
Кроме этого для слэйва задайте unit_id, например 1.
Для мастера в конфигурации слэйва на вкладке конфигурация поменяйте unit_id с 255 на 1. Потом закройте всю вкладку и откройте снова, и на под вкладке "общее" Увидите ячейку слэйва айди с 1.
Попробуйте так.
kondor3000
27.01.2024, 15:23
Это не всё, в слейве в соотнесении нет имени переменной WORD[0]
В мастере нет вывода переменной в поле программы.
Доброе утро.
Пошли вторые сутки борьбы. Спасибо всем кто подсказывает, все выполняю - связи нет.
Начинается психоз, помогите :))))))))))))
Во вложении последняя версия ПО мастера и слейва.
МихаилГл
28.01.2024, 09:06
Доброе утро.
Пошли вторые сутки борьбы. Спасибо всем кто подсказывает, все выполняю - связи нет.
Начинается психоз, помогите :))))))))))))
Во вложении последняя версия ПО мастера и слейва.
Попробуй проверить сторонним по, модбас пулом, Геркулесом...
Там ещё в модбас регистрах могут биты быть переставлены. Для слэйва это 0...16, а для мастера 8..16 и 0...7
Попробуй проверить сторонним по, модбас пулом, Геркулесом...
Там ещё в модбас регистрах могут биты быть переставлены. Для слэйва это 0...16, а для мастера 8..16 и 0...7
Чего то просканировал...
73142
73143
МихаилГл
28.01.2024, 10:53
Когда в слэйве меняешь регистры в пулле меняются данные. Уже видно, что читаются только 10 слов, остальных и нету, т.к. массив от 0 до 9. Заодно и увидишь, что придёт, по этому и определишь, какие биты переворачивать.
Когда в слэйве меняешь регистры в пулле меняются данные. Уже видно, что читаются только 10 слов, остальных и нету, т.к. массив от 0 до 9. Заодно и увидишь, что придёт, по этому и определишь, какие биты переворачивать.
Стыдно не понимать, стыдно не хотеть разобраться...
Не могли бы вы разжевать, что надо сделать, пошагово?
kondor3000
28.01.2024, 11:56
Стыдно не понимать, стыдно не хотеть разобраться...
Не могли бы вы разжевать, что надо сделать, пошагово?
Вы же не сделали ничего, что написал, опять бит навтыкали, а читать пытаетесь регистр
МихаилГл
28.01.2024, 12:02
Стыдно не понимать, стыдно не хотеть разобраться...
Не могли бы вы разжевать, что надо сделать, пошагово?
Вы же не сделали ничего, что написал, опять бит навтыкали, а читать пытаетесь регистр
Как тут говорит один админ..
Предоставьте удалённый доступ, попробуем помочь)
Энидэск, например...
Как тут говорит один админ..
Предоставьте удалённый доступ, попробуем помочь)
Энидэск, например...
Я готов. Код пришлю в личку
kondor3000
28.01.2024, 13:31
На всякий случай скину пример для виртуального контроллера, как надо было сделать, проект Мастер -1 даже проверил на Codesys Control WIN W3 версии 11
На всякий случай скину пример для виртуального контроллера, как надо было сделать, проект Мастер -1 даже проверил на Codesys Control WIN W3 версии 14
О, спасибо, сейчас изучу.
Мне уже писать стыдно...
Повторил ваш пример один к одному, происходит постоянный перезапуск шины...
Единственное, чего у меня нет, это шлюза в настройках сети...
:mad:
Вот последний "релиз" )))))))))))))))))))))))))))) Что в нем не так?
kondor3000
28.01.2024, 14:32
Вот последний "релиз" )))))))))))))))))))))))))))) Что в нем не так?
Забыли в мастере Вкл. 2 (всегда в задаче цикла шины) 73147 Это надо везде делать
Modbus TCP Slave у вас 16 версии, а ПЛК как я понял 14, тогда устройство лучше заменить (обновить) выбрав 11, 12 или 14 версию73154
В слейве не удалили биты в соотнесении 73148 Это не обязательно, но чтобы не путаться. У вас биты присваиваются в программе
А шлюз лучше поставить
МихаилГл
28.01.2024, 15:08
Если что, могу подключиться... Там и посмотрим
Если что, могу подключиться... Там и посмотрим
Спасибо большое, но я уже уехал с работы.
Завтра применю все исправления и напишу, что получится.
Доброе утро!
Спасибо большое мужики! Поклон вам в пол.
Все работает!!!
Выкладываю сюда рабочие проекты ведущего и ведомого, чтоб было!
(ПЛК 210-04__ModbusTCP__ПЛК 210-01)
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot