Как уменьшить напряжение, которое подается на моторчик
- Войдите на сайт для отправки комментариев
Вс, 27/05/2018 - 13:34
У меня есть готовое шасси от танка. Моторы на нем на 9 вольт, аккумулятор у меня 12 вольт и драйвер тоже (L298N). Я думаю как уменшить напряжение что-бы не спалить мотор и уменьшить скорость. Почему-то шим не влияет на скорость. Подключаю к выводам EN через транзистор, так как у меня nodemcu. Я думаю какой способ здесь может подойти. Буду очень благодарен
Понижающий DC-DC преобразователь (step-down converter, или buck converter). Какой конкретно - зависит не только от напряжения, но и от тока. Какой ток нужен вашему мотору мне неизвестно. Навскидку что-то наподобие такого преобразователя, наверное, подойдет.
Его вставить в цепь мотора или к питанию драйвера?
В *опу его ставить. Уж извините мне мой французский.
Во-первых, драйвер L298N сам сожрет 2-3 вольта и на моторы как раз и дойдет 9-10в. Что более чем "непринципиально". А вот почему у вас ШИМ не регулирует скорость мотора - разберитесь, ибо как раз это и есть проблема. Это во-вторых.
Наверно потому что подтяжку к 3.3В не сделал))
Для начала хотя-бы схему и скетч. С ШИМ надо разбираться, все остальное бред.
Вот моя схема подключения:
Я думаю, что шим не работает, потому что я подключаю через транзистор
Понижающий DC-DC преобразователь (step-down converter, или buck converter). Какой конкретно - зависит не только от напряжения, но и от тока.
Я так понял, что его нужно вставить в цепь питания драйвера.
Наверно потому что подтяжку к 3.3В не сделал
Подтяжку к чему?
С ШИМ надо разбираться, все остальное бред.
Согласен, но проблему с питанием мотора тоже надо решить
Наверно потому что подтяжку к 3.3В не сделал
Подтяжку к чему?
Уточню. У тебя транзистор управляется от 3.3В логики, а в сам драйвер встроен стабилизатор, от которого на Vss драйвера подается 5В. Соответственно нужно коллектор/сток подтянуть резистором например 1-10к к 5В самого драйвера (а не 3.3В как писал ранее из-за встроенного стабилизатора. хотя может и от 3.3В подтяжки может тоже бы заработал).
То-есть я так понял, из-за этого у меня мог не работать шим?
Уберите транзистор и подавайте ШИМ напрямую на Enable. Почему D1,D2 подаются напрямую, а D0 через транзистор? Чем этот выход отличается от остальных?
Насчет питания ничего делать не надо, кроме потерь это ничего не даст. Если ШИМ нормально работает, то хоть 220 подавайте на 3х вольтовый движок он должен работать.
Немного утрированно и делать так не стоит, но теоретически при правильном ШИМ,чем больше напряжение питания, тем лучше будут динамические характеристики двигателя.
Почему D1,D2 подаются напрямую, а D0 через транзистор? Чем этот выход отличается от остальных?
То-есть я так понял, из-за этого у меня мог не работать шим?
Да. Но правильно написали. Почему именно enable через транзистор?
Потому что, когда я подаю напрямую(на EN) подаю, то наблюдаю сильные просадки в напряжении, которое подается на мотор
Я думаю просто поставить преобразователь на питание драйвера. А на проблему с шим просто закрыть глаза, не так уж и сильно мне нужно управление скоростью оборотов мотора
Почему D1,D2 подаются напрямую, а D0 через транзистор? Чем этот выход отличается от остальных?
Если вы используете шилд с L298 и собираетесь использовать ШИМ, то ОБЯЗАТЕЛЬНО СНЯТЬ ДЖАМПЕРЫ, которые принудительно подают 5В на входа Enable для включения движков на полную. Если этого не сделать, то 5В с этих джамперов пойдет на выход контроллера, и его судьба под вопросом.
Здесь достаточно хорошо описана работа с таким шилдом: http://www.progdron.com/arduino-shield/arduino-shield/299-kontroller-l298n
Я использую L298N, который с радиатором. Джамперы точно сняты.
Проблема в том, что мне нужно просто уменшить напряжение питания мотора. Транзистор я использую, потому что вывод esp8266 не сможет дать достаточно тока на вывод ENABLE драйвера, поэтому я наблюдаю просадки по напряжению на моторе
Я использую L298N, который с радиатором. Джамперы точно сняты.
Проблема в том, что мне нужно просто уменшить напряжение питания мотора
Тогда не парьтесь подключайте напрямую без всяких транзисторов, а напряжение от 0 до напряжения питания на мотор будет регулировать ШИМ.
Если джамперы сняты, то никакой просадки быть не может. Вход микросхемы имеет достаточно высокое входное сопртивление. Попробуйте просто замкнуть вход Enable на землю, мотор встанет. Если подключить его к 5В, мотор запустится. D0 контроллера пока от шилда отключите.
Проблему с питанием решу преобразователем. А без транзистора, если я подаю на EN напрямую с вывода, я наблюдаю просадку до 4-5 вольт, а с ним 10 вольт.
Проблему с питанием решу преобразователем. А без транзистора, если я подаю на EN напрямую с вывода, я наблюдаю просадку до 4-5 вольт, а с ним 10 вольт.
Такое может быть если вы уже спалили или шилд или контроллер или если джамперы не сняты.
Контроллер вряд ли спалил, он то работает и прошивается. А драйвер вроде работает так, как должен
Контроллер вряд ли спалил, он то работает и прошивается. А драйвер вроде работает так, как должен
Мог выгореть только D0.
Еще китайцы могли продублировать джамперы перемычками. Такое у них бывает (экономия джамперов). Тогда эти перемычки стоит разрезать. Измерьте напряжения но входах Enable.
Уберите транзистор и подавайте ШИМ напрямую на Enable. Почему D1,D2 подаются напрямую, а D0 через транзистор? Чем этот выход отличается от остальных?
А зачем вообще использовать D0 и D1 ?
Что, других свободных мало?
А отличается он( она, оно, они) тем что это вообще-то последовательный порт.
Контроллер вряд ли спалил, он то работает и прошивается. А драйвер вроде работает так, как должен
Мог выгореть только D0.
Еще китайцы могли продублировать джамперы перемычками. Такое у них бывает (экономия джамперов). Тогда эти перемычки стоит разрезать. Измерьте напряжения но входах Enable.
На выхода EN 0 вольт. Скорее всего проблема в выводе. Он либо дает слишком маленький ток, такое может быть, при этом тока достаточно чтобы открыть транзистор. Лучше я буду с ним, так безопасней будет
Вот моя схема подключения:
Я думаю, что шим не работает, потому что я подключаю через транзистор
При питании 3.3В выход не может дать больше 3.3В, а эмиттер сидит на +5В. Разницы в 1.7В достаточнo, чтобы транзистор был открыт. Поэтому он всегда открыт, и когда 0 на выходе D0, и когда 1.
Лучше я буду с ним, так безопасней будет
Через база-эмиттерный переход и резистор R1 на пин D0 течет ток от источника +5. В момент включения, пока пин D0 еще не настроен на вывод, этот ток подтягивает пин до напряжения, больше чем напряжение питания +3.3. К счастью пины ESP8266 вроде как-то держат подобные издевательства, а вообще-то обычный процессор имеет право от этого защелкнуться по питанию (тиристорный эффект) и выгореть.
Выкиньте вы этот вредный транзистор. Вход ENA имеет уровень лог.1 начиная от 2.3В, он прекрасно управляется напрямую от любого выхода ESP8266.
Если я подключаю напрямую вывод D0 на EN драйвера, то у меня напряжение около 4 вольт. Мне необходимо, чтобы было 10-12 вольт.
Если я подключаю напрямую вывод D0 на EN драйвера, то у меня напряжение около 4 вольт. Мне необходимо, чтобы было 10-12 вольт.
Напряжение где, на моторе? Вы же хотели 9В, передумали?
А что вы при этом подаете на D0? ШИМ, или 0, или 1, или что-то еще? Если ШИМ то поменяйте скважность.
Если я подключаю напрямую вывод D0 на EN драйвера, то у меня напряжение около 4 вольт. Мне необходимо, чтобы было 10-12 вольт.
L298N замечательно работает с логикой 3.3в. Какое напряжение на пинах во время работы? Если ШИМ, то осциллографом посмотрите.
Напряжение на выводе контроллера просаживается до 0.6 вольт. Что это может значить?
Напряжение на выводе контроллера просаживается до 0.6 вольт. Что это может значить?
Например, это может значить, что на пине ШИМ, а вы напряжение меряете не осциллографом, а мультиметром.
А вы, я вижу, вопросы только задавать умеете, а отвечать - нет. Может, вам религия не позволяет отвечать на заданные вопросы.
Я специально залил скетч для проверки, и напряжение на выводе 0,7 вольт. Даже если бы у меня был бы шим, осцилографа у меня для проверки нет.
Я специально залил скетч для проверки, и напряжение на выводе 0,7 вольт. Даже если бы у меня был бы шим, осцилографа у меня для проверки нет.
Зачем Вам скетч? для проверки подайте на вход жесткие "0" или "1". Прямо с источника питания (если боитесь, то через резистор 1 кОм). И посмотрите что будет. У ULNки КМОПовская логика на входе, и с ней ничего не случится.
Когда на вход подал напряжение с источника питания, то были нормальные 10-11 вольт.
Потому что, когда я подаю напрямую(на EN) подаю, то наблюдаю сильные просадки в напряжении, которое подается на мотор
Еще раз прочитал и врубился, насчет " просадки напряжения" слишком неоюычное применение этого термина. А может это и есть действие ШИМ??. Изменяя скважность можно получить на моторе любое напряжение от 0 и почти до 12 В. Что выдаете на D0? когда на движке 4 В? Приложите скетч.
Я специально залил скетч для проверки, и напряжение на выводе 0,7 вольт. Даже если бы у меня был бы шим, осцилографа у меня для проверки нет.
Вам не приходит в голову, что мультиметр показывает сглаженное, усредненное значение сигнала?
Чтобы при питании 12В получить на моторе усредненное значение 9В надо так написать скетч, чтобы 3/4 времени D0 был включен и 1/4 времени выключен. Мультиметр при этом покажет 3.3В*3/4 = 2.5В на выходе D0.
Правда, мультиметры разные бывают. Hекоторые плохо усредняют когда меряют ШИМ, врут.
Решение оказалось простое. Я забыл, что у ESP8266 10 битный шим, а я думал что 8 битный. Я исправил это в коде и все заработало как надо без этих транзисторов. Извините всех что я впустую забрал ваше свободное время и спасибо всем за участие.