Текущий архив: 2003.02.06;
Скачать: CL | DM;
ВнизWin NT, w2k как real-time платформа Найти похожие ветки
← →
Jeer (2003-01-21 15:16) [0]Подозреваю, что некоторые могут начать коситься после такого вопроса, но кто-нибудь занимался использованием указанной платформы в качестве управляющей в системах "мягкого" реального времени.
(О полноценных RT-OS можно не рассказывать, известно, но таковы условия данной задачи).
← →
Anatoly Podgoretsky (2003-01-21 15:55) [1]Есть разновидность NT Embeded
Но какова степень реалтаймовости?
← →
Sergo (2003-01-21 16:01) [2]>Jeer ©
Я делаю прибор, который следит за состоянием сети электропитания. Для оценивания значений амплитуды и частоты Win2k вполне подходила, а когда перешел к прогнозированию кратковременных провалов напряжения, то она уже перестала успевать (критерий для прогноза 20 мс), сейчас пробую все перенести на QNX.
← →
Mike B. (2003-01-21 16:07) [3]В свое время я долго мучился, и ничего не вышло.
И не я один. По-видимому, добиться какого-то гарантированного времени отклика на воздействия в Виндах (в т.ч. NT) невозможно.
← →
Sergo (2003-01-21 16:14) [4]
Mike B. © (21.01.03 16:07)
В свое время я долго мучился, и ничего не вышло.
И не я один. По-видимому, добиться какого-то гарантированного времени отклика на воздействия в Виндах (в т.ч. NT) невозможно.
Ага и у Рихтера сказано (не цитирую), что кванты времени распределяются случайным образом и никак закономерность не выявить.
← →
Jeer (2003-01-21 16:22) [5]Мне известно о разновидностях NT Embeded, XP Embeded.
Также есть расширение RTX для NT (модификация HAL).
К сожалению нет ни того, ни другого ни третьего.
Есть только то, что есть (NT или w2k).
Дал себя втянуть в один проект по управлению технологической установкой с очень сжатыми сроками (на ВСЕ - три месяца).:)))
Пром.компьютер используется как host-машина в основном для супервизорного (вкл/выкл/наступление медленных событий) управления готовыми регуляторами, которые и обеспечивают надлещее качество регулирования.
Тем не менее необходим основной управляющий цикл (около 50 мс).
В рамках этого цикла производятся все контрольно-измерительные операции. С точки зрения устойчивости к САУ требований не предьявляется.
Установка экспериментальная, поэтому многое в тумане.
Если она пойдет, то для опытных и серийных образцов могут быть использованы совсем другие решения.
Прежде всего интересует были ли значительные колебания в распределении времени между процессами, даже несмотря на поднятие приоритета нужного процесса.
← →
Странник (2003-01-21 16:23) [6]Квантование времени в Виндах подкодит только для "мягкой" реалтаймовости примерно в 80-120мс - меньше все начинает плыть.
← →
Ketmar (2003-01-21 16:27) [7]можно пихнуть Read-Time proiroty и молиться, чтобы винде самой не понадобилось чем-нибудь пошуршать. но разброс все равно (как мне помнится, лень проверять) будет серьезный - несколько десятков мс...
Satanas Nobiscum! 21-Jan-XXXVIII A.S.
← →
Jeer (2003-01-21 16:38) [8]На самом деле не так важно, что цикл будет слегка плавать, важнее выдерживание в среднем его расчетного (заданного) значения.
Первое решение - измерять реальное время текущего цикла и подстраивать следующий под недостающую разницу - проходит.
На 50 мс разброс идет 1-2 мс, что допустимо (но это при поднятии приоритета).
К сожалению пока (время, время,..) не удалось с"имитировать сторонний (некатастрофический) процесс, сильно ломающий данный цикл в рабочем процессе.
← →
Mike B. (2003-01-21 16:41) [9]> Jeer © (21.01.03 16:22)
Приоритеты не спасают.
← →
MBo (2003-01-21 16:52) [10]>Jeer
WaitableTimer не пробовали?
← →
Jeer (2003-01-21 17:06) [11]Пока только "смоделировал" это.
Через цикл с измерением текущего времени цикла (GetTick или QueryPerformanceCounter).
Но, скорее всего, здесь и лежит решение.
Основной процесс с real-time порождает поток с Time-critical.
И использовать очередь асинхронных вызовов процедур (АРС) и waitable timer.
Страницы: 1 вся ветка
Текущий архив: 2003.02.06;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.011 c