[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Там не просто RC звено . А пропорционально интегрирующий фильтр .
С RC звеном это хозяйство не работает .
По идее даже не успокоиться а постоянно будут присутствовать
паразитные колебания .
Это вызвано тем , что в кольце существует временная задержка , т е
вы получаете величину ошибки после процедуры сравнения ,ну и естественно не успеваете её компенсировать по ходу дела .
Опаздываете .В итоге всегда присутствует некоторая фазовая ошибка
в малом .Или перелетаем через 0 или не долетаем до него .
На следующем цикле контроля вычисленная ошибка будет менять знак .
С этим можно бороться статистическими методами .
Что я и сделал , прога подбирает длинну импульса регулирования
исходя из значения паразитного выбега за несколько последних
циклов контроля . В итоге так или иначе петля устаканивается .
Ну а аппаратный фазовый детектор выдает результат
мгновенно и задержка сравнима с временем установления фронта в
логических элементах .Поэтому можно компенсировать рассогласование
непосредственно в процессе сравнения фаз .
Если период частоты сравнения много больше
времени задержки то неопределённость уменьшается .
(для микроконтроллера это условие не всегда выполняется )
Например если частота сравнения 1 Кгц , соответственно период
1/F= 0.001 а время переключения вентилей фд = 10 +- 1ns ,
То поделив одно на другое , примерно можно сказать о величине
паразитного рассогласования в градусах от номинального значения.
E-mail: info@telesys.ru