Контроллер двигателя высокого напряжения с ШИМ - Mosfets взорваться


12

Я искал каждый пост для ответа на эту проблему. Я построил схему контроллера двигателя, как показано на этой схеме. Я сделал диаграмму максимально точной. Диоды на Mosfet были добавлены так, чтобы символ Mosfet выглядел так же, как символ в листе данных. Как видите, это очень простая схема ШИМ, использующая плату Arduino UNO. Ножная педаль потенциометра подключена к одному из аналоговых входов и используется для определения коэффициента заполнения выхода ШИМ на выводе 6 цифрового выхода.Схема связи

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

Схема вроде работает - когда автомобиль поднят, чтобы колеса не касались земли. В этом состоянии двигатель очень легко вращается и не потребляет слишком много тока. Когда колеса на земле, москиты взрываются, как только вы начинаете нажимать на педаль. Я построил эту схему около 4 раз сейчас. В одной версии я даже использовал 18 мосфетов параллельно, и все 18 взорвались мгновенно. (200/18 = около 7 А / мосфет). Каждый мосфет должен выдерживать 32 Ампер.

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

Я поговорил с техником из Alltrax, и он сказал, что их контроллеры - это не что иное, как куча мошек и конденсаторов. Он сказал, что конденсаторы предотвратили взрывы мошек, но он понятия не имел, как они подключены к цепи. Я думаю, что у него есть часть моей недостающей информации.

Итак, кто-нибудь может сказать мне, что я делаю не так? Как мне добавить конденсаторы, чтобы это исправить? Может ли это быть частота? Мы изменили таймер на Arduino так, чтобы наша частота ШИМ была около 8000 Гц, но контроллер Alltrax работает на невероятных 18 000 Гц. Я знаю, что 18k мало для контроллеров двигателей, но я подумал, что гигантскому двигателю нужна меньшая частота.

Кроме того, прежде чем вы скажете, что mosfet не может быть подключен параллельно из-за небольших различий между ними, я использовал ровно 7 дюймов провода 18 калибра, чтобы соединить каждый параллельно. Маленький провод действовал бы как крошечный резистор и гарантировал, что каждый разделил текущую нагрузку.

Большое спасибо за ваши ответы.


2
Вы продолжаете говорить о каком-то контроллере Alltrax, но это не видно на схеме.
Гарри Свенссон

1
Является ли номер детали для полевых МОП-транзисторов в схеме точным / правильным?
ThreePhaseEel

2
Я действительно не эксперт, но у меня плохое предчувствие, основанное на некотором опыте. Этот мотор рассчитан на 13 лошадиных сил. Вы серьезно пытаетесь контролировать скорость с помощью Arduino, 3 полевых транзисторов и 2 резисторов? Подумайте,
сколько

3
Какой диод вы используете через мотор - лучше быть большим.
Энди ака

1
13 л.с. / 48 В = 210 А. Ух, тока много. Я думаю, 500-амперный ампер, когда мотор глохнет? Вы могли бы написать книгу о диодах обратного хода и амортизаторах для такого высокого тока.
Оскар Ског

Ответы:


29

Вот таблица данных, которая должна быть связана с вашим вопросом. Я не должен был искать это.

Каждый Mosfet должен обрабатывать 32 ампер

Это с ВVGS=10


Вы устанавливаете на 5 V × R 2VGS, вам действительно нужно как можно больше напряжения (5 В, кажется, ваш максимум). На вашем месте я бы изменилR1на 10 ~ 50 Ом иR2на 100 кОм на 1 МОм. Потому что, если вы не полностью откроете МОП-транзистор, он будет иметь слишком большое сопротивление и ... взорвется.5V×R2R1+R2=4.54VR1R2

С , то R D S ( O п ) является максимальной 35mΩVGS=10VRDS(on)

V G S = 10 ВP=I2×R=(32A)2×0.035Ω=35.84W , это означает, что ~ 36 Вт - это ожидаемое рассеивание мощности, когдаVGS=10V

При значение составляет максимум 45 мОм в соответствии с таблицей данных.R D S ( o n )VGS=5VRDS(on)

I = 35.84W=I2×0.045Ω , и если мы переместим I, мы получим: , поэтому вы можете рассчитывать на безопасное пропускание 28A через МОП-транзистор IF, если Вы фиксируете значения резистора. Вы обязательно должны получить радиатор для MOSFETS. Возможно даже активное охлаждение вентилятором.I=35.840.045=28.2A

Мы изменили таймер на Arduino, чтобы наша частота ШИМ составляла около 8000 Гц

Вам не нужно такое высокое, 800 Гц будет приемлемым, вот на что переключаются обычные драйверы BLDC (ESC). (Если я не ошибаюсь).


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

Емкость затвора ( ) имеет максимальное значение 1040 р РCiss1040pF

Резисторы и MOSFET формируют эту схему:

RC схема

C=Ciss×3=3120pF потому что вы получили 3 параллельно.

R=R1||R2=909Ω

Vs=4.54V

Напряжение на конденсаторе соответствует следующему уравнению: где - это напряжение на конденсаторе, а - то, чем вы его , в В нашем случае это .

Vc=Ve×(1etRC)
VcVeVs=4.54V

Вы отправляете ШИМ, и я создам для вас сценарий наихудшего случая. Это когда вы пытаетесь выполнить analogWrite (1) , это рабочий цикл . Таким образом, время, когда ваш сигнал начинает повышаться, пока не закончится с этим рабочим циклом и 8 кГц, будет 488,3 наносекунды.12561256×18000=

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

Vc=4.54V×(1e488.3×109(909)×(3120×1012))=0.71V

МОП-транзистор начинает открываться при минимуме 1 В и максимуме 2,5 В. Так что в этом худшем случае вы даже не сможете открыть ворота. Так что это было закрыто все время.


Еще одна вещь, на которую мне действительно нужно обратить внимание, это наиболее вероятная причина того, почему ваши МОП-транзисторы ломаются, потому что, когда вы переключаетесь, вы делаете это очень медленно из-за гигантских резисторов и очень большого количества емкостей затвора. Это означает, что когда МОП-транзисторы только начинают переключаться, они пропускают через себя большой ток, в то время как на них подается большое напряжение. И => действительно очень много тепла.P=I×V

Смотрите это изображение:

потери при переключении

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


У меня действительно нет времени, чтобы сделать больше вычислений, но я полагаю, что вы понимаете суть этого. Вот ссылка на схему, если вы хотите поиграть. Что вы должны! ,


Мой последний совет вам - приобрести драйвер MOSFET, чтобы вы могли накачать несколько AMPS в ворота, прямо сейчас вы накачиваете миллиамперы.


Btw Doctor Circuit, что касается вашего последнего абзаца, это проблема только транзисторов BJT, они обеспечивают большую мощность, тем более теплые они, MOSFET, тем не менее, обеспечивают меньшую мощность, чем теплее, поэтому им не требуется какой-либо особый вид балансировки, они будут баланс автоматически.


ПРОДОЛЖЕНИЕ, Время нарастания и Время спада.

Я был довольно жесток в приведенном выше примере: переключение 8 кГц и рабочий цикл 1/256. Я буду более добрым и посмотрю на рабочий цикл 50% = 128/256. Я хочу знать и сказать вам, сколько времени вы находитесь в вашем болезненном переходе.

Итак, мы получили следующие параметры, относящиеся к болезненному переходу:

td(on) = Время задержки = Время включения = Время задержки выключения = Время выключении
tr
td(off)
tf

Я сделаю несколько неприятных приближений, предположу, что плато Миллера не существует, я предположу, что напряжение на MOSFET линейно уменьшается при включении и линейно увеличивается при выключении. Я предполагаю, что ток, протекающий через MOSFET, увеличивается линейно при включении и уменьшается линейно при выключении. Я предполагаю, что ваш двигатель потребляет 200А во время установившегося режима нагрузки 50% с некоторой нагрузкой, скажем, ваше тело. Так что 200А пока ты на нем и разгоняешься. (Чем больше крутящий момент выдает двигатель, тем больше будет потребляться ток).

Теперь о цифрах. Из таблицы данных мы знаем следующие максимальные значения:

