Контроллер для кордовых электричек
на неопознанном моторчике измерения на нескольких оборотах дали следующие цифры
значения достаточно условные, потому как обороты на тахометре немного плавали,
свет не стабильный и моторчик в руках
и частота на осциллографе тоже немного гуляла, по тем же причинамм.
обороты | частота меандра | делитель |
---|---|---|
2700 | 310 | 8,7 |
4200 | 480 | 8,75 |
4380 | 500 | 8,76 |
6950 | 800 | 8,68 |
Т.е. коэффициент можно условно считать 8,75
Ничего не понимаю
Так тахометр тоже может врать, а вернее скорее всего и врет.
Надо распаяться на транзисторе регулятора, где управляющий сигнал с контроллера и посмотреть, что там происходит и с ним сравнивать.
Еще интересен вопрос, а если взять другой мотор, любой, делитель будет так же 8.75 или нет?
в регулятор не хочу лезть ), задача сделать предельно простой вариант.,
другой мотор попробую завтра.
скорее всего “делитель” будет меняться в зависимости от параметров мотора.
отсюда надо будет подумать, как реализовать программирование требуемых оборотов.
например сделать калибровку, выше уже писал варинт
У меня вопрос, а оборот, это ведь когда отработают все три фазы? А мы меандр строим по двум фазам или трем?
по трем его построить не получится, это разница между фазовыми сигналами
ну я и тормоз )))
обороты в минуту, а частота меандра в Герцах (единицы в секунды)
310 / (2700 / 60) = 6,89
480 / (4200 / 60) = 6,86
500 / (4380 / 60) = 6,85
800 / (6950 / 60) = 6,9
отклонение 2 процента, можно считать погрешностью измерений.
в общем все по науке, коэффициент пересчета Герц в обороты в секунду
равен половине количества магнитов.
думаю точность регулировки оборотов в 2 процента всех устроит )
Вполне, это скорее всего погрешность тахометра. И исходя из этого, для настройки оборотов, можно брать шаг 100.
пишу регулятор оборотов, сломал всю голову,
как часто надо проверять обороты мотора для корректировки.
период импульсов с формирователя на малых оборотах 2 миллисекунды,
пишу программу так, что бы на каждом импульсе считались текущие обороты,
это примерно 50 раз в секунду.
и сразу второй вопрос, начиная с какого отклонения оборотов следует принимать меры ?
там в принципе процесс будет простой,
если при измерении оборотов отклонение больше или меньше <дельта>,
таймер будет <уменьшать>/<увеличивать> частоту PWW на входе в регулятор.
упростил задачу, сейчас Ардуина считает время на один оборот в микросекундах,
вот это время и будет браться за основу для автоматической регулировки.
иначе придется лезть подключать плавающую арифметику, а ресурсы Меги 328 не бесконечные.
придумал !!! как избежать плавающей математики.
при старте программа, пересчитывает требуемые обороты мотора в микросекундах на один оборот.
сразу считаем дельту, это допустимое отклонение, например 5 процентов в каждую сторону.
прелесть подхода в том, что этот расчет делается только один раз.
обработчик прерываний считает количество прерываний от кросс платы
и сравнивает их с количеством полюсов мотора деленным на два
получая тем самым время в микросекундах на один оборот мотора
А дальше все просто, полученный результат измерений сравнивается с требуемым
если результат меньше требуемое значение минус дельта - обороты больше требуемых,
то уменьшаем длительность импульса PWM, уменьшаем обороты мотора.
и наоборот, если результат больше “требуемого значения плюс дельта” - увеличиваем длительность PWM.
А подсчет полюсов? Вручную?
А подсчет полюсов? Вручную?
считать магниты или брать в описании мотора
других вариантов я не знаю.
Тогда в таймер добавить поле для записи параметра, не забыть. Или можно посчитать по обратной эдс , когда фаза неактивна. Нашел скетч esc на базе atmega48, там отслеживается обратная эдс, и на ее базе можно сделать аварийное отключение мотора, если мотор не вращается. Если нужно, скину скетч завтра.
пусть будет.
а пока дописал кусок автоматической регулировки оборотов.
сейчас думаю, как его проверить, варианта два
- использовать источник питания с изменяемым напряжением, но такого у меня нет
- увеличить нагрузку на мотор, установленный на стенде, даже не представляю как
есть третий вариант, поставить на средних оборотах (дабы не сгорел) и ждать пока мотор выкушает батарейку,
а в процессе следить за напряжением и оборотами мотора,
вот только батарейки 2S у меня все от 2500 мАч (питание борта бензинки),
а тестовый моторчик маленький и кушает в пике 1,5А,
это cколько же времени мне придется ждать хоть какой то результат ?
когда фаза неактивна
все равно надо знать количество полюсов
- увеличить нагрузку на мотор, установленный на стенде
…
грузить генератором (любой маленький эл двигатель на магнитах)
не представляю как ❓
если имеется в виду, присоединение к валу другого мотора в качестве генератора,
то совсем не вариант, моторчик в наличии только один, да и очень маленький )
сегодня попробую “притормаживать” с помощью ватки на конце зубочистки,
теоретически должно сработать.
Регулируемый источник питания нужен для настройки " батарейка садится а обороты держим"
А для нагрузки двигателя цепляем ему на вал такой же моторчик (или мощнее) в качестве генератора, к генератору цепляем выпрямитель (трёхфазный выпрямитель Ларионова) и к выпрямителю цепляем нужное количество лампочек. Количеством лампочек регулируем нагрузку на двигатель.
Регулируемый источник питания нужен для настройки " батарейка садится а обороты держим"
Ардуинке фиолетово, по какой причине начали падать/расти обороты мотора,
то ли это изменение напряжения, толи изменение нагрузки на мотор,
метод увеличения/снижения оборотов только один, увеличить/уменьшить длительность PWM на входе регулятора.
имею траблу,
на графике время в микросекундах одного оборота мотора,
его считает ардуинка на основании прерываний, семь прерываний на один оборот
на данный момент выставлены 2500 оборотов/минуту, ну или 24000 миллисекунд на один оборот
отклонения это это погрешность измерений
это данные о времени одного оборота мотора.
очевидно, что далеко не все переходы через магниты фиксируются. буду думать, как побороть
возможно схема преобразования не оптимальна, срез фильтра например не соответствует …
эти всплески “вниз” влияют на работу регулировки оборотов
в общем предстоит подумать над фильтром помех,
которые периодически проскакивают через операционный усилитель.
попробую поиграть с RC цепочкой.
честно говоря, совсем не ожидал такого течения событий ))
ну или 24000 миллисекунд
микросекунд