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

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

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

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Логика в программе такая, если дескриптор = 0, то создаем новый сокет и работаем с ним. - неверная логика.

    Если сокеты кончились - то всё. Закрывайте сокеты.

    еперь в ручную присваиваю ему 0,

    Я просто поражён. Перефразируя - и тут я ему вскрываю грудину, меняю сердце - но пациент чего-то умер.
    Но помню, один пациент (160) выжил. Почему ваши пациенты такие хлипкие!?
    Да, вполне возможно неверная.
    Я надеялся на таймаут, на плк 160 работает, а на плк 150 нет. Я не понимаю ваших пациентов, они с одной фабрики, код один, а поведение разное, ПОЧЕМУ?
    Тем не менее это не решает мою проблему, сокет 1 всегда, ОТ плк всё хорошо, К плк по настроению.

    Да, присваиваю 0, чтобы в ручную создать НОВОЕ подключение, вникните, это тестирование сокета и проверка как оно работает, поражаться тут нечему.

    Покажите код который я смогу загрузить в плк 150\100\160 где плк клиент, он может принимать данные и это проработает пару суток, я сниму шляпу.
    Последний раз редактировалось Scream; 31.03.2016 в 14:25.

  2. #32
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    Да, вполне возможно неверная.
    Я надеялся на таймаут, на плк 160 работает, а на плк 150 нет. Я не понимаю ваших пациентов, они с одной фабрики, код один, а поведение разное, ПОЧЕМУ?
    Тем не менее это не решает мою проблему, сокет 1 всегда, ОТ плк всё хорошо, К плк по настроению.

    Да, присваиваю 0, чтобы в ручную создать НОВОЕ подключение, вникните, это тестирование сокета и проверка как оно работает, поражаться тут нечему.
    я использовал 160-ые, там всё должно было быть тоже самое, после 15 не закрытых сокетов, больше связи не будет. Либо какая нибудь эксперементальная прошивка у Вас была, либо в системных задачах при каждом пуске запускалась функция закрытия сокета
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

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

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    я использовал 160-ые, там всё должно было быть тоже самое, после 15 не закрытых сокетов, больше связи не будет. Либо какая нибудь эксперементальная прошивка у Вас была, либо в системных задачах при каждом пуске запускалась функция закрытия сокета
    Прошивка с сайта. Я понимаю что за собой надо убирать, хотя должно само всё закрыться по таймауту, но нет проблем отследить и вызвать одну функцию закрытия, это мелочи.

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

    По умолчанию

    Владислав, вы читали о том, что творится когда в конфигураторе есть tcp подключение и создавать с первого цикла свой сокет?
    Можете как нибудь прокомментировать?

  5. #35
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    Прошивка с сайта. Я понимаю что за собой надо убирать, хотя должно само всё закрыться по таймауту, но нет проблем отследить и вызвать одну функцию закрытия, это мелочи.
    да небыло никогда такого чтоб само всё закрывалось
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

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

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    да небыло никогда такого чтоб само всё закрывалось
    Я описал как работает, создал новое (активное) дескриптор = 3, жду, создаю новое, дескриптор = 2 и так по кругу сколько душе угодно (первый занят конфигуратором), сам ничего не закрываю, отсюда я сделал вывод что оно работает.

  7. #37

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    Да, вполне возможно неверная.
    Я надеялся на таймаут, на плк 160 работает, а на плк 150 нет. Я не понимаю ваших пациентов, они с одной фабрики, код один, а поведение разное, ПОЧЕМУ?
    Тем не менее это не решает мою проблему, сокет 1 всегда, ОТ плк всё хорошо, К плк по настроению.

    Да, присваиваю 0, чтобы в ручную создать НОВОЕ подключение, вникните, это тестирование сокета и проверка как оно работает, поражаться тут нечему.

    Покажите код который я смогу загрузить в плк 150\100\160 где плк клиент, он может принимать данные и это проработает пару суток, я сниму шляпу.
    Ну начнём с того, что 0-й сокет - это сокет CoDeSys - а вы его как-то используете. Как это работает - а х.з.
    Во вторых, без закрытия сокетов они кончаются. Внезапно.
    В третьих, коли нет закрытия - то нет и контроля коннекта, т.е. правильно: нет обмена/ошибка - закрываем и открываем заново. Этого не происходит, от сюда странное поведение.
    Ну ни наконец, почему же работает у Вас на 160-м. А кто его знает, какие ещё ошибки есть в коде. Иногда минус на минус дают плюс.
    Работать как описано, не должно!
    Последний раз редактировалось Филоненко Владислав; 31.03.2016 в 19:19.
    Тролль-наседка, добрый, нежный и ласковый

  8. #38

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    Владислав, вы читали о том, что творится когда в конфигураторе есть tcp подключение и создавать с первого цикла свой сокет?
    Можете как нибудь прокомментировать?
    Трудно это комментировать, т.к. вообще не понятно как это работает. Есть стандарты работы с сокетами, у нас в ПЛК1хх есть некоторые особенности, но в целом всё как в обычных сокетах. Нельзя обращаться к чужому сокету, менять его хендл и делать прочие ужасные вещи
    Тролль-наседка, добрый, нежный и ласковый

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

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Ну начнём с того, что 0-й сокет - это сокет CoDeSys - а вы его как-то используете. Как это работает - а х.з.
    Во вторых, без закрытия сокетов они кончаются. Внезапно.
    В третьих, коли нет закрытия - то нет и контроля коннекта, т.е. правильно: нет обмена/ошибка - закрываем и открываем заново. Этого не происходит, от сюда странное поведение.
    Ну ни наконец, почему же работает у Вас на 160-м. А кто его знает, какие ещё ошибки есть в коде. Иногда минус на минус дают плюс.
    Работать как описано, не должно!
    Вы меня не поняли, 0й никак не пользую.
    Про создание\закрытие сокета можно забыть, не в этом суть.

    Вы скажите мне прямо, SysSockRecv для Вас работает на 100% при продолжительном коннекте в пару суток на плк 100\150\160?

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

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Трудно это комментировать, т.к. вообще не понятно как это работает. Есть стандарты работы с сокетами, у нас в ПЛК1хх есть некоторые особенности, но в целом всё как в обычных сокетах. Нельзя обращаться к чужому сокету, менять его хендл и делать прочие ужасные вещи
    Да, стандарты есть, эти некоторые особенности надо собрать в кучу, это давно пора сделать.

    Хендл назначается САМ!
    Еще один вопрос.
    Если в конфигураторе есть tcp и самому через библиотеки работать с сокетами есть какие нибудь особенности на плк 100\150\160?
    Мешает ли конфигуратор работать со своим сокетом созданным через библиотеки?

    Дайте мне однозначный ответ, я вам поверю на слово и буду разбираться дальше.
    Если причина проблемы у меня, буду благодарен за тыканье носом в ошибку, если проблема на вашей стороне, давайте как то обходить её и предупреждать народ.
    Последний раз редактировалось Scream; 31.03.2016 в 21:09.

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

Похожие темы

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

Ваши права

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