Контроллер для кордовых электричек
второй вариант, когда и если срастется прикрутить STM32
в WEB морде кнопка “Калибровка”, которая вызывает программку которая все делает сама прямо в поле.
и менять полетные обороты можно будет прямо со смартфона.
WEB мордочку я уже немного научился делать, осталось скрестить таймер с ней.
Еще раз, не правильно привязываться к оборотам, эта величина не постоянная, неизвестная, и она нам нужна просто какая то установившаяся.
При замене аккумулятора или винта, нам придется калибровать заново, да и на поле ноут никто не потащит. Аккумулятор меняем после каждого полета, калибровать?
Единственное что у нас постоянно, это диапазон , который мы можем задать и под него откалибровать регулятор.
и ваапче, как я понимаю кордовым важна линейная скорость,
фиксируете номинальные обороты на 75 процентов от максимальных (запас для гироскопа),
а дальше подбором пропеллера добиваетесь требуемой скорости.
а уж стабильность оборотов мотора в прямолинейном полете гувернер как-нибудь обеспечит
надо понимать, что гувернеру филетово напряжение на батарейке,
я ему даю “цифру” требуемых оборотов и он к ним будет стремится.
привязываться к оборотам, эта величина не постоянная, неизвестная,
это как раз та величина которую я могу измерить и отрегулировать программно,
для этого и служит гувернер с обратной связью от мотора, он РЕАЛЬНО измеряет и изменяет обороты.
при этом, гувернеру глубого по фиг греальная скорость модели, он будет держать заданные обороты,
пока хватает управляющего воздействия в виде диапазона PWM.
а вот линейная скорость не известна никак
если нужно, тогда давайте начнем городить трубки Пито и измерять скорость ))
Примерно да, так и есть, допустим, что линейная скорость зависит от оборотов мотора, а обороты мотора, зависят от положения “дроссельной заслонки”.
Как только гувернер видит падение оборотов, он добавляет газ , выравнивая их. На этом пассивный гувернер у нас отработал.
Но так же можно его сделать активным, а то как то 25%оборотов утилизировать на полет по горизонту, жалко.
да и на поле ноут никто не потащит.
WEB морда у меня работает на смартфоне, STM32 работает в режиме точки доступа,
интернет не требуется, завтра или скорее в субботу запишу маленькое видео с экрана смартфона.
но пока это сырой продукт (и даже не продукт вовсе, на работе в свободное время “упражнялся” с UI).
Так WEB страничка, которая ничего не делает, кроме изменения значений, кнопок и ползунков.
Веб морда это хорошая штука, но у нас сейчас вопрос с алгоритмом работы гувернера.
Но так же можно его сделать активным, а то как то 25%оборотов утилизировать на полет по горизонту, жалко.
никак, либо в полный газ летать, либо летать “с умом”, в смысле с гироскопом и гувернером.
я на самолете не летаю в полный газ, в горизонте максимум 1/2-2/3, на снижениях вообще 1/3
и только на вертикалях или силовых фигурах газ до полного.
с алгоритмом работы гувернера.
70 процентов от номинала в линейном полете и гироскоп с гувернером для поддержания скорости.
или 100 процентов и на фиг никакой гувернер с гироскопом не нужен.
покупаем за 1,5+ вариант по ссылке выше, нанка с кнопкой, никакого гироскопа никакого гувернера,
нажал кнопку, 20 секунд добежать до ручки, взлетел, летаешь заданное время и на посадку.
а кроме того, полеты “тапка в пол” на электромоторах дело совсем не благодарное
ни мотор ни батарейка не скажут спасибо.
никак, либо в полный газ летать, либо
Так почти сделали))) Просто если мы привязываемся к оборотам, которые вечно плавают, а алгоритм пытается их стабилизировать, и при этом таймер понятия не имеет о том, как эти обороты отрабатывает регулятор.
Но если мы обороты привяжем к сигналу pwm, и создадим сетку оборотов, то нам не надо подбирать сигнал, а просто перещелкиваем по клеточкам таблицы, как топливной иголкой на двс.
Вводим коэффициент усиления и получаем активный гувернер, который будет давать газу больше чем надо для просто ровных оборотов.
Просто если мы привязываемся к оборотам, которые вечно плавают, а алгоритм пытается их стабилизировать, и при этом таймер понятия не имеет о том, как эти обороты отрабатывает регулятор.
“плавали” (вчера) они только “внизу”, на 4000+ уже не плавали, а сегодня уже и “внизу” не плавают
на моторах с оборотами выше 6000 они вообще плавать не станут
Но если мы обороты привяжем к сигналу pwm, и создадим сетку оборотов, то нам не надо подбирать сигнал, а просто перещелкиваем по клеточкам таблицы, как топливной иголкой на двс.
слишком много табличек получится.
от напряжения от направления полета, по ветру или против ну и т,д.
есть гувернер, он держит заданные обороты, зачем таблички ?
он уже есть и работает, осталось его немного отшлифовать,
я сегодня уже не уверен буду я к нему вообще ПИД регулятор прикручивать или нет.
Вчера вечером я логику немного поменял с периодами опроса поигрался.
Вводим коэффициент усиления и получаем активный гувернер, который будет давать газу больше чем надо для просто ровных оборотов.
если не будет запаса по PWM то никакого газа дать не получится )
слишком много табличек получится.
Одна, как деления на трещетке топливной иглы, чем больше делений тем плавнее регулировка.
он уже есть и работает, осталось его немного отшлифовать,
Хорошо, ждем , я просто предлагаю немного другой подход, где можно опереться на ту величину, которую можно фиксировать. Ваш подход подобрать сигнал pwm, а мой задать его.
если не будет запаса по PWM то никакого газа дать не получится )
Так этот запас и остается, он никуда не девается, просто мы знаем сколько щелчков у нас до предела и можем этот запас регулировать.
Одна, как деления на трещетке топливной иглы, чем больше делений тем плавнее регулировка.
что должно быть источником для проведения “регулировки” ?
Мы имеем диапазон регулировки сигнала pwm 800-2200 , этот диапазон делим на количество шагов, например 1400мксек/140шагов и получаем, примерно 10мксек. Сколько оборотов, у нас в этот один шаг, мы можем померить при запуске мотора, и дальше уже шагами работать для регулировки оборотов.
Не каждый регулятор понимает такой диапазон. Стандарт 1000 - 2000 мкс.
Уже во всех скетчах, что находил в интернете используют диапазон 800-2300. Но этот параметр всегда можно задать в программе как мин и макс pwm.
И нам собственно все равно какой диапазон делить на шаги, хоть 1500, хоть 1000, хоть 500, просто под него надо выполнить калибровку регулятора, чтобы он понимал когда у него ноль или полный газ.
Эту таблицу шагов и уровня pwm, должен рассчитать сам таймер, при старте мотора. КР таймер делает нечто подобное, каждый раз перед взлетом, после задержки на то чтобы взять ручку. Он плавно поднимает до максимальных и потом опускает до рабочих. Это облегчает взлет и мы получаем реальные параметры системы непосредственно перед полетом.
Ардуиновская библиотека “SERVO” расчитана на сервы с отклонением 180° и диапазон сигнала там шире стандарта, с этим столкнулся когда собирал первый таймер CL-Pilot. пришлось чутка подправить скетч оригинальный.
мы получаем реальные параметры системы непосредственно перед полетом.
и ? а как он учитывает изменение напряжения батареи ?
на самом деле никакой информации не получается.
только установка рабочего диапазона PWM, но перед каждым полетом это не нужно,
мало того, это нужно только один раз, прописать в регулятор диапазон сигнала PWM.
у длительности PWM и оборотами мотора нет никакой связи.
самая первая версия таймера делала то же самое, она есть,
в ней даже изменение оборотов в зависимости от изменения тангажа реализовано.
Timer_for_Plane_два варианта с шасси и без ЕМНИП.zip
если я правильно помню, идея гувернера появилась от желания иметь постоянную линейную скорость полета
не зависимо от состояния батарейки
вернемся к баранам.
вы можете определится с требованиями к таймеру ?
я не летаю и никогда не летал на кордах, разве что один раз очень много лет назад и всего полтора круга.
очень трудно что то делать, когда не понятно, что же в итоге нужно.
и ? а как он учитывает изменение напряжения батареи ?
Ни как, так же по оборотам или как то еще, например по обратной эдс, как сам регулятор.
у длительности PWM и оборотами мотора нет никакой связи
Это как? А как вы их регулируете? Какой pwm соответствует 50%газа? А 20%?