Motor Vibrometer - балансируем моторы с помощью полетного контроллера

SideWinder
AlexeyStn:

C какой частотой вращаются пропы у коптера? Скажем, 10-е винты на моторе 1000kv?

В описаных мной режимах будет около 2-2,5 тысяч оборотов в минуту. Разумеется зависит от батареи и регулятора.

8 days later
AlexeyStn

Провёл сегодня эксперимент с оптическим датчиком.

На внешней зеркальной поверхности мотора нарисовал чёрным маркером вертикальную полоску шириной 5мм. Наклейку с мотора снял. Датчик находится в 7 мм от поверхности ротора.

В результате момент прохождения ротора через ноль чётко фиксируется на любых оборотах, вплоть до максимальных (у меня на 1400kv, 3S и с 8x4.5 пропом это 200 об/c).

Значит, измерять вибрацию в привязке к положению двигателя вполне реально.

Теперь надо подключить MPU-6050, захватить с него данные и попытаться их синхронизировать с оптодатчиком.

Lexa_Doc

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

AlexeyStn

Cобрал стенд для снятия вибраций, имитирующий луч коптера. На луче стоит MPU6050, рядом с мотором оптодатчик, обрабатывает всё STM32F3 Discovery.

У акселерометра предельная частота сэмплирования 1 кГц, поэтому чтоб собирать достаточно точек на период, пришлось вращать пропеллер на малых оборотах.

С датчика снималось ускорение по оси X - перпендикулярной лучу горизонтальной оси.

Красный график - для нового целого пропеллера APC, синий график - для такого же пропеллера с отломанным на 3мм концом. На нижнем графике синхронизированные данные с оптического датчика.

Синусоиды чётко прорисовываются. Можно попытаться уменьшить шумы, усреднив данные за несколько периодов.

Таким образом, по амплитуде можно видеть, насколько разбалансирована ВМГ, а по фазе можно понять, где именно.

Теперь вопрос в том, как точно связать фазу синуса с положением дисбаланса.

Если из всего этого выйдет что-то толковое, то можно будет портировать с STM32 на Arduino и запускать такой тест непосредственно на полётном контроллере, а на луч всего лишь вешать оптодатчик и акселерометр.

Nesenin

те же яйца но с запуском на arduino

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

то есть это все дело, в зависимости от крепления, от оборотов, от дисбаланса вибрирует так, что никакой синусоиды на показаниях акселерометра не прослеживается.
я пока вижу способ решения в подборе опоры . в оригинальной статье там пружины были habrahabr.ru/post/207478/ надо че то придумать\подобрать.
ЗЫ обороты минимальные в районе 900об\мин

Nesenin

я тут провел маленькое исследование по конструкции стенда (применительно к поиску угла смещения масс и его уровня для чего на показаниях сенсоров надо получить\увидеть синусоиду).
Пришел к выводу что под каждую нагрузку нужен точно настроенный стенд.
Такой что б давал возможность совершать мотору собственные колебания с минимальным влиянием опоры (иначе в показаниях датчиков будет видно это воздействие и не видно исследуемой инфы). При этом есть предельный уровень дисбаланса, который сможет отследить стенд. Полагаю большинству и заморачиваться не стоит. Лучше уж методом тыка грузики подбирать (как в оригинале у автора темы).
но мне интересен стенд. поэтому продолжим.

попробовал крепление на 4 пружинах. жутко геморройная конструкция.

узкий рабочий диапозон. хрен изменишь характеристики. высокую точность получить не удалось

решил погуглить как оно собственно делается по науке. нашел тут www.cardanbalans.ru/balans.htm
качающуюся раму.
сделал

результат порадовал. система так и норовит войти вынужденные колебания с частотой мотора. невооруженным глазом видно (на малых оборотах) как раскачивается стенд вверх\вниз. кроме того есть возможность пружину менять и придумать механизм оперативного изменения ее жесткости\хода.

а еще надо попробовать сделать датчики

из пары катушка\магнит. да считывать показания наведенной ЭДС. потому что частоты акселерометра как то не хватает.

вспомнил что есть у меня фотик снимающий до 1000fps
снял на 240fps

youtu.be/P0WwIpTlyAA

частота вращения около 830rpm

PS. это достаточно хорошо сбалансированные мотор винт. качается все равно - значит точность высока.

Nesenin

хм. человек вон не заморачивался так в тисках и оставил луч с мотором только обернул мягкой пеной

youtu.be/fS5n3Qoue1c

продает наборчик 155$ www.dynexhobby.com
шлет данные в звуковую карту (линия микрофона). на компе прога на LabView писаная. собсно я в ней и делаю свою. все приколюхи из библиотеки можно надергать. что еще?
тема о балансировке www.rcgroups.com/forums/showthread.php?t=1769171 есть инфа о конструкциях стендов.

импеллер крепят по схеме крайней справа во втором ряду.
а вот человек из каши извлекает полезную инфу

youtu.be/eWWOqcSu8IY

крепление на демпферах. нда…
а еще он использует акселерометр ADXL345 пишет

the GY-521 which I understand is a MPU6050 looks a bit slow, it can sample only at 1khz for the accelerometer. The ADXL does it at 3.2 khz. Besides, the MPU6050 only has a I2C interface. For speed we need SPI and my program is made for that…

и о чудо у мну есть в запасе он (в составе GY-80).
diydrones.com/…/balancing-propellors-and-motors?co…
ну и в этом же сообщение ссылка на исходники включая код под arduino
ну круть! теперь можно что хош сделать.

2 months later
Sir_Alex

Класс, приятно смотреть что виброметр кто то реализовал из наших )))

У меня когда то была подобная идея, но руки так и не дошли до реализации. Кстати, как развитие идеи: Ставим на каждый луч, по акселерометру и сводим их на один мозг, дальше мозг анализирует вибрации на каждом луче и лампочками сигнализирует, если на каком то из лучей вибрации превышают порог. Ну типа, для квадрика - четыре светодиода (красный/зеленый), если все зеленые - можно летать, если какой нибудь красны - бяда )))

djdron
Sir_Alex:

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

была мысль поставить аксель в регулятор, круглый регуль под мотором и в нем все анализировать, пока делаю “квадратный” и так времени не хватает, руки дойдут сделаю)))

Nesenin

Хочу обратить внимание на необходимость именно “правильной” опоры для снятия показаний. Лучшие результаты из всего что я пробовал (а я пробовал много), получаются на качающаяся платформе. Она позволяет использовать резонанс для нахождения самого минимального дисбаланса.

youtu.be/sr50UQkcUMo

пружиной оперативно меняется частота колебаний системы. Обороты выставляются на эту частоту получаем резонанс. В итоге на показаниях отличный сигнал для работы.
см. отбалансированный мотор

На производстве похоже дешёвые моторы и не балансируют. Вероятность получить что то годное низка. Тем более говоря про сборку ВМГ. Хотя и такое бывает, если все части сделаны точно.
Вот видео как выглядит не сбалансированный ВМГ

youtu.be/cB8dtCDwkLI

Дисбаланс ужасный. Синусоида четкая, большая амплитуда.
А вот после работы (на той же частоте - резонансной).

youtu.be/6_ZJeKB5drw

Идеально! Я даже отдельно снял прогон полного диапазона оборотов.

youtu.be/JzeOvuKmOaw

Обратите внимание на провода - не колышутся. Даже старт\стоп не влияет.