|
Вопросы о Trim5 Работа и применение контроллеров с сенсорной панелью Trim5. |
|
Опции темы | Поиск в этой теме | Опции просмотра |
08.04.2018, 20:35 | #1 |
Senior Member
Регистрация: Dec 2012
Сообщения: 164
Благодарил(а): 5 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Прыгает время цикла
На одном экране наложены друг на друга 10 элементов "график реального времени". У каждого из перьев отключается видимость. Настроил масштабирование выдачи данных из си. Включены видимости у всех перьев (10 перьев), все рисуется пиксель в пиксель. Т.е. программа выдает данные лоджику с определенной частотой и он их визуализирует.
Отключил видимость почти у всех графиков и все изменилось. Теперь лоджик отрисовывает данные быстрее и график едет влево. Конечно, я могу из программы включить видимость у всех графиков, чтобы нарисовать все правильно. Потом пользователь может отключить те графики, что ему не нужны. Не понятно, почему так происходит? Получается примерно так - видимость отключена, лоджик не обрабатывает графики и цикл программы снижается. Но это только предположение |
09.04.2018, 07:47 | #2 |
Senior Member
Регистрация: Dec 2012
Сообщения: 164
Благодарил(а): 5 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Прыгает время цикла
Цикл скана лоджика - это константа? Или он может быть меньше заданного, если программа позволяет?
|
09.04.2018, 08:38 | #3 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: VirtualBox Linux. Подключение к трим
Если все блоки успевают отработать за заданное время - то время цикла всегда постоянное.
Если вы не следите за этим фактором, то при включенных десяти графиках - вполне может возникать ситуация, когда лоджик не успевает отрабатывать все десять графиков за заданное время. Таким образом, время тика будет растягиваться, это губительно сказывается на обсчёте любых таймеров, привязанных к реальному времени. Вам следует использовать блок Device(Kernel), который умеет отображать заданный тик и реальный тик. Учтите, что реальный тик (для трима и смш4) должен быть значительно ниже заданного тика. Время тика задаётся, можно в свойствах самого проекта указать (в правом нижнем углу экрана), либо через блок SetTick. При длительном превышении реального времени тика - формируется системная авария. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
10.04.2018, 14:09 | #4 |
Senior Member
Регистрация: Dec 2012
Сообщения: 164
Благодарил(а): 5 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: VirtualBox Linux. Подключение к трим
Да, время цикла разное. Попробовал изменять не видимость перьев, и их толщину. Чтобы всегда рисовать одно и тоже число графиков. Но при толщине пера 0 график все равно рисуется (толщина 1)
Нельзя ли частоту выборок "график реального времени" привязать к какой-то стабильной частоте? |
10.04.2018, 14:30 | #5 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: VirtualBox Linux. Подключение к трим
Если у вас разное время цикла - значит вы допускаете такое, а это неприемлемо. Вы обязательно должны обеспечить фиксированное время цикла, в которое все блоки гарантированно будут отработаны. Увеличивайте время тика.
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
10.04.2018, 18:38 | #6 |
Senior Member
Регистрация: Dec 2012
Сообщения: 164
Благодарил(а): 5 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: VirtualBox Linux. Подключение к трим
|
10.04.2018, 18:41 | #7 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 020
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: VirtualBox Linux. Подключение к трим
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
10.04.2018, 19:08 | #8 |
Senior Member
Регистрация: Dec 2012
Сообщения: 164
Благодарил(а): 5 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Прыгает время цикла
А если стоит стоп для рисования? Ресурсы потребляются?
|
10.04.2018, 19:19 | #9 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 020
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: Прыгает время цикла
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
11.04.2018, 09:55 | #10 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Прыгает время цикла
Эксперименты показывают, что если время тика колеблется в диапазоне больше чем 10 мс - надо увеличивать заданный тик.
Такое поведение исходит, судя по всему, из особенностей работы с графическим ускорителем. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
FMR AIN время фильтрации | Max2114 | Вопросы о FMR и MRL | 23 | 03.03.2020 15:52 |
Сбилось время на SMH4 Trim5 (решено) | Sibiryak22rus | Вопросы о SMH4 | 51 | 06.07.2018 16:11 |
Время выполнения программы | Plastic_Enterprice(Yar) | SMLogix | 7 | 26.03.2015 16:11 |
Использование в летнее время режима проветривания | Avtomatic | SMConstructor (вентиляция) | 5 | 24.06.2014 17:02 |
Как оценить время выполнения программы в контроллере? | Arsie | ЧаВо - Часто задаваемые Вопросы | 0 | 04.10.2013 16:51 |