Проект "Безколлекторная Лама4"

М_Ф
MPetrovich:

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

Слушайте… ёмое. У меня такая же ситуация была и я о ней писал. Я стараюсь ничего голословно не говорить. Я все-таки больше практик, чем теоретик 😁 Поставьте резкий старт и будет вам щастье. Никакие пинионы не сорвет. Или они у вас там от руки проворачиваются?

Barin
MPetrovich:

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

Ну не верю, что нельзя припаять, а ортофосфорную кислоту пробовал использовать? На радиорынке есть составы для пайки даже нержавейки. Держит замечательно. Циакрин тоже держит, пока нет нагрева. Слушай, а может греется мотор и срывает шестерню из за небольшого не заметного на глаз перекоса в сочленении шестерен? Зазорчик небольшой есть? У меня так было на RCавто, правда там усилие больше. А подшипник не пробовал смазывать, хотяб WD40?

MPetrovich
Volante24:

Да почему Вы зациклились на это ограничение по току? Давайте я спрошу по-другому: Вы стик газа в полете когда-нибудь доводите до 100%? Я понял, что нет, и до 90% он не доходит. Если же реально используются только от 0 до 70%, я и предлагаю сделать так, чтобы полный интервал движения стика соответствовал этим 0 – 70%. В конце концов, я Вас не убеждаю это делать, но это то, что я себе лично запрограммирую с самого начала!

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

Мне кажется, Вы слегка смешиваете в кучу разные особенности и тонкости бесколлекторников. Датчик там нужен не для “обратной связи” (по току, о которой Вы говорите), а просто для определения момента коммутации обмоток – то, что в обычном моторе механически делает коллектор. Просто это отслеживание момента времени по эдс индукции плохо работает на малой скорости вращения, других причин нет; поэтому на наших ESC запуск мотора до выхода на средние обороты осуществляется как бы вслепую, Для самолетов и вертолетов с этим проблем нет, так как на малых оборотах и противодействующий момент мал, в отличие от авто.

Отслеживание (а не простое ограничение) тока, протекающего через цепь батарея-регулятор-мотор и оперативное управление им, будет наиболее ОПТИМАЛЬНЫМ регулированием режима работы всей цепи. Именно обратная связь по току обеспечит максимальную длительность полётов, сохранность элементов схемы, регуляторов и батареи. Зачем сдвигать диапазон работы стика в низ? Он и так сдвигается по мере разрядки аккумулятора. А что даст ограничение ширины РРМ-импульса? Оно даст лишь приближение момента, когда верт не сможет взлететь.
Кстати сказать, при разрядке аккумулятора смягчаются реакции вертолёта на управление. Происходит как бы некоторое растягивание отклика модели на сигналы команд. Довольно приятно управлять вертом в таком режиме. В данном случае как раз и происходит ограничение протекающего через регулятор и мотор тока. Аккумулятор не может выдать большого тока, поскольку ёмкость его упала, а напряжение ещё вполне в норме. Это наглядный пример, иллюстрирующий мои задумки.

На мой взгляд резкий старт не сильно актуален, а вот расширение петли гистерезиса, позволяющее мотору не стопориться при сбросе газа, это весьма полезно. А каким макаром планируется это сделать?

Я не “смешиваю… особенности …б/к моторов”. Как работает датчиковый мотор я вполне представляю. Говоря про обратную связь, я имел в виду, что контроллер через датчики положения имеет оперативный параметр для регулироваения - ток обмоток. Что это, как не ОС?

Volante24
MPetrovich:

Я не “смешиваю… особенности …б/к моторов”. Как работает датчиковый мотор я вполне представляю. Говоря про обратную связь, я имел в виду, что контроллер через датчики положения имеет оперативный параметр для регулироваения - ток обмоток. Что это, как не ОС?

А коллектор – это обратная связь? И клапанный механизм? Датчики положения никакого отношения к регулировке тока не имеют, им упрявляет скважность PWMа, которая на рабочем режиме является просто функцией длительности PPM сигнала с приемника.

