Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 21 по 30 из 34

Тема: Соединение TCP после обновления программы или БАГ в ПЛК110

  1. #21

    По умолчанию

    Да че спорить то? сделайте так чтобы при старте программы один раз выполнялось то что ниже и все... относитесь к этому как к наступлению зимы )))


    SysSockClose( 1 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 2 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 3 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 4 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 5 ); (* ЗАКРЫТЬ СОКЕТ *)

  2. #22
    Пользователь Аватар для dudanov
    Регистрация
    27.01.2013
    Адрес
    Сызрань
    Сообщений
    46

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    какое то высасывание проблемы ихз пальца, перепрошивка программы если это онлайн изменения вообще не приведит к перегрузке плк, о чем вообще речь тогда идет?
    так даже "горячее" обновление без перезагрузки приводит к неработоспособности кода вот в чем дело ))) уже смешно ))) все советуют как новичку, который только вчера познакомился с ПЛК ))) не хочу никого обидеть, мужики, спасибо конечно за советы...
    rm -rf /bin/laden

  3. #23
    Пользователь Аватар для dudanov
    Регистрация
    27.01.2013
    Адрес
    Сызрань
    Сообщений
    46

    По умолчанию

    Цитата Сообщение от Дмитрий Артюховский Посмотреть сообщение
    Да че спорить то? сделайте так чтобы при старте программы один раз выполнялось то что ниже и все... относитесь к этому как к наступлению зимы )))


    SysSockClose( 1 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 2 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 3 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 4 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 5 ); (* ЗАКРЫТЬ СОКЕТ *)
    Спасибо, Дмитрий, попробую так ) Но, во-первых, я думаю что не поможет, так как на момент обновления кода нет открытых сокетов, ну а во-вторых, это решение проблемы через одно место, с этим нужно детально разбираться и я думаю не нам, а разработчикам. А при подтверждении данной проблемы ее решать, а не выдумавать решения, вызывая в цикле SysSockClose со всеми возможными дескрипторами... Попробую, отпишусь...
    rm -rf /bin/laden

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

    По умолчанию

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

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

  5. #25
    Пользователь Аватар для dudanov
    Регистрация
    27.01.2013
    Адрес
    Сызрань
    Сообщений
    46

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    какие советы, вы же водите всех за нос, начинаете развиать темы, что событие нужно использовать перед перезагрузкой, которой как оказывается и нет. Я вот тоже могу сказать, что когда делал веб-сервер открывал сокет, отправлял ответ на запрос клиенту, закрывал соединение и открывал для следущего запроса и в работе у меня при заливке обновлений ни чего не зависало, Вы мне поверите или я для Вас не авторитет в этом вопросе, раз так почему я должен относится к Вам как опытному спецу
    Хорошо, попытаюсь объяснить все по порядку чтобы было понятнее. ПЛК стоит на объекте и реально работает в тестовом режиме, внутренняя программа постоянно дорабатывается и отлаживается, чтобы добавлять новый функционал, исправлять ошибки, от этого никуда не деться. При обновлении программы без изменения переменных или конфигурации ПЛК, то есть при возможности "горячего" обновления перезагрузки не происходит. А возникает эта проблема как при "горячем" так и при полном обновлении, что тоже естественно опробовано. Опробован также "ручной" сброс ПЛК из КДС, все это не помогает.

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

    Так что случаи немного разные. Извините если как то задел Ваше самолюбие.
    rm -rf /bin/laden

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

    По умолчанию

    спасибо, что заботитесь о моем психологическом самочуствии
    Только мне всёравно не понятны претензии к разработчикам, у Вас же проблемы при манипуляциях во время отладки, а не во время работы получаются, может перед прошивкой Вы его не целуете в правый торец,отсюда всё и вытекает.
    Чтоб развеять свои сомнения можно взять любой другой проект и поробовать происходит такая же ситуация или нет
    И так то я не только сервер тестировал, но и клиента тоже, вот например http://www.owen.ru/forum/showthread....ll=1#post83823
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  7. #27
    Пользователь Аватар для dudanov
    Регистрация
    27.01.2013
    Адрес
    Сызрань
    Сообщений
    46

    По умолчанию

    Цитата Сообщение от Дмитрий Артюховский Посмотреть сообщение
    Да че спорить то? сделайте так чтобы при старте программы один раз выполнялось то что ниже и все... относитесь к этому как к наступлению зимы )))


    SysSockClose( 1 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 2 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 3 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 4 ); (* ЗАКРЫТЬ СОКЕТ *)
    SysSockClose( 5 ); (* ЗАКРЫТЬ СОКЕТ *)
    Не помогает классическое в теле программы:
    Код:
    IF NOT _INIT THEN
    
    SysSockClose ( 1 ) ;
    SysSockClose ( 2 ) ;
    SysSockClose ( 3 ) ;
    SysSockClose ( 4 ) ;
    SysSockClose ( 5 ) ;
    SysSockClose ( 6 ) ;
    SysSockClose ( 7 ) ;
    SysSockClose ( 8 ) ;
    SysSockClose ( 9 ) ;
    SysSockClose ( 10 ) ;
    SysSockClose ( 11 ) ;
    SysSockClose ( 12 ) ;
    SysSockClose ( 13 ) ;
    
    _INIT := TRUE ;
    
    END_IF
    Может надо было продолжить и добавить еще с десяток? ))
    rm -rf /bin/laden

  8. #28
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    Проще в цикле через FOR.
    А количество n- можно и побольше.

    Если серьезно, то посмотрите какие сокеты после перезагрузке открыты.

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

    По умолчанию

    dudanov, одно время тоже мучился с этим.
    Попробуйте перед заливкой новой программы сделать заводской сброс (не холодный) и отпишитесь пожалуйста.

  10. #30
    Пользователь Аватар для dudanov
    Регистрация
    27.01.2013
    Адрес
    Сызрань
    Сообщений
    46

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    dudanov, одно время тоже мучился с этим.
    Попробуйте перед заливкой новой программы сделать заводской сброс (не холодный) и отпишитесь пожалуйста.
    не помогло...
    rm -rf /bin/laden

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Похожие темы

  1. Ответов: 19
    Последнее сообщение: 24.09.2021, 09:13
  2. Modbus, баг со связью или нет?
    от Boris_K в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 06.05.2014, 18:25
  3. Уснул ПЛК 110-60 после обновления прошивки
    от Баженов Николай в разделе Эксплуатация
    Ответов: 2
    Последнее сообщение: 09.08.2013, 20:48
  4. Баг или фича ТРМ151?
    от По самые по... в разделе Разработки
    Ответов: 21
    Последнее сообщение: 23.12.2009, 14:44

Ваши права

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