Регулятор безколлекторника

jokerman

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

vovic

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

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

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

serj

Однозначно- купить проще и быстрее. я на свой контроллер потратил примерно 50-80 часов времени, пока оно хоть как-то заработало…
делать самому имеет смысл если только в продаже нет того, что хочется (для меня требования были- это 4г веса , плавное снижение газа при снижении питания и поддержка литиевых банок…)
А вот моторы при наличии под боком токарного станка можно и даже нужно делать самому- потому что далеко не всегда можно купить мотор с нужными характеристиками, да и не так много фирм многополюсники делают…
Сергей pp_serj@mail.ru

jokerman

Мне не совсем понятно, для чего нужны датчики, если используется напряжение индуцируемое в обмотках статора. Положение ротора
нужно для стабилизации частоты вращения и некоторых схем трехфазных генераторов, которые без этого не работают. Разве не хватает переменного вращающегося поля для разгона двигателя ?
В данном случае размеры и вес меня не ограничивают, ведь это своеобразный испытательный стенд.
Попутно еще один вопрос. Кому нибуть удалось получить что либо путного простой перемоткой двиг-й от CD , HDD и FDD не меняя магнитной системы?

vovic

“Используется два способа” - означает, что либо задействуются датчики положения ротора, либо индуцированное напряжение. НЕ два одновременно!

Контроллер бездатчикового безколлекторника существенно сложнее, чем с датчиками. Как по числу деталей, так и по сложности софта в микроконтроллере.

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

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

jokerman

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

vovic

Для начала скачай из сети даташит на микросхему Si9979 фирмы “Силиконикс”. Там приведена типовая схема включения для контроллера безколлекторника с датчиками. На ее основе немец Шульце делает очень хорошие контроллеры для бездатчиковых моторов.
Стабилизация частоты делается с ШИМ поверх генерации фаз и используется в контроллерах безколлекторников на электровертолетах

jokerman

Вот это уже конкретно, спасибо. Профи не всегда вникают в проблемы делетантов, а может не хотят с высоты своего полета.
Serj работал с Hivolt_ом и у него проходил вопрос по двигателю от CD.
Интересно бы узнать о результатах с родным магнитом. Он соизмерим
со Speed-280.

ylevdik

Привет!

www.microchip.com

Документ AN857 - это PDF, в котором описана “лабораторная работа” по регулятору для бесколлекторника. Сам файл у меня есть, могу прислать, если нитересно. Там все рассказано, есть только одна неподходящая для нас фича - скорость задается переменным резистором. То есть надо будет из исходников выкидывать все, что относится к АЦП, снимающему показания с этого пременника, и заменять это на измерение длительности ШИМ с приемника и преобразование к тем величинам, с которыми контроллер работает потом.
Кстати, исходник по измерению длительности ШИМ можно взять тут же, на сайте RCDesign: www.rcdesign.ru/proj_data/esc.zip, в этом архиве описание регулятора для обычного двжка, но блок измерения ШИМ подойдет и для регулятора бесколлекторника. Да, у всех PIC система команд совершенно одинаковая.
Надеюсь, это поможет…
Юра.

RID

Да, у всех PIC система команд совершенно одинаковая.

Скорее - похожи.

ylevdik

Не просто похожая, а одинакова система команд - это декларируется производителем PICов, фирмой Microchip. Это не я придумал. Архитектура у них несколько отличается, хотя тоже все похоже, а вот система команд - одна и та же - почитать можно на сайте об этом.
Юрий.

RID

"В настоящее время MICROCHIP выпускает четыре основных семейства 8-разрядных RISC-микроконтроллеров, совместимых снизу вверх по программному коду:

базовое семейство PIC15Cx с 12-разрядными командами, простые недорогие микроконтроллеры с минимальной периферией;
PIC12Cxxx с 12-разрядными командами со встроенным тактовым генератором, выпускаемые в миниатюрном 8-выводном исполнении. Не так давно был анонсирован очередной такой “малыш” c внутренним 8-разрядным 4-канальным АЦП;
Mid-range PIC16x/7x/8x/9x с 14-разрядными командами. Наиболее многочисленное семейство, объединяющее микроконтроллеры с разнообразными периферийными устройствами, в число которых входят аналоговые компараторы, аналогово-цифровые преобразователи, контроллеры последовательных интерфейсов SPI, USART и I2C, таймеры-счётчики, модули захвата/сравнения, широтно-импульсные модуляторы, сторожевые таймеры, супервизорные схемы и так далее;
High-end PIC17C4x/5xx высокопроизводительные микроконтроллеры с расширенной системой команд 16-разрядного формата, работающие на частоте до 33 МГц, с объёмом памяти программ до 16 Кслов. Кроме обширной периферии почти все микроконтроллеры этого семейства имеют встроенный аппаратный умножитель 8ґ8, выполняющий операцию умножения за один машинный цикл. "

Если длина команды отличается, то наверно они не совсем одинаковые.

ylevdik

