Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 60

Тема: СПК107 - зависает после нескольких часов работы

  1. #11

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Можно, подключитесь через Putty и в терминале выполните команду top. См. СПК. FAQ, п. 14.9.

    У вас, судя по описанию, не СПК зависает, а программа уходит в очень долгий цикл.

    Как верно заметили выше - вряд ли кто-то разберется в проекте лучше вас, и как верно заметили вы - очень вероятно, что дело в архивации (некорректная работа с файлами может привести к печальным последствиям).
    Евгений, а не подскажите, что это за ошибка:
    Безымянный.png
    Она появляется сразу после "Пуска" программы...

  2. #12
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,141

    По умолчанию

    Цитата Сообщение от a_gricaj Посмотреть сообщение
    Евгений, а не подскажите, что это за ошибка:
    Безымянный.png
    Она появляется сразу после "Пуска" программы...
    Вероятно, оно связано с наличием галочки Мультикасание в Менеджере визуализации (СПК мультикасание не поддерживает). Не обращайте на него внимание, оно не влияет на работоспособность программы.

  3. #13

    По умолчанию

    Доброе. Не стал создавать тему, но ситуация похожа. Через несколько часов зависает. СОМ гаснет, РАБОТА нет, горит постоянно. Подключится кодесисом не могу. На визуализации есть часы реального времени, они останавливаются. Нажатие на визуализации ни к чему не приводят. Связи с этим несколько вопросов:
    1. Что происходит если сработает вотчдог? Я то привык, что перезагрузка, но когда был подключен кодесисом всплыло исключение вотчдога визутаска.
    2. Есть подозрения, что именно визуалиазция меня весит, к тому же факт из предыдущего пункта наводит на мысли. Читал, что не стоит группировать объекты на визуализации: это правда или наглая ложь?
    3. Сама визуализация состоит из кучи рисунков средствами кодесиса, которые сгруппированы и просто невидимы, если не нужны сейчас. Плюс различные кнопки которые выполняют несложный ST код и имеют изменяющуюся надпись. Таких элементов на экране более 1000, просто как правило они невидимы. Но отыскать какой элемент вызывает ошибку нереально. Их слишком много, зависание происходит далеко не сразу. Есть какие нибудь средства попроще?
    4. мэйн таск по монитору выполняется в среднем 2,5 мс, к ней привязаны опросы модулей, как я понял. С ними проблем не возникает. Цикличность мэйн таск 5мс. Поставлю больше и бывает пропускает датчики положения (не успевает опрашивать).
    Ну и еще вопросик, который давно меня мучает.
    5. Опрос модулей. Мы там ставим циклически, но без приоритета, как в задачах. Какой опрос будет происходить, если циклически вышло на один и тот же фрейм сразу 2 опроса?

    update: spktools и alarmmanager в проекте не использую, с файлами так же не работаю
    Последний раз редактировалось slonegd; 12.05.2016 в 08:44. Причина: уточнение

  4. #14

    По умолчанию

    4. У меня та же фигня с опросом модулей хотя и стоит 20 мс но опрос привязался к циклу мэйн таск, правда я опрашиваю через триггер,
    5 вопрос тоже интересует....


    По своей проблеме - отключил работу с файлами в примере для гистограммы, оставил только реальный режим, также оставил архвирование на SD - ночь пережил, пока все работает, еще подожду до конца дня...
    Последний раз редактировалось a_gricaj; 12.05.2016 в 09:38.

  5. #15

    По умолчанию

    Цитата Сообщение от slonegd Посмотреть сообщение
    5. Опрос модулей. Мы там ставим циклически, но без приоритета, как в задачах. Какой опрос будет происходить, если циклически вышло на один и тот же фрейм сразу 2 опроса?
    Вы задаете минимальное, а не гарантированное время опроса. Все модули опрашиваются циклически, поэтому если у модуля №5 уже настало время опроса, но программа еще не опросила модуль №1, то модуль №5 будет просто ждать своей очереди

  6. #16

    По умолчанию

    Цитата Сообщение от Осинский Алексей Посмотреть сообщение
    Вы задаете минимальное, а не гарантированное время опроса. Все модули опрашиваются циклически, поэтому если у модуля №5 уже настало время опроса, но программа еще не опросила модуль №1, то модуль №5 будет просто ждать своей очереди
    То есть создается очередь из опросов?
    Еще объясните, чисто гипотетически:
    фреймы 5мс
    опрос модуля 1 - цикл 10 мс
    опрос модуля 2 - цикл 15 мс
    больше модулей нет.
    на второй фрейм пошел опрос модуля 1
    к третьему фрейму (15мс от начала) первый еще не ответил, соответственно второй в очередь встал
    к четвертому (20мс) первый еще не ответил, второй по прежнему в очереди, но пришла очередь первого опять. Первый же не встанет в очередь, он ведь и так опрашивается?

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

    По умолчанию

    Цитата Сообщение от slonegd Посмотреть сообщение
    То есть создается очередь из опросов?
    Еще объясните, чисто гипотетически:
    фреймы 5мс
    опрос модуля 1 - цикл 10 мс
    опрос модуля 2 - цикл 15 мс
    больше модулей нет.
    на второй фрейм пошел опрос модуля 1
    к третьему фрейму (15мс от начала) первый еще не ответил, соответственно второй в очередь встал
    к четвертому (20мс) первый еще не ответил, второй по прежнему в очереди, но пришла очередь первого опять. Первый же не встанет в очередь, он ведь и так опрашивается?
    а что 16,17,18,19 миллисекунды уже отменили?
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  8. #18

    По умолчанию

    Цитата Сообщение от slonegd Посмотреть сообщение
    То есть создается очередь из опросов?
    Еще объясните, чисто гипотетически:
    фреймы 5мс
    опрос модуля 1 - цикл 10 мс
    опрос модуля 2 - цикл 15 мс
    больше модулей нет.
    на второй фрейм пошел опрос модуля 1
    к третьему фрейму (15мс от начала) первый еще не ответил, соответственно второй в очередь встал
    к четвертому (20мс) первый еще не ответил, второй по прежнему в очереди, но пришла очередь первого опять. Первый же не встанет в очередь, он ведь и так опрашивается?
    Сейчас не могу утверждать это со 100% вероятностью т.к. этот вопрос уже к разработчикам CODESYS, но мне реализация видится так:
    1) Старт контроллера
    2) Опрос модуля 1
    3) Опрос модуля 2
    4) Проверяем прошел ли цикл опроса модуля 1 если да - опрашиваем, если нет - переходим к шагу 5
    5) Проверяем прошел ли цикл опроса модуля 2, если да - опрашиваем, если нет - переходим к п. 4

    Поэтому очереди как таковой нету, а есть цикл опроса.

  9. #19

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    а что 16,17,18,19 миллисекунды уже отменили?
    Я в ступоре. Думал модуль сделал запрос или получил ответ и ушел до следующего фрейма. А он выходит еще и ответа дожидается между фреймами? Как он определяет сколько ждать? До следующей задачи?
    На примере понятнее.
    Мейнтаск 5 мс, среднее время работы 2мс
    Во время работы задачи, отображаемое в конфигураторе, входит работа с модбас модулями?
    Если входит, то почему тогда работа не ровна 5мс, что останавливает работу модбасмодулей?
    Если не входит, то как я понимаю, работа с модбас идет всё время, пока его не прервет следующая задача?

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

    По умолчанию

    Цитата Сообщение от slonegd Посмотреть сообщение
    Я в ступоре. Думал модуль сделал запрос или получил ответ и ушел до следующего фрейма. А он выходит еще и ответа дожидается между фреймами? Как он определяет сколько ждать? До следующей задачи?
    На примере понятнее.
    Мейнтаск 5 мс, среднее время работы 2мс
    Во время работы задачи, отображаемое в конфигураторе, входит работа с модбас модулями?
    Если входит, то почему тогда работа не ровна 5мс, что останавливает работу модбасмодулей?
    Если не входит, то как я понимаю, работа с модбас идет всё время, пока его не прервет следующая задача?
    Вы как бы доходили до места как на картинке?

    На первой вкладке есть тайм-аут, это время после которого контроллер уже не ждет ответа от конкретного слейва, на вкладке с кaнaлaми там где триггер, есть циклическое выполнение, ставить его равным циклу контроллера не стоит менее 20мс нормальной работы со слейвами не получится
    Изображения Изображения
    • Тип файла: png owen.png (21.5 Кб, Просмотров: 40)
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

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

Похожие темы

  1. Эмуляция работы спк107
    от Beard в разделе СПК1хх
    Ответов: 12
    Последнее сообщение: 25.03.2022, 09:51
  2. СПК107 - зависает при нажатии на кнопку
    от a_gricaj в разделе СПК1хх
    Ответов: 2
    Последнее сообщение: 02.02.2016, 19:17
  3. Зависает визуализация СПК107
    от Denis_ в разделе СПК1хх
    Ответов: 9
    Последнее сообщение: 30.12.2015, 12:24
  4. Зависает СПК107
    от Deoxes в разделе СПК1хх
    Ответов: 3
    Последнее сообщение: 27.02.2014, 16:31
  5. Ответов: 5
    Последнее сообщение: 20.12.2013, 11:10

Ваши права

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