td(on) вкл = 40 нс = 430 нс = 130 = 230 нс
tr
td(off)
tf

Итак, сначала я хочу узнать, сколько из 8кГц периода занимает вышеуказанный переход. Переход происходит один раз в каждый период. Задержки на самом деле не влияют на переход (если мы не переключаемся на действительно очень высоких частотах, таких как 1 МГц).

время перехода с 50% и fs при 8 кГц = Я думал, что увижу гораздо большее значение, это игнорирование Миллер-плато и паразитические вещи, и игнорирование медленной зарядки ворот. Также это игнорирует тот факт, что время нарастания и спада составляет от 10% до 90% сигнала, а не от 0% до 100%, что я предполагаю в своих расчетах. Поэтому я бы умножил 0,528 на 2, чтобы приблизить мое приближение к реальности. Таким образом, 1%.tr+tf18000=0.00528=0.528%

Теперь мы знаем, как часто мы проводим время в этом болезненном переходе. Посмотрим, как это больно на самом деле.

P=1T0TP(t)dt

Vr(t)=48V(1t430ns)
Ir(t)=200A430nst

Vf(t)=48V230nst
If(t)=200A(1t230ns)

P=Pr+Pf
Pr=1tr0trVr(t)×Ir(t)dt
Pf=1tf0tfVf(t)×If(t)dt

Pr=1600W LOL! Тот же ответ, странный
Pf=1600W
P=Pr+Pf=3200W

Теперь давайте вернемся к тому, как часто вы проводили этот переход мощностью 3200 Вт. Это было около 1%, когда реальность вступает в силу. (И я думал, что это будет гораздо чаще).

Pavg=3200W×1%=32W Хмм, опять я думал, что увижу что-то намного ... большее.


И ... давайте посчитаем остальные 99% времени! О котором я полностью забыл. Вот главный взрыв! Я знал, что кое-что я забыл.

P 50 % при 8 k H z = 32 Вт + 1800 Вт × 49,5 % = 923 ВтP=I2×R=(200A)2×(0.045Ω)=1800W А И вы проводите 49,5% времени в этом режиме проводимости. Таким образом, ваше общее значениеP50%@8kHz=32W+1800W×49.5%=923W

При 3 параллельных МОП-транзисторах это составляет на каждый МОП-транзистор. Это все еще ... EX-PU-LOSIVE!32W+1800W×49.5%3=329W

Вот и мы. Там бомба, которую вы ищете. EX-PU-LOSION

Это мое последнее редактирование.


4
Я думаю, что вы ясно показываете, как трудно безопасно и надежно управлять 13 лошадьми. А как насчет хитрых зарисовок? Что делает двигатель, когда OP загружает новый эскиз, а контакты плавают / не определены? И, возможно, замыкание источника 48 В - это будет интересно. Есть много дел, чтобы избежать разочарования / пожара ...
Paul Uszak

7
Что ж, давайте просто будем рады, что он возится с 48В, а не с 480В. Вы можете пережить ожоги и учиться на всю жизнь, но тяжело учиться на смерти от сердечной недостаточности.
Гарри Свенссон

3
@DoctorCircuit 1 нФ - это емкость затвора, . Вы не можете удалить их. Они часть МОП-транзистора . Ваш Arduino может протолкнуть около 20 мА через свои транзисторы. Это все еще миллиампер . Вам нужно нажать несколько AMPS, чтобы это было даже близко к тому, что работает. Вам нужен еще один этап между Arduino и MOSFET, которые управляют нагрузкой. Логический инвертор может, возможно, сделать эту работу. Но это то, что вам действительно нужно нажать несколько AMPS. Ciss
Гарри Свенссон

2
@DoctorCircuit Это будет мой последний комментарий. Просто посмотрите на это видео . Смотреть все для удовольствия. Около 5:12 он показывает, что MOSFET используется. Это примерно 1/3 вашего. И это сделано для гораздо менее требовательного двигателя. Время нарастания (которое является частью болезненного перехода) составляет 430 нс для вашего MOSFET и 110 нс для ATP206. Время падения, которое также является частью болезненного перехода, составляет 230 нс для вас и 73 нс для ATP206. Так что он тратит примерно в 3-4 раза меньше на болезненный переход. Таким образом, гораздо более слабый мотор имеет гораздо лучший MOSFET. RDS(ON)
Гарри Свенссон

