Сатабилизация скорости вращения.

Обсуждаем контроллеры компании Atmel.
Ответить
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

В общем-то вопрос более в "Микроконтроллеры и ПЛИС" но почему-то туда писать я не могу, пишу сюда:

Задача стабилизировать скорость вращения некого механизма в диапазоне 800-1700 неких условных импульсов в секунду(несколько 2-5 фиксированных уставок). (имеются в виду импульсы с тахогенератора). (Тахогенератор дает 10 импульсов на 1 оборот вала. 80-170 об/сек). Есть некое управляюзее воздействие в виде кода 0-255 (дес.) меняюшее скоросто 0-1900 имп/сек

Сформированные импульсы подаются на вход захвата микроконтроллера, с него-же каким-то образом (неважно) формируется управляющее воздействие. Микроконтроллер AVR не выжно какой, тактовая 12-20 МГц.

Сейчас замеряю длительноность импульсов по захвату таймера, она плавает в приличных пределах из-за неравномерности длительностей за 1 оборот, потому использую усреднение по последним 10 результатам замеров. Остался вопрос с алгоритмом регулирования (Си, Ассемблер). Необходима максимальная точности поддержания скорости в кратковременной переспективе (100-400 последовательных оборотов). Нагрузка постоянна но инерционна. Основная проблема отклонений скорости это изменение в аналогой части петли регулирования от температуры и гироскопические эффекты от измененя положения двигателя в пространстве (10 000 об/мин не самые маленькие шутки)

