avatar_VVK

Делаю контроллер для МК. Много вопросов

Автор VVK, 29 Окт. 2012 в 16:05

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

av-master

Подтверждаю. Инвертирование дает сдвиг на 180гр. и вместо СА ( например ) включися АС. в тоже время сдвиг на 90 должен дать рекуперацию. но так как на 90 нет возможности сдвинуть то сдвигаем на 120 и вместо CA врубаем AB . В целом китайцы так не делают. но так имхо правильнее.

варп

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

nikvic

#38
Цитата: nikvic от 31 Окт. 2012 в 18:37
Есть способ, позволяющий отсеять часть "неправильностей". Пустим  ток (от батарейки) через А, В. У колеса возникнет  "фиксированное" положение (относительно магнитных фаз. По углу поворота их много.), которое близко к положению переключения одного холла.
Это переключение должно вызывать в норме переключение между А и В при сохранении подключения С.


Пожалуй, продолжу эту комбинаторику B-)

Навесим на фазы бирки А, В и С - если их ещё нет. Заготовим бирки для холлов - Ах, Вх, Сх. Приготовим батарейку и проведём три опыта, подключая батарейку по схемам АВ, ВС, СА (плюс - к первой "букве").

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


Для АВ - Сх, для ВС - Ах, для СА - Вх. (Ясно, что холлы придётся запитать и уметь "мерять")
Физический смысл такого сопоставления - установление "сильной" обмотки для данного холла. Эта сильная обмотка, если  её запитать отдельно, будет в этом положении создавать максимальный момент (а пара остальных - нулевой).


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



Теперь можно покрутить колесо (по часовой) и составить таблицу, высоты 3 и ширины 6, поименовав строки холлами. Первоначально она может быть шире 6, но она периодична с периодом 6 столбцов, так что достаточно взять её кусок, который должен иметь один из двух видов (для варианта 120гр.).
Вот один:

Ах  1 1 1 0 0 0
Вх  1 0 0 0 1 1
Сх  0 0 1 1 1 0


Второй вид получается перестановкой чисел во второй и  третьей строке.


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

Строка Ах может быть дополнена начальным нулём,   0: 1 1 1 0 0 0, так что фаза А в нашем первом столбце присутствует. Вариантов 2, как первая либо вторая буква (направление вращения), пусть первая. А какая вторая? строка Вх начинается как 1 0, значит, вторая буква - В, она же - вторая в следующем слове. Начало есть: АВ, ?В. Вопрос снимается строкой Сх, получаем АВ,СВ. дальше всё однозначно, АВ,СВ,СА,ВА, ВС, АС.

Окончательно -

  • Ах  1, 1,  1,  0,  0,  0
    Вх  1, 0,  0,  0,  1,  1
    Сх  0, 0,  1,  1,  1,  0
    __ АВ,СВ,СА,ВА,ВС,АС
===================
Примечание для любителей перемотки. Можно ошибиться и неправильно подключить концы обмотки к общему нулю и выходам фаз. Тогда использование звезды невозможно.

варп

nikvic , а я сидел гадал - чем же Вы сегодня так заняты ... :laugh: Только теперь понял...Я тоже не сидел без дела - https://electrotransport.ru/index.php/topic,15402.162.html...
Ваш и мой посты бы рядышком положить - легче было бы понимать Ваш высший пилотаж...
Вот такая ещё картинка есть - привлекла наличием на одном графике диаграмм холлов для 60-ти  и 120-ти  градусов...

nikvic

#40
Цитата: варп от 01 Нояб. 2012 в 21:41
nikvic , а я сидел гадал - чем же Вы сегодня так заняты ... :laugh: Только теперь понял...Я тоже не сидел без дела - https://electrotransport.ru/index.php/topic,15402.162.html...
Ваш и мой посты бы рядышком положить - легче было бы понимать Ваш высший пилотаж...
Вот такая ещё картинка есть - привлекла наличием на одном графике диаграмм холлов для 60-ти  и 120-ти  градусов...

К сожалению, графики в комбинаторике  помогают слабо... Но "моя метода" работает и для 60-и градусей.
А вот видно только половинку :bw:

VVK

Всем доброго времени суток!

Продолжаю постигать науку BLDC.
Вот опять снял диаграммы, вроде теперь более наглядные:



Колесо у меня работает, но только при наличии LC фильтра на обмотках:



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



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

Вообщем, жду китайский контроллер.

av-master