Отслеживание (а не простое ограничение) тока, протекающего через цепь батарея-регулятор-мотор и оперативное управление им, будет наиболее ОПТИМАЛЬНЫМ регулированием режима работы всей цепи.

Если Вам приятнее оставаться с некоторыми заблуждениями, я не стану больше стараться разубеждать. Позвольте лишь напомнить мысль, которую я уже подчеркивал: при том запасе по тяге, с каким мы имеем дело, уменьшение тяги с разрядом аккумуляторов полностью иррелевантно. Напряжение от полностью заряженной до разряженной батареи меняется всего на 20%. Если с запасом в три раза (и даже в 1,8 раза) вы долетались до того, что вам не хватает тяги для взлета, то ваши LiPo, по существующему мнению, в ближайшее же время отправятся в мусор.

расширение петли гистерезиса, позволяющее мотору не стопориться при сбросе газа, это весьма полезно. А каким макаром планируется это сделать?

Программно можно сделать почти все. Во-первых, нужно запретить выключаться любому из моторов по отдельности, только когда оба сигнала идут почти в нуль. В программе есть две переменные, описывающие сигнал управления по каждому мотору. Нужно добавить еще одну переменную (флаг, статус) мотора – работает/стоит. Делать преобразование переменных сигнала по принципу – если меньше, скажем, 10, то это 0, а больше – она сама. Или если больше 6 – она сама, а меньше – ноль. И сделать сами эти пороговые значения 10, 6 зависящими от существующего на данный момент статуса – мотор “включен” или “выключен”. Это можно реализовать дюжиной способов. А в программе это займет с десяток строчек (на канал).

MPetrovich

[quote=Volante24;808284]
А коллектор – это обратная связь? И клапанный механизм? Датчики положения никакого отношения к регулировке тока не имеют, им упрявляет скважность PWMа, которая на рабочем режиме является просто функцией длительности PPM сигнала с приемника.

А отчего все вышеперечисленные детали нельзя отнести к злементам обратной связи? Через коллектор, допустим, осуществляется не только контакт, но и отслеживается наличие тока в цепи. На самом деле это конечно условности.
Датчики положения как раз имеют отношение к регулировке тока, определяя момент переключения обмоток. Самой же силой тока в обмотке, безусловно, управляет скважность ШИМа.

MPetrovich
Volante24:

Если Вам приятнее оставаться с некоторыми заблуждениями, я не стану больше стараться разубеждать. Позвольте лишь напомнить мысль, которую я уже подчеркивал: при том запасе по тяге, с каким мы имеем дело, уменьшение тяги с разрядом аккумуляторов полностью иррелевантно. Напряжение от полностью заряженной до разряженной батареи меняется всего на 20%. Если с запасом в три раза (и даже в 1,8 раза) вы долетались до того, что вам не хватает тяги для взлета, то ваши LiPo, по существующему мнению, в ближайшее же время отправятся в мусор.

По Вашему выхлдит, что батарея должна таскать моторы вечно. При чём здесь запас тяги? Я гворил о ситуации, когда батарея после, скажем, 10мин. полёта уже слегка подсела и соответственно не может давать таких больших токов, какие она давала за 10мин. до этого будучи свежезаряженной.
И насчёт заблуждений тоже не могу не сказать. Дело не в заблуждении, а в том, что мне просто больше нравиться иная система регулирования и защиты. Согласитесь, что при ограничении тока путём ограничения длительности РРМ-импульсов, при разряде батареи скорее наступит момент, когда мотору для взлёта понадобиться ток такой величины, который при ограниченном РРМ-импульсе аккумулятор ему уже не сможет выдать. Иными словами, когда напор воды падает, чтобы компенсировать уменьшение расхода, нкжно побольше открыть кран. А если на кране стоит ограничитель полноты его открывания, то компенсировать уменьшение расхода не удастся. Так же и при ограничении РРМ не удастся компенсировать уменьшение ёмкости акк-ра и время полёта сократиться. Я же предлагаю ограничить ток в режиме сходном с источника тока, т.е. как не впирай газ при, допустим, заблокированном моторе, больше заданного значения тока не вопрёшь. Естественно, заданную максимальную силу тока надо выбрать “с запасом”, чтобы не ухудшать полётные характеристики.