Данные о скорости 16 разр обновляются в каждом цикле захвата, уставка фиксирована, управляющее воздействие 8 разр. Других задачь микроконтроллер практически не имеет (только сброс в UART результатов замера скорости и выличин ее отклонения от необходимой за последнее время (макс/мин за 1 сек, 1 мин, 1 час).
Последний раз редактировалось Gudd-Head Пт мар 07, 2014 11:11:28, всего редактировалось 1 раз.
Причина: Сюда перенёс. Раздел "Микроконтроллеры и ПЛИС" закрыт и разбит на более мелкие разделы по тематике.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Сообщение ИС-пытатель »

Задача не так сложна, как кажется. Смысл - при помощи АЦП читаешь импульсы за промежуток времени ( скажем 200 мс ), а потом при помощи, например ШИМ или UART выдаешь либо скорость, с которой должен вращаться двигатель, либо (лучший вариант) команду на увеличение/уменьшение скорости. Надо только начать что-то делать.
Реклама
akl
Друг Кота
Сообщения: 4468
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Wladimir_TS писал(а):Сейчас замеряю длительность импульсов по захвату таймера, она плавает в приличных пределах из-за неравномерности длительностей за 1 оборот, потому использую усреднение по последним 10 результатам замеров. Остался вопрос с алгоритмом регулирования (Си, Ассемблер). Необходима максимальная точности поддержания скорости в кратковременной переспективе (100-400 последовательных оборотов). Нагрузка постоянна но инерционна. Основная проблема отклонений скорости это изменение в аналогой части петли регулирования от температуры и гироскопические эффекты от измененя положения двигателя в пространстве (10 000 об/мин не самые маленькие шутки)
По мне, Вам нужно изучить вопрос Импульсных систем авторегулирования (например Трахтенберг, Р. М. Импульсные астатические системы электропривода с дискретным управлением / Р. М. Трахтенберг . – М. : Энергоиздат, 1982 . – 168 с.)
Вымогатель припоя
Аватара пользователя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Сообщение ИС-пытатель »

Кстати, посмотри еще даташит. частота импульсов не должна превышать определенного отношения к тактовой частоте контроллера. Если не ошибаюсь не больше 1/4 тактовой. иначе контроллер может их не увидеть. Или часть + почитай про ПИД-регулирование
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

ИС-пытатель писал(а):Задача не так сложна, как кажется. Смысл - при помощи АЦП читаешь импульсы за промежуток времени ( скажем 200 мс ), а потом при помощи, например ШИМ или UART выдаешь либо скорость, с которой должен вращаться двигатель, либо (лучший вариант) команду на увеличение/уменьшение скорости. Надо только начать что-то делать.
Дааные о скорости у меня есть, схема управления есть, нужен только алгоритм регулирования, который я реализую в микроконтроллере. Только АЛГОРИТМ !!!!
Реклама
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

akl писал(а): По мне, Вам нужно изучить вопрос Импульсных систем авторегулирования (например Трахтенберг, Р. М. Импульсные астатические системы электропривода с дискретным управлением / Р. М. Трахтенберг . – М. : Энергоиздат, 1982 . – 168 с.)
Суровая книга - но увы сложновато для меня. Пока во всем разберешся это очень надолго.
Реклама
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

ИС-пытатель писал(а):Кстати, посмотри еще даташит. частота импульсов не должна превышать определенного отношения к тактовой частоте контроллера. Если не ошибаюсь не больше 1/4 тактовой. иначе контроллер может их не увидеть. Или часть + почитай про ПИД-регулирование
Чатота импульсов у меня не более 2 кГц тактовая 20 МГц !!! По моему отношение 10000 вполне нормальное.

С нуля я не напишу ПИД регулятор - плохо в голове укладывается. А просто пропорциональный уходит в генерацию с периодом в несколько секунд. Очень большая инерционность нагрузки. Реакция на воздействие до секунды (тоесть мы изменили воздействие и скорость начала меняться зачастую через секунду только). Заметно меняться. А микроизменения тонут в шуме. датчик кривой - фронты дрожат.

Потому и прошу готовый алгоритм или кусок текста программы.
Электрический кот
Аватара пользователя
Сообщения: 1073
Зарегистрирован: Вт май 22, 2012 19:29:06

Сообщение Foton-4n »

ПИД я сам не потяну я хз зачем он нужен! Недавно написал цифровой стабилизатор напряжения. успешно формирует опорное напряжение с точностью 1 отсчёта АЦП, использует дискретную и плавную подстройку. Даёт шум на выход этим повышается разрядность и точность этим достигается бездискретная работа.
Я сам мучился как было такая же проблема проскакивало и начиналась генерация всё оказалось проще! ШИМ нельзя крутить так просто и быстро, а медленно будет долго.
Тут релейная система в любой момент "можно вернуться/остановиться" и изменения прекратятся не залетая дальше. При быстрой регулировке используется принцип: скачем от текущего заполнения на крайнее при этом изменяем текущее, уже не пролетит назад крутить не придётся, как среднее значение выше, текущего заполнения.
Медленная: чисто релейный режим: если напруга ниже то скачок заполнения вверх НО только 1 на определённый шаг всё, выше вниз, соответствует на место. Если вдруг значение слишком часто скачт в одну сторону или вообще перестало скакать и упёрлось в край то изменяем заполнение.
Скачок вверх разрешается после скачка вниз, вниз послее вверх.
Скоростью быстрой и плавной подстройки можно определить режим под инерционность системы.
Значение скачка определяет уровень пульсаций они должны иметь определённое отношение к фильтру плавной подстройки и к разрядности АЦП, и в 5-10 раз выше шага плавной подстройки.
Прикрепляю проект от фонаря в котором это используется. Алгоритм думаю сможешь перетащить. Конечно может есть и другие более продвинутые но пока так.
Если это будет с тиристорный регулятор на переменке то принцип тот же. Вход не обязательно АЦП может и измеритель частоты функция работает с цифрами ей пофиг.
Отличие от аналоговых систем в цифре малость другая работа, разрядность ниже не позволяет так быстро изменить заполнение это можно лишь при пропорциональном режиме, такое возможно если скажем ОУ на вход поставить при требуемых отклонениях на входе было максимум отклонения тогда да программа будет значение значение отклонения и резко подстроить, а когда разрядности мало это не пойдёт будет перескоки каждый шаг и чем он крупнее чем больше перескок.
А когда у нас такая малая разрядность то говорить о таком решении сложно.

Для примера если кто не понял о чём я. Если скажем у нас требуется отклонения 1% для выхода точную настройку. То когда отклонения <1% плавной настройкой программа подстраивает, такое отклонение уже не важно при работе а полная точность достигается чуть позже после грубой настройки.

То есть 1 шаг измерения должен быть больше или равен 1 шагу перестройки, что бы перестраиваясь не было перескоков больше. Пример: шаг измерения 1мВ, шаг перестройки 0.5мВ то норма, а если шаг 2 мВ то будет скакать туда, сюда постоянно проскакивая нужное и не когда не удерживаясь на нём, а разрядность АЦП слишком мала к значению отклонения и это неприменимо.

На помощь приходит как раз релейный режим, он работает без задержек и без генерации, пусть значение скачет туда/сюда будет шум в пределах 1 шага измерения и всё это лучше чем гистерезис или генерация, но шум обезательно будет при таком методе. От шума в пределах +/- 1 шага не избавиться не как, даже если плавность перестройки будет в разы ниже измерения.
Перестройка не начнётся пока значение соотвествует когда он выйдет оно дёрнется обратно, возможно вылетит на 1 шаг в другую сторону и обратно.

Короче говоря это функция более похоже на аналоговый регулятор которые так же шумит немного шумит. Шум можно сгладить доп фильтром.
Частота шума пропорциональна частоте тактирования функции и постоянной времени на том где стабилизируется значение.
Фильтр может быть и программным в случае тиристорного регулятора. Короче если есть вопросы и предложения на счёт данной функции то пишите мне она очень важна как у меня на неё большие планы.

Зы если захочешь залить в МК и попробовать то всё рабочее недавно прошитое.
Кончено это не для публикации. Всё чисто промежуточные разработки

Если по 10 сек мерять частоту то настройка будет в течении минут :))) . Недопустимо тактирование функции выше частоты обновления данных обратки, то есть тактировать при поступлении новх данных.
Зы лучше корми сырыми данные с шумами и т.д. и поднимай фильтры.
И вообще если в обратку будут лезть всяких помехи не чего путёвого не получится.
Думаю что при таких низких частотах данных с 1 оборота достаточно дольше тянуть не надо.

Хотя думается мне что для тиристорного регулятора лучше без скачков (сам не проверял), при входе в планую настройку чем меньше разница тем медленнее крутим. Фильтр от частой перестройки не позволит скакать заполнению пока значение явно не начнёт выходить за пределы. Грубо говоря скачет заполнение стоит на месте, упёрлось в сторону то началась настройка. Фильтр лучше заменить на интегратор будет точнее.
Вложения
1.rar
(138.22 КБ) 141 скачивание
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

Для более лучшего понимания позволю себе задать несколько уточняющих вопросов :
Foton-4n писал(а):ПИД я сам не потяну я хз зачем он нужен! Недавно написал цифровой стабилизатор напряжения. успешно формирует опорное напряжение с точностью 1 отсчёта АЦП, использует дискретную и плавную подстройку. Даёт шум на выход этим повышается разрядность и точность этим достигается бездискретная работа.
Я сам мучился как было такая же проблема проскакивало и начиналась генерация всё оказалось проще! ШИМ нельзя крутить так просто и быстро, а медленно будет долго.
Тут релейная система в любой момент "можно вернуться/остановиться" и изменения прекратятся не залетая дальше. При быстрой регулировке используется принцип: скачем от текущего заполнения на крайнее при этом изменяем текущее, уже не пролетит назад крутить не придётся, как среднее значение выше, текущего заполнения.
А возвран к текущему заполнению когда идет - в следующем цикле или через сколько-то циклов или при смене знака ошибки ?
Foton-4n писал(а): Медленная: чисто релейный режим: если напруга ниже то скачок заполнения вверх НО только 1 на определённый шаг всё, выше вниз, соответствует на место. Если вдруг значение слишком часто скачт в одну сторону или вообще перестало скакать и упёрлось в край то изменяем заполнение.
Не совсем понял - мы увеличиваем текущее заполнение, проверяем величину ошибки или как ? Просто медленно ползём, изменяя заполение (управляющее воздействие) монотонно до вхождения ошибки в допуск ?
Foton-4n писал(а): Скачок вверх разрешается после скачка вниз, вниз послее вверх.
Это не приведет-ли к паразитной модуляции, мне она вредна. Мне требуется максимально стабильная скорость в пределах 1 оборота, если скорость медленно в течении секунд меняется - это нестрашно, а если будет кратковременное изменение - вот тут плохо.
Foton-4n писал(а): Скоростью быстрой и плавной подстройки можно определить режим под инерционность системы.
Значение скачка определяет уровень пульсаций они должны иметь определённое отношение к фильтру плавной подстройки и к разрядности АЦП, и в 5-10 раз выше шага плавной подстройки.
Что является фильтром - не очень понятно. Пусть разряжность входного слова где-то 10 бит (величина ошибки в +/-512 единиц укладывается), выходного - 8
Foton-4n писал(а): Прикрепляю проект от фонаря в котором это используется. Алгоритм думаю сможешь перетащить. Конечно может есть и другие более продвинутые но пока так.

Для примера если кто не понял о чём я. Если скажем у нас требуется отклонения 1% для выхода точную настройку. То когда отклонения <1% плавной настройкой программа подстраивает, такое отклонение уже не важно при работе а полная точность достигается чуть позже после грубой настройки.
Тоесть использовать 2 алгоритма - грубый для ввода величины ошибки в некоторый коридор и точное для минимизации насколь возможно (опять-же для исключения колебаний надо устанавливать допустимую минимальную величину ошибки при достижении которой в данном цикле регулирование не производиться)
Foton-4n писал(а): То есть 1 шаг измерения должен быть больше или равен 1 шагу перестройки, что бы перестраиваясь не было перескоков больше. Пример: шаг измерения 1мВ, шаг перестройки 0.5мВ то норма, а если шаг 2 мВ то будет скакать туда, сюда постоянно проскакивая нужное и не когда не удерживаясь на нём, а разрядность АЦП слишком мала к значению отклонения и это неприменимо.
Это-то понятно. Для справки сейчас использую усреднение по 10 замерам скорости, так как датчик имеет неравномерное распределение меток в пределах 1 оборота вала, а меток всего 10. Усредняя (скольжением) последнии 10 замеров я несколько эту погрешность невелирую. Основная проблема дрефа это изменение напряжения питания и тепловой дрейф элементов аналогового тракта - ЦАП, масштабирующего усилителя и усилителя мощности.
Foton-4n писал(а): На помощь приходит как раз релейный режим, он работает без задержек и без генерации, пусть значение скачет туда/сюда будет шум в пределах 1 шага измерения и всё это лучше чем гистерезис или генерация, но шум обезательно будет при таком методе. От шума в пределах +/- 1 шага не избавиться не как, даже если плавность перестройки будет в разы ниже измерения.
Перестройка не начнётся пока значение соотвествует когда он выйдет оно дёрнется обратно, возможно вылетит на 1 шаг в другую сторону и обратно.
Релейный нельзя - фазовая модуляция в пределах оборота.
Foton-4n писал(а): Короче говоря это функция более похоже на аналоговый регулятор которые так же шумит немного шумит. Шум можно сгладить доп фильтром.
Частота шума пропорциональна частоте тактирования функции и постоянной времени на том где стабилизируется значение.
Фильтр может быть и программным в случае тиристорного регулятора. Короче если есть вопросы и предложения на счёт данной функции то пишите мне она очень важна как у меня на неё большие планы.

Зы если захочешь залить в МК и попробовать то всё рабочее недавно прошитое.
Кончено это не для публикации. Всё чисто промежуточные разработки

Если по 10 сек мерять частоту то настройка будет в течении минут :))) . Недопустимо тактирование функции выше частоты обновления данных обратки, то есть тактировать при поступлении новх данных.
Данные поступают в каждом цикле регулирования, но они результат усреднения текущего замера с 9 предыдущими. Борьба с шумом датчика.

Foton-4n писал(а): Зы лучше корми сырыми данные с шумами и т.д. и поднимай фильтры.
И вообще если в обратку будут лезть всяких помехи не чего путёвого не получится.
Думаю что при таких низких частотах данных с 1 оборота достаточно дольше тянуть не надо.

