Показано с 21 по 30 из 44

Тема: SysSockRecv не работает

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    24.07.2012
    Адрес
    Россия
    Сообщений
    1,492

    Question SysSockRecv не работает

    Добрый день.
    Проблема с SysSockRecv.
    Не то чтобы он совсем не работал, перестает работать через час, полтора.
    код приёма такой, лишнее убрано
    Код:
    (* ### Чтение из сокета ### *)
    IF(diSocket > 0)THEN
        diRxCount := SysSockRecv(diSocket, ADR(rxBuf[1]), 255, SOCKET_MSG_OOB);
           IF(diRxCount > 0)THEN
                diLastRxCount := diRxCount;
                (*тут у меня вызов ФБ*)
           END_IF
    END_IF
    Логика работы.
    Плк считывает rfid метку и отправляет запрос на сервер для аутентификации карты.
    Сервер - мой, написал на java, смотрит по базе кто это и отвечает плк, приведенный код как раз принимает данные от сервера.
    Скептикам сразу говорю, я засомневался в себе и хотя в логах выводится после отправки массив я запустил wireshark и убедился что от плк и в плк пакеты идут.
    Дальше по логике, если сервер не отвечает, то плк через секунду повторяет запрос, опять же всё вижу, байты приходят на сервер и уходит ответ каждый раз но diRxCount = -1.
    В результате плк получает всёравно ответ, но через некоторое время (секунд 5 - 20).

    Так как я всё это еще разрабатываю, то перезаписывать программу в плк приходится очень часто, вот и грешу на codesys.
    Моё предположение что после N-го количества раз подключения из codesys SysSockRecv перестает корректно работать.
    После заводского сброса (из codesys) всё работает как надо и молниеносно.

    Еще мысли, ответ от сервера заранее неизвестен, но максимум 15 байт, считывать же я пытаюсь в каждом цикле плк 255 байт, по сути нет функции которая скажет сколько доступно для чтения поэтому так. Может тут что-то упустил?
    Последний раз редактировалось Scream; 18.02.2016 в 11:51.

Похожие темы

  1. ПЛК 160. Не работает...
    от Scream в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 31.10.2013, 10:44
  2. Как работает ПЧВ?
    от Lam-Ka в разделе Трёп (Курилка)
    Ответов: 2
    Последнее сообщение: 31.08.2013, 10:57
  3. Не работает трм-138 Р
    от Sanya-russ в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 18.01.2011, 16:02
  4. не работает трм-251.
    от КамасутриК в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 12.08.2010, 10:29
  5. не работает 2-я Pou
    от Дитрих в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 15.01.2009, 09:54

Ваши права

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