Назначение диода и конденсатора в этой схеме двигателя

Я подключаю небольшой двигатель постоянного тока к Arduino с помощью NPN-транзистора, используя следующие схемы, которые я нашел в Интернете:

Схема Электропроводка

Схема работает, и мне удается запустить двигатель. Теперь я пытаюсь понять, почему это работает именно так. В частности, я хотел бы понять:

  1. Почему диод и конденсатор подключены параллельно двигателю? Какую роль они здесь выполняют?

  2. Зачем нужен резистор между транзистором и цифровым выводом PWM на Arduino? Безопасно ли будет запускать схему без него?

Ответы (2)

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

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

Небольшой конденсатор на двигателе уменьшит скорость возможно быстрых переходов напряжения, что вызовет меньше излучения и ограничит dV/dt, которому подвергается транзистор . 100 нФ для этого избыточны и будут препятствовать эффективной работе на всех частотах ШИМ, кроме низких. Я бы использовал 100 пФ или около того, возможно, до 1 нФ.

Резистор предназначен для ограничения тока, который должен генерировать цифровой выход и который должна выдерживать база транзистора. Транзистор BE во внешней цепи выглядит как диод. Поэтому напряжение будет ограничено до 750 мВ или около того. Удержание цифрового выхода на уровне 750 мВ, когда он пытается поднять напряжение до 5 В или 3,3 В, не соответствует техническим требованиям. Это может повредить цифровой выход. Или, если цифровой выход может генерировать большой ток, это может привести к повреждению транзистора.

1 кОм снова сомнительная величина. Даже с цифровым выходом 5 В через базу будет проходить всего 4,3 мА или около того: падение напряжения на BE-переходе («диод») составляет 0,7 В, а на резисторе остается 4,3 В. Вы не показываете характеристики транзистора, поэтому давайте посчитаем, что минимальный гарантированный коэффициент усиления равен 50. Это означает, что вы можете рассчитывать только на транзистор, поддерживающий ток двигателя 4,3 мА x 50 = 215 мА. Это звучит низко, особенно для запуска, если только это не очень маленький двигатель. Я бы посмотрел, что цифровой выход может безопасно получить, и отрегулировал R1, чтобы получить большую часть этого.

Другая проблема заключается в том, что диод 1N4004 здесь неуместен, тем более что вы будете быстро включать и выключать двигатель, как подразумевается «ШИМ». Этот диод представляет собой силовой выпрямитель, предназначенный для нормальных частот сети, таких как 50-60 Гц. У него очень медленное восстановление. Вместо этого используйте диод Шоттки. Любой стандартный диод Шоттки на 1 А 30 В подойдет и будет лучше, чем 1N4004.

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

Ваша критика этой схемы интересна, потому что я узнаю схему из главы 4 «Изучение Arduino» Джереми Блюма. В биографии автора говорится, что у него есть степень магистра EE в Корнелле, поэтому я не рассматривал идею о том, что могут быть подобные проблемы. Есть ли у вас рекомендации для изучения интуиции / суждения о таких вещах, как, какой диод использовать с быстрым переключением, какой размер конденсатора достаточно или слишком много для приложения и т. д.? Есть ли книги, которые могут помочь, или это в основном требует опыта? Или, может быть, просто читать спецификации. Мне любопытно знать.
@Rab: Я был удивлен, как мало меня учили дизайну в рамках моей магистратуры по EE от RPI. Чтобы добиться действительно хороших результатов в EE, нужно начать как минимум в 12 лет и повозиться. Вы создаете все более и более крупные проекты, постоянно ломая голову над тем, почему что-то не работает. К тому времени, когда вы учитесь в колледже, у вас уже есть некоторая интуиция в качестве контекста для всех теоретических вещей, которые вы изучаете. Затем вы продолжаете учиться на собственном опыте всю оставшуюся жизнь. Без большого количества работы вы никогда не будете в этом хороши. Глядя на схему, вы должны видеть скачки напряжения и протекание тока.
Спасибо! Это показалось мне навыком, который выиграет от опыта и контекста. Я думаю, это хорошо, что мастерить — это очень весело.
На Arduino Uno большинство выводов ШИМ имеют частоту ~ 500 Гц. Таким образом, минимальный скважность составляет ~ 2 мс. И этого должно быть достаточно даже для относительно большого времени обратного восстановления в несколько микросекунд, не так ли? Я имею в виду, что время обратного восстановления в несколько микросекунд — это максимум, который можно найти в таблицах данных 1N400*, измерениях и общих описаниях диодов .
+1 за последний абзац, который, хотя и правда, заставил меня хихикнуть. В частности, странные «схемы» всегда вызывают у меня подозрения.

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

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

Обратите внимание, что ваш диод указывает на + сторону вашей схемы. Изменяющееся поле создает «противоЭДС» или напряжение, идущее не в ту сторону. Энергия выходит из трубы, в которую она пришла. (Надеюсь, я прав. Я проверю и отредактирую, если у меня будет наоборот.) Диод будет проводить, если потенциал или напряжение на обмотке двигателя больше, чем примерно 0,6 V в «неправильном» направлении. Для DC это прямолинейно. Для ШИМ это больше похоже на переменный ток и качественная надежная схема сложнее.

Как сказал @OlinLathrop, ваш базовый резистор может быть немного большим. Как типичные примеры, 2N2222 и 2N3904 имеют бета-коэффициент или коэффициент усиления по току около 30 при постоянном токе, который увеличивается с частотой до 300-400. Если у вас много мотора, транзистор не будет подавать ток или сгорит. Вы можете рассчитать рассеиваемую мощность на транзисторе примерно в 1 Вт на ампер и намного выше, если что-то не настроено правильно. (Вы не можете поставить биполярные транзисторы параллельно без большой дополнительной работы. По мере того, как они нагреваются, сопротивление падает и протекает больше тока, а тот, который нагревается быстрее всего, потребляет ток - обычно до разрушения). Вы можете видеть, что маленькие драйверы двигателей, продаваемые для Arduino, имеют либо радиатор, либо большую часть с металлической секцией, предназначенную для использования с радиатором.

Колпачок сглаживает всплески тока. По мере того, как они становятся шире во времени, они становятся ниже по пиковому току, и, следовательно, напряжение, создаваемое током в цепи, меньше. Если у вашего двигателя есть щетки, вы получаете ток включения / выключения со скоростью вращения двигателя. Мы снова возвращаемся к смене токов и смене полей. Отсюда и возникает радиочастотный шум. Распространение этих пиков тока означает, что скорость изменения тока ниже, и, как следствие, RFI (радиочастотные помехи) ниже. Держу пари, что если вы поместите AM-радио рядом с вашей цепью и настроите его на место, где нет радиостанции, вы сможете сказать, когда работает двигатель. Попробуйте колпачки разных размеров и посмотрите, заметите ли вы какую-либо разницу.