Хотя думается мне что для тиристорного регулятора лучше без скачков (сам не проверял), при входе в планую настройку чем меньше разница тем медленнее крутим.
Это мы приходим к пропорциональному регулятору.
Foton-4n писал(а): Фильтр от частой перестройки не позволит скакать заполнению пока значение явно не начнёт выходить за пределы. Грубо говоря скачет заполнение стоит на месте, упёрлось в сторону то началась настройка. Фильтр лучше заменить на интегратор будет точнее.
А это уже интегральная ступень регулятора.
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

Программу вашу просмотрел - уж больно объемно - вычленить регулятор с первого раза не удалось. Может более точно укажете с какой по какую строку ?
Электрический кот
Аватара пользователя
Сообщения: 1073
Зарегистрирован: Вт май 22, 2012 19:29:06

Сообщение Foton-4n »

Это не приведет-ли к паразитной модуляции, мне она вредна. Мне требуется максимально стабильная скорость в пределах 1 оборота, если скорость медленно в течении секунд меняется - это нестрашно, а если будет кратковременное изменение - вот тут плохо.
Но во первых нет! Это шум кратной частоте тактирования. Как раз данный метод самый стабильный. У нас же есть интегратор/фильтр а без него быть просто не может, уровень скачка устанавливается таким что бы он не приводил к значимым изменениям но был в несколько раз выше разрядности измерения
А возвран к текущему заполнению когда идет - в следующем цикле или через сколько-то циклов или при смене знака ошибки ?
Тут как бы хитрость в том что: мы скажем имеет заполнение 100 перестариваем вверх прыгает в 1023 - 101, 1023 - 102, и.т.д, то есть среднее заполнение у нас примерное 560 получается так.
То есть оно искусственно выше или ниже, как только достигли сразу устанавливается текущее оно ниже искуственного и дальше роста не будет назад крутить не придётся уже. Не обязательно прыгать до максимума, этот скачок можно сделать на сколько надо шагов которые вписывается в систему, но такой метод позволяет моментально прекратить изменение и залёт в противоположную сторону.

А вот теперь тупое перекручивание заполнения: если будем крутить то когда у нас достигнет нужного текущее заполнение уже залетит далеко из-за энерционности, то есть если нам нужно для работы 300 то в момент достижения значение у нас будет получилось уже 500, и начнутся перекруты кончено фильтр их задавит и колебания утихнут НО зачем они нужны если можно без них?

Можно плавную сделать чисто на изменении заполнения без скачков но тогда понадобится фильтр что бы постоянно не перерегулировалось он внесёт задержки ясно дело.
Не совсем понял - мы увеличиваем текущее заполнение, проверяем величину ошибки или как ? Просто медленно ползём, изменяя заполение (управляющее воздействие) монотонно до вхождения ошибки в допуск ?
В том то и дело что! Опять быстро подстраиваем ошибку но в любой момент мы может остановиться без залёта вот в чём весь фиг то!
Тоесть использовать 2 алгоритма - грубый для ввода величины ошибки в некоторый коридор и точное для минимизации насколь возможно (опять-же для исключения колебаний надо устанавливать допустимую минимальную величину ошибки при достижении которой в данном цикле регулирование не производиться)
Гистирезис не самое лучшее (это тоже перескок но с большей амплитудой и на более низкой частоте), тогда будут дискретные перескоки, а если сделать на уровне шума то точность ограничена лишь разрядностью "измерителя" и может быть сколько угодно точная.
Вообще в принципе это 1 алгоритм, написан на скорую, можно сделать расчёт коэффициента и уровень скачка определять от минима до максимума.

Короче это почти аналоговая система эмуляция аналогового регулятора вот и всё, скачки рассматривайте как шум (оно так и есть), аналоговый ведь шумит когда мы до максимума поднимаем усиление что бы получить большую точность, так и тут точность в 1 отсчёт это логический предел метода.
По поводу 10 оборов а нафиг? За 1 оборот как бы не были расположены метки мы будем иметь время за которые они они прошли. Даже если взять не кратное значение меток но больше 1 оборота то страшного не чего не случится. Надо не усреднять а прогнать через интегратор будет намного точнее, в этом когда его нет могу и его дать.

