Всем спасибки, и за схемы и за графики сопротивления мосфетов .. я пока ещё только развел "опытную" плату на управление 2-я бесколлекторниками с Нано, ишо не травил даже.
В общем, задача построить свой ESC-контроллер с контролем предельного тока через мотор и недопущением его выхода за предельный ток мотора (например шимить его принудительно), а самое главное исследование вопроса можно ли устойчиво управлять бесколлекторным мотором с очень малым kV (скажем 30-40) и можно ли приобресть в таком разе возможность крутить его "по шагам" как шаговик. Понятное дело, sensorless. (с датчиками положения и дурак сможет :) )
Доброго дня! Присоединяюсь к спасибо за схемки. Ну и отпишусь по результатам.
Так как у меня плата была уже распаяна и вытравлена - решил обойтись малой кровью: поставил мощный керамический резистор на 0.1Ом 5Вт (меньшего сопротивления не было). В итоге: устройство работает как задумано - при обрыве одного из двигателей останавливается, а при заклинивании - выгорает предохранитель. Резистор практически холодный (запас по мощности у него почти двухкратный). Такое поведение меня вполне устраивает. Осталось погонять его пару суток в рабочем режиме, чтобы проверить, что все ОК.
Но все-таки меня не покидает мысль о простеньком реле наличия тока, которое замыкает контакты при наличии тока и размыкает при отсутствии (или наоборот, не суть важно). Есть что-то подобное в заводском исполнении? Гуглил до посинения, но ответы гугла связаны в основном с дифференциальным реле тока (на 220Вольт переменки), либо с релейной защитой электростанций. Ничего путнего по своему вопросу не нашел. Неужели только проволоку мотать на геркон?
По датчикам Холла немного непонятно как их выбрать и какие токи они могут регистрировать. Например я хочу впаять датчик на плату и прижать его (а лучше приклеить) к дороже, идущей на движок. Проблема рассчитать напряженность магнитонго поля в месте приклейки датчика при разных токах и выбрать подходящий по чувствительности датчик и приклеить его под нужным углом. Можно конечно пойти методом проб и ошибок, датчики недорогие, можно взять на эксперименты разные датчики.
Доброго дня! Присоединяюсь к спасибо за схемки. Ну и отпишусь по результатам.
Так как у меня плата была уже распаяна и вытравлена - решил обойтись малой кровью: поставил мощный керамический резистор на 0.1Ом 5Вт (меньшего сопротивления не было). В итоге: устройство работает как задумано - при обрыве одного из двигателей останавливается, а при заклинивании - выгорает предохранитель. Резистор практически холодный (запас по мощности у него почти двухкратный). Такое поведение меня вполне устраивает. Осталось погонять его пару суток в рабочем режиме, чтобы проверить, что все ОК.
Но все-таки меня не покидает мысль о простеньком реле наличия тока, которое замыкает контакты при наличии тока и размыкает при отсутствии (или наоборот, не суть важно). Есть что-то подобное в заводском исполнении? Гуглил до посинения, но ответы гугла связаны в основном с дифференциальным реле тока (на 220Вольт переменки), либо с релейной защитой электростанций. Ничего путнего по своему вопросу не нашел. Неужели только проволоку мотать на геркон?
Ну так уже сделай чтобы при заклинивании отключало мотор до сгорания предохранителя, делов-то пару строк кода
Датчики Холла, как понимаю имеют слишком низкую чувствительность, чтобы нормально работать на измерение тока, особенно "небольшого" (до ампера), а вот наводки ловят "мама не горюй".. да и не такие они уж и дешевые, если для измерений (ACS712 - что-то под 1 у.е.). Или чего-то не понимаю в них.. может искал не там?
пасибки всем, получается вот такой вариант силовой части для 1 фазы мотора:
В качестве силовых мосфетов - АО4606 (их ещё есть в достатке) с током в 5А (для моих целей должно хватать, там не более 2-3А в реале).
Fout - выход на мотор, Fadc - на вход АЦП для "ловли блох" (перехода фазы через ноль и контроля тока фазы - в разные моменты времени), FH - вход открытия верхнего плеча полумоста (управление фазой), notFH - выход (тут не нужен), FL - вход открытия нижнего полумоста, Fpwm - общий вход на все фазы для подачи ШИМ от аппаратного таймера.
Резисторы R5,R8,R24 - токоограничивающие раскачку полумостов и нужны для расширения питающего напряжения до диапазона 6..30в (также как стоят на моих драйверах для DC моторов на АО4606).
R17,R20,C7 - делитель и фильтр для подачи выхода фазы на вход АЦП.
R11, R14, R23 - входные резисторы подтяжки для снижения помех.
.. получается что для мостовой схемы включения бесколлекторника точка сьема фазного напряжения и контрольного по току мотора .. одна и таже. Это - нормально, и так пойдет?
P.S. Итого, с учетом камня за рублей 50, стоимость контроллера получится в районе 120-140руб .. нифига как-то не дешево. :(
Разве что его можно будет обучить "по своему", в т.ч. и фиксировать мотор в требуемом положении и контролировать ток по обмоткам..
Датчики Холла, как понимаю имеют слишком низкую чувствительность
Да, я один раз делал только, мне не понра, но у меня ток был до 1 А. Может, КЗ или заклинивание отловят надежнее. На гвоздик соточку намотал 10 витков провода, через который шел ток, гвозику шляпку откусил и загнул в колечко диаметром сантиметра 2, а в зазор вставил SS49E и - к аналоговому входу. Выше 70 попугаев значение не поднималось (из диапаноса 0-1023), из чего я заключил, что ОУ надо еще ставить. Но чето так стало лень, что я в запой ушол.
Датчики Холла, как понимаю имеют слишком низкую чувствительность, чтобы нормально работать на измерение тока, особенно "небольшого" (до ампера), а вот наводки ловят "мама не горюй".. да и не такие они уж и дешевые, если для измерений (ACS712 - что-то под 1 у.е.). Или чего-то не понимаю в них.. может искал не там?
.. получается что для мостовой схемы включения бесколлекторника точка сьема фазного напряжения и контрольного по току мотора .. одна и таже. Это - нормально, и так пойдет?...
Для активной нагрузки бы пошло, а для индуктивной ток всегда будет отставать от напряжения. Нужно ставить шунт последовательно с нагрузкой и усилитель. Или как-то ещё контролировать ток через обмотку.
PS. Хотя, если брать в расчет падение напряжения на вых.ключах в их открытом состоянии, то можно ориентировочно судить о токе (помня поправку от Димакс)
Для моих целей, поправка от Dimax - не существенна. Сопротивление открытых полумостов 50мОм или около того. Сопротивление статора мотора (после перемотки на низкое kV) - 2..9ом. Соответственно, ток, текущий по мосфетам их не то что не "нагреет" а даже вообще. Я вот думаю, что там надо бы "операционник втыкать" ибо измеряемое значение уж больно малым оказывается .. 0..5 попугаев АЦП, если от 5в прыгать. А если этими же входами в режиме "измерения фазы" искать переход нуля .. то там 1/3 от 1/2 питания моторов. Для 12в питания имеем до 2в или 500 попугаев.
Вот разве что опорное иное взять..
Почему и думал разнести обе задачи на разные входы АЦП .. но вот по схеме "фигня выходит", избыточно. :)
Блин .. 70 попугаев на 1ампере, 10-и витках и гвозде .. это уже что-то, однако. Пасибки, обнадеживаете. Надо будет обсмотреть этот вариант и отдельными входами для контроля токов .. мне требуется диапазон от 0.5 до 3-4А максиум. 1А - как раз "самое то" или очень близко.
Блин .. 70 попугаев на 1ампере, 10-и витках и гвозде .. это уже что-то, однако. Пасибки, обнадеживаете. Надо будет обсмотреть этот вариант и отдельными входами для контроля токов .. мне требуется диапазон от 0.5 до 3-4А максиум. 1А - как раз "самое то" или очень близко.
У меня в тот раз все потонуло в наводках. В тепличных условиях, на макетке, работало, в щитке, возле насосной станции - нет.
Забавно, что схему в сообщении №57 никто внимательно не посмотрел .. выход инвертора notFH1 так работать не будет и тупо спалит вход у 3И. Это инвертор управления верхним мосфетом полумоста и питается от напряжения на моторе, которое для АО4606 может достигать до 30в.
Ну и анализ схемы показал, что замерять ток на открытом мосфете с вн. сопротивлением 0.03 ома - не получится с выхода Fadc1, поскольку перепад напряжения на нем достигает 5в при питании моторов уже от 15в, (1/3), а при открытом мосфете и токе даже в 5А (макс. допустимый для АО4606), предел измерения 0,03*5 = 0,15в, что дает всего 30 попугаев АЦП на шкале 5в. И для планируемого мотора с ограничением тока в 1А .. получим всего 6 попугаев, что сильно мало для уровня ожидаемых наводок.
В общем, для первой проблемы - целостность входа 3И - поставил ещё один транзистор - инвертором от 5в, а для решения второй проблемы надо какое-то усиление сигнала и/или его отвязку от скачков до питающего напряжения .. типа таки ставить шунт в цепь силового мосфета, что сильно удорожает плату в целом .. и в этом разе, потребуется по 2 входа АЦП на фазу управления .. "жаба давит"..
Есть недорогие решения как измерить ток на обмотке с миниумом навесных компонентов? Управлять будет что-то из ардуин или СТМ8 .. хотелось бы решить вопрос 1 контроллер на пару моторов, но похоже "это фантастика"..
P.S. Ещё конечно хочется получить некую "универсальность" .. в частности выход notFH1 может подаваться на вход другой фазы (FH2 например), превращая пару фаз в .. контроллер обыкновенного коллекторного DC мотора (входы FLxx - не нужны или управление ШИМ скоростью при едином общем ШИМ с Fpwmxx), а наличие 4-х таких универсальных фаз (для бесколлекторника одна - лишняя) превращает плату в контроллер или пары DC моторов или в контроллер одного шаговика..
похоже моя любовь к универсальным решениям несколько дорогое удовольстие тут..
Ещё остался непонятным вопрос о частоте замеров блоком АЦП в бесколлекторных моторах .. кто-то может что-то пояснить?
К примеру, типовой аутраннер: 12 обмоток на 14 магнитов ротора. Обмотки собраны в 3 фазы по 4 шт., причем "попарно" по 2 соседних зуба статора на 1 обмотку, но в протифазе (S-N).
Как понимаю, требуется 6 переключений тока в обмотках (3 фазы "туда и обратно"), чтобы ротор провернулся на .. полоборота. Так? То есть надо на оборот 12 переключений тока и соответственно 12 замеров "перехода средней точки" или "щелчков датчика" для sensored моторов... так?
Как часто надо следить с помощью АЦП при скажем 30 000 rpm у мотора?
Я опять спросил нечто заумное для местных корифеев? :)
Впрочем, вопрос теряет актуальность в связи с потерей у сына интереса к робототехнике .. он теперь легкой атлетикой увлекся .. можно обождать, пока вернется интерес.. :)
Всем спасибки, и за схемы и за графики сопротивления мосфетов .. я пока ещё только развел "опытную" плату на управление 2-я бесколлекторниками с Нано, ишо не травил даже.
В общем, задача построить свой ESC-контроллер с контролем предельного тока через мотор и недопущением его выхода за предельный ток мотора (например шимить его принудительно), а самое главное исследование вопроса можно ли устойчиво управлять бесколлекторным мотором с очень малым kV (скажем 30-40) и можно ли приобресть в таком разе возможность крутить его "по шагам" как шаговик. Понятное дело, sensorless. (с датчиками положения и дурак сможет :) )
Доброго дня! Присоединяюсь к спасибо за схемки. Ну и отпишусь по результатам.
Так как у меня плата была уже распаяна и вытравлена - решил обойтись малой кровью: поставил мощный керамический резистор на 0.1Ом 5Вт (меньшего сопротивления не было). В итоге: устройство работает как задумано - при обрыве одного из двигателей останавливается, а при заклинивании - выгорает предохранитель. Резистор практически холодный (запас по мощности у него почти двухкратный). Такое поведение меня вполне устраивает. Осталось погонять его пару суток в рабочем режиме, чтобы проверить, что все ОК.
Но все-таки меня не покидает мысль о простеньком реле наличия тока, которое замыкает контакты при наличии тока и размыкает при отсутствии (или наоборот, не суть важно). Есть что-то подобное в заводском исполнении? Гуглил до посинения, но ответы гугла связаны в основном с дифференциальным реле тока (на 220Вольт переменки), либо с релейной защитой электростанций. Ничего путнего по своему вопросу не нашел. Неужели только проволоку мотать на геркон?
нуууу.... я за даччики Холла говорил, моя совесть чиста.
По датчикам Холла немного непонятно как их выбрать и какие токи они могут регистрировать. Например я хочу впаять датчик на плату и прижать его (а лучше приклеить) к дороже, идущей на движок. Проблема рассчитать напряженность магнитонго поля в месте приклейки датчика при разных токах и выбрать подходящий по чувствительности датчик и приклеить его под нужным углом. Можно конечно пойти методом проб и ошибок, датчики недорогие, можно взять на эксперименты разные датчики.
Доброго дня! Присоединяюсь к спасибо за схемки. Ну и отпишусь по результатам.
Так как у меня плата была уже распаяна и вытравлена - решил обойтись малой кровью: поставил мощный керамический резистор на 0.1Ом 5Вт (меньшего сопротивления не было). В итоге: устройство работает как задумано - при обрыве одного из двигателей останавливается, а при заклинивании - выгорает предохранитель. Резистор практически холодный (запас по мощности у него почти двухкратный). Такое поведение меня вполне устраивает. Осталось погонять его пару суток в рабочем режиме, чтобы проверить, что все ОК.
Но все-таки меня не покидает мысль о простеньком реле наличия тока, которое замыкает контакты при наличии тока и размыкает при отсутствии (или наоборот, не суть важно). Есть что-то подобное в заводском исполнении? Гуглил до посинения, но ответы гугла связаны в основном с дифференциальным реле тока (на 220Вольт переменки), либо с релейной защитой электростанций. Ничего путнего по своему вопросу не нашел. Неужели только проволоку мотать на геркон?
Ну так уже сделай чтобы при заклинивании отключало мотор до сгорания предохранителя, делов-то пару строк кода
Датчики Холла, как понимаю имеют слишком низкую чувствительность, чтобы нормально работать на измерение тока, особенно "небольшого" (до ампера), а вот наводки ловят "мама не горюй".. да и не такие они уж и дешевые, если для измерений (ACS712 - что-то под 1 у.е.). Или чего-то не понимаю в них.. может искал не там?
пасибки всем, получается вот такой вариант силовой части для 1 фазы мотора:
В качестве силовых мосфетов - АО4606 (их ещё есть в достатке) с током в 5А (для моих целей должно хватать, там не более 2-3А в реале).
Fout - выход на мотор, Fadc - на вход АЦП для "ловли блох" (перехода фазы через ноль и контроля тока фазы - в разные моменты времени), FH - вход открытия верхнего плеча полумоста (управление фазой), notFH - выход (тут не нужен), FL - вход открытия нижнего полумоста, Fpwm - общий вход на все фазы для подачи ШИМ от аппаратного таймера.
Резисторы R5,R8,R24 - токоограничивающие раскачку полумостов и нужны для расширения питающего напряжения до диапазона 6..30в (также как стоят на моих драйверах для DC моторов на АО4606).
R17,R20,C7 - делитель и фильтр для подачи выхода фазы на вход АЦП.
R11, R14, R23 - входные резисторы подтяжки для снижения помех.
.. получается что для мостовой схемы включения бесколлекторника точка сьема фазного напряжения и контрольного по току мотора .. одна и таже. Это - нормально, и так пойдет?
P.S. Итого, с учетом камня за рублей 50, стоимость контроллера получится в районе 120-140руб .. нифига как-то не дешево. :(
Разве что его можно будет обучить "по своему", в т.ч. и фиксировать мотор в требуемом положении и контролировать ток по обмоткам..
Датчики Холла, как понимаю имеют слишком низкую чувствительность
Да, я один раз делал только, мне не понра, но у меня ток был до 1 А. Может, КЗ или заклинивание отловят надежнее. На гвоздик соточку намотал 10 витков провода, через который шел ток, гвозику шляпку откусил и загнул в колечко диаметром сантиметра 2, а в зазор вставил SS49E и - к аналоговому входу. Выше 70 попугаев значение не поднималось (из диапаноса 0-1023), из чего я заключил, что ОУ надо еще ставить. Но чето так стало лень, что я в запой ушол.
Датчики Холла, как понимаю имеют слишком низкую чувствительность, чтобы нормально работать на измерение тока, особенно "небольшого" (до ампера), а вот наводки ловят "мама не горюй".. да и не такие они уж и дешевые, если для измерений (ACS712 - что-то под 1 у.е.). Или чего-то не понимаю в них.. может искал не там?
Я не делал подобных датчиков, имел ввиду что-то похожее http://ligen.ru/zaryadnoe-ustrojstvo-chast-1/
.. получается что для мостовой схемы включения бесколлекторника точка сьема фазного напряжения и контрольного по току мотора .. одна и таже. Это - нормально, и так пойдет?...
Для активной нагрузки бы пошло, а для индуктивной ток всегда будет отставать от напряжения. Нужно ставить шунт последовательно с нагрузкой и усилитель. Или как-то ещё контролировать ток через обмотку.
PS. Хотя, если брать в расчет падение напряжения на вых.ключах в их открытом состоянии, то можно ориентировочно судить о токе (помня поправку от Димакс)
Для моих целей, поправка от Dimax - не существенна. Сопротивление открытых полумостов 50мОм или около того. Сопротивление статора мотора (после перемотки на низкое kV) - 2..9ом. Соответственно, ток, текущий по мосфетам их не то что не "нагреет" а даже вообще. Я вот думаю, что там надо бы "операционник втыкать" ибо измеряемое значение уж больно малым оказывается .. 0..5 попугаев АЦП, если от 5в прыгать. А если этими же входами в режиме "измерения фазы" искать переход нуля .. то там 1/3 от 1/2 питания моторов. Для 12в питания имеем до 2в или 500 попугаев.
Вот разве что опорное иное взять..
Почему и думал разнести обе задачи на разные входы АЦП .. но вот по схеме "фигня выходит", избыточно. :)
Блин .. 70 попугаев на 1ампере, 10-и витках и гвозде .. это уже что-то, однако. Пасибки, обнадеживаете. Надо будет обсмотреть этот вариант и отдельными входами для контроля токов .. мне требуется диапазон от 0.5 до 3-4А максиум. 1А - как раз "самое то" или очень близко.
Блин .. 70 попугаев на 1ампере, 10-и витках и гвозде .. это уже что-то, однако. Пасибки, обнадеживаете. Надо будет обсмотреть этот вариант и отдельными входами для контроля токов .. мне требуется диапазон от 0.5 до 3-4А максиум. 1А - как раз "самое то" или очень близко.
У меня в тот раз все потонуло в наводках. В тепличных условиях, на макетке, работало, в щитке, возле насосной станции - нет.
Это не удивительно и останавливало меня тоже.
Забавно, что схему в сообщении №57 никто внимательно не посмотрел .. выход инвертора notFH1 так работать не будет и тупо спалит вход у 3И. Это инвертор управления верхним мосфетом полумоста и питается от напряжения на моторе, которое для АО4606 может достигать до 30в.
Ну и анализ схемы показал, что замерять ток на открытом мосфете с вн. сопротивлением 0.03 ома - не получится с выхода Fadc1, поскольку перепад напряжения на нем достигает 5в при питании моторов уже от 15в, (1/3), а при открытом мосфете и токе даже в 5А (макс. допустимый для АО4606), предел измерения 0,03*5 = 0,15в, что дает всего 30 попугаев АЦП на шкале 5в. И для планируемого мотора с ограничением тока в 1А .. получим всего 6 попугаев, что сильно мало для уровня ожидаемых наводок.
В общем, для первой проблемы - целостность входа 3И - поставил ещё один транзистор - инвертором от 5в, а для решения второй проблемы надо какое-то усиление сигнала и/или его отвязку от скачков до питающего напряжения .. типа таки ставить шунт в цепь силового мосфета, что сильно удорожает плату в целом .. и в этом разе, потребуется по 2 входа АЦП на фазу управления .. "жаба давит"..
Есть недорогие решения как измерить ток на обмотке с миниумом навесных компонентов? Управлять будет что-то из ардуин или СТМ8 .. хотелось бы решить вопрос 1 контроллер на пару моторов, но похоже "это фантастика"..
P.S. Ещё конечно хочется получить некую "универсальность" .. в частности выход notFH1 может подаваться на вход другой фазы (FH2 например), превращая пару фаз в .. контроллер обыкновенного коллекторного DC мотора (входы FLxx - не нужны или управление ШИМ скоростью при едином общем ШИМ с Fpwmxx), а наличие 4-х таких универсальных фаз (для бесколлекторника одна - лишняя) превращает плату в контроллер или пары DC моторов или в контроллер одного шаговика..
похоже моя любовь к универсальным решениям несколько дорогое удовольстие тут..
Ещё остался непонятным вопрос о частоте замеров блоком АЦП в бесколлекторных моторах .. кто-то может что-то пояснить?
К примеру, типовой аутраннер: 12 обмоток на 14 магнитов ротора. Обмотки собраны в 3 фазы по 4 шт., причем "попарно" по 2 соседних зуба статора на 1 обмотку, но в протифазе (S-N).
Как понимаю, требуется 6 переключений тока в обмотках (3 фазы "туда и обратно"), чтобы ротор провернулся на .. полоборота. Так? То есть надо на оборот 12 переключений тока и соответственно 12 замеров "перехода средней точки" или "щелчков датчика" для sensored моторов... так?
Как часто надо следить с помощью АЦП при скажем 30 000 rpm у мотора?
Я опять спросил нечто заумное для местных корифеев? :)
Впрочем, вопрос теряет актуальность в связи с потерей у сына интереса к робототехнике .. он теперь легкой атлетикой увлекся .. можно обождать, пока вернется интерес.. :)
Ап. всё ещё надеюсь, что тут есть спецы, которые могут помочь с построением самопального ESC-контроллера .. :)