Из Шима Ардуино в Аналог 0-10в

Drusha
Offline
Зарегистрирован: 30.09.2015

Собрал по схеме, все работает, конденсаторы поставил 470. В теме не упоминалось про то, какие конденсаторы ставить, полярные или неполярные. Я поставил полярные. Есть ли разница? 

ausliter
Offline
Зарегистрирован: 11.09.2015

ausliter пишет:

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

Как то так выглядит одна линейка, помещается три линейки на плате 100*60 мм

ausliter
Offline
Зарегистрирован: 11.09.2015

День добрый.

К сведению

Перепробовал все варианты преобразователя ШИМ т е операционник, полевые ключи и ардуиновский цап... Оказалось с практической точки зрения на полевых ключах самая практичная вещь. Реакция на изменения в ШИМ замедленная 1,5 сек, что смягчает спонтанные либо возвратные шаги ШИМ в случае нестабильных показаний датчиков. большие емкости на выходе исключают ступеньку и помехи, что благотворно сказывается на элементах управления 0-10 В. Ток потребления в сторону увеличения напряжения выхода 3 ма, в сторону уменьшения 0,5 ма. Большинство приводов 0-10 В потребляют при выходе 10 В соответственно 0,8 ма при напряжении выхода 0,5 В соответственно 0,05 ма. Линейность почти идеальная... есть завал вначале от 0 до 3 В, около 10 % отклонение и чуток в конце от 7 до 10 в чуть меньшее отклонение. Для приводов регулирующих непропорциональные клапана это вообще ни о чем, все равно нужно переписывать утилиту корректировки графика. 

С операционником есть удобный вариант... при любом питании более 12 В можно подстроить в нужном диапазоне выхоное напряжение, но не более, минусов больше. Особенно страдает линейность, поскольку цепочка на входе не может это позволить.

Цап конечно работает нормально, линейность хорошая, но все же есть ступенька если не лепить дополнительно RC на выходе, нет плавности изменения характеристики при скочкообразном ШИМ.

Как то так.

a5021
Offline
Зарегистрирован: 07.07.2013

ausliter пишет:

С операционником есть удобный вариант... при любом питании более 12 В можно подстроить в нужном диапазоне выхоное напряжение, но не более, минусов больше. Особенно страдает линейность, поскольку цепочка на входе не может это позволить.

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

ausliter
Offline
Зарегистрирован: 11.09.2015

Во первых протрите глаза.... на выходе видите "пилу"?, это значит что нужен второй каскад RC. во вторых вот соберите, отстройте и пришлите графики и параметры, поржем вместе)))

a5021
Offline
Зарегистрирован: 07.07.2013

ausliter пишет:
Во первых протрите глаза.... на выходе видите "пилу"?

Нет, не вижу. А вы видите? Значит, начинаем проверку зрения:

Все данные на картинке. Можете вбить в калькулятор и проверить.

Цитата:
это значит что нужен второй каскад RC.

Да хоть третий. Какие в этом могут быть проблемы?

Цитата:
во вторых вот соберите, отстройте и пришлите графики и параметры, поржем вместе)))

Ржать без меня придется. Если желание еще останется. Кроме того, я не видел графиков и параметров от вас. Вопрос о том, что стоит за вашими словами я задавал вам в прошлый раз. Вы не ответили. Что стоит за моими словами, я пытался показать в предыдущем своем посте, показываю теперь и дополнительно могу сообщить, что ранее уже собирал устройства PWM DAC, одно из которых могу продемонстрировать.

 

Это управляемый с ардуины источник напряжения с током до 1.5А. Данное устройство мне потребовалось изготовить для выяснения точной величины падения напряжения на мощном светодиоде. В процессе занятия этим я убедился, что не смотря на то, что из за смещения ОУ и не идеальных единицы и нуля абсолютная точность нуждается в подстройке, относительная точность просто великолепна. Изменение коэффициента заполнения ШИМ-сигнала на входе, отзывалось точным изменением напряжения на выходе во всем диапазоне регулировки. Линейность, просто зашибись.

rebire
Offline
Зарегистрирован: 23.10.2015

a5021 пишет:

ausliter пишет:
Во первых протрите глаза.... на выходе видите "пилу"?

Нет, не вижу. А вы видите? Значит, начинаем проверку зрения:

Все данные на картинке. Можете вбить в калькулятор и проверить.

