Добавлено: Пн Июн 08, 2009 20:11:40 Заголовок сообщения: Алгоритм определения конца измерения температуры
Судя по внешним проявлениям, тут народ не глупый... а я вот что-то притупливаю маленько... вопросец есть...
значит, я измеряю температуру цифровым способом с точностью выше 0,1°С... насколько выше - не скажу, т.к. измерить нечем, это чисто расчетные сведения, т.е. по расчету выше . измеряю без индикации, т.е. человек не видит ход процесса. датчик, само собой, инерционный, т.е. с момента начала измерения проходит некоторое время, пока температура датчика устаканится... НО! как ни крути - из-за высокой дискретности отсчета имеется неизбежное "дрожание" младшего разряда, иногда даже двух.
вопрос знатокам:по какому алгоритму можно определить, что процесс измерения завершен и надо результат выводить-обрабатывать? важный критерий - время "сходимости", т.е. нужен такой алгоритм, который не взирая на свойства датчика и среды позволит однозначно обнаружить момент выравнивания температур датчика и среды за минимальное время.
интересует именно алгоритм... я пока сделал так: делаю замер и через 1 секунду второй - если оба одинаковы, значит, все, конец. если нет - повторяю снова.
этот алгоритм хорошо работает для воды - у нее теплоемкость большая и прогрев датчика происходит быстро. другие среды, например, тело человека, при этом алгоитме дают верный результат с второй-третьей попытки...
Моя так думает: попробуй вычислить производную, т.е. скорость изменения температуры – практически получится измерение с упреждением. А дальше метод "прогноза-коррекции". Грубо: мы экстраполируем очередное значение температуры и корректируем управляющее воздействие по фактически измеренному значению в данной точке.
Насчет "дрожания" младших разрядов - по сути нужен ФНЧ (интегратор), сглаживающий (усредняющий) данные измерений за какой-то определенный промежуток времени.
усреднение делал по методу скользящего среднего - меряет долго и все равно порой ошибается. производная? так я примерно так и делаю - разница температуры за секунду и есть скорость... проблема в том, что я не знаю, как определить допустимый минимум этой производной... по мере приближения к истинной температуре за секунду - две не происходит прироста - и возникает ошибочное завершение измерения...
меня бы больше удовлетворили именно варианты алгоритма, а не пустые рассуждения про науку, ТАУ и прочее... знал бы прикуп - жил бы в Сочи... то есть, знал бы как - не спрашивал...
Не очень понятна цель.
Если наблюдается "дрожание" младшего разряда, то это видно на индикации? Или это- умозрительное заключение, основанное на теории АЦП-преобразования?
Процесс стабилизации температуры в идеале описывается логарифмической кривой, т.е. чем дольше измеряем, тем меньше отклонение температуры от конечной. так что в качестве критерия стабилизации можно выбрать изменение температуры за интервал времени.
Правда, здесь не учтено влияние источника температуры.
Если вся система-это что-то вроде термостата, при периодическом подводе температуры нагревателем, алгоритм может быть другим.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы