Еще один БК проект для подвесов - EvvGC 3/2axis Brushless Gimbal Controller
yadi.sk/d/id9tfbL5H3TVL Спасибо добрым людям,посоветовали как сделать ссылку на яндекс диске.Это рабочая проша поляка с гуи .
Когда подключал приемник (фриска+турнига) пришлось триммировать каналы. Иначе оси не стоят на месте , это чего за трабл ?
Вы его подключали уже на включенном подвесе или как
И еще было замечено что на провода от приемника до платы тоже помехи идут
помогают кольца
Да я его и так и так включал. Все равно , пока не оттримировал ауксованые оси убегали сразу после включения. После того как нашел нулевое положение (тримерами) все стало на свои места.
Наводится один аукс на другой. ТЕ если свободный аукс подключить, то все становится нормально. (это про аналог)
Скажите, пожалуйста, как в это контроллере организовано управление двигателями? Всмысле обратная связь. Судя по схеме, выходы трехфазных мостов просто подключены к выводам двигателей и больше никуда.
По идее в бездатчиковом варианте управления, выводы должны через делители идти еще и на входы ацп контроллера.
Гиры и аксели и есть обратная связь 😃
По инерциалке нельзя определить положение ротора относительно статора достаточно точно. А по рысканью так вообще невозможно.
Где обратная связь? На схеме ее нет
Главное работает )))
По инерциалке нельзя определить положение ротора относительно статора достаточно точно. А по рысканью так вообще невозможно.
Где обратная связь? На схеме ее нет
моторы то синхронные. пока срыва нет, магниты будут следовать за наведенным магнитным полем. называются bldc. гуглите
Я неплохо разбираюсь в двигателях, меня интересует какая схема управления реализована в этой плате. Хотел бы услышать ответ знающего человека
уже ж написали выше - ОС через гиро + аксель для коррекции горизонта
меня интересует какая схема управления реализована в этой плате
вот схема питания двигателей
полумосты, а не мосты. одновременно вкл все 3 фазы. ибо векторное управление.
ШИМ дергает транзисторы в полумостах на каждой фазе. поочередно открывает\закрывает транзисторы в верхнем и нижнем плече. в итоге на каждой фазе присутствует некое значение напряжения. это нам дает некий вектор магнитного поля. меняя значение ШИМ по некому закону(например по синуса со сдвигом для каждой фазы, но можно и трапецию или еще чего)
получаем вращение вектора. а так как мотор синхронный и вообще работает в режиме удержания, ротор поворачивается вслед за полем, на нужный угол, который мы отслеживаем по обратной связи в виде данных гироскопов\акселерометра.
Мы все здесь не плохо разбираемся в моторах но дело в том что дело не в моторах. Дело в удержании платформы гироскопа неподвижно. Кто будет это делать и с какими датчиками контроллеру наплевать, он хочет только одного что бы его слушались. Есть такое понятие пид регулятор. Математически отработанная модель расчетов для контролера с помощью которой и происходит удержание. Датчики на моторах нужны я полагаю для более эффективной работы самого мотора. Как всегда все просто есть моторы есть гироскоп и есть мозг в задачу которого входит то что ему велено а именно Держать.
Ребят, с тем что вы написали, я полностью согласен. Но это все не касается моего вопроса.
Для управления блдц, нужно знать положение ротора относительно статора (по крайней мере с точностью до полного электрического оборота).
Обычно применяют два способа это реализовать.
1 - в лоб: подключают 3 датчика Холла к статору, которые определяют одно из трех положений ротора.
2 - по обратной эдс: выводы моторов помимо трехфазного моста подключены через специальную схему из делителей напряжения и виртуальной земли, подключены к ацп контроллера. При вращении мотора, на неподключенную фазу наводится напряжение, по которому можно судить о положении ротора. Чем больше обороты, тем больше наведенное напряжение, тем легче детектировать положение. (именно этот способ чаще всего используется в хоббийных регулях т.к. дешевле).
Но в схеме этого контроллера нет ни того, ни того способа. Выводы моста подключены к движку и все. Меня это вводит в ступор, прощу мне помочь.
Зы: еще раз, по инерциалке определить положение ротора определить невозможно т.к. инерциалка не идеальная. Т.е. по горизонтальным осям еще куда ни шло, но вращение по вертикальной вообще измеряется с огромной ошибкой т.к. там не действуют акселерометры
Для управления блдц, нужно знать положение ротора относительно статора
нет, если это медленное вращение без опережения вектора магнитного поля (катушек) над полем магнитов на некий угол(иначе происходит срыв).
это скорее напоминает шаговые моторы. где поле создали туда и повернулся. у нас успевает ротор поворачиваться вслед за медленным поворотом магнитного поля.
то есть все дело в скорости вращения и мощности поля. в какой то момент ротор не поспевает за вращением поля катушек и появляется необходимость синхронизировать.
нет, если это медленное вращение без опережения вектора магнитного поля (катушек) над полем магнитов на некий угол(иначе происходит срыв).
это скорее напоминает шаговые моторы. где поле создали туда и повернулся. у нас успевает ротор поворачиваться вслед за медленным поворотом магнитного поля.то есть все дело в скорости вращения и мощности поля. в какой то момент ротор не поспевает за вращением поля катушек и появляется необходимость синхронизировать.
Согласен что мы можем создать поле, направленное в нужную нам сторону. Но на роторе ведь не один магнит, а довольно много. Это значит что есть много положений ротора, которые будут устойчивыми при заданном направлении поля. И мы не знаем к какому из них он устремится т.к. не знаем где он находится сейчас
Ребят, с тем что вы написали, я полностью согласен. Но это все не касается моего вопроса.
Для управления блдц, нужно знать положение ротора относительно статора (по крайней мере с точностью до полного электрического оборота).
Обычно применяют два способа это реализовать.
1 - в лоб: подключают 3 датчика Холла к статору, которые определяют одно из трех положений ротора.
2 - по обратной эдс: выводы моторов помимо трехфазного моста подключены через специальную схему из делителей напряжения и виртуальной земли, подключены к ацп контроллера. При вращении мотора, на неподключенную фазу наводится напряжение, по которому можно судить о положении ротора. Чем больше обороты, тем больше наведенное напряжение, тем легче детектировать положение. (именно этот способ чаще всего используется в хоббийных регулях т.к. дешевле).
Но в схеме этого контроллера нет ни того, ни того способа. Выводы моста подключены к движку и все. Меня это вводит в ступор, прощу мне помочь.Зы: еще раз, по инерциалке определить положение ротора определить невозможно т.к. инерциалка не идеальная. Т.е. по горизонтальным осям еще куда ни шло, но вращение по вертикальной вообще измеряется с огромной ошибкой т.к. там не действуют акселерометры
Все очень просто. Принцип такой же как и при управлении шаговым двигателем в режиме микрошага: подразумевается что срывов нет - те двигатель находится в расчетном угле в режиме удержания, при необходимости повернуть вал, контроллер выдает сигнал для поворота на определенный угол и дальше удержание - ос не нужна т.к. двигатель всегда отрабатывает поворот на нужный угол. При аварийном срыве с полюса или при запуске системы статус кво востанавливается по информации с гиры. Еще раз: ос нужна при срывах и при необходимости достигать высокой эффективности на бесколлекторнике при высоких оборотах (чтобы сдвигать вектор), здесь ос не нужна!
И мы не знаем к какому из них он устремится т.к. не знаем где он находится сейчас
не знаем , но потом то он все равно будет вращаться в магнитном зацеплении (эквивалент нашей системы это магнитная муфта), и мы повернем в положение нужное по данным акселерометра.
Инфа для Андрея. У меня почему-то не адекватно работает аналоговое управление ЯВом. Если долго держать джойстик, и резко опустить - ЯВ либо вобще не останавливается, либо останавливается через некоторое время. На ролле такого эффекта не наблюдается. Так-же на него не действует значение максимальных углов. Сколько угодно ставь - ЯВ поворачивается все равно по полной.
Все, понял. Спасибо огромное)
Приехала плата 1.3 с аирбота. Включил, и ну ни как не могу настроить. Прошивка с рцгупс. Что за фигня, до этого была китайская плата 1.2 за пять минут настроилась и прекрасно работала, пока я её не решил перепрошить и забыл снять джампера.
Плату 1.3 с аирбота пробовал с датчиком от 1.2, таже фигня, не настраивается. Подцепился терминалом к уарту4 на I2C лезут ошибки.
Как лечить? куда вешать кольца? к датчику или к плате?
И почему ошибок не было на 1.2 плате? (прошивки одинаковые) Железо и питание одинаковое, только плату поменял 😦