- Как сделать простейший драйвер для двигателя старого HDD
- Схемные особенности
- Изготовление устройства
- Смотрите видео
- МОДУЛЬ ДРАЙВЕРА МОТОРА BLDC
- Как запустить двигатель HDD 4-х проводной
- Описание платы драйвера двигателя
- Бесщеточный драйвер двигателя постоянного тока: схема и сборка
- Бесщеточная схема привода двигателя постоянного тока
- Сборка и тестирование
- Один комментарий
- Схема регулятора скорости бесколлекторного двигателя (ESC)
- Схема регулятора
- Питание
- ШИМ и сигналы для ключей
- Обратная связь (контроль напряжения фаз двигателя)
- Датчики Холла
- Измерения аналоговых сигналов
- Задающие сигналы
- UART интерфейс
- Прочее
- Силовая часть
- Возможности прошивки
- Работа регулятора
- Включение
- Запуск
- Настройка регулятора
Как сделать простейший драйвер для двигателя старого HDD
Устройство представляет собой электронный коммутатор и предназначено для работы с маломощными бесколлекторными (иначе бесщеточными) электродвигателями при условии соединения их обмоток звездой. Типичный пример таких агрегатов — привод дисковода классических винчестерских дисков персональных компьютеров.
Отличается схемной простотой и собирается на недефицитных деталях, которые хорошо представлены в интернет-торговле.
Схемные особенности
Устройство выполнено по схеме 3-фазного мультивибратора на полевых транзисторах с изолированным затвором, отдельные однотранзисторные каскады которого имеют идентичную структуру и соединены в кольцо. Каждый предыдущий каскад такого кольца управляет функционированием транзистора последующего. Стоки транзисторов соединены с обмотками двигателя напрямую.
Время нахождения транзисторов схемы в активном состоянии определяется последовательной RC-цепочкой, напряжение со средней точки которой подается на затвор.
Принципиальная схема устройства представлена на рисунке.
Транзисторы снабжены пластинчатым радиатором, который имеет прямую гальваническую связь со стоком. С учетом невысокой мощности управляемого бесколлекторного электродвигателя необходимость фиксации радиатора на корпусе с низким тепловым сопротивлением отсутствует. Цоколевка и рекомендуемое при сборке направление изгиба выводов представлены на рисунке.
Изготовление устройства
Схема устройства достаточно проста и не требует обязательного применения монтажной платы. С учетом ее рядной структуры в качестве силового несущего элемента может быть использована проволочная шина диаметром 1 – 2 мм, которая соединяется с плюсом источника питания. Общий вывод обмоток подключается на минус источника питания.
Подключается к трехфазному двигателю жесткого диска с общим проводом.
При сборке необходимо контролировать отсутствие коротких замыканий между отдельными неизолированными соединениями, при необходимости применяют кембрики.
Устройство при отсутствии ошибок в схеме начинает функционировать немедленно после подачи постоянного напряжения. Частоту вращения ротора двигателя можно менять заменой конденсаторов или резисторов, причем все устанавливаемые пассивные компоненты должны иметь одинаковый номинал.
Смотрите видео
Источник
МОДУЛЬ ДРАЙВЕРА МОТОРА BLDC
Эта статья предоставит важную теорию и полезные схемы драйверов двигателей жестких дисков, которые можно заставить крутиться с разной скоростью и разных направлениях, а уж где это использовать — решайте сами. Прежде всего обратите внимание, что обычный двигатель шпинделя жесткого диска (HDD) на самом деле является бездатчиковым трехфазным бесколлекторным двигателем постоянного тока BLDC.
Как следует из названия, в бесщеточном (бесколлекторном) двигателе щетки не используются. Бесщеточный двигатель преодолевает потребность в механическом коммутаторе, меняя настройку на обратную, то есть катушки становятся статором, а постоянные магниты становятся частью ротора. Вращение двигателя достигается за счет изменения направления магнитных полей, создаваемых неподвижными катушками. Поскольку ротор представляет собой постоянный магнит, ему не нужен ток, что устраняет необходимость в щетках и коммутаторе. Чтобы контролировать вращение можно регулировать величину и направление тока в этих неподвижных катушках извне.
Типичный бесколлекторный двигатель постоянного тока с тремя катушками на статоре будет иметь шесть проводов, но в большинстве конструкций три провода будут подключены внутри, а остальные три выходят наружу. Также обратите внимание, что трехфазный бесщеточный двигатель требует трех датчиков Холла для определения положения ротора. В зависимости от физического положения этих датчиков, существует два типа выходных сигналов — фазовый сдвиг 60 ° и фазовый сдвиг 120 °. Комбинируя сигналы трех датчиков Холла, можно определить точную последовательность электронной коммутации. Но в бессенсорном бесщеточном моторе сигналы обратной электродвижущей силы (BEMF) контролируются драйвером для коммутации сигнала вместо положения, определяемого датчиками Холла. Вот поперечное сечение трехфазного бесщеточного двигателя на изображении ниже.
Это 4-х проводный двигатель BLDC от жесткого диска. HDD BLDC имеет четыре соединительных провода вместо трех упомянутых проводов ABC (часто обозначаемых как UVW). И 4-х контактный двигатель BLDC — это обычный трехфазный двигатель BLDC с выведенным центральным отводом. Если у двигателя есть фазы сопротивлением по 1 Ом каждая, то он должен давать 1 Ом от центрального ответвления до каждой фазы, 2 Ом между фазами. Хотя некоторые драйверы двигателей BLDC используют центральный отвод для измерения BEMF для коммутации.
Существует два типа мотора BLDC. Первый имеет встроенные датчики Холла для определения положения ротора, а второй — бессенсорный — не имеет датчика. Коммутация бессенсорного типа обычно основана на BEMF, генерируемой в обмотках статора.
Как запустить двигатель HDD 4-х проводной
Так как можно управлять двигателем HDD BLDC? Чтобы вращать его, нужно контролировать направление и синхронизацию тока в катушках статора, но этот метод управления более сложен. В продаже доступен широкий спектр бессенсорных микросхем драйверов двигателей BLDC, например DRV10866, цена модуля вполне доступная в интернет-магазинах. Двигатель работает с ним довольно хорошо — правда крутящий момент невысокий, что не удивительно, учитывая вход от источника питания 5 В.
DRV10866 — довольно популярная микросхема драйвера трехфазного бесщеточного двигателя без датчиков, интегрированная с шестью МОП-транзисторами с пиковыми токами до 680 мА. Она также предлагает синхронное выпрямление с широтно-импульсной модуляцией (PWM) и бессенсорную запатентованную схему управления обратной ЭДС (BEMF). Но есть и другое решение — универсальная плата драйвера двигателя BLDC для жестких дисков. Плата может использоваться для управления как 3-проводными, так и 4-проводными трехфазными бесщеточными двигателями постоянного тока. Кроме того тут есть несколько полезных опций, таких как управление скоростью и направлением вращения двигателя.
Описание платы драйвера двигателя
Контроллер платы драйвера бесщеточного двигателя 5 В — 12 В постоянного тока для двигателя жесткого диска.
- Подходит для бесколлекторных моторов без датчика.
- Защита от обратного напряжения
- Защита от повышенного тока
- Напряжение привода: 5-12 В
- Рабочий ток: до 1,2 А
- Диапазон скорости: 0-100%
- Управление вращением: CW и CCW
Плата сконструирована так, что требуются проводные соединения только с двигателем и источником питания. Минимальное рекомендуемое Vin составляет 5 В, а максимальное — 12 В постоянного тока. Потенциометр встроенного регулятора меняет скорость двигателя. Кроме того, есть две перемычки для выбора 3-проводного / 4-проводного мотора и выбора прямого / обратного направления. Для нормальной работы все перемычки должны быть установлены. В общем вполне удобное решение для управления трехфазными бессенсорными бесщеточными двигателями.
Плата использует комбинацию стабилизатора напряжения с низким падением напряжения (LDO), микроконтроллера для генерации сигналов с широтно-импульсной модуляцией (PWM) для трехфазного бесщеточного двигателя BLDC. Основная часть — драйвер двигателя — это DRV11873, один трехфазный бессенсорный драйвер BLDC от Texas Instruments. Вот типичная схема включения DRV11873.
16-контактный микроконтроллер (U1) настроен для подачи сигнала ШИМ (чуть ниже 25 кГц) на DRV11873 (U2) с потенциометром (W1) для регулировки скорости мотора путем изменения рабочего цикла ШИМ. Выход сигнала ШИМ может быть отведен от точки пайки, как показано на следующем изображении. Встроенная перемычка P1 соединена с выводом FR DRV11873, так что по умолчанию вывод остается в низком состоянии для вращения вперед (при переставлении вывод поднимается по потенциалу, и двигатель вращается в обратном направлении).
Следующая перемычка P4, подключенная к контакту COM DRV11873, предназначена для выбора 3-проводного / 4-проводного привода. На плате припаяны три дополнительных резистора (R4-R5-R6) для создания виртуального центрального отвода / нейтральной точки (для получения последовательности коммутации) для реализации 3-проводного привода двигателя BLDC.
Если выбирать вариант «сделай сам», стоит отметить, что оба чипа TI (DRV10866 и DRV11873) не сложно собирать. Для упрощения в качестве генератора ШИМ было бы лучше взять таймер 555 как широтно-импульсный модулятор, способный выдавать выходной сигнал примерно 25 кГц с рабочим циклом, который может изменяться от 5% до 95%.
И вот еще одна плата, похожая на описанную, но с небольшими изменениями в компоновке деталей. Микросхема драйвера двигателя — DRV11873, микроконтроллер — STC15W404A, регулятор напряжения — HT7550-1.
В общем найти подходящий драйвер для двигателя жесткого диска или оптического привода вполне возможно, в продаже есть десятки вариантов модулей, просто нужно выбрать правильный.
Источник
Бесщеточный драйвер двигателя постоянного тока: схема и сборка
Бесщеточный драйвер двигателя постоянного тока.
Описанная здесь схема использует ИС драйвера DRV10866 для управления небольшим вентилятором BLDC без использования каких-либо датчиков положения. Использование бесщеточных двигателей постоянного тока ( BLDC ) находится на подъеме. Но для их управления обычно требуется информация о положении ротора для выбора подходящего угла коммутации. Обычно датчик эффекта Холла используется для определения положения ротора. Но в чувствительных к стоимости приложениях схема коммутации без датчика часто желательна. Описанная здесь схема привода бесщеточного двигателя постоянного тока использует DRV10866 IC драйвера для привода небольшого вентилятора BLDC, без использования каких-либо датчиков положения. Скорость вентилятора BLDC можно плавно изменять, без обычных шагов, связанных с обычным вентилятором переменного тока.
Бесщеточная схема привода двигателя постоянного тока
На рис. 1 показана схема драйвера мотора BLDC без датчика. Схема построена вокруг NE555 (IC1), DRV10866 (IC2) и нескольких других компонентов.
Сборка и тестирование
Односторонняя печатная плата для бесщеточного привода двигателя постоянного тока показана на рис. 2, а расположение компонентов – на рис. 3. Соберите схему на рекомендованной плате, чтобы минимизировать ошибки сборки. IC2 должен быть установлен на стороне пайки платы.
Загрузка печатной платы и компоновки компонентов в формате PDF: нажмите здесь.
После сборки компонентов подключите источник постоянного тока 5 В к разъему CON1. Чтобы проверить правильность функционирования этой схемы привода бесщеточного двигателя постоянного тока, проверьте правильное питание 5 В для цепи в TP1 относительно TP0. Поверните VR1 по часовой стрелке или против часовой стрелки, чтобы увеличить или уменьшить скорость двигателя. Автор B.Tech (электроника и связь) из GGSIPU, Нью-Дели.
Один комментарий
Есть ли способ взломать схему драйвера, чтобы я мог сделать бесщеточный мотор в качестве генератора? Я хочу создать свое собственное зарядное устройство для мобильного телефона.
Источник
Схема регулятора скорости бесколлекторного двигателя (ESC)
Схема условно разделена на две части: левая — микроконтроллер с логикой, правая — силовая часть. Силовую часть можно модифицировать для работы с двигателями другой мощности или с другим питающим напряжением.
Контроллер — ATMEGA168. Гурманы могут сказать, что хватило бы и ATMEGA88, а AT90PWM3 — это было бы «вааще по феншую». Первый регулятор я как раз делал «по феншую». Если у Вас есть возможность применять AT90PWM3 — это будет наиболее подходящий выбор. Но для моих задумок решительно не хватало 8 килобайт памяти. Поэтому я применил микроконтроллер ATMEGA168.
Эта схема задумывалась как испытательный стенд. На котором предполагалось создать универсальный настраиваемый регулятор для работы с различными «калибрами» бесколлекторных двигателей: как с датчиками, так и без датчиков положения. В этой статье я опишу схему и принцип работы прошивки регулятора для управления бесколлекторными двигателями с датчиками Холла и без датчиков.
Схема регулятора
Питание
ШИМ и сигналы для ключей
Обратная связь (контроль напряжения фаз двигателя)
Датчики Холла
Измерения аналоговых сигналов
На вход ADC3(PC3) поступает аналоговый сигнал от датчика тока. Датчик тока ACS756SA. Это датчик тока на основе эффекта Холла. Преимущество этого датчика в том, что он не использует шунт, а значит, имеет внутреннее сопротивление близкое к нулю, поэтому на нем не происходит тепловыделения. Кроме того, выход датчика аналоговый в пределах 5В, поэтому без каких-либо преобразований подается на вход АЦП микроконтроллера, что упрощает схему. Если потребуется датчик с большим диапазоном измерения тока, Вы просто заменяете существующий датчик новым, абсолютно не изменяя схему.
Если Вам хочется использовать шунт с последующей схемой усиления, согласования — пожалуйста.
Задающие сигналы
Кроме того, есть вход RC сигнала, который повсеместно используется в дистанционно управляемых моделях. Выбор управляющего входа и его калибровка выполняется в программных настройках регулятора.
UART интерфейс
Прочее
Светодиод, сигнализирующий о состоянии регулятора, подключен к выводу PD4.
Силовая часть
Ключи нужно выбирать в зависимости от максимального тока и напряжения питания двигателя (выбору ключей и драйверов будет посвящена отдельная статья). На схеме обозначены IR540, в реальности использовались K3069. K3069 рассчитаны на напряжение 60В и ток 75А. Это явный перебор, но мне они достались даром в большом количестве (желаю и Вам такого счастья).
Конденсатор С19 включается параллельно питающей батареи. Чем больше его емкость — тем лучше. Этот конденсатор защищает батарею от бросков тока и ключи от значительной просадки напряжения. При отсутствии этого конденсатора Вам обеспечены как минимум проблемы с ключами. Если подключать батарею сразу к VD — может проскакивать искра. Искрогасящий резистор R32 используется в момент подключения к питающей батарее. Сразу подключаем «—» батареи, затем подаем «+» на контакт Antispark. Ток течет через резистор и плавно заряжает конденсатор С19. Через несколько секунд, подключаем контакт батареи к VD. При питании 12В можно Antispark не делать.
Возможности прошивки
- возможность управлять двигателями с датчиками и без;
- для бездатчикового двигателя три вида старта: без определения первоначального положения; с определением первоначального положения; комбинированный;
- настройка угла опережения фазы для бездатчикового двигателя с шагом 1 градус;
- возможность использовать один из двух задающих входов: 1-аналоговый, 2-RC;
- калибровка входных сигналов;
- реверс двигателя;
- настройка регулятора по порту UART и получение данных от регулятора во время работы (обороты, ток, напряжение батареи);
- частота ШИМ 16, 32 КГц.
- настройка уровня ШИМ сигнала для старта двигателя;
- контроль напряжения батарей. Два порога: ограничение и отсечка. При снижении напряжения батареи до порога ограничения обороты двигателя понижаются. При снижении ниже порога отсечки происходит полная остановка;
- контроль тока двигателя. Два порога: ограничение и отсечка;
- настраиваемый демпфер задающего сигнала;
- настройка Dead time для ключей
Работа регулятора
Включение
После включения двигатель издает 1 короткий сигнал (если звук не отключен), включается и постоянно светится светодиод. Регулятор готов к работе.
Для запуска двигателя следует увеличивать величину задающего сигнала. В случае использования задающего потенциометра, запуск двигателя начнется при достижении задающего напряжения уровня примерно 0.14 В. При необходимости можно выполнить калибровку входного сигнала, что позволяет использовать раные диапазоны управляющих напряжений. По умолчанию настроен демпфер задающего сигнала. При резком скачке задающего сигнала обороты двигателя будут расти плавно. Демпфер имеет несимметричную характеристику. Сброс оборотов происходит без задержки. При необходимости демпфер можно настроить или вовсе отключить.
Запуск
При опрокидывании двигателя или механическом заклинивании ротора срабатывает защита, и регулятор пытается перезапустить двигатель.
Запуск двигателя с датчиками Холла также выполняется с применением настроек для старта двигателя. Т.е. если для запуска двигателя с датчиками дать полный газ, то регулятор подаст напряжение, которое указано в настройках для старта. И только после того, как двигатель начнет вращаться, будет подано полное напряжение. Это несколько нестандартно для двигателя с датчиками, поскольку такие двигатели в основном применяются как тяговые, а в данном случае достичь максимального крутящего момента на старте, возможно, будет сложно. Тем не менее, в данном регуляторе присутствует такая особенность, которая защищает двигатель и регулятор от выхода со строя при механическом заклинивании двигателя.
Во время работы регулятор выдает данные об оборотах двигателя, токе, напряжении батарей через порт UART в формате:
Данные выдаются с периодичностью примерно 1 секунда. Скорость передачи по порту 9600.
Настройка регулятора
Переход регулятора в режим настройки происходит при включении регулятора, когда задающий сигнал потенциометра больше нуля. Т.е. Для перевода регулятора в режим настройки следует повернуть ручку задающего потенциометра, после чего включить регулятор. В терминале появится приглашение в виде символа «>«. После чего можно вводить команды.
Регулятор воспринимает следующие команды (в разных версиях прошивки набор настроек и команд может отличаться):
h — вывод списка команд; ? — вывод настроек; c — калибровка задающего сигнала; d — сброс настроек к заводским настройкам.
команда «?» выводит в терминал список всех доступных настроек и их значение. Например: Изменить нужную настройку можно командой следующего формата:
pwm.start=15
Если команда была дана корректно, настройка будет применена и сохранена. Проверить текущие настройки после их изменения можно командой «?«.
Измерения аналоговых сигналов (напряжение, ток) выполняются с помощью АЦП микроконтроллера. АЦП работает в 8-ми битном режиме. Точность измерения занижена намеренно для обеспечения приемлемой скорости преобразования аналогового сигнала. Соответственно, все аналоговые величины регулятор выдает в виде 8-ми битного числа, т.е. от 0 до 255.
Список настроек, их описание:
Параметр | Описание | Значение |
---|---|---|
motor.type | Тип мотора | 0-Sensorless; 1-Sensored |
motor.magnets | Кол.во магнитов в роторе двигателя. Изпользуется только для расчета оборотов двигателя. | 0..255, шт. |
motor.angle | Угол опережения фазы. Используется только для Sensorless двигателей. | 0..30, градусов |
motor.start.type | Тип старта. Используется только для Sensorless двигателей. | 0-без определения положения ротора; 1-с определением положения ротора; 2-комбинированный; |
motor.start.time | Время старта. | 0..255, мс |
pwm | Частота PWM | 16, 32, КГц |
pwm.start | Значение PWM (%) для старта двигателя. | 0..50 % |
pwm.min | Значение минимального значения PWM (%), при котором двигатель вращается. | 0..30 % |
voltage.limit | Напряжение батареи, при котором следует ограничивать мощность, подаваемую на двигатель. Указывается в показаниях ADC. | 0..255* |
voltage.cutoff | Напряжение батареи, при котором следует выключать двигатель. Указывается в показаниях ADC. | 0..255* |
current.limit | Ток, при котором следует ограничивать мощность, подаваемую на двигатель. Указывается в показаниях ADC. | 0..255** |
current.cutoff | Ток, при котором следует выключать двигатель. Указывается в показаниях ADC. | 0..255** |
system.sound | Включить/выключить звуковой сигнал, издаваемый двигателем | 0-выключен; 1-включен; |
system.input | Задающий сигнал | 0-потенциометр; 1-RC сигнал; |
system.damper | Демпфирование входного сигнала | 0..255, условные единицы |
system.deadtime | Значение Dead Time для ключей в микросекундах | 0..2, мкс |
* — числовое значение 8-ми битного аналого цифрового преобразователя. Рассчитывается по формуле: ADC = (U*R6/(R5+R6))*255/5 Где: U — напряжение в Вольтах; R5, R6 — сопротивление резисторов делителя в Омах.
** — числовое значение 8-ми битного аналого цифрового преобразователя. Рассчитывается по формуле: ADC = U*255/5 Где: U — напряжение датчика тока в Вольтах, соответствующее требуемому току.
Фьюзы микроконтроллера должны быть выставлены на работу с внешним кварцем. Строка для программирования фьюзов с помощью AVRDUDE:
-U lfuse:w:0xFF:m -U hfuse:w:0xDC:m
Источник