Повідомлення створено: 25. 05. 2020 [16:58]
|
va.dzyuba
Владислав Дзюба
Автор теми
Зареєстрован(а) с: 20.06.2019
Повідомлення: 16
|
Добрый день. Потребовалось в проекте под Raspbian (на Raspbery Pi3b) реализовать вместе с собственно SCADA вычислитель с установленным тактом вычисления:
Такт 50 мс
Время выполнения вычислений около 25 мс при ненагруженном процессоре.
По мере увеличения количества сессий росла нагрузка на процессор и было обнаружено что вычислитель не держит такт.
Для контроля такта на шину GPIO был выведен сигнал вычислителя (1 в начале такта, 0 после окончания вычислений) после чего было обнаружено что:
- при нагрузке на процессор 50% так выдерживается, но иногда время выполнения становится близким к длительности такта
- при нагрузке процессора около 94% иногда происходит задержка запуска вычислителя (около 20 мс) соответственно такт уже "уплывает"
- при нагрузке процессора 100% задержки запуска вычислителя превышают 200 мс и появляются достаточно часто (раз в 20-30 циклов вычисления скриншот осциллографа во вложении)
Все процессы кроме вычислителя имеют приоритет 0, вычислитель имеет приоритет 99. Необходимые изменения в limits.conf внесены, при запуске вычислителя сообщений
про невозможность запуска процесса в реальном времени OpenScada не выдаёт.
Кто сталкивался, это нужны какая-то ОС с ядром реального времени или я что-то не так делаю и надо покопаться с настройками того, что есть?
[Повідомлення редагувалось 1 раз(ів), останній раз 25.05.2020 в 17:00.]
|
Повідомлення створено: 26. 05. 2020 [10:34]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Embedding_and_PLC#RT
http://oscada.org/wiki/File:QTCfg_sys_tasks_ru.png
Learn, learn and learn better than work, work and work.
Вкладений файл
|
Повідомлення створено: 26. 05. 2020 [14:58]
|
va.dzyuba
Владислав Дзюба
Автор теми
Зареєстрован(а) с: 20.06.2019
Повідомлення: 16
|
Роман, спасибо за ответ, но не совсем понял. Я вижу что на вашем скриншоте тоже есть пропущенные такты и задержка запуска при этом приблизительное соотношение времени исполнения к времени такта как у меня 1:2. Надо добиваться меньшего соотношения?
Насчёт дистрибутива OpenScada под Raspbian под ПЛК попробую.
На всякий случай положу во вложение файл с таблицей задач моего проекта.
Вкладений файл
Pi3bTasks.png (Тип файлу: image/png, Розмір: 598.38 кілобайтів) — 1680 завантажень
|