Страница 159 из 174 ПерваяПервая ... 59109149157158159160161169 ... ПоследняяПоследняя
Показано с 1,581 по 1,590 из 1735

Тема: CODESYS V3.5. Настройка обмена с другими устройствами (Modbus, ОВЕН, OPC и др.)

  1. #1581

    По умолчанию

    Добрый вечер мне нужно реализовать синхронный (блокирующий режим обмена) по 485 интерфейсу на ПЛК210
    Все доступные библиотеки это делают в асинхронном режиме и тратят на это несколько тактов.
    В документе 'Реализация нестандартных протоколов' упоминается библиотека SysCom, но на нее нет никакого описания.

    Подскажите как открыть командой Syscom.SysComOpen второй 485 порт контроллера

    hcom:=Syscom.SysComOpen(sPOrt:=4 , presult:=err ); так не получается

    или подскажите другую документированную библиотеку

  2. #1582

    По умолчанию

    Попробуйте так:

    Код:
    hcom:=Syscom.SysComOpen(sPOrt:= SYS_COMPORT4 , presult:=ADR(err) ); // где err имеет тип DWORD или UDINT
    Надо вызвать этот код один раз (а не делать это циклически).

  3. #1583
    Пользователь
    Регистрация
    05.05.2025
    Адрес
    Санкт-Петербург
    Сообщений
    12

    По умолчанию

    Доброе утро. Не могу понять, как работать с coil в Codesys (чтобы другое устройство могло читать данные по 1 функции). Читаю через Modbus Poll функцией 1, 0 адрес. В codesys тоже на все типы данных стоит начальный адрес 0. Объявил bool в задаче, приравнял к 1. Привязывал поочередно ячейки всех типов данных в modbus slave к этой переменной (регистр временного хранения, входной регистр, регистр который coil, дискретный вход. Везде получаю 0, без ошибки неправильного адреса. Slave device соединение видит, после запуска ПЛК и начала опроса загорается зеленым.

  4. #1584

    По умолчанию

    Цитата Сообщение от crauler Посмотреть сообщение
    Доброе утро. Не могу понять, как работать с coil в Codesys (чтобы другое устройство могло читать данные по 1 функции). Читаю через Modbus Poll функцией 1, 0 адрес. В codesys тоже на все типы данных стоит начальный адрес 0. Объявил bool в задаче, приравнял к 1. Привязывал поочередно ячейки всех типов данных в modbus slave к этой переменной (регистр временного хранения, входной регистр, регистр который coil, дискретный вход. Везде получаю 0, без ошибки неправильного адреса. Slave device соединение видит, после запуска ПЛК и начала опроса загорается зеленым.
    Добрый день.
    Проще всего в настройках слэйва установить галочку Дискретные битовые области.
    Тогда для Сoil'ов в соотнесении будет отображаться отдельная вкладка c названием Обмотки.
    Привяжите там свою булевские переменные.
    +
    Там же справа внизу для параметра Всегда обновлять переменные установите значение Вкл. 2 (Всегда в задаче цикла шины)

  5. #1585
    Пользователь
    Регистрация
    05.05.2025
    Адрес
    Санкт-Петербург
    Сообщений
    12

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Тогда для Сoil'ов в соотнесении будет отображаться отдельная вкладка c названием Обмотки.
    У меня вместо обмоток только регистры. И на странице конфигурации, и на странице соотнесения. Codesys 3.5 SP17 Patch 3+ (32bit).

  6. #1586

    По умолчанию

    Цитата Сообщение от crauler Посмотреть сообщение
    У меня вместо обмоток только регистры. И на странице конфигурации, и на странице соотнесения. Codesys 3.5 SP17 Patch 3+ (32bit).
    Значит, вы используете Modbus TCP. Там эта вкладка действительно называется Регистры (что не очень логично, но как уж есть).
    В Modbus Serial Device она называется Обмотки.

  7. #1587
    Пользователь
    Регистрация
    05.05.2025
    Адрес
    Санкт-Петербург
    Сообщений
    12

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Добрый день.
    Проще всего в настройках слэйва установить галочку Дискретные битовые области.
    Тогда для Сoil'ов в соотнесении будет отображаться отдельная вкладка c названием Обмотки.
    Привяжите там свою булевские переменные.
    +
    Там же справа внизу для параметра Всегда обновлять переменные установите значение Вкл. 2 (Всегда в задаче цикла шины)
    Данные операции делал, все равно 0 при чтении функцией 1.

  8. #1588

    По умолчанию

    Цитата Сообщение от crauler Посмотреть сообщение
    Данные операции делал, все равно 0 при чтении функцией 1.
    Напишите мне в телеграм, пожалуйста (см. в подписи).

  9. #1589

    По умолчанию

    Добрый день.

    При настройке обмена между двумя контроллерами cds3.5 через сетевые переменные, в контроллере-получателе сетевые переменные отправителя доступны только для чтения?

  10. #1590

    По умолчанию

    Цитата Сообщение от Карбофос Посмотреть сообщение
    Добрый день.

    При настройке обмена между двумя контроллерами cds3.5 через сетевые переменные, в контроллере-получателе сетевые переменные отправителя доступны только для чтения?
    Добрый день.
    Да.
    Еслит требуется настроить двухсторонний обмен между ПЛК - то на каждом из них потребуется создать по два списка (отправителя и получателя).

Страница 159 из 174 ПерваяПервая ... 59109149157158159160161169 ... ПоследняяПоследняя

Похожие темы

  1. Настройка ПР200, управление 3-мя устройствами через RS-485
    от Orbes в разделе Среда программирования OWEN Logic
    Ответов: 20
    Последнее сообщение: 15.05.2017, 16:45
  2. СП3ХХ Пример настройка обмена с ПЛК на CODESYS 2.3
    от Denis_Kay в разделе СП3хх, СП270
    Ответов: 6
    Последнее сообщение: 02.03.2017, 15:12
  3. Ответов: 43
    Последнее сообщение: 13.04.2015, 14:05
  4. Универсальная функция для обмена с устройствами OwenIO и всеми любимый LabView.
    от Алексей Крагель в разделе Помощь Разработчикам
    Ответов: 0
    Последнее сообщение: 30.05.2014, 13:38

Ваши права

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