Перейти к содержанию
    

Как у сервомоторов меняют скорость вращения?

1 hour ago, whale said:

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

А другие участники этого форума это гавном не называют. Да и не триж года разрабатывать плату с 20 простецкими компонентами?

1 hour ago, whale said:

Кстати сомневаюсь что там реализовано векторное управление.

В этом как раз и был мой основной вопрос из-за которого я и открыл этот топик. При внимательном изучении схем по ссылке, что я приводил выше и того, что напаяно на ESC в бордах с алиэкспресса, я не нашел на этих бордах чего-то, чтобы указывало на векторное управление. Так как аудитория здесь утверждает, что готовые блоки ESC достаточно надежные, и я могу подтвердить, что в моем случае, они "похоже" надежны на >30% мощности, значит обычное управление по свободно висящей катушке дает достаточно хорошую точность. Да и прикрутить туда чего-то еще - думаю, большой проблемы не будет. На крайняк, посажу на вал мотора махонький магнит и по нему буду знать точное положение, однажды его отградуировав к самим катушкам на большой мощности. Делов-то.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 hours ago, iiv said:

В этом как раз и был мой основной вопрос из-за которого я и открыл этот топик

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

Хотите чтобы  просто летало - купите готовый нормальный контроллер у всех нормально летает и у вас будет но на чужих программах.

7 hours ago, iiv said:

А другие участники этого форума это гавном не называют

На меге можно сделать только самое простое дубовое тригерное управление, вроде коллекторного двигателя, никакой математики там нет и в помине.

Нужен более быстрый а желательно специализированный мк под эти цели, изучение его и будет вторым этапом.

Изменено пользователем whale

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, whale said:

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

то есть давайте резюмируем то, что мне надо, а не флейма ради.

 

Скажите, пожалуйста, правильно ли я понимаю, что квадрокоптерные моторы, расчитанные примерно на 10-ти дюймовые пропеллеры, реально могут дать больший КПД, если заменить в них тригеррное управление на векторное управление?

Каков примерно прирост КПД и/или динамики можно ожидать? Вот например, сейчас я имею примерно тягу 200г с такого мотора при потреблении ESC порядка 40Ватт. Во сколько это можно улучшить?

Каков прирост динамики можно ожидать для таких же моторов? Сейчас со штатным ESC я разгоняюсь с 30% до 70% примерно за 2 секунды, можно ли на векторной тяге эту характеристику улучшить, и, если да, то на сколько?

Правильно ли я понимаю, что векторую тягу можно имплементировать только на моторах с какой-то дополнительной связью по положению вала, и напряжение на свободной обмотке никак не позволяет затабулировать этот режим?

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

3 hours ago, whale said:

Нужен более быстрый а желательно специализированный мк под эти цели, изучение его и будет вторым этапом.

ИМХО, если делать через аппроксимацию в трехмерной таблице, как я написал выше, то для этого надо хранить трехмерный хорошо аппроксимированный тензор в памяти контроллера. С пяток контроллеров, на которых я работал, имеют достаточно памяти, а атмегу, хоть я и когда-то хорошо пользовал, стараюсь уже несколько лет не применять в современных проектах. Или Вы имеете ввиду еще что-то совсем специализированное? Если да, что именно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вот тут на 3кВт моторе насколько понял почти половину потерь наэкономили:  140Вт вместо 250, то есть целых 3%, 

https://iopscience.iop.org/article/10.1088/1757-899X/1032/1/012028/pdf 

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, iiv said:

то есть давайте резюмируем то, что мне надо, а не флейма ради.

Вот на все эти вопросы и ответите через пол годика изучения.

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

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

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

Кстати попробуйте позадавать ваши вопросы тут https://gpt-chatbot.ru/chat-gpt-ot-openai-dlya-generacii-teksta

иногда интересные посты выдает.

Вот например ответ его на первый вопрос :

 

 

Векторное управление (vector control) является эффективным способом управления моторами в квадрокоптерах. Эта техника управления позволяет изменять направление и скорость вращения каждого мотора независимо от других.

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

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

Важно отметить, что улучшение КПД моторов и пропеллеров само по себе не гарантирует значительное увеличение продолжительности полета или подъемной способности квадрокоптера. Это зависит от множества факторов, включая конструкцию и вес квадрокоптера, состояние батареи и эффективность системы электропривода в целом.

Таким образом, замена тригеррного управления на векторное управление в квадрокоптерных моторах, предназначенных для 10-ти дюймовых пропеллеров, может повысить КПД и общую эффективность системы, но необходимо убедиться, что квадрокоптер совместим с векторным управлением и имеет необходимые компоненты для его реализации.

 

 

 