По поводу релейного режима тут дело в том что это и есть возбуд как бы и генерация но частоте граничащей с рабочей в виде шума крайне малой амплитуды. Шум больше вписывается в любые системы чем гистерезис с дискретными перескоками приличной амплитуды или низкочастотная генерация с огромной амплитудой, плавная будет всегда на порядки медленнее если хотим получить амплитуду колебаний сравнимой с шумом от релейки. Например и будет шум в пределах 1 оборота скажем 0.1-0.3% я не думаю что это на что то повлияет, а гистерезис даст перескок сразу на 1-2%, или начнутся колебания на 3-10%. Поднимая точность разрядность измерения уменьшите относительный шум.

При 10бит АЦП напруга у меня колеблется 1-2 отсчёта, при 16бит было также но 2 отсчёта от 16бит было бы просто не чего.

Плавное изменение заполнения самый неудачный метод если есть задержки или придётся очень медленно крутить или будет залёты. Потому что: когда значение достигло мы не сможет вернуться на то значение которые прекратит изменение значение, то есть у нас есть инерционность. Аналоговый может резко вернуть нужно значение.

Можно плавно крутить но при достижении отскок должен быть быстрым вот и опять шум и релейный режим.

Pgravrd это данные для програмного AVR, при вносе изменений во входные данные обновляем расчёты Prgavrsubconf, тактирование самой AVR Pgravrsub:

Если хотите можно перейти на уровень тестирования у меня сейчас много горящих дел до сборки регулятора оборотов дойдёт не скоро, могу дать готовую прошику а вы попробуете с разными параметрами какие лучше устроят.

Генерация возникает на фоне задержек, где угодно в элекронике, не будь ёмкостей и задержек мы бы имели опять такие шум на бесконечно высокой частоте с бесконечно малой амплитудой при бесконечно высокой стабильности, в случае линейной зависимости шума бы не было. Цифра тут идеальна нет линейной зависимости бесконечно высокая точность (как только система зафиксирует ошибку 1 отсчёт) и шум на рабочей частоте с бесконечно малой амплитудой (1 отсчёт то что система способна зафиксировать).
Основная проблема дрефа это изменение напряжения питания и тепловой дрейф элементов аналогового тракта - ЦАП, масштабирующего усилителя и усилителя мощности.
Если в обратку будут лезть грязь будет колбасить если система быстрая, что бы не колбасило нужно снижать быстродействие то есть дать системе время на фильтрацию грязи.

Пропорциональный не получится при такой разрядности, это надо хотя бы 16бит а лучше 24бит.

У меня в фонаре гистерезисный перескок 1 разряда ШИМ 8Бит давал очень заметным перепад яркости на малом токе, шум был заметен на глаз в разы слабее, 2 фильтр сделал его вообще не заметным.
Короче мой вариант задумывался как пропорционально интегральный, но в виду малой разрядности от пропорциональной части вреда больше чем толку было бы потому я её заменил тут на быструю перестройку. Прогнозировать что то мне не чего не хочется как тут отдельная тема по этому поводу может оказаться даже и хуже.
Время быстрой перестройки от 0 до максимума должно в 2 или более раза больше отклика системы тогда генерации не когда не начнётся. Его можно определить автоматом и даже провести автонастройку.

http://robot-develop.org/archives/2833
Электрический кот
Аватара пользователя
Сообщения: 1073
Зарегистрирован: Вт май 22, 2012 19:29:06

Сообщение Foton-4n »

Забыл добавить можно скрестить интегральный с пропорциональным сделать размер скачка зависимой от уровня ошибки, это даст наименьший уровень шума и выведет его на максимальную частоту, и наивысшее быстродействие.
Друг Кота
Аватара пользователя
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск

Сообщение Леонид Иванович »

Похожую задачу решал в паяльной станции - там стабилизировал частоту вращения турбинки. Использовал ПИД-регулятор. Не могу сказать, что получилось хорошо. При удержании скорость болтается примерно на 0.2%. Но и сигнал таходатчика грязный - в качестве тахоимпульсов используются пульсации тока питания двигателя.
Вложения
tacho.gif
(43.61 КБ) 364 скачивания
Контактная информация:
Ответить

Вернуться в «AVR»