Страница 6 из 21 ПерваяПервая ... 4567816 ... ПоследняяПоследняя
Показано с 51 по 60 из 203

Тема: ПЛК63 + SysLibCom, потеря байтов

  1. #51
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,054

    По умолчанию

    Очень кратко - тот протокол как выглядит ?

  2. #52

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Зачем забирать меньше чем там есть ?
    1. Очищает буфер порта
    2. Посылаем запрос
    3. пауза
    4. Читаем 10 байт из буфера порта
    5. Если прочитанное "правельное", то
    Если прочитан весь ответ, то (6)
    иначе 4
    иначе 6
    7. пауза
    8. на 1

    я ответ читаю порциями.

  3. #53

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Очень кратко - тот протокол как выглядит ?
    Какой протокол?
    Я посылал запросы и ожидал ответов в формате modbus rtu

    REQUEST : ARRAY [ 1..REQUEST_SIZE ] OF BYTE := 16#10, 16#04, 16#00, 16#00, 16#00, 16#04, 16#F2, 16#88;

    16- адрес устройства
    04 - код функции
    00, 00 - адрес первого регистра
    00,04 - кол-во регистров
    crc - 88F2
    Если под рукой нет программы для подсчета crc,
    http://www.lammertbies.nl/comm/info/...lculation.html

  4. #54

    По умолчанию

    счетчик я обсуждать не буду

  5. #55

    По умолчанию

    Цитата Сообщение от monteg Посмотреть сообщение
    1. Очищает буфер порта
    2. Посылаем запрос
    3. пауза
    4. Читаем 10 байт из буфера порта
    5. Если прочитанное "правельное", то
    Если прочитан весь ответ, то (6)
    иначе 4
    иначе 6
    7. пауза
    8. на 1

    я ответ читаю порциями.
    блин хигню написал, ночь уже

  6. #56
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,054

    По умолчанию

    1.Отправили, взвели таймер
    2.Читаем.Что-то есть - перевзводим таймер. время вышло - выходим на проверку данных
    PS
    А счетчик есть и в modbus.lib
    И я про тот, другой, протокол спрашивал
    Паузы - в сад

  7. #57

    По умолчанию

    шнайдеровский счетчик в сад. Здесь я его обсуждать не хочу. Не та тема.
    Пойми из буфера порта читаю небольшими порциями. Да можно при чтении запросить макс. возможное для данного протокола количество байт из буфера. И проблема пропадет. НО почему теряются байты при чтении ответа из буфера частями. На ПЛК100 работает на ПЛК63 - глючит. А на еще каком-нибуть ПЛКxxx, будет другой глюк.
    Меня не интересует, как можно сделать по другому. Я знаю как сделать. Меня интересует имено ентот глюк.

  8. #58

    По умолчанию

    Вы попробуйте, если не влом конечно, и есть возможность заменить
    Size := DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf), SIZEOF(rBuf), 0));

    на

    Size := DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf), SIZEOF(rBuf), 0));
    if ( size > 0 ) then
    size := size + DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf[ 1 ]), SIZEOF(rBuf) - 1, 0));
    end_if

  9. #59

    По умолчанию

    Цитата Сообщение от monteg Посмотреть сообщение
    Вы попробуйте, если не влом конечно, и есть возможность заменить
    Size := DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf), SIZEOF(rBuf), 0));

    на

    Size := DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf), SIZEOF(rBuf), 0));
    if ( size > 0 ) then
    size := size + DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf[ 1 ]), SIZEOF(rBuf) - 1, 0));
    end_if
    ошибся

    Size := DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf), 1, 0));
    if ( size > 0 ) then
    size := size + DWORD_TO_WORD(SysComRead(ComHandle, ADR(rBuf[ 1 ]), SIZEOF(rBuf) - 1, 0));
    end_if

  10. #60
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,054

    По умолчанию

    когда читаете - знаете сколько прочитали. Ну за каким читать меньше или больше ?
    PS
    Все. Спокойной ночи.

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

Похожие темы

  1. плк63-пм01 потеря байт
    от Elka в разделе ПЛК63/73
    Ответов: 35
    Последнее сообщение: 06.11.2012, 14:26
  2. потеря байтов в ответной посылке с периодом 4-5 с.
    от Смирнов Роман в разделе ПЛК1хх
    Ответов: 44
    Последнее сообщение: 23.04.2009, 07:16
  3. SysLibCom
    от demon в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 20.03.2009, 13:08
  4. ПЛК 150 и SysLibCom.lib.
    от Анатолий в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 13.12.2008, 13:48
  5. SysLibCom 16#FF
    от powerind в разделе ПЛК1хх
    Ответов: 28
    Последнее сообщение: 28.10.2008, 13:41

Ваши права

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