Цитата:
это значит что нужен второй каскад RC.

Да хоть третий. Какие в этом могут быть проблемы?

Цитата:
во вторых вот соберите, отстройте и пришлите графики и параметры, поржем вместе)))

Ржать без меня придется. Если желание еще останется. Кроме того, я не видел графиков и параметров от вас. Вопрос о том, что стоит за вашими словами я задавал вам в прошлый раз. Вы не ответили. Что стоит за моими словами, я пытался показать в предыдущем своем посте, показываю теперь и дополнительно могу сообщить, что ранее уже собирал устройства PWM DAC, одно из которых могу продемонстрировать.

 

Это управляемый с ардуины источник напряжения с током до 1.5А. Данное устройство мне потребовалось изготовить для выяснения точной величины падения напряжения на мощном светодиоде. В процессе занятия этим я убедился, что не смотря на то, что из за смещения ОУ и не идеальных единицы и нуля абсолютная точность нуждается в подстройке, относительная точность просто великолепна. Изменение коэффициента заполнения ШИМ-сигнала на входе, отзывалось точным изменением напряжения на выходе во всем диапазоне регулировки. Линейность, просто зашибись.

Здравствуйте,

подскажите пожалуйста собираю чпу управления и возникла необходимость преобразовать шим сигнал в аналог ,сигнал буду брать с лпт порта через программу linux cnc,

частотный инвертор ACS-350 управляется от0 до 10в.

ваша схема подайдет? 

вот характеристика

Два аналоговых входа

Сигнал по напряжению

Однополярный  От 0 (2) до 10 В, Rвх > 312 кОм

Двухполярный   От -10 до 10 В, Rвх > 312 кОм

Сигнал по току

Однополярный   От 0 (4) до 20 мА, Rвх = 100 Ом

Двухполярный    От -20 до 20 мА, Rвх = 100 Ом

Опорное напряжение    10 В ±1 %, не более 10 мА, R < 10 кОм

 

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

СПАСИБО.

airdox
Offline
Зарегистрирован: 03.04.2016

Товарищи, а позвольте еще немного продолжить тему. Сразу оговорюсь, что я не электронщик, поэтому чтобы добиться результатов руководствуюсь информацией с форума и логикой, но в этот раз она меня подвела.

Итак за основу были взяты схемы из поста #52 и поста #97.  AOP605 в ближайших магазинах не нашлось, но гугл подсказал, что его можно заменить IRF7389 (даташит). В итоге получилась такая схема:

И, IRF7389 конечно же пыхнул. Отсюда прошу помощи в прояснении 2х вопросов:
1. Можно ли все таки заменить AOP605 на IRF7389?
2. Если можно то IRF пыхнул потому что я по невнимательности не  добавил сопротивление 100 ом в места, обозначенные на схеме (R?) ?

Возможно еще какие то ошибки?

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

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

airdox
Offline
Зарегистрирован: 03.04.2016

Если не затруднит, укажите пожалуйста пост, о которм вы говорите. 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

dimax,

тут в теме было так много схем, что я в них запутался. Сам я всегда использую простейшую схему, примерно как Вы сказали - интегрирующая цепь и операционный усилитель. Для случая выход 0-5V это выгладит так

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

Это чем-то некошерно? Чем? Объясните, пожалуйста, а то тут все такие сложности рисуют, а что-то совсем ничего понять не могу.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

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

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Спасибо. Я то я тут насмотрелся на сложности, и всё никак не могу понять что не так делаю. Про два резистора я в курсе, спасибо, базовые, простейшие схемы подключения ОУ я знаю, сложности начинаются дальше, но это совсем другая тема.

LastHopeMan
Offline
Зарегистрирован: 19.09.2016

ТС, а цифровой потенциометр не рассматривали? И если мощность велика для него, то после него биполярный NPN транзистор, нагрузку на коллектор. 

Микросхемки 8 выходов, в каждом по 2 потенциометра. Дешевые до жути. 

 

Только управлять уже не ШИМ придется, а двумя ногами любыми.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

покажи дешевые до жути? mcp какой то дешевый знаю, и тот рублей 100 стоит

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

LastHopeMan, увы,  цифровой потенциометр ещё хуже той схемы, ибо предназначен для совершенно иных целей.  Обсуждается же преобразование шим в напряжение, а не в сопротивление.  Круче чем RC цепочка только  цап .  Жалко, что напряжение не больше 5 вольт даёт, всё равно  опер придётся ставить, если нужно >5 вольт получить.  Зато настоящие 12 бит за сущие копейки :-)