Да нереальны там такие помехи. чтото нето. может помехи по питанию приходят. я так контроллер спалил - рекуперативные выбросы на слабом БП очень высоковольтные.

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

варп

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

варп

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

VVK

Цитата: варп от 04 Нояб. 2012 в 07:16
VVK , фрагмент схемы покажи , от выхода порта микроконтроллера до затвора силового ключа...Может где-то у тебя сигнальные цепи сильно всокоомные и именно там наводки возникают ...
Чем питаешь верхние ключи?
Схема типовая: источник питания на TOP412 формирует все напряжения, в том числе питание для верхних ключей. Сейчас я процессор на всякий случай питаю от отдельного источника. Процессор работает на 3,3В: стыкуется со входами драйвера через открытый сток и подтягивающий резистор.
Схема:


варп

#46
VVK,схему посмотрел, впечатления - положительные...Питание ключей вообще грамотно сделано....Я планировал для питания ключей инвертор небольшой поставить для гальванической развязвки, ...мы тут две страници насмерть бились - я был против бустрепной развязки...А такой DC-DC - вообще - круто...
Никаких особых косяков не нашёл....Не сразу нашёл , чем ты ток ограничиваешь...О существовании ACS712 - понятия не имел.... :-)...Осцилографом , что у неё на выходе во время работы смотрел ?
Не ловко мне тебе советы давать - ты меня обогнал, но не поленись - ещё раз с чем борешься в двух словах расскажи...Надо в правильном направлении пойти...и понять - ЧТО ( какие изменеия и коррекции в схеме , в подключениях ) на проявления того с чем борешься влияют...Я думаю - сейчас народ подтянется - ...быть такого не может , чтобы причину не нашли...Опять пустяк какой-нибудь всю малину портит...
P.S....это как-бы все знают , но на всякий случай напомню - следи , чтоб слаботочные ( ток , имею ввиду ) и сильноточные цепи врозь были...Провода сильных и слабых цепей подключай в одной точке - лучше прямо на аккумуляторе...
И всё-таки , надо отделить мух от котлет....Запитай ключи от аккумулятора, а всё остальное - от отдельного БП ....Если косяки останутся , значит проблема в сигнальных цепях...Останется понять - в каких именно....

P.S. 2 .....Шины DS,VIA,VIB идут к портам микроконтроллера , насколько я понимаю....Резисторы R1,R8,R9 ( и подобные в остальных каналах ) обеспечат ток - 0,5 мА ...для работы драйверов это достаточно , но для повышения помехозащищённости , лучше ток сделать побольше ....( соответственно , входное сопротивление будет ниже , и навести помеху будет сложнее )...Сделай ток чере эти резисторы 50-80 % от допустимого тока порта микроконтроллера ...Порт 10-15 мА должен тянуть легко ( по даташиту посмотри...)...Т.е. резисторы R1,R8,R9 ( и подобные в остальных каналах ) = 1 Ком-500 Ом....Если не поможет - вернёшь взад....

P.S. 3 ...Хорошо бы максимальный ток выхода датчика Холла узнать , и там ток задрать ...( в смысле - резистор в коллекторе уменьшить)...Может на помехи реагировать перестанет...

варп

Ещё одна затея - если ты грешишь на наводки помех на датчики Холла , надо изменить режим их питания...Не знаю , чем они питаются у тебя , но я бы попробовал сделать так - выход датчика ( его открытый коллектор ) подключил через резистор не к трём , и не к пяти , а к 12-ти вольтам...А следом поставил достаточно низкоомный делитель , который нормировал бы сигнал в уровни необходимые для микроконтроллера....Эта мера многократно улучшит соотношение сигнал\помеха....Сам датчик тоже можно питать 12-ю вольтами ...( там питание - до 20-ти вольт , но лучше даташит посмотреть...).

VVK

Цитата: варп от 06 Нояб. 2012 в 07:14
Ещё одна затея - если ты грешишь на наводки помех на датчики Холла
Там больше ничего и нет. Сам процессор я запускаю из под отладчика, если бы процессор сбивался, сбивался бы и отладчик. Остаются только входа с датчиков Холла.

