EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

Работа программного контроллера с приоритетом 99


Author Message
Written on: 25. 05. 2020 [16:58]
va.dzyuba
Владислав Дзюба
Topic creator
registered since: 20.06.2019
Posts: 16
Добрый день. Потребовалось в проекте под Raspbian (на Raspbery Pi3b) реализовать вместе с собственно SCADA вычислитель с установленным тактом вычисления:
Такт 50 мс
Время выполнения вычислений около 25 мс при ненагруженном процессоре.
По мере увеличения количества сессий росла нагрузка на процессор и было обнаружено что вычислитель не держит такт.
Для контроля такта на шину GPIO был выведен сигнал вычислителя (1 в начале такта, 0 после окончания вычислений) после чего было обнаружено что:
- при нагрузке на процессор 50% так выдерживается, но иногда время выполнения становится близким к длительности такта
- при нагрузке процессора около 94% иногда происходит задержка запуска вычислителя (около 20 мс) соответственно такт уже "уплывает"
- при нагрузке процессора 100% задержки запуска вычислителя превышают 200 мс и появляются достаточно часто (раз в 20-30 циклов вычисления скриншот осциллографа во вложении)
Все процессы кроме вычислителя имеют приоритет 0, вычислитель имеет приоритет 99. Необходимые изменения в limits.conf внесены, при запуске вычислителя сообщений
про невозможность запуска процесса в реальном времени OpenScada не выдаёт.
Кто сталкивался, это нужны какая-то ОС с ядром реального времени или я что-то не так делаю и надо покопаться с настройками того, что есть?

[This article was edited 1 times, at last 25.05.2020 at 17:00.]
Written on: 26. 05. 2020 [10:34]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 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.
Attachment

RPi3_Raspbian9.png (File type: image/png, Size: 202.55 kilobytes) — 1695 downloads
Written on: 26. 05. 2020 [14:58]
va.dzyuba
Владислав Дзюба
Topic creator
registered since: 20.06.2019
Posts: 16
Роман, спасибо за ответ, но не совсем понял. Я вижу что на вашем скриншоте тоже есть пропущенные такты и задержка запуска при этом приблизительное соотношение времени исполнения к времени такта как у меня 1:2. Надо добиваться меньшего соотношения?
Насчёт дистрибутива OpenScada под Raspbian под ПЛК попробую.
На всякий случай положу во вложение файл с таблицей задач моего проекта.
Attachment

Pi3bTasks.png (File type: image/png, Size: 598.38 kilobytes) — 1680 downloads



12478