Согласен. Но, как известно, команда не самом по себе существует, а с параметрами. Я так понял из описания, кто команды везде одни и те же, а вот длина параметров может отличаться в зависисмости от внутреннего устройства PICа. Примерно то же самое было на PDP-11 – там Ассемблер был один на всех, а длина параметров команд зависела от шины. Говоря о _системе конманд_, я говорил именно об Ассемблере, который на всех PICах один и тот же. В общем, мы, похоже, оба правы - если учесть контекст. Так или иначе, но программу, написанную для одного PICа обычно можно прошить и в другой - более старшей модели - так как они совместимы.
Юрий.

RID

“Но, как известно, команда не самом по себе существует”
Много можно возразить, что такое сама по себе? Существует?
Система команд - это команды, которые понимает контроллер. Она самодостаточна, поэтому Вы вполне можете написать программу в “командах” т.е. “машинных кодах” в их цифровом представлении. Она будет работать и ничего больше не надо. Другое дело, что это неудобно, непроизводительно и ненаглядно.
Язык программирования у них один, а системы команд отличаются. Лучше использовать общепринятую терминологию, а то человеку, который только начинает осваивать и так тяжело разобраться, а если прийдется догадываться, что хотели сказать… 😉

ylevdik

Ну уговорил, уговорил, языкастый… :))) Все, согласен - ибо не о том вообще спорим. Человек вопрос задавал про регулятор для бесколлекторника, а мы тут развели о системе команд… Впрочем, он до нашей переписки, может, и не дочитает…
Юрий.

jokerman

Дочитал я вашу переписку и понял, что вы большие доки в области программирования PICов. У меня к вам предложение, доработайте
софт для регулятора, описанного на этом сайте, чтобы он стал реверсивным и целая армия начинающих ВАМ будет очень благодарна
А те кто учится программировать, сравнивая два исходника, найдут для себя много полезного. Это благие пожелания делетантов.
За ссылки большое спасибо, а фаил конечно же нужен . Скинь его
на rustam@nefaz.ru

vovic

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

ylevdik

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

Не согласен… :))) Ибо у бесколлекторника для РЕВЕРСА все принципиально готово: так как управляется он софтом, задающим частоту смены фаз и ПОРЯДОК смены фаз. И не один там ключ, а по два полевика на каждую из трех обмоток - всего шесть - полевики разной проводимости, так что на самом деле все равно, в какую сторону крутить мотор, надо только фазы чуть подправить…
Юрий.

ylevdik

Дочитал я вашу переписку и понял, что вы большие доки в области программирования PICов. У меня к вам предложение, доработайте софт для регулятора, описанного на этом сайте, чтобы он стал реверсивным и целая армия начинающих ВАМ будет очень благодарна

  1. Непонятно, ЗАЧЕМ авиа_моделисту реверс?
  2. Непонятно, зачем авто_моделисту бесколлекторник (тем более в варианте от винчестера)?
  3. Очень многие так любят – “вы доработайте, а мы вам будем благодарны”… Давайте вместе дорабатывать и разбираться, а то нехорошо получается… В таком случае Вам, rustam, легче купить готовый регулятор долларов за $60 - $75…
    Юрий.
ylevdik

Дочитал я вашу переписку и понял, что вы большие доки в области программирования PICов. У меня к вам предложение, доработайте софт для регулятора, описанного на этом сайте, чтобы он стал реверсивным и целая армия начинающих ВАМ будет очень благодарна

Кстати, в догонку - почитайте еще внимательнее форумы этого сайта, так как я видел здесь переписку, что регулятор с реверсом уже сделали (из именно того, что опубликовано на этом сайте). Так что дорабатывать ничего не надо. Только это регулятор для КОЛЛЕКТОРНОГО двигателя. Можно запустить поиск по всем форумам по ключевому слову “реверс”
Юрий.

vovic

Юра, да не частите Вы так то. За пол-часа сам сначала возразил, зачем то упомянув безколлекторник, хотя предложение было о переделке софта регулятора для коллекторного мотора. И сам же через пяток минут себя поправил. 😃
Почитайте теперь все три сообщения вместе, не смешно? 😆
Да еще с советом читать внимательнее!

ylevdik

Юра, да не частите Вы так то. За пол-часа сам сначала возразил, зачем то упомянув безколлекторник, хотя предложение было о переделке софта регулятора для коллекторного мотора. И сам же через пяток минут себя поправил. :)
Почитайте теперь все три сообщения вместе, не смешно? :laughing:
Да еще с советом читать внимательнее!

Смешно, смешно - ну да ничего, людям свойственно ошибаться. Я же себя сам поправил, когда увидел, что не на то ответил…
Юрий.

jokerman

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

vovic

Модератора надо уважать, и свои дубли сообщений удалять самому, так этика велит.

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

ylevdik

Поиск по ключу ничего не дал.

Вот результат МОЕГО поиска: rcopen.com/forum/f1/topic2002
Читаешь эту переписку на форуме, Рустик, потом связываешься с тем парнем, который все уже сделал, и просишь его прислать схему и софт.
Для меня тема закрыта - хотел помочь человеку, а получил только недовольство в ответ. Жаль, что среди моделистов такие люди тоже встречаются.
Юрий.