LastHopeMan
Offline
Зарегистрирован: 19.09.2016

jeka_tm пишет:

покажи дешевые до жути? mcp какой то дешевый знаю, и тот рублей 100 стоит

 

https://ru.aliexpress.com/item/X9C103P-in-stock/1944441827.html

 

для меня это недорого. 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

52 руб/шт. - это не до жути вовсе, но в любом случае, поделитесь пожалуйста ссылкой о которой Вы говорили

LastHopeMan пишет:

Микросхемки 8 выходов, в каждом по 2 потенциометра. Дешевые до жути. 

Мне как раз такой нужен. И лучше бы "до жути" :)

 

a5021
Offline
Зарегистрирован: 07.07.2013

airdox пишет:

Возможно еще какие то ошибки?

Самой большой ошибкой является сама схема. На этапе, когда 2N7000 закроется, затворы начнут набирать/сливать (нижний/верхний ) заряд. А так как происходит это через резистор R4 4.7к, то заряд изменяется медленно и в какой-то момент случается, что верхний еще не закрылся, а  нижний уже открылся. Через оба мосфета начинает течь большой ток, на манер КЗ.

airdox
Offline
Зарегистрирован: 03.04.2016

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

уж очень про меня) 

В результате остался один вопрос, я понял что по формуле получается что мне нужно добавить 2 сопротивления одинаковых номиналов. Только не могу понять чем руководствоваться для их выбора. Какие мне нужны? 100 Ом? 1кОм?

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

airdox, да какие хотите в разумных перделах. Они, как любой резисторный делитель влияют на ток потребления. Больше резистор -меньше ток. Меньше резистор -больше ток.  Есть удобные онлайн расчёты что б в голове не калькулировать -вот например.

Probelzaelo
Offline
Зарегистрирован: 15.04.2011

ЕвгенийП пишет:

 Для случая выход 0-5V это выгладит так

А тут этот же вариант но 0-10В, от "Врагов"  ))

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

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

airdox
Offline
Зарегистрирован: 03.04.2016

Не прошло и года возник еще вопрос. А RC-фильтр то из каких соображений считается?

4,7 кОм и 10мФ это частота среза = 3.3863 Гц .

Не могу найти инфу про это конкретное применение. Поделитесь умной статейкой, чтоб понять какая частота тут нужна и на что она тут будет влиять? 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015
airdox
Offline
Зарегистрирован: 03.04.2016

От спасибочки. Добротный материал. А вот еще нашел: ШИМ в Ардуино

Probelzaelo
Offline
Зарегистрирован: 15.04.2011

Или, "в свете последних решениев"(С), покупаем Arduino "совместимую" плату на STM32 имеющую на борту пару встроенных DAC(ЦАП), вот токо плата с процессором имеющим питание 3.3В получилось не самое совместимое устройство.

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Probelzaelo,  да и  DAC есть далеко не во всех STM32. Так что ардуино + внешний цап выйдет и проще и дешевле..

Probelzaelo
Offline
Зарегистрирован: 15.04.2011

Не во всех, это точно, но как пример у чипа на плате описанной в теме STM32F103 & Arduino IDE  на этом форуме есть. Одна беда. не щщупал. и вообще имел не очень приятный опыт общения с 3.3 вольтовыми платами, не гарантированно дружат они с большим количеством периферии работающей от 5В. Например LCD FW1602, без бубна работать отказался с чипом MAX32(совсем другая история).

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Probelzaelo, в нём ЦАПа нет. И вроде не упоминается нигде, что он есть, где вы вычитали?  Вообще штука хорошая, я  предыдущие пару месяцев активно изучал эту плату что б сделать это  тыц :)

Probelzaelo
Offline
Зарегистрирован: 15.04.2011

dimax пишет:
в нём ЦАПа нет. И вроде не упоминается нигде, что он есть, где вы вычитали?