Изменено пользователем whale

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, iiv said:

Каков прирост динамики можно ожидать для таких же моторов? Сейчас со штатным ESC я разгоняюсь с 30% до 70% примерно за 2 секунды, можно ли на векторной тяге эту характеристику улучшить, и, если да, то на сколько?

Порядок величин должен быть другой, "с 30% до 70%" за ~0.1с. Что-то не то с вашими ESC, и дело не в принципе их работы по ЭДС свободн6ой фазы.

 

3 hours ago, iiv said:

Правильно ли я понимаю, что векторую тягу можно имплементировать только на моторах с какой-то дополнительной связью по положению вала, и напряжение на свободной обмотке никак не позволяет затабулировать этот режим?

Есть бездатчиковые варианты векторного управления, с помощью наблюдателя по токам и напряжениям фаз. Можно использовать ЭДС (не прямо, а её влияние на токи) либо анизотропию импеданса статора зависящую от положения ротора.

 

3 hours ago, iiv said:

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

Очень странные идеи про трёхмерную функцию. По возможности надо делать чисто, а неучтенные зависимости забивать в таблицы это уже последнее, когда иначе никак.

 

3 hours ago, iiv said:

ИМХО, если делать через аппроксимацию в трехмерной таблице, как я написал выше, то для этого надо хранить трехмерный хорошо аппроксимированный тензор в памяти контроллера. С пяток контроллеров, на которых я работал, имеют достаточно памяти, а атмегу, хоть я и когда-то хорошо пользовал, стараюсь уже несколько лет не применять в современных проектах. Или Вы имеете ввиду еще что-то совсем специализированное? Если да, что именно?

Таймер для управления мостом, несколько АЦП с привязкой момента выборки к таймеру, вычисления с плавающей точкой.

 

15 hours ago, iiv said:

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

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

Изменено пользователем amaora

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

20 hours ago, amaora said:

Очень странные идеи про трёхмерную функцию. По возможности надо делать чисто, а неучтенные зависимости забивать в таблицы это уже последнее, когда иначе никак.

On 1/2/2024 at 2:03 PM, iiv said:

ИМХО, если делать через аппроксимацию в трехмерной таблице, как я написал выше, то для этого надо хранить трехмерный хорошо аппроксимированный тензор в памяти контроллера. С пяток контроллеров, на которых я работал, имеют достаточно памяти, а атмегу, хоть я и когда-то хорошо пользовал, стараюсь уже несколько лет не применять в современных проектах. Или Вы имеете ввиду еще что-то совсем специализированное? Если да, что именно?

Таймер для управления мостом, несколько АЦП с привязкой момента выборки к таймеру, вычисления с плавающей точкой.

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

20 hours ago, amaora said:

Порядок величин должен быть другой, "с 30% до 70%" за ~0.1с. Что-то не то с вашими ESC, и дело не в принципе их работы по ЭДС свободн6ой фазы.

Спасибо! Я тоже так думал, правда сейчас сомневаюсь.

Сейчас появились еще аргументы: а ведь момент инерции моего мотора надо преодолеть. Вот пусть внешняя часть, что с магнитами, у мотора весит 40г, и имеет диаметр 3см. Пусть сам пропеллер весит 12г и имеет диаметр 25 см. 70% - это примерно 150оборотов в секунду. Как я понимаю, чтобы только запасти энергию вращения мне надобно около 50Дж. Сам мотор на 200Ватт рассчитан. То есть уже физически 0.25с, а если учесть потери, то и 1с будет. То есть тут пока ничего не ясно, грешит ли мой ESC или инерционность мотора такая большая, что ESC или не справляется, или не хочет справляться.

Без пропеллера мотор от 30% до 70% разогнался за меньше, чем 1с, точно измерить не получилось, но визуально, примерно за 0.7с.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Примерный расчёт для вашего A2212.

Quote

Kv = 2200 rpm/v

Zp = 6 // количество пар полюсов, т.е. количество магнитов ротора делённое на 2

J = 8.5e-6  (кг*м^2)  // примерно, исходя ваших данных о моторе и пропеллере

Находим потокосцепление lambda = (60. / 2. / pi) / sqrt(3.) / (Kv * Zp) = 4.1767e-04 (Вб). Находим момент при 30А фазного тока M = 1.5 * Zp * lambda * 30 = 0.1128 (Н*м). Тогда, без нагрузки скорость должна меняться со скоростью S = M / J = 1.3267e+04 (рад/c^2). То есть, за 0.1с можно ожидать S * 0.1 * 60 / (2*pi) = ~12669 rpm.

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

Изменено пользователем amaora

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

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

×
×
  • Создать...