Volante24:

Программно можно сделать почти все. Во-первых, нужно запретить выключаться любому из моторов по отдельности, только когда оба сигнала идут почти в нуль. В программе есть две переменные, описывающие сигнал управления по каждому мотору. Нужно добавить еще одну переменную (флаг, статус) мотора – работает/стоит. Делать преобразование переменных сигнала по принципу – если меньше, скажем, 10, то это 0, а больше – она сама. Или если больше 6 – она сама, а меньше – ноль. И сделать сами эти пороговые значения 10, 6 зависящими от существующего на данный момент статуса – мотор “включен” или “выключен”. Это можно реализовать дюжиной способов. А в программе это займет с десяток строчек (на канал).

Блин, ну не получается у меня так цитировать текст сообщения, как Вы! Научили бы, что ли?
Не понял, как всё-таки отследить, сам факт наличия или отсутвия вращения мотора? Флаги - это хорошо, но реально отследить, что ротор вращается имея из входных данных только ток через обмотки, не удастся. Это придётся лезть в мозги ESC - там по крайней мере отслеживается противоЭДС.
Про то, что “Программно можно сделать почти все.” Я вот ни фига сделать не могу, потому что в ассемблере не волоку. Хотя на уровне блок-схемы алгоритм построить могу. А Вы могли бы мне оказать воспомоществование в качестве шефской помощи, так сказать?

Volante24
MPetrovich:

Блин, ну не получается у меня так цитировать текст сообщения, как Вы! Научили бы, что ли?

Да я это по-пещерному – отвечаю, она дает цитату. Вырезаю, что не надо. А вставить новый кусок так – ставите quote в квадратных скобках, чтобы открыть цитату (а там может стоять все, что угодно), а чтобы закончить “цитату” ставите /quote в квадратных скобках.

Не понял, как всё-таки отследить, сам факт наличия или отсутвия вращения мотора?

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

Я сам в ассемблере, особенно ассемблере микроконтроллеров, почти ноль, но для этих задач там не так все сложно. Список команд есть, можно делать по аналогии с тем, что в программе уже есть. Сложности, скорее, в обращении с таймерами, портами, прерываниями, инициализация. А просто регулярная часть программы – это несложно. Так что добавлять алгоритмы обработки уже имеющегося сигнала – простейшее упражнение. Я пока разобрался, как немецкая программа работает, и как там нужно что сделать для таких усовершенствований, довольно понятно. Для регулировки расходов нужно лишь уменьшить 150 в -150*16 в двух строчках (желательно еще кое-что сделать, но необязательно). А дополнительное “триммирование” можно делать, изменяя константы 10 и 20 в последней части программы – только оно вряд ли будет хорошо работать в широком диапазоне. Но это просто для примера. А вот введение “proportional” по-хорошему потребовало бы более серьезного изменения.

MPetrovich

Вчера полетал на даче. Зажигал на пустом пока огороде. Вот когда я смог оценить КПД моторов в полной мере. На одной батарее отлетали больше получаса! Перерывы были только на передачу пульта из рук в руки и установке верта ровно для старта, поскольку летал не только я, а ещё мой 12-летний племянник и его батя. Главное, что я вынес из этих чумовых полётов - это то, что на улице без управления верхним ротором на сооснике делать нечего. Малейший бриз на высоте больше 5м сносит его нафиг и никакие усилия и впирания стиков на максимум не дают ничего, кроме перехлёстов. Моторы не греются совсем, то ли прикатались, то ли из-за обдува, но не греются и всё. Пр очередном падении с 5-6м оторвало провод питания одного ESC и на этом экстрим завершился.