Цитата: варп от 06 Нояб. 2012 в 07:14
надо изменить режим их питания...Не знаю , чем они питаются у тебя , но я бы попробовал сделать так - выход датчика ( его открытый коллектор ) подключил через резистор не к трём , и не к пяти , а к 12-ти вольтам...А следом поставил достаточно низкоомный делитель , который нормировал бы сигнал в уровни необходимые для микроконтроллера....Эта мера многократно улучшит соотношение сигнал\помеха....Сам датчик тоже можно питать 12-ю вольтами ...( там питание - до 20-ти вольт , но лучше даташит посмотреть...).
Сейчас датчик  колеса питается от 5В через процессорную плату. Я больше побоялся давать, т.к. goldenmotor дает даташиты только по размерам и усилиям. По электрическим характеристикам я не нашел.
У них есть форум, надо там спросить.
Вообще, я сейчас хочу попробовать, возможно ли в принципе держать равновесие этим колесом. Для меня это, наверное, самый главный вопрос. Почему-то не видел ни одного DIY сигвея с МК. Все используют отдельные двигатели и передачу на колесо. Поэтому сейчас я делаю тележку для эксперимента. Мой контроллер колеса пока будет с LC фильтром работать, а там и китайский подойдет. Как-то странно - колесо шло дней десять, контроллер уже почти месяц.

av-master

будет держать. только КПД будет ниже чем на редукторах. но некритично. вообще тебе больше бы синус подошол с векторным управлением. тогда вообще без проблем. ну накрайняк не синус а 4 - 8 ступеренек. а то будеш гонять между полюсами пополной.
т.е. датчики опора а между ними 4 - 8 положениий чисто по таймерам и внутренним ощущениям ))
только запитать двигатель немного подругому будет нужно. подключить обмотки в средним точкам и шимить полумостом ( в комплиментарном режиме) каждую обмотку.но тут Ваш контроллер потребует просто очень сложного алгоритма. но это легко делается на контроллере в котором моторный шим.

варп

VVK,удачи тебе.Дальше - я тебе не помощник...За инфу - большое спасибо ...Очень интересная и очень кстати.Минутка свободная будет , расскажи как трасформотор для своего DC-DC делал.Давно вокруг такого  DC-DC кругами хожу, но расчёт и изготовления трансформатора напрягает....

av-master

Бери готовые трансы. и доматывай вторички. мгтфом прям поверх ( изоляции, не сердечника естественно)

VVK

Цитата: av-master от 06 Нояб. 2012 в 12:51
будет держать. только КПД будет ниже чем на редукторах. но некритично. вообще тебе больше бы синус подошол с векторным управлением. тогда вообще без проблем. ну накрайняк не синус а 4 - 8 ступеренек. а то будеш гонять между полюсами пополной.
т.е. датчики опора а между ними 4 - 8 положениий чисто по таймерам и внутренним ощущениям ))

Я алгоритм про синус понимаю так: Сначала измеряю время одной фазы, а ШИМ следующей формирую в виде синусоидальной полуволны с полупериодом, равным ранее измеренному времени. При этом опять измеряю время. И т.д. Я правильно понял? Если нет, можно ссылку где это описано?

Цитата: av-master от 06 Нояб. 2012 в 12:51
только запитать двигатель немного подругому будет нужно. подключить обмотки в средним точкам и шимить полумостом ( в комплиментарном режиме) каждую обмотку.

А тут я что-то недопонял. Можно чуть подробнее или тоже ссылку?

Цитата: av-master от 06 Нояб. 2012 в 12:51
но тут Ваш контроллер потребует просто очень сложного алгоритма. но это легко делается на контроллере в котором моторный шим.

Я ведь не привязан к контроллеру, будет нужно, возьму со встроенным управлением BLDC. Весьма вероятно, что так и сделаю, все равно плату переразводить. Сейчас я только с алгоритмами разбираюсь. Да и контроллер на 2/3 свободен.

Цитата: варп от 06 Нояб. 2012 в 15:14
VVK,удачи тебе.Дальше - я тебе не помощник...За инфу - большое спасибо ...Очень интересная и очень кстати.Минутка свободная будет , расскажи как трасформотор для своего DC-DC делал.Давно вокруг такого  DC-DC кругами хожу, но расчёт и изготовления трансформатора напрягает....


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

av-master

Принцип синуса по времени правильно.

Обмотки в полумосте. выдаете в них 3 синусоиды сдвинутые на 120градусов. полумост позволяет выдать в обмотку от 0 до VDD путем шима. т.е. вы не следите за путем тока, типа: туда течет, оттуда вытекает. а просто формируете нужный синус 1, 2, 3. Амплитудой X , а в дробных шагах X = sinX и т.д. по градусам. . по датчикам только меряете скорость ( и стартуете) .


Только в Шиме нужно включить выравнивание импульсов по центру.