Блин, точно! Именно в этом STM32F103C8T6 как раз и нет ((, есть в Arduino Maple STM32(GD32F103CBT6) и ST32Discovery платах, не совсем дуиновых ...  Каша однако сложилась в голове ...

airdox
Offline
Зарегистрирован: 03.04.2016

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

я вижу ткаую картинку:

Голубая линия - после RC до ОУ
Зеленая - после ОУ
Синяя - Напряжение ШИМ (при 500гц) - брал частоту выхода меги. 

То есть у меня совсем даже не 5в после RC, а около 2.7 и соответственно усилиене не до 10В при одинаковых сопротивлениях. Но я ведь собирал эту схему на макетке именно с одинаковыми сопротивлениями и мерял на выходе 10.. Короче я че то подзапутался. Эмулятор ведь все правильно показывает? 

Probelzaelo
Offline
Зарегистрирован: 15.04.2011

Однако R2 нижним концом на землю нужно посадить, а не на выход ОУ.  И второе, ООС сделать поглубже, для чего вход "-"(и другой конец R2) повесить на "выход" совсем напрямую или если лень то через небольшое сопротивленьице.

 

А если у тебя выход аж 10В тогда все не так. схему оставь. Но верхушку R3 воткни на землю. чтоб напряжение на выходе случилось вдвое больше чем на входе. ага.

 

airdox
Offline
Зарегистрирован: 03.04.2016

Сам себе отвечу. Ширина импульсов модуляции у меня так в эмуляторе задана. При 100% сигнале она жеж  и будет мне мои 10 в выдавать. Всем спасибо :Р

a5021
Offline
Зарегистрирован: 07.07.2013

Подниму, пожалуй, тему и вот по какому поводу: в конце ноября в EDN Magazine появилась заметочка о том, как снизить пульсации в PWM-DAC, не принося в жертву время установления напряжения на выходе. Суть метода, если говорить коротко, заключается в подмешивании к выходу интегрирующей цепи инвертированного PWM-сигнала, пропущенного церез RC-цепочку с такими же номиналами, включенными последовательно. Описание немного громоздкое и в этом случае проще сразу посмотреть на схему:

Как можно видеть, к уже рассматривавшейся ранее в этой ветке интегрирующей цепочке R1C1 добавляется еще пара элементов тех же самых номиналов, плюс инвертор. Решение, на первый взгляд, какое-то слишком уж простецкое, чтобы ожидать от него значимых результатов, но моделирование показывает совершенно иную картину. Вот осциллограмма на выходе обычной  интегрирующей цепочки, состоящей из номиналов 330ком и 0.1мф, ко входу которой подведен PWM-сигнал амплитудой 5в, частотой 976.5625 Герц и коэффициентом заполенения 50%:

Как можно видеть, пульсации составляют около 40 милливольт. Теперь добавляем в схему то, что на рисунке присутствует в блоке RIPPLE CANCELLATION:

пульсации уменьшились до 150 микровольт или в 266 раз. Неплохо для столь незатейливой схемы.

Теперь самое время проверить результаты моделирования на реальном железе. Ардуина замечательно подходит для этого. На первом таймере имеются два ШИМ-канала, с которых можно выдавать сигнал в противофазе, что позволит исключить из схемы, предложенной автором, инвертор. К девятому и десятому пину ардуины цепляем вот такую схему:

инициализируем первый таймер для выдачи четырнадцатибитного ШИМ-сигнала по обоим каналам:

Расчет показывает, что синхронно меняя значения в регистрах OCR1A/OCR1B, можно регулировать выходное напряжение с шагом 305 микровольт. Однако, запустив вышеописанную схему я быстро обнаружил, что значения шага и диапазона несколько отличаются от расчетных, хотя простым подбором значения для регистров сравнения можно довольно точно выставить выходное напряжение требуемой величины. Но это не совсем удобно, т.к. хотелось бы сразу задавать в коде нужное напряжение и его же получать на выходе. Пришлось подгонять аналоговую часть.

Первым делом подобрал из кучки имеющихся 78L05 тот, который выдает напряжение 5.000в при комнатной температуре. От него запитал ардуину. Быстро выяснилось, что ноль у моего про-мини -- это не ноль, а 2.5 милливольта. Единица и того хуже -- 4.95в. Если ситуацию с нулем еще как-то можно терпеть, то минус пятьдесят милливольт от верхней рельсы -- это многовато. Подумалось, что можно к выходам ардуины подцепить буферы на дискретной логике. Проверка показала, что тошибовская 74HCT04, будучи подцепленной к ардуине, ситуацию с размахом выходных напряжений практически полностью исправляет. Т.к. HCT04 -- это инверторы, то инверсию на ШИМ каналах пришлось зеркально поменять: канал "А" (пин 9) выдает ШИМ-сигнал без инверсии, канал "B" (пин 10) с инверсией. Закончилась подгонка подбором LM385, т.к. у разных экземпляров ОУ минимальное напряжение, которое можно было наблюдать на выходе, заметно отличалось. У худших не опускалось ниже 20мв, лучший показал 4.7мв. Таким образом, диапазон регулировок получился от 5мв до 5 вольт с шагом 305 микровольт. Обнаружилось, правда, еще какое-то смещение от 3.45мв до 9мв по всему диапазону снизу вверх, но то ли это погрешность мультиметра, то ли операционник смещает, то ли еще кто. Скомпенсировал программно.

Ну и типа пруфа:

Осциллограф фотографировать не буду, т.к. при минимальных 10мв на клетку я там кроме прямой линии ничего не вижу.

 

 

a5021
Offline
Зарегистрирован: 07.07.2013

Приехали RAIL-TO-RAIL операционники. Проверил минимальные напряжения, которые они способны выдавать. Выяснилось, что примерно от 0.3мв. Теперь можно говорить, что напряжение регулируется от 1мв до 5в с шагом меньше 1мв.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

Круто) Пора делать регулируемый блок питания

Feninks
Offline
Зарегистрирован: 10.06.2018

Здравствуйте. А можно печатную плату у Вас попросить на эту схемку с LM317.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

a5021 пишет:

Приехали RAIL-TO-RAIL операционники. 

Какие?

Вообще, можете посоветовать простой, рабочекрестьянский, недорогой (частотные и прочие характеристики - почти пофигу), но рейл-то-рейл? Что-то типа 358-го, но только до верхнего питания чтобы добирался?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Lm339 Уж он то точно доберется :-)

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Не, ну это компаратор, а мне ОУ надо.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Дак любой компаратор это прежде всего - ОУ

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