MPetrovich
Volante24:

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

А отчего не использовать эту самую ЭДС и для своих целей? Снять с выводов мотора и отслеживать наличие импульсов ЭДС на них. Снимать молжно даже с одного вывода, синхронизируя по частоте питающего мотор напряжения, поскольку эта частота в регуляторе постоянна. Допустим, прошёл спад питающего импульса - снимаем наличие ЭДС, нет ЭДС - добавляем длительности РРМ, есть ЭДС - пропускаем до следующего прерывания.

Volante24:

Я сам в ассемблере, особенно ассемблере микроконтроллеров, почти ноль, но для этих задач там не так все сложно. Список команд есть, можно делать по аналогии с тем, что в программе уже есть.

Где посмотреть-то этот список команд?

Volante24
MPetrovich:

Вчера полетал на даче. На одной батарее отлетали больше получаса!

Вот это здорово! В какой это конечной конфигурации?

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

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

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

MPetrovich
Volante24:

Вот это здорово! В какой это конечной конфигурации?

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

Volante24:

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

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

Volante24
MPetrovich:

Где посмотреть-то этот список команд?

Поищите googleом ATTINY13, сразу найдете описание, PDF на 100 с чем-то страницах, на стр. 161 и 162 таблица с командами. А также есть очень полезный тьюториал от AVR. Спецы, наверное, еще что-нибудь получше посоветуют.

А отчего не использовать эту самую ЭДС и для своих целей? Снять с выводов мотора и отслеживать наличие импульсов ЭДС на них. Снимать молжно даже с одного вывода, синхронизируя по частоте питающего мотор напряжения, поскольку эта частота в регуляторе постоянна. Допустим, прошёл спад питающего импульса - снимаем наличие ЭДС, нет ЭДС - добавляем длительности РРМ, есть ЭДС - пропускаем до следующего прерывания.

Нет, буквально так не пройдет. Нужно же знать, когда ESC включает и когда выключает свой PWM. Он-то это знает, но чтобы его спросить, нужно внутрь программы лезть, а этого никто не может. А иначе нужно подпитываться к выводу самого процессора или затворам ключей, ну или вроде того, Питающая частота там вовсе не фиксирована, только на малый интервал времени. Короче, полно мороки, а для чего? Вращается мотор, или нет – проще датчик поставить,

MPetrovich:

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

Аккумулятор один или два?

MPetrovich
Volante24:

А также есть очень полезный тьюториал от AVR.

А шо це такэ?

Volante24:

Нет, буквально так не пройдет. Нужно же знать, когда ESC включает и когда выключает свой PWM. Он-то это знает, но чтобы его спросить, нужно внутрь программы лезть, а этого никто не может. А иначе нужно подпитываться к выводу самого процессора или затворам ключей, ну или вроде того, Питающая частота там вовсе не фиксирована, только на малый интервал времени. Короче, полно мороки, а для чего? Вращается мотор, или нет – проще датчик поставить

Так зачем лезть в регулятор? Ведь когда ESC включает обмотку видно на проводе. При чём здесь ШИМ? Даже если частота не фиксированная, можно легко привязаться к фронту или спаду импульса, от изменения частоты и длительности ничего не измениться.
Датчик поставить вовсе не проще. К тому же алгоритм обработки его сигнала будет повторять алгоритм обработки сигнала противоЭДС на одном питающем мотор проводе.
Я вообще наловчился делать так: включаю передатчик и медленно триммером газа довожу до момента, когда моторы начинают дёргаться, потом немножко сдвигаю триммер назад и дальше уже работаю стиком. При самом нижнем положении стика моторы ещё вращаются, но верт начинает резко терять высоту. Когда садиться, то ещё молотит лопастями. Я убираю триммер газа вниз и верт глохнет.

