Еще один БК проект для подвесов - EvvGC 3/2axis Brushless Gimbal Controller

Anadimiy
Nesenin:

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

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

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

vovka_berd
Anadimiy:

Ребят, с тем что вы написали, я полностью согласен. Но это все не касается моего вопроса.
Для управления блдц, нужно знать положение ротора относительно статора (по крайней мере с точностью до полного электрического оборота).
Обычно применяют два способа это реализовать.
1 - в лоб: подключают 3 датчика Холла к статору, которые определяют одно из трех положений ротора.
2 - по обратной эдс: выводы моторов помимо трехфазного моста подключены через специальную схему из делителей напряжения и виртуальной земли, подключены к ацп контроллера. При вращении мотора, на неподключенную фазу наводится напряжение, по которому можно судить о положении ротора. Чем больше обороты, тем больше наведенное напряжение, тем легче детектировать положение. (именно этот способ чаще всего используется в хоббийных регулях т.к. дешевле).
Но в схеме этого контроллера нет ни того, ни того способа. Выводы моста подключены к движку и все. Меня это вводит в ступор, прощу мне помочь.

Зы: еще раз, по инерциалке определить положение ротора определить невозможно т.к. инерциалка не идеальная. Т.е. по горизонтальным осям еще куда ни шло, но вращение по вертикальной вообще измеряется с огромной ошибкой т.к. там не действуют акселерометры

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

Nesenin
Anadimiy:

И мы не знаем к какому из них он устремится т.к. не знаем где он находится сейчас

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

flygreen

Инфа для Андрея. У меня почему-то не адекватно работает аналоговое управление ЯВом. Если долго держать джойстик, и резко опустить - ЯВ либо вобще не останавливается, либо останавливается через некоторое время. На ролле такого эффекта не наблюдается. Так-же на него не действует значение максимальных углов. Сколько угодно ставь - ЯВ поворачивается все равно по полной.

T300

Приехала плата 1.3 с аирбота. Включил, и ну ни как не могу настроить. Прошивка с рцгупс. Что за фигня, до этого была китайская плата 1.2 за пять минут настроилась и прекрасно работала, пока я её не решил перепрошить и забыл снять джампера.
Плату 1.3 с аирбота пробовал с датчиком от 1.2, таже фигня, не настраивается. Подцепился терминалом к уарту4 на I2C лезут ошибки.
Как лечить? куда вешать кольца? к датчику или к плате?
И почему ошибок не было на 1.2 плате? (прошивки одинаковые) Железо и питание одинаковое, только плату поменял 😦

RTemka

Для начала я бы запитал от 3.3 и без моторов.
Если все ок значит реально давят наводки и пора магию колец применять.

RTemka

Да поможет тебе Толкиен.
Держите хоббита.

T300

скрутил провода от датчика в жгут и повесил колечко в тремя витками жгута. ошибок стало меньше.
Но ролл всё равно работает плохо. если быстро крутишь по отрабоатывает хорошо если медленно как бы заедает.
С эти что можно сделать?

Creator991

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

Davest

А я в тупике. Не могу прошиться. Плата 1.3. Ставлю две перемычки, включаю платку USB - COM, подсоединяю к UART1. Питание 3.3В, синий светодиод загорается. Открываю Flash Loader. Вытаскиваю перемычку Reset. Нажимаю Next - и такая ошибка:

Местами RX и TX менять пробовал. Моторы отключены от платы, питание тоже естественно. Моторы пробовал подключать - тоже самое. Датчик гироскопа-акселя к плате подключен.
Если подключиться к UART4 и запустить ГУИ - всё коннектится, чтение-запись происходит. Что делать, как прошиться? Хочу программу Андрея Гапонова залить…

Creator991
Davest:

А я в тупике. Не могу прошиться. Плата 1.3.

в места отмеченные красным впаиваете провода как можно короче и подключаете к TX RX и все шется на ура
да и скорость при прошивке чем ниже тем лучше

Davest

Подключены все 4-ре провода, дядьке никакому не верил. С перемычкой Reset потребление 8мА, без неё при попытке прошиваться - 21мА. Это я замерил, греша на питание, ибо взял от телефона USB - COM, он на микросхеме 2303, там есть 3,3В на 17-й ноге. Пробовал давать нагрузку - 40мА он мне выдал, еще увеличивать нагрузку не пробовал, ибо уже в 2 раза больше может выдавать, чем микроконтроллер потребляет. При замыкании Rx Tx эхо возвращается в терминале, да и связь есть в ГУИ с микроконтроллером. Если припаяться к транзисторам - это всего то уберет резисторы по 100 Ом из цепи, они вообще по идее должны на выходах 2303 находится, я же напрямки припаялся. Даже ферритовые колечки поставил на шину Rx Tx, может зря? Скорости пробовал самые разные вплоть до 2400. Все одно и тоже.
В общем, х.з. Дождусь еще другого переходника USB-COM, должен приехать скоро… Может тогда смогу перепрошиться…

RTemka

Стоп стоп 2303 это же RS232.
Как бы совсем не то что нужно для данного случая.
К ней на выход нужно макс 232 что бы из 232 TTL сделать.

RTemka

Не путайте RS232 и ТТL.
Логика то одна (UART), а уровни разные.

Davest

Тогда чего ж она читает и пишет в АРМ через UART4 на платке? В общем, х.з. Если померить напряжение тестером между землей и Rx или Tx оно там в районе 2,8В. Осциллографа нет под рукой к сожалению глянуть сигнал.

flygreen

Пробовал я через эту микруху шить. Ничего у меня не вышло. Данные читал, но не записывал. ТЧ не торопитесь и дождитесь нормального ФТДИ переходника.

neku

Григорий поделись как ты джойстик к плате подключаешь, я так понял что подойдут два простых потенциометра. Куда их втыкать и что в ГУИ надо настраивать. Прошивка у меня от Алексея.