Страница 1 из 8 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 78

Тема: Поддержка Modbus TCP

  1. #1
    Пользователь Аватар для Солнечный заяц
    Регистрация
    16.08.2009
    Адрес
    г. Рыбинск, Яр.обл.
    Сообщений
    209

    Question Поддержка Modbus TCP

    С удивлением и сожалением не обнаружил поддержки Modbus TCP в выложенных библиотеках. Может быть есть какие нибудь сырые образцы, или хотя бы библиотека работы с ethernet портом?.. Или я не там ищу?

    UPD:
    Может быть есть возможность произвести импорт библиотеки из CoDeSys v2?
    Последний раз редактировалось Солнечный заяц; 07.07.2011 в 14:02.

  2. #2

    По умолчанию

    для работы с ethernet есть библиотека SysSocket.

    для работы с ModBus TCP можно использовать стандартные средства:
    device/add device/ ethernet
    ethernet/ add device / ModBus TCP master
    Изображения Изображения

  3. #3
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    http://oscat.de/files/oscat_basic_331_codesys3.library может здесь что то можно найти

  4. #4
    Пользователь Аватар для Солнечный заяц
    Регистрация
    16.08.2009
    Адрес
    г. Рыбинск, Яр.обл.
    Сообщений
    209

    По умолчанию

    2capzap
    Это стандартная библиотека Codesysv3 или одна из ее версий.

    2Евгений Сергеевич
    Пробую разобраться с Modbus TCP Slave. Настроил на ПЛК110 Modbus TCP Master. Параметр Losterror==0, значит запись и чтение производится нормально, но видать не в те регистры. В справке к Codesysv3 написано про Modbus TCP Slave:
    ID входных параметров начинаются с 1000 (таким образом, второй входной параметр “I1” будет иметь ID 1001), ID выходных параметров начинаются с 2000
    Делаю все как написано, но результата нет.
    На сколько я понял Unit ID в Codesysv3 соответствует ModuleSlaveAddress в Codesysv2

    На всякий случай прикладываю проекты.

    П.С.
    Про Modbus TCP Master в Codesysv3 я вообще молчу. Даже в справке про него ничего не нашел...
    Изображения Изображения
    • Тип файла: jpg 1.JPG (176.1 Кб, Просмотров: 177)
    • Тип файла: jpg 2.JPG (173.8 Кб, Просмотров: 122)
    Вложения Вложения

  5. #5

    По умолчанию

    Режим ПЛК-мастер работает. пример в приложении.
    А вот со slave режимом сейчас будем разбираться.
    Вложения Вложения
    • Тип файла: zip CDS.zip (39.8 Кб, Просмотров: 164)

  6. #6
    Пользователь Аватар для Солнечный заяц
    Регистрация
    16.08.2009
    Адрес
    г. Рыбинск, Яр.обл.
    Сообщений
    209

    По умолчанию

    2Евгений Сергеевич
    1.Спасибо за пример. Очень помогло с Modbus TCP Master в Codesysv3.
    Хотелось бы отметить что чтение регистров не происходит, если они не используются в тексте программы. Уверен что не все пользователи это знают.

    2.Столкнулся еще с одной неприятной особенностью: при обрыве соединения (передергивание интерфейсного кабеля, обновление программы на ведомом контроллере) и его последующем восстановлении обмен не возобновляется. Выдается ошибка (см. вложение) и перезапустить обмен можно только сделав Online -> Reset Warm. Может есть какие нибудь программные способы перезапуска обмена, или особые настройки?

    3.Удалось разобраться с адресацией в Modbus TCP Slave в Codesysv3: входные регистры начинаются с нуля. А вот с адресацией выходных разобраться не удалось. Пробовал использовать адреса: последний_входной+1, 10х1000, 10х2000, 0х1000, 0х2000.
    Изображения Изображения
    • Тип файла: jpg 1.JPG (65.0 Кб, Просмотров: 147)

  7. #7
    Пользователь Аватар для Солнечный заяц
    Регистрация
    16.08.2009
    Адрес
    г. Рыбинск, Яр.обл.
    Сообщений
    209

    По умолчанию

    Еще одна неприятная ситуация:
    При настройке СПК207 как мастера сети и создания визуализации происходит прекращение обмена после нескольких секунд работы. Долго разбирался в чем дело - нашел: Увеличил время цикла СПК207 до 100мс.

    Как восстанавливать обмен после обрыва соединения так и не придумал. Нет ли возможности производить программную перезагрузку CoDeSys, без перезагрузки СПК207 (для сокращения времени перезагрузки и самостоятельного восстановления канала связи).
    Последний раз редактировалось Солнечный заяц; 18.07.2011 в 09:34.

  8. #8

    По умолчанию

    по поводу ModBus TCP сейчас работаем.

  9. #9

    По умолчанию

    1) в приложение пример (использованы ПЛК 304 и Win v3)
    2) (режим slave)адреса регистров входов и выходов одинаковые но относятся к разным областям памяти:
    есть переменная на запись "А" с адресом 0
    есть переменная на чтение "В" также с адресом 0

    функция чтения 03 обратится к переменной А
    функция чтения 04 обратится к переменной В

    3) Так же в примере есть блок возобновления связи (в программе для Win v3)
    Вложения Вложения

  10. #10
    Пользователь Аватар для Солнечный заяц
    Регистрация
    16.08.2009
    Адрес
    г. Рыбинск, Яр.обл.
    Сообщений
    209

    По умолчанию

    2Евгений Сергеевич
    Что-то у меня не выходит. Возможно из-за того что я объявил Modbus_TCP_Master_Instance и Modbus_TCP_Slave_Instance как глобальные переменные каталога Application. Кажется Вы объявили их как-то по-другому. Но я не понял как.
    Изображения Изображения
    • Тип файла: jpg 1.JPG (175.9 Кб, Просмотров: 125)

Страница 1 из 8 123 ... ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •