Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя
Показано с 31 по 40 из 45

Тема: потеря байтов в ответной посылке с периодом 4-5 с.

  1. #31

    По умолчанию

    1) Для передачи данных из /в контроллер используйте готовое решение. Например протокол МодбасTCP/CoDeSys Gatway для Ethernet или owen_io.dll/modbus OPC/owen OPC для RS485
    2) Два мастера на сети не очень хорошо (придется организовывать передачу метки) - можно использовать режим "прослушивания" линии - реализовано для owen opc и owen_io.dll - наверное самый легкий путь
    3) Для ethernet - через Codesys Gateway ищем OPC Для Delphi - или смотрим пример для OPC owen (сейчас в состав не входит - но по запросу можно получить)+ смотрим на диске ПЛК конфигурирование OPC сервера. Через модбас TCP - конфигурируем в PLC_configuratio Modbus (TCP) слейв и ищем библиотеку для работы со слейвом мобас.
    4) Тяжелый путь - вручную программируем сокеты или RS485 через SysLibSockets или SysLibCom

  2. #32

    По умолчанию

    pms160
    pf,kelbkcz

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

    По умолчанию

    Господа, Овенцы!
    Сегодня звонил в Вашу службу тех. поддержки.
    Задал вопрос про задержку от момента передачи до приема, сославшись
    на SysComWrite и SysComRead.
    К сожалению, не представившийся товарищ сказал, что задержка не
    описана в документации, но она есть и равна примерно 2 миллисекунды!

    За это время мой прибор на 115200, с частотой 400 Гц генерации значений успеет практически всю посылку целиком запихать в порт.

    А народ долго-долго "ловит блох" в своих программах под ПЛКшки.

    Это беда ПЛК-100/150 или из CodeSys наследуется?
    А с Modbus-RTU такая же неприятность будет?
    Последний раз редактировалось richie; 07.04.2009 в 16:43.

  4. #34

    По умолчанию

    Да, задержка есть и обусловлена необходимостью выдержать паузу 3,5 символа между пачками по стандарту RTU. На скорости 115200 пауза составляет 0,347 мс.

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

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Да, задержка есть и обусловлена необходимостью выдержать паузу 3,5 символа между пачками по стандарту RTU. На скорости 115200 пауза составляет 0,347 мс.
    Пауза 3,5 байта в Modbus-RTU регламентирована спецификацией протокола. И является признаком конца пакета.

    Я имел в виду, нет ли в ПЛК бяки когда я, получив пакет (концом считаю
    тишину в линии длиной 3,5 байта), начинаю выдавать ответ, но "слишком
    рано", чтобы ПЛК успел принять пакет?

  6. #36

    По умолчанию

    Можно подробнее. Как посылаете запрос/принимаете ответ?
    Пример кода? Описание опрашиваемого прибора?

  7. #37

    По умолчанию

    Информация для Малышева Олега от pms160.
    Огромное спасибо за краткое объяснение программирования Ethernet
    для ПЛК-100.
    У нас возник еще один вопрос, на который хотелось получить
    подсказку. Мы хотим в ПЛК-100 привязаться к реальному времени.
    Мы в окне переменных указали переменную:
    VAR
    DATA: DT;
    END_VAR

    А в окне программ указали строку
    DATA:=DT#;

    Однако CodeSys при компиляции указывает на ошибку в этой стороке :
    Invalid date and time
    Не подскажите в чет тут может быть ошибка.
    С уважением Александр.
    Последний раз редактировалось pms160; 23.04.2009 в 05:55.

  8. #38

    По умолчанию

    а где сама дата-то?

  9. #39

    По умолчанию

    Для чтения записи часов реального времени используйте библиотеку SysLibTime.lib она читает/пишет данные RTC - поиск по данному форуму позволит найти формат обращения к данной библиотеке.

  10. #40

    По умолчанию

    посмотрите это описание бибилиотеки.
    Описание Библиотеки SysLibTime.zip

Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя

Ваши права

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