3
@ DoctorCircuit Я солгал, это мой последний комментарий. Если вы будете делать логический инвертор самостоятельно, а не покупать драйвер MOSFET. Тогда вам действительно нужно удостовериться, что у вас нет шунтов во время их перехода. Вот как ты это делаешь.
Гарри Свенссон

8

Современные МОП-транзисторы нуждаются в быстром переключении, чтобы избежать затягивания в опасной области, где положительная обратная связь (внутренняя по отношению к кремнию) вызывает разрушение. Прочитайте заключительные параграфы этого ответа для объяснения бумаги НАСА.

Краткое резюме: Этот резистор затвора ----- 1 кОм ------ слишком большой. Используйте микросхему питания драйвера с защитной крышкой 0,1 мкФ на VDD 12/15/18 В, так что ваши ворота MOSFET могут быть быстро заряжены для быстрого включения.

МОП-транзисторы будут разрушены из-за номинальных значений SOA в безопасной рабочей области, где Voltage * Current * PulseWidth определяет рассеиваемую мощность.

Предполагая, что соединения FET имеют глубину 10U (SWAG), вы получаете 1,14 микросекунды TAU для постоянной времени активной области FET. С умножением Миллера время включения будет намного превышать это, с 48 вольт на полевых транзисторах и без ограничения тока.

===================================

редактировать 18 марта 2018

НАСА диагностировало сбои MOSFET в нескольких текущих проектах из-за использования СОВРЕМЕННЫХ МОП-транзисторов (рецензия НАСА появилась в 2010 году; автомобильная промышленность нашла этот механизм отказа в 1997 году). Ранее поведение отрицательных температурных коэффициентов полевых МОП-транзисторов было перенесено в более высокие текущие регионы, и теперь в умеренном регионе существует новый небезопасный регион. У НАСА эти проекты были возвращены к СТАРЫМ ТЕХНОЛОГИЯМ, поэтому можно было строить надежные системы.

Что это значит сегодня? Достаточно просто

--- Не задерживайте более 1 микросекунды в области переключения. ---

--- Быстро зарядите емкость затвора, включая емкость затвора. ---

Название статьи НАСА [опубликовано в 2010 году]

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

Что касается более старых (надежных MOSFET) конструкций, я извлекаю это предложение:

«Раньше полевые МОП-транзисторы в основном работали в области с преобладанием заряда и мобильности. При сохранении того же напряжения затвора область с преобладанием заряда передвижения сокращает ток по мере повышения температуры, в свою очередь уменьшая ток, что позволяет системе иметь отрицательную обратную связь далеко от теплового убегания. Действительно, когда новые мощные полевые МОП-транзисторы имеют высокое напряжение затвора, в деталях преобладает заряд подвижности. Производителями было невысказанным намерением сохранять полевые МОП-транзисторы в области, где преобладает заряд подвижности. высокоскоростной переключатель. Старые части имеют зону, в которой преобладает носитель заряда. Однако эта область находится за пределами обычной SOA, и сбои происходят по другим причинам ».


7

Во-первых, вы выбрали неправильные FET.

FQP30N06 имеет 40 мОм RdsON при Vgs = 10 В. При Vgs = 5V он не указан, что означает, что он не будет работать.

Выбор MOSFET - это компромисс: большие MOSFET с большими кремниевыми матрицами и низким RdsON имеют большую емкость и медленно переключаются. Меньшие MOSFET переключаются быстрее, но имеют более высокий RdsON.

Тем не менее, вы собираетесь переключаться на 500-1000 Гц, и ваш ток огромен, поэтому RdsON важнее, чем скорость.

Поэтому вы должны выбрать МОП-транзисторы To-220 (для охлаждения) с очень низким значением RdsON (например, несколько МОм), указанным в значении Vgs ... читать дальше.

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

Учитывая ток, я бы выбрал 12-вольтовый привод, чтобы сделать RdsON как можно более низким. Таким образом, вы можете выбрать 5 В или 10 В, указанные Vgs, без проблем.

ОК. Теперь у вас есть несколько полевых транзисторов, и вам нужно управлять ими с напряжением 12 В. Очевидно, вам нужен драйвер, который будет выводить несколько усилителей в ворота, чтобы быстро его включать и выключать. Проверьте категорию «Драйвер MOSFET» в mouser / digikey, есть тонны подходящих продуктов, которые примут напряжение 5 В от вашего arduino и правильно управляют полевым транзистором.

Вам понадобится питание 12 В, но это не проблема, так как у вас есть 48 В, используйте преобразователь постоянного тока.

В-третьих, вы должны бросить Arduino.

Контроллеру такого типа требуется ограничение тока, и оно должно действовать до взрыва MOSFET (а не после).

Способ сделать это очень просто. Вы ставите датчик тока (скорее всего, здесь эффект Холла) и компаратор. Когда ток превышает пороговое значение, ШИМ сбрасывается, немного ждет, а затем возобновляет работу. Когда ток превышает намного больший порог, это означает, что кто-то вставил отвертку в выходные клеммы, поэтому ШИМ останавливается навсегда и не возобновляет работу.

Это должно происходить со скоростью, несовместимой с программным обеспечением.

Большинство микроконтроллеров, продаваемых для управления двигателем, включают аналоговые компараторы, подключенные к модулю ШИМ, для этой конкретной цели. Микро на Arduino не из тех.


4

Отсутствует измерение тока и, следовательно, нет ограничения тока на вашем двигателе. Предполагаемый ток двигателя при нулевых оборотах может составлять тысячи ампер, поскольку сопротивление обмотки больших двигателей постоянного тока может составлять миллиом. Вам следует применять некоторую форму ограничения тока, если вы не хотите использовать огромное количество усилителей и все еще рискуете их взорвать. Привод затвора следует проверять по объему. Вероятно, он будет слишком медленным, вызывая чрезмерный нагрев Mosfet. Рассмотрите микросхему драйвера или какую-то дискретную схему привода. Ваш привод двигателя, как и большинство, имеет жесткое переключение и, следовательно, имеет потери при переключении, которые пропорциональны частоте . Попытайтесь уменьшить частоту ШИМ для тестирования нежелательных звуковых шумов. Возможно, вы сможете значительно уменьшить F, не получая слишком много скули. Это охладит жары.


2

Если у вас есть точная модель всех компонентов LTSpice, вы можете проанализировать, почему она выходит из строя.

Точная модель разряда Q во время переключения тока приводит к пониманию дизайна, что необходимо тщательно выбрать грамм на каждой ступени или обратное отношение RdsOn.

Если известно соотношение электромеханических переключателей, таких как герконовые реле, силовые реле, соленоиды и контакторы большой мощности, то отношение тока контакта к току катушки постепенно падает с> 3k до 100: 1. Основное различие заключается в том, что ток затвора FET после переключения.

Изучите таблицу и проверьте напряжение RdsOn gate3, которое вы планируете использовать. Для эффективного переключения оно должно быть как минимум в 3 раза выше порогового напряжения Vgs (th).

Сводные предложения

  • 1) Используйте каскадные ступени RdsOn, такие как каскадные BJT с соотношением hFe 100

    • например, если RdsOn равен 1 мОм, используйте драйвер 100 мОм, а для этого будет использоваться драйвер 10 Ω (в противном случае снижается скорость нарастания, увеличивается потеря мощности, а затем происходит самонагрев, что приводит к перегоранию или взрыву полевых транзисторов)
  • 2) Используйте Vgs> = 3x Vgs (th), Неважно, на что рассчитаны Vgs (th). (и <Vgs max)

  • п.с.

    • Я забыл упомянуть наряду с 1) отношение Рдсона к совокупным значениям FETS / DCR двигателя должно составлять около 1: 100 или 1% (давать или брать), чтобы минимизировать потери проводимости. Хотя несколько процентов часто требуют принудительного воздушного охлаждения и выше, приводит к катастрофе.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.