Перейти к содержанию

Регулируемый источник тока (PWM -> I)


Smith2007

Рекомендуемые сообщения

Имеется необходимость организовать регулировку тока (0..100 мА)

На борту STM32F103C8T6 DAC отсутствует. Использовать внешний тоже не хочется. Высокая точность не требуется (+/- 5%).

На вход подаю ШИМ (100 КГц). Далее RC + LC фильтр и подстроечник К21. для вывода транзистора на наиболее линейный участок.

Можно ли обеспечить приемлемую линейность при следующей схеме?

 

2018-05-27_04-23-14.thumb.png.2b00e0c195fb7f9e4941775297b0592e.png

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

я думаю лучше не так

начало правильное - используем ШИМ-ЦАП RCR. Индуктивность там нафик не нужна, она только все портить будет. Погуглите проверенные схемки, их навалом. Получите сигнал напряжения. Дальше гуглим на тему стабилизаторов тока. У них у всех управление напряжением. Самые простые схемы полевичок + ОУ. Входное сопротивление такой схемы достаточно высокое, поэтому полученного сигнала напряжения хватит с головой. На 100 мА это будет вполне миниатюрненькая схемка, если применить ОУ что нибудь типа LM321. Рассеивание тепла с полевика можно будет прямо на плату сделать (полигон радиатор)

Только надо помнить, что у ШИМ-ЦАП постоянная времени довольно большая, поэтому перестройка тока будет с небольшим лагом

Изменено пользователем mail_robot

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

3 часа назад, mail_robot сказал:

у ШИМ-ЦАП постоянная времени довольно большая, поэтому перестройка тока будет с небольшим лагом

В моем случае это не принципиально. Процесс очень инерционный (10-15 сек).

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

Попробовал промоделировать схему а Протеусе .... что-то не получилось. Видимо лучше на макетке собрать и померить осцилографом.

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Опиши детально, что за нагрузка. А то ведь и так можно сделать. Проще, линейнее и экономичнее уже не получится.

 

Smith2007 ШИМ.JPG

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

2 hours ago, Smith2007 said:

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

линейность тут не принципиальна, хотя она будет вполне нормальной. Она в основном будет зависеть от входного сопротивления стабилизатора тока. В случае с ОУ это будут десятки килоом (из-за сопротивлений обвязки). Если подавать сигнал на базу биполярника (как у вас), то это будут Омы, ну может быть сотни Ом, зависит от hfe транзистора. И вот тут у вас могут возникнуть определенные проблемы

дело то в том, что у вас в руках не просто тупой арифмометр, а целый контроллер. Всегда можно написать функцию линеаризации (корректор), если что-то не устроит. Я так делал, вполне себе годное решение. В вашем случае главное - не перемудрить

Изменено пользователем mail_robot

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

5 часов назад, avv_rem сказал:

Опиши детально, что за нагрузка.

Нагрузкой является вход блока указателя уровня топлива в баке. Мне нужно имитировать датчик уровня топлива.

В зависимости от уровня топлива сопротивление датчика меняется от 0 до ~200 Ом.

3 часа назад, mail_robot сказал:

Всегда можно написать функцию линеаризации (корректор), если что-то не устроит

Согласен. Можно нелинейную функцию написать или множество линейных на отдельных, коротких участках. 

3 часа назад, mail_robot сказал:

главное - не перемудрить

Вот этого и хочется избежать. 

Использование RC фильтра, ОУ, полевика .... В таком случае задаюсь вопросом, а не проще внешний ЦАП поставить? Например с интерфейсом SPI.

Ссылка на комментарий
Поделиться на другие сайты

Странно. Так и не понял, как можно получить 0…100мА с резистором 0…200ом на нагрузке 10ом при напряжении 12в, да еще и с высокой линейностью.:unknw:
Если все же нужен ток с приличной линейностью, то тогда можно, к примеру, так сделать.

Smith2007 ШИМ.JPG

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, avv_rem сказал:

Так и не понял, как можно получить 0…100мА с резистором 0…200ом на нагрузке 10ом при напряжении 12в, да еще и с высокой линейностью

Я пока не добрался до схемы, что бы понять как там все устроено.

То, что вычитал из форумов, схема примерно такая.

Вот вместо датчика ДУТ думаю установить транзистор.

Сопротивление ДУТ 6..300 Ом.

При 6 Омах в цепи ток 58 мА.

Сам измерения еще не делал.

2018-05-28_01-07-13.png.8d3c881ec76e9a0677e44d3a551371e5.png

Ссылка на комментарий
Поделиться на другие сайты

@avv_rem именно такой схемы и будет достаточно. Номиналы только пересчитать под свою задачу и вместо 972-го подобрать что-то подходящее. Можно даже полевичком его заменить

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

9 часов назад, avv_rem сказал:

можно, к примеру, так сделать.

может не прокатить. Вы же хотитет получить эмулятор ДУТ? А это переменный резистор. При сопротивлении которого 0ом в цепи течет ток 100мА?

Тогда датчик тока в схеме в 10ом, имхо, перебор... 100мА не получить, то есть ваш бак будет либо неопустошаем, либо бездонным... :)

Ссылка на комментарий
Поделиться на другие сайты

19 часов назад, Smith2007 сказал:

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

RC преобразование линейно настолько, что дальше некуда, но нагружать результат преобразования придется на нелинейную нагрузку (ОУ, транзистор и т.п.) и чем выше её сопротивление, тем меньше влияние на результаты преобразования. Но с начальным смещением ОУ ничего не поделаешь. Но в Вашем случае диапазон изменения сопротивления ограничен (6..300ом) и ОУ не будет заходить в нелинейные участки.

И еще, может всё таки поставить параллельно регулирующему транзистору резистор в 300ом, чтобы модель была более точной?

Ссылка на комментарий
Поделиться на другие сайты

16 часов назад, mail_robot сказал:

Можно даже полевичком его заменить

На мой взгляд использование полевого транзистора было бы удобнее в силу его высокого входного сопротивления ЗИ. 

Видится следующая схема...

1. RC фильтр с постоянной времени на 2..3 порядка выше частоты ШИМ

2. Операционный усилитель с переменным резистором в обратной связи для оптимального подбора коэф. усиления

3. Полевик в качестве выходного элемента.

Вопрос: Какой полевик будет лучше использовать при токах С-И до 100 мА (в пиках и с запасом может до 200 мА)?

9 часов назад, Alex Falcon сказал:

Вы же хотитет получить эмулятор ДУТ? А это переменный резистор. При сопротивлении которого 0ом в цепи течет ток 100мА?

Поправка: При сопротивлении "ДУТ (транзистор)"  Rзи = ~0 , Iцепи = 58 мА

Верхний резистор в цепи 220 Ом.

8 часов назад, Alex Falcon сказал:

И еще, может всё таки поставить параллельно регулирующему транзистору резистор в 300ом, чтобы модель была более точной?

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

Ссылка на комментарий
Поделиться на другие сайты

19 minutes ago, Smith2007 said:

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

совершенно не нужен. ОУ в стабилизаторе тока выполняет роль звена сравнения с высоким КУ. И чем он выше, тем лучше. Подбирать надо будет емкость в цепи ОС для устранения возможного возбуждения.

Полевик на 100 мА при 12В подойдет из широчайшего диапазона малой и средней мощности. Рекомендую взять вольт на 40-60 напряжения С-И для комфортного запаса. В принципе подойдет и выдраный из материнки (из питания процессора), хоть он и trench mosfet, зато SMD. Если габарит не тянет, то тот же IRFZ24...44 в корпусе TO-220 со слонячим запасом даже без радиатора подойдет. Хотите уменьшить габарит, смотрите что есть в наличии и читайте даташиты. В первую очередь смотреть график SOA. 

Вообще вам лучше слегка подковаться на тему стабилизаторов тока, а то чувствуется что вы не в теме

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, mail_robot сказал:

слегка подковаться на тему стабилизаторов тока

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

CR ему тут нужен, иначе при смене схемы (или модели) измерителя уровня топлива придется править и схему модели ДУТ.

Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, Alex Falcon сказал:

начинать с правильной постановки задачи

Соглашусь, что постановка вопроса была не совсем корректной.

Нужно было сразу схему привести.

В голове была мысль поставить биполярный транзистор с открытым коллектором. И этот коллектор отправить в схему авто, которая измеряет (оцифровывает) показания.

Для управления транзистором использовать токовый регулятор.

Сейчас думаю, что правильнее будет поставить полевик на выход, которым управлять при помощи операционного усилителя

Ссылка на комментарий
Поделиться на другие сайты

Учитывая все пожелания, создал следующую математическую модель.

Если выходное напряжение контроллера , то току 23,077мА…53,097мА будет соответствовать коэффициент заполнения 33,8%…78,1%.
Время выхода на режим стабилизации при изменении коэффициента заполнения составляет около 40мс.
Частота ШИМ 1кГц.
Остаточная амплитуда пульсаций на выходе фильтра при частоте ШИМ 1 кГц – около 0,01%.

Smith2007 Математическая модель.jpg

Smith2007 Токи и напряжения.JPG

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Smith2007 сказал:

В голове была мысль

Это все вторично. Что вы хотите, эмулировать датчик уровня топлива? Как он устроен? Переменный резистор. Вот и эмулируйте резистор, пусть схема измерения уровня топлива не видит разницы!

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

Нужно преобразовывать ШИМ с МК в сопротивление которое не зависит от приложенного к нему напряжения. Погуглите реализацию режима CR. Возможно предлагаемый режим CCи прокатит, но только в конкретной реализации.

3 минуты назад, Alex Falcon сказал:

 

Учитывая все пожелания, создал следующую математическую модель.

 

Пока  МК не выдает никакой ШИМ Ваш датчик будет показывать обрыв.

Ссылка на комментарий
Поделиться на другие сайты

19 часов назад, Alex Falcon сказал:

Переменный резистор. Вот и эмулируйте резистор

Так я и думал эмулировать этот резистор при помощи транзистора с открытым коллектором (или стоком)

 

19 часов назад, Alex Falcon сказал:

Пока  МК не выдает никакой ШИМ Ваш датчик будет показывать обрыв.

Можно параллельно резистор поставить.

16 часов назад, mail_robot сказал:

МС цифрового потенциометра?

Малые токи и большие сопротивления. Думаю это не самый лучший вариант.

ШИМ 48кГц. Амплитуда 3В.

В корпусе lm358 два ОУ. А если сделать следующую схему.

2018-05-29_20-20-25.thumb.png.ebb5dd5f5beae00d7de2b7f87cbc5859.png

 

2018-05-29_20-20-25.png

(что-то не пойму как одну фотку удалить)

Изменено пользователем Smith2007
Ссылка на комментарий
Поделиться на другие сайты

34 минуты назад, Alex Falcon сказал:

У Вас в МК есть АЦП?

stm32f103c8t6

АЦП есть. ЦАП - нет.

При помощи ШИМ и RC фильтра удалось получить приемлемый вариант ЦАП.

12В - это бортовая сеть авто.

Собрал вот такую схему. Питание LM328 - 3.3В

2018-05-29_22-18-11.thumb.png.84db8d17d85ec262e5f13d8de0a9a51c.png

В первом приближении работает. Нужно только правильно подобрать делитель R6, R5, R7

Но смущает, что такая схема будет очень сильно зависеть от параметров транзистора и от температуры.

Резистор 6 Ом в нижней цепи транзистора думаю лишний. Вероятно это сопротивление проводки от разъема до самого переменника датчика уровня.

Или сделать обратную связь 

Ссылка на комментарий
Поделиться на другие сайты

Цитата из одного форума.
Указатель на панели приборов – это миниатюрный электрический, реверсивный двигатель. Действие его основано на создании индукционного поля в обмотках статора. Проще говоря, стрелка находится на валу ротора, который движется вокруг своей оси под действием бортового напряжения. Степень поворота ротора регулируется сопротивлением на выходе из обмоток. Это и есть провод «К» к датчику топлива в баке.

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

О какой марке автомобиля речь идет?

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

23 минуты назад, avv_rem сказал:

Указатель на панели приборов – это миниатюрный электрический, реверсивный двигатель

Электронная приборная панель. Индикатор уровня топлива стрелочный но управляется своим контроллером.

25 минут назад, avv_rem сказал:

О какой марке автомобиля речь идет?

Патриот 2016 года. У него 2 бака и 2 датчика уровня топлива, которые я планирую завести на 2 АЦП.

С проектируемой схемы вывести синтезированный сигнал уровня на Электронный блок управления автомобиля.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • так про него и пишу. Все равно медленно.  13 процентов загрузка, большинство ядер отдыхает, а я сижу жду пока нарисует. Странно работает ЦП. Как будто ленится ))  
    • у меня длина пакетов туда и обратно составляет фиксированные 12 байт: 8 данные, 1 команда или флаги операций, остальные контрольная сумма и кодеры пакета (шифрование). И тройной перезапрос со стороны ПС в случае отсутствия ответа от МК. При сборе статистики обмена, в среднем на 70 транзакций приходится один перезапрос, но не более 2 раз. После трех безуспешных перезапросов, программа выдает ошибку соединения.
    • ваше видение имеет крайне общий характер и может быть трактовано неоднозначно. Если вы готовы перематывать и изучать схемы коммутации обмоток, то это не так просто как вам кажется, и вступает в противоречие с вашим же ТЗ: Ни мотору, ни вам хорошо не будет. Поэтому, не ломайте мотор а подключайте как есть. Вращаться будет, медленно. Не понравится - сформируете более конкретные хотелки и начнете перекоммутировать. Никаких ухмылок. Вот программа для намотки. https://www.bavaria-direct.co.za/scheme/calculator/ Разбирайтесь.
    • По поводу времени ожидания последовательного порта. В случае обмена пакетами разной длинны, времени ожидания последовательного порта изменяется в соответствии с длинной пакета. Ну и подразумевается, что байты в пакете передаются без пауз (обусловлено тем, передача ведется через контроллер прямого доступа к памяти [ПДП]). А учитывая, что бутлодер только тем и занят, что принимает данные с последовательного порта, а затем записывает во флеш или еепром (время записи не более 5 мс),  ответ МК на пакет данных от ПС не должен составлять большого времени (<10мс). мне кажется здесь кроется какое-то логическое несоответствие.  
    • А как его проверить с помощью мультиметром если робочий например? Я по схеме собрал не зароботал УВЧ на КП 103 пробитый наверное ещё не проверял мультиметром нужно проверить,и подойдёт ли сюда полевой транзистор MMBF5459 в подобную схему УВЧ,если уж получиться что кп103 мерт 
    • И небыстрая. Срок поставки в ЧиДе небыстрый. (а где ещё нормальные брать).   
×
×
  • Создать...