Так посмотри что на выходе стоит в LM339

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Я знаю что там ОК. Это, еслишто, шутка был. 

a5021
Offline
Зарегистрирован: 07.07.2013

ЕвгенийП пишет:
Какие?

AD8552A. Брал по зиме на али, обошлись в 270руб за 5 шт. Оригинал это или нет, так и не смог выяснить, но параметрам, интересовавшим меня в первую очередь, соответствовали.

Цитата:
Вообще, можете посоветовать простой, рабочекрестьянский, недорогой (частотные и прочие характеристики - почти пофигу), но рейл-то-рейл? Что-то типа 358-го, но только до верхнего питания чтобы добирался?

Вышеупомянутый 8552A этим требования соответствует. При моих измерениях он показывал цифры даже лучшие, чем указаны в даташите. Я про рейл-ту-рейл. Есть и подешевле варианты, напрмер, TLC272C, который стоит на али 100 руб за десяток с доставкой.

Joiner
Offline
Зарегистрирован: 04.09.2014

А что такое " рейл-ту-рейл"

ВН
Offline
Зарегистрирован: 25.02.2016

выход работает от + питанич до - питания.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

a5021 пишет:

ЕвгенийП пишет:
Какие?

AD8552A. Брал по зиме на али, .......
При моих измерениях он показывал цифры даже лучшие, чем указаны в даташите.
Я про рейл-ту-рейл.

Лучше чем? ......... , а понял,
выходное напряжение выше чем питание
и ниже чем земля.
Круто!
Это, еслишто, шутка был.

Joiner
Offline
Зарегистрирован: 04.09.2014

Спасибо.

a5021
Offline
Зарегистрирован: 07.07.2013

Шутка получилась не очень. В общем случае можно говорить, что рейл-ту-рейл не бывает с точностью до микровольта. У хороших ОУ это сотни микровольт -- единицы милливольт. У рей-то-рейл операционников попроще -- это десятки и сотни милливольт. Следующий момент -- это зависимость выходного напряжения от сопротивления нагрузки. Например, на нагрузке 1мегаом уход от рельсы может быть 30мкв, а на нагрузке 200ком это будет уже 10мв. Для подавляющего числа применений -- данный разброс -- чепуха, не стоящая внимания, но если мы беремся за прецизионные преобразования, то эта чепуха крови может выпить немеряно. Еще нюанс -- микровольты к нулю даются намного тяжелее, чем микровольты к верхней рельсе. Подавляющее большинство проверенных мной недорогих ОУ к верхней рельсе подбирались ближе, чем опускались к нижней.