Volante24:

Аккумулятор один или два?

Один, конечно.

Volante24
MPetrovich:

Полюбуйтесь на красавца.

Уже пора перерисовывать V3 в V8

MPetrovich
Volante24:

Уже пора перерисовывать V3 в V8

Я считаю, что лучше по праву добавить надпись “TURBO”.

Нарыл в сети книжку на русском “Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL”(2004), автор Евстифеев. Однако, там нет про АTiny13, есть только 11, 12, 26 и пр. Но про архитектуру и систему команд вполне можно почитать. Обидно, что нет ни одного примера куска программы с разбором. Я не очень люблю такие издания, являющиеся по сути усечёнными переводами даташитов.
Смотрел сегодня разные регуляторы для б/к моторов и пришёл к выводу, что накрайняк можно обойтись без программного ограничения тока через регуль. Существуют маломощные регули (до 10А), в которых уже предусмотрена защита от перегрузки и перегрева. Если использовать регулятор с защитой по току, срабатывающей, скажем, при 4А, то можно просто установить их. Единственный вопрос, который мне не ясен - как проявляет себя эта защита? То ли она срабатывает как отсечка тока до нуля с последующим прерзапуском выкл/вкл питания, то ли ток доходит до определённого порога и дальше просто не увеличивается. Я склонен считать, что скорее первый вариант, поскольку регули маломощные и малогабаритные и если достаточно долго держать на максимальном токе, то просто погорят ключи.

Хотел ещё спросить знающих людей - как подключается отдельный гироскоп? Меня интересует откуда приходит сигнал на вход и куда уходит с выхода? По картинкам у гиры два разъёма двойной и торйной. Двойной, надо думать питание, а торйной вход+выход+земля. Так или нет? Подскажите, сведущие в этом вопросе.

Volante24
MPetrovich:

Хотел ещё спросить знающих людей - как подключается отдельный гироскоп? Меня интересует откуда приходит сигнал на вход и куда уходит с выхода? По картинкам у гиры два разъёма двойной и торйной. Двойной, надо думать питание, а торйной вход+выход+земля. Так или нет? Подскажите, сведущие в этом вопросе.

Простейшие гиро, которые я держал в руках (и сейчас держу), просто включаются между серво и приемником – они должны модифицировать длительность PPM импульса. Соответственно, все как у птичек. Два обычных тройных провода, один папа, другой мама.

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

Вы с английским в ладах? Все, что я использовал для информации и обучения, было на английском (взято, по-моему, с сайта AVR). Там прямо и примеры программ, с пояснениями. Но тут нашел у себя в букмарках русский url с обучением микроконтроллерам, правда, я туда не лазал.

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

PigTail

на русском можно посмотреть www.gaw.ru, www.avr.h15.ru, www.avr123.nm.ru

sergej-08

Всем привет !!!
Чайниковский вопрос - есть ли разница между в-тайл миксерами от разных производителей для применения в схеме, предложенной уважаемым автором темы ? Конкретнее - если вместо www.hobbycity.com/hobbycity/…/uh_viewItem.asp?idPr… (у них какой-то хронический затык с его поставкой ) применить www.hobbycity.com/hobbycity/…/uh_viewItem.asp?idPr… ?
Заранее - спасибо !!!

PigTail

Должон потянуть, мне тут прошивка на тини13 попадалась с в-миксером, если надо поищу ссыдку

М_Ф
sergej-08:

Всем привет !!!
Чайниковский вопрос - есть ли разница между в-тайл миксерами от разных производителей для применения в схеме, предложенной уважаемым автором темы ? Конкретнее - если вместо www.hobbycity.com/hobbycity/…/uh_viewItem.asp?idPr… (у них какой-то хронический затык с его поставкой ) применить www.hobbycity.com/hobbycity/…/uh_viewItem.asp?idPr… ?
Заранее - спасибо !!!

У меня есть и тот и другой. Оба работают.