Страница 6 из 7 ПерваяПервая ... 4567 ПоследняяПоследняя
Показано с 51 по 60 из 70

Тема: Конфигурация ПЛК-Modbus (slave)- как запихнуть более 860 регистров??

  1. #51

    По умолчанию

    Проект содержит массу ошибок. Работать на ПЛК не будет.
    Тролль-наседка, добрый, нежный и ласковый

  2. #52

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Проект содержит массу ошибок. Работать на ПЛК не будет.
    Владислав можете другой пример дать - перекопав форум я вообще запутался и не знаю как начать..

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

    По умолчанию

    600-700 регистров не передавал, но вот 350 без особых затруднений и SysLibSocetoв. Время конфигурирования 20-40 секунд.

    Просто добавьте в Modbus Slave 4-х байтовые переменные на нужный размер передаваемых данных и на начало этого массива наведите структуру (пусть она зовется DA).
    Например, в глобальных данных вот так:
    DA AT %QD7.1.0 : ExDataArea;

    А структура ExDataArea состоит из других стуктур:
    Код:
    (* Область обмена с верхнем уровнем *)
    TYPE ExDataArea :
    STRUCT
    Sensor1Base  :  SensorBase;
    Sensor2Base  :  SensorBase;
    Motor1Base    : MotorBase;  
    
    END_STRUCT
    END_TYPE
    Здесь SensorBase и MotorBase - это "базовые" структуры датчика и мотора, т.е. те переменные, которые эти функциональные блоки должны передать на верхний уровень, или те переменные которые эти ФБ должны получить с верхнего уровня.

    Таким образом за секунды Вы конфигурируете множество осмысленных переменных.
    Последний раз редактировалось Спорягин Кирилл; 10.02.2017 в 14:12.

  4. #54

    По умолчанию

    Использование не поименованных переменных в конфигурации не даёт возможности среде разработки проверить корректность их типов, адресов, размеров областей данных.
    А далее трудноуловимые "плавающие" ошибки.
    Тролль-наседка, добрый, нежный и ласковый

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

    По умолчанию

    Поэтому я стараюсь в базовых структурах использовать только тип word, dword и real. Таким образом я избегаю всяческих проблем с выравниванием памяти и т.п.
    Но в целом "волков бояться в лес не ходить".

  6. #56

    По умолчанию

    Цитата Сообщение от Спорягин Кирилл Посмотреть сообщение
    600-700 регистров не передавал, но вот 350 без особых затруднений и SysLibSocetoв. Время конфигурирования 20-40 секунд.

    Просто добавьте в Modbus Slave 4-х байтовые переменные на нужный размер передаваемых данных и на начало этого массива наведите структуру (пусть она зовется DA).
    Например, в глобальных данных вот так:
    DA AT %QD7.1.0 : ExDataArea;

    А структура ExDataArea состоит из других стуктур:
    Код:
    (* Область обмена с верхнем уровнем *)
    TYPE ExDataArea :
    STRUCT
    Sensor1Base  :  SensorBase;
    Sensor2Base  :  SensorBase;
    Motor1Base    : MotorBase;  
    
    END_STRUCT
    END_TYPE
    Здесь SensorBase и MotorBase - это "базовые" структуры датчика и мотора, т.е. те переменные, которые эти функциональные блоки должны передать на верхний уровень, или те переменные которые эти ФБ должны получить с верхнего уровня.

    Таким образом за секунды Вы конфигурируете множество осмысленных переменных.
    Кирилл,а ошибки о которых говорит Филоненко Владислав?

  7. #57

    По умолчанию

    Цитата Сообщение от Спорягин Кирилл Посмотреть сообщение
    Поэтому я стараюсь в базовых структурах использовать только тип word, dword и real. Таким образом я избегаю всяческих проблем с выравниванием памяти и т.п.
    Но в целом "волков бояться в лес не ходить".
    а идея Ваша мне понравилась спс - как вариант
    Контролер не стопорится при работе???
    Последний раз редактировалось a_gricaj; 10.02.2017 в 15:05.

  8. #58

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Использование не поименованных переменных в конфигурации не даёт возможности среде разработки проверить корректность их типов, адресов, размеров областей данных.
    А далее трудноуловимые "плавающие" ошибки.
    При использовании конфигуратора с "забитымы" 600 регистров тоже не все гладко. Тут правда пока я грешу на себя (или любителей тыкать кнопки Старт/Стоп на шасси ПЛК) - контроллер работал месяц и ушел в стоп. В журнале ничего существенного нет. Мож кто подскажет как отловить проблемму?

  9. #59
    Пользователь
    Регистрация
    10.11.2014
    Адрес
    Санкт-Петербург
    Сообщений
    980

    По умолчанию

    Цитата Сообщение от a_gricaj Посмотреть сообщение
    а идея Ваша мне понравилась спс - как вариант
    Контролер не стопорится при работе???
    Не слушайте Владислава. Если ошибка с доступом к памяти и будет она вылезет сразу. Вы увидите всякие странные значения в переменных.
    У меня на такой технологии передачи данных все объекты работают. Все отлично.

  10. #60

    По умолчанию

    Цитата Сообщение от Спорягин Кирилл Посмотреть сообщение
    Не слушайте Владислава. Если ошибка с доступом к памяти и будет она вылезет сразу. Вы увидите всякие странные значения в переменных.
    У меня на такой технологии передачи данных все объекты работают. Все отлично.
    А Dword вы перестраиваете? И нужно ли соблюдать выравнивание памяти?? ОРС сервер у меня фигню читает при записи Dword....

    Если соблюдать выравнивание то работает... а так получается рваный Dword ...
    Последний раз редактировалось a_gricaj; 13.02.2017 в 13:13.

Страница 6 из 7 ПерваяПервая ... 4567 ПоследняяПоследняя

Похожие темы

  1. Адресация регистров Modbus-RTU, ПЛК(Slave)
    от Лёша в разделе ПЛК1хх
    Ответов: 15
    Последнее сообщение: 03.07.2019, 08:02
  2. ПЛК63, modbus slave, адреса регистров
    от monteg в разделе ПЛК63/73
    Ответов: 43
    Последнее сообщение: 19.06.2017, 08:46
  3. Проблема с созданием регистров ModBus(Slave) ПЛК 150
    от SDSE92 в разделе Помощь Разработчикам
    Ответов: 4
    Последнее сообщение: 08.06.2016, 13:37
  4. СП270 Slave. Чтение и запись регистров PFW
    от petera в разделе Панели оператора (HMI)
    Ответов: 4
    Последнее сообщение: 02.05.2015, 18:36
  5. ПЛК 110-32M slave, libmodbus TCP, ошибка чтения регистров: Bad file descriptor
    от SerJK в разделе Помощь Разработчикам
    Ответов: 1
    Последнее сообщение: 22.04.2014, 12:12

Ваши права

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