Как у нас с трихограммой?

<< < (14/47) > >>

реношник:
теперь понятно.
 
Изначально когда писал функцию ПИДрегулятора предусматривал временнОй коэффициент, который зависел от промежутка времени между обращениями к этой функции.
Но потом пришел к варианту в котором просто устанавливается этот промежуток обращения к функции. По сути это то, что вы называете таймером.

реношник:
Вернусь к частоте ШИМ.
Хочу более обосновано показать мотивы по которым я делаю возможность для пользователя самостоятельно выбирать этот параметр.

К сожалению у меня в наличии только один привод и "мучать" буду только его. Но думаю, что показанных данных будет достаточно для аргументации моей позиции.

1 - собрана вот такая модель :


2 - первое, что смотрел это сигнал на самом моторчике при 50% ШИМ но разной частотой...

*** вот так выглядит дефолтная частота 500 Гц


*** теперь 1000 Гц


*** 5000 Гц


*** 9000 Гц



*** 11000 Гц



Думаю, что это первый аргумент...

Следующий пункт это пропорциональность и линейность изменения скорости вращения от процента ШИМ.
Измерения проводил так - после изменения %ШИМ моторчик работает пять секунд, а потом только начинается измерение.
Измеряю время за которое от энкодера приходит 10 импульсов. Из таких замеров формирую массив (до 250 элементов). Этот массив пропускаю через фильтр в котором выбираю наиболее часто встречающиеся значения для удаления шумов и ложных замеров (простое усреднение не понравилось).

Полученные данные свел в графики :



По моему тоже довольно красноречиво...

Хотя как вы ранее отмечали во всех режимах моторчик НЕ греется ...



Perelesnik:
Верю. Но зачем такие усложнения с ручным подбором пользователем частоты ШИМ - не понимаю. Для того, чтобы вручную подобрать оптимальную частоту, нужен в идеале осциллограф. Практичнее - чтобы была подпрограмма, перебирающая частоты и находящая оптимальную по данным с энкодера. В случае наличия такой подпрограммы калибровка частоты будет происходить в полностью автоматическом режиме, то есть, пользователю вручную ничего подстраивать не придется.
Единственно, режим калибровки не должен стартовать при каждом включении аппаратуры, а включаться принудительно.

И снова же, практическая ценность подбора частоты здесь весьма условна. В моем алгоритме достаточно, чтобы при 100% ШИМ двигатель достигал своих максимальных номинальных оборотов. И не грелся. Эти свойства уже присутствуют во всех двигателях, с которыми реально приходится иметь дело, так как при их расчете, видимо, предполагалось, что требуется обеспечить работоспособность на широком диапазоне частот в различных устройствах без использования дополнительного низкочастотного фильтра.
Все остальное программа отрегулирует самостоятельно - сама подберет нужный ШИМ для обеспечения расчетных оборотов. И если на одном двигателе для одних и тех же оборотов нужно 50% ШИМ, на другом - 60% ШИМ, а на третьем - 40% ... на общей работе системы это никак не сказывается и пользователя абсолютно не волнует.
Получается очень гибкая система, в которой не важно, какой двигатель подключать. Важно только знать соотношение количества сигналов энкодера на один реальный оборот выходного вала редуктора и максимальные номинальные обороты двигателя.
Да, были у меня и старые еще советские коллекторные моторы, которые без фильтра (сопротивление + "электролит") не хотели стабильно работать. Но кто ими сейчас пользуется?
А показатель здесь важный всего один - греется мотор или не греется (недостаточно мощности или достаточно). Но опять же, с таким редуктором очень сложно загнать моторчик в режим недостатка мощности при работающем алгоритме регулировки ШИМ в зависимости от оборотов. Даже если заклинить выходной вал, программа быстро "добежит" до 100% наполнения ШИМ (где по осциллограмме уже будет ровненькая линия вверху, и частота "побоку"), что приведет скорее к проворачиванию вала в рабочем колесе, или к разрушению редуктора, или к отказу модуля питания... смотря где "тонко" будет, чем к фатальному перегреву самого моторчика.
Это чисто из опыта.

Единственный случай, когда Неизбежно нужно настраивать "идеальный" ШИМ для каждого конкретного двигателя - это если в системе отсутствует обратная связь (нет энкодера).

ЗЫ: блин... ну чем мы вот тут занимаемся 31 декабря? Извращенцы!

реношник:
Ну как бы не могу я с вами согласиться...  ???

Вы спрашиваете зачем это нужно пользователю... По моему убеждению - наличие возможности всегда лучше чем отсутствие таковой...

Ну и еще немного картинок которые мотивируют меня заморачиваться с частотами...

привожу два графика - первый для частоты 13 кГц, а второй для 500 Гц.

для каждой частоты я провел четыре калибровочные процедуру, хотел отследить корреляцию.







первое это "динамический" диапазон изменения частоты вращения, у дефолтной частоты 500Гц он совсем грустный...


еще более грустной для меня оказалась корреляция ....    :'(

даже наличие обратной связи (энкодера) как-то не мотивирует меня использовать 500Гц для ШИМа...
по моему с таким хаосом простая обратная связь это как рыбе зонтик.









Perelesnik:
Графики по частоте энкодера в одном масштабе? А то вижу, что при 13 кГц частота вращения "200" достигается на ШИМ 50% , а при 0.5 кГц та же частота при 20 % ШИМ.
И тогда получается, что "разброс" частоты вращения в обеих случаях имеет примерно одинаковую амплитуду (+- 25). По идее, амплитуда погрешности должна хоть как-то изменяться с изменением частоты.
Снова же, из опыта, такие "разбросы" может давать сам энкодер.
Я бы проверил, развязав "тахометр" и блок управления двигателем по питанию и сделав это на  отдельных Ардуинках + экранирование и укорачивание сигнального провода энкодера.
Такое хаотическое изменение скорости вращения двигателя аж на 25% (судя по графику) должно быль очень хорошо заметно даже не слух.
Еще вариант - потратьте несколько минут на изготовление фильтра на вход двигателя (RC цепочка), чтобы исключить влияние частоты ШИМ. Благо, осциллограф под рукой.
Просто было у меня такое, что эти энкодеры мне злостно мозг выносили своей нестабильной работой, вызванной чувствительностью к всевозможным наводкам (классическим использованием подтягивающего резистора не особо решается).

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница