измерение напряжения от -20В да +20В контроллером с АЦП

Jan 29, 2004 18 Replies

Hi, All!



Появилась тут задачка - измерять контроллером напряжение в диапазоне от -20 до



+20 вольт с точностью 0.5 процента. К сожалению, в аналоговой технике слаб, поэтому прошу помощи у Олла.

Контроллер Fujitsu MB90F474H. Операционник взял КР140УД608.



Вроде что-то типа такого должно работать :) Hо, во-первых, ноль нормально не выставляется и на выходе операционника напряжение как-то нелинейно меняется в зависимости от входного.



Vcc = 3.3B | | | ------R1----- *-|Vcc | | | | Вход | +20В | *-|AVcc



+-20В | | | | | | |\| | --|AVRH o--R2-*---|-\ | | MB90F474H | |----*--------|AN0 ----|+/ | | | |/| --- --|AVss | | / \ | | | -20В--- *-|Vss +20В| -20В | | | ---R3-- --- | ---


И еще нескольно вопросов по АЦП контроллера:



  1. AVcc = Vcc и AVss = Vss правильно?
  2. А что делать со входом AVRH? По идее на него же надо подавать напряжение с опорного источника? А с Vcc, как на схеме можно?


С наилучшими пожеланиями, Anton.


Anton, ты ещё здесь сидишь?

Четверг Январь 29 2004 17:17, Anton Zavyalov wrote to All:

AZ> Появилась тут задачка - измерять контроллером напряжение в диапазоне AZ> от -20 до +20 вольт с точностью 0.5 процента. К сожалению, в AZ> аналоговой технике слаб, поэтому прошу помощи у Олла.

AZ> Контроллер Fujitsu MB90F474H. Операционник взял КР140УД608.

AZ> Вроде что-то типа такого должно работать :) Hо, во-первых, ноль AZ> нормально не выставляется и на выходе операционника напряжение как-то AZ> нелинейно меняется в зависимости от входного.

AZ> Vcc = 3.3B AZ> | AZ> | | AZ> -+--+-R1-+--- *-|Vcc AZ> | | | | AZ> Вход | +20В | *-|AVcc AZ> +-20В | | | | | AZ> | |\| | --|AVRH AZ> o--R2-*-+-|-\ | | MB90F474H AZ> | |-+--*-+--+---|AN0 AZ> -+--|+/ | | AZ> | |/| -+- --|AVss AZ> | | / \ | | AZ> | -20В-+- *-|Vss AZ> +20В| -20В | | | AZ> -+-R3-- -+- | AZ> -+-

Хоть бы номиналы резисторов для разнообразия привёл ;))) Тогда было бы понятно, отчего у тебя схема криво работает...

1) Питание операционника по верхнему допустимому пределу напряжений. Зачем его так мучить?

2) Расчёт делителя тривиален, достаточно учебника для средней школы.

3) Я бы взял rail-to-rail AD820, запитал от 3,3В (заодно решается проблема защиты АЦП от перегрузок) и попробовал такую схему:

12,12*R R ┌──────┐ ┌──────┐ +- 20 В ──────┤ ├───┬──┤ ├──────┐ └──────┘ │ └──────┘ │ │ │ │ │ │ │\ │ └──o \ │ │ \ │ │ >──────┴─── 0..+3,3В │ / + 1,524 В ───┤ / │/

Георгий

Hello Anton.

29 Jan 04 17:17, Anton Zavyalov wrote to All:

AZ> Вроде что-то типа такого должно работать :) Hо, во-первых, ноль нормально AZ> не выставляется и на выходе операционника напряжение как-то нелинейно AZ> меняется в зависимости от входного.

Отоpви выход опеpа от микpоконтpоллеpа, yбеpи диод, тепеpь смотpи, что на выходе опеpа.

Кyпи Хоpовица и Хилла "Искyсство схемотехники"

AZ> И еще нескольно вопросов по АЦП контроллера: AZ> 1. AVcc = Vcc и AVss = Vss правильно?

в общем слyчае нет, но так можно делать. пpочитай

formatting link
AZ> 2. А что делать со входом AVRH? По идее на него же надо подавать AZ> напряжение с опорного источника?

да

AZ> А с Vcc, как на схеме можно?

можно.

Alexey

Hi, Alexey!

30 Янв 04 09:32, Alexey Musin -> Anton Zavyalov:

AZ>> Вроде что-то типа такого должно работать :) Hо, во-первых, ноль AZ>> нормально не выставляется и на выходе операционника напряжение AZ>> как-то нелинейно меняется в зависимости от входного.

AM> Отоpви выход опеpа от микpоконтpоллеpа, AM> yбеpи диод, AM> тепеpь смотpи, что на выходе опеpа. А каким образом диод влияет на операционник? Я его поставил, чтоб на контроллер при установки нуля резистором R3 не попало отрицательное напряжение.

AM> Кyпи Хоpовица и Хилла "Искyсство схемотехники" Есть :) Собственно до прочтения его, я вообще себе слабо представлял, что такое операционник и как он работает.

AZ>> И еще нескольно вопросов по АЦП контроллера: AZ>> 1. AVcc = Vcc и AVss = Vss правильно?

AM> в общем слyчае нет, но так можно делать. AM> пpочитай AM>

formatting link
За ссылку спасибо. Искал что-то подобное, но видать, плохо.

AZ>> 2. А что делать со входом AVRH? По идее на него же надо подавать AZ>> напряжение с опорного источника?

AM> да

AZ>> А с Vcc, как на схеме можно?

AM> можно. А нафига тогда это опорное напряжение? Чтоб ограничить верхний предел измерения АЦП?

С наилучшими пожеланиями, Anton.

Hi, George!

30 Янв 04 06:26, George Shepelev -> Anton Zavyalov:

GS> 12,12*R R GS> ┌──────┐ ┌──────┐ GS> +- 20 В ──────┤ ├───┬──┤ ├──────┐ GS> └──────┘ │ └──────┘ │ GS> │ │ GS> │ │ GS> │ │\ │ GS> └──o \ │ GS> │ \ │ GS> │ >──────┴─── 0..+3,3В GS> │ / GS> + 1,524 В ───┤ / GS> │/

А как посчиталось 1.524В? И как его получить? Делителем? Оно ж должно быть очень точным.

С наилучшими пожеланиями, Anton.

Пpивет, Anton.

Вот что Anton Zavyalov wrote to All:

AZ> Появилась тyт задачка - измеpять контpоллеpом напpяжение в диапазоне AZ> от -20 до +20 вольт с точностью 0.5 пpоцента. К сожалению, в AZ> аналоговой технике слаб, поэтомy пpошy помощи y Олла.

AZ> Контpоллеp Fujitsu MB90F474H. Опеpационник взял КР140УД608.

AZ> Вpоде что-то типа такого должно pаботать :) Hо, во-пеpвых, ноль AZ> ноpмально не выставляется и на выходе опеpационника напpяжение как-то AZ> нелинейно меняется в зависимости от входного.

AZ> Vcc = 3.3B AZ> | AZ> | | AZ> ------R1----- *-|Vcc AZ> | | | | AZ> Вход | +20В | *-|AVcc AZ> +-20В | | | | | AZ> | |\| | --|AVRH AZ> o--R2-*---|-\ | | MB90F474H AZ> | |----*--------|AN0 AZ> ----|+/ | | AZ> | |/| --- --|AVss AZ> | | / \ | | AZ> | -20В--- *-|Vss AZ> +20В| -20В | | | AZ> ---R3-- --- | AZ> ---

Входное сопpотивление такой схемы pавно R2 и может нагpyжать источник сигнала. Hе в этом ли дело?

Michael G. Belousoff

... ==== Пpоблемy надо pешать до того, как она появится. ====

Anton, ты ещё здесь сидишь?

Пятница Январь 30 2004 11:29, Anton Zavyalov wrote to George Shepelev:

AZ> А как посчиталось 1.524В?

Такие примеры "щёлкают" на уроках математики в средней школе.

AZ> И как его получить? Делителем? Оно ж должно быть очень точным.

Оно должно быть таким-же точным, как опорник АЦП. Почему бы не подключить делитель к этому опорнику?

Георгий

Hi, George!

01 Фев 04 01:58, George Shepelev -> Anton Zavyalov:

AZ>> А как посчиталось 1.524В?

GS> Такие примеры "щёлкают" на уроках математики в средней школе. А на формулу можно взглянуть? Hу не понимаю я как это число получилось.

AZ>> И как его получить? Делителем? Оно ж должно быть очень точным.

GS> Оно должно быть таким-же точным, как опорник АЦП. Почему бы GS> не подключить делитель к этому опорнику? А более конкретное название микросхемы, формирующей опорное напряжение, можно узнать?

С наилучшими пожеланиями, Anton.

Hi, Michael!

30 Янв 04 18:33, Michael Belousoff -> Anton Zavyalov:

AZ>> Vcc = 3.3B AZ>> | AZ>> | | AZ>> ------R1----- *-|Vcc AZ>> | | | | AZ>> Вход | +20В | *-|AVcc AZ>> +-20В | | | | | AZ>> | |\| | --|AVRH AZ>> o--R2-*---|-\ | | MB90F474H AZ>> | |----*--------|AN0 AZ>> ----|+/ | | AZ>> | |/| --- --|AVss AZ>> | | / \ | | AZ>> | -20В--- *-|Vss AZ>> +20В| -20В | | | AZ>> ---R3-- --- | AZ>> ---

MB> Входное сопpотивление такой схемы pавно R2 и может нагpyжать MB> источник сигнала. Hе в этом ли дело?

C питаловом немного соврал: +-15В, а не +-20В. R1 = 10k, R2 = 91k, R3 = 10k. Входное напряжение снимаю с переменного резистора с R = 4.7k, включенного как делитель напряжения. Вроде, заработало. Hе нравиться, что резистором R3 можно выставить напряжение на выходе операционника больше AVcc, а, следовательно, пожечь АЦП.

С наилучшими пожеланиями, Anton.

Mon Feb 02 2004 17:27, Anton Zavyalov wrote to Michael Belousoff:

AZ>>> Vcc = 3.3B AZ>>> | AZ>>> | | AZ>>> ------R1----- *-|Vcc AZ>>> | | | | AZ>>> Вход | +20В | *-|AVcc AZ>>> +-20В | | | | | AZ>>> | |\| | --|AVRH AZ>>> o--R2-*---|-\ | | MB90F474H AZ>>> | |----*--------|AN0 AZ>>> ----|+/ | | AZ>>> | |/| --- --|AVss AZ>>> | | / \ | | AZ>>> | -20В--- *-|Vss AZ>>> +20В| -20В | | | AZ>>> ---R3-- --- | AZ>>> ---

AZ> Hе нравиться, что резистором R3 можно выставить напряжение на выходе AZ> операционника больше AVcc, а, следовательно, пожечь АЦП.

Правильно не нравится, АЦП с большой вероятностью рано или поздно сгорит.

Vcc = 3.3B | | | +-----R1----+ *-|Vcc | | | | Вход | +3.3В | *-|AVcc +-20В | | | | | | |\| | --|AVRH o--R2-*---|-\ | | MB90F474H | |----*--------|AN0 ----|+/ | | |/| --|AVss | | | | | --- *-|Vss | | | +-R3--*--R4-- +3.3В | | --- ---

R2/R1 = 40/3.3 R4/R3 = 23.3/20

OУ - rail-to-rail output, 3.3v.

АЦП - точно не сгорит, надо ли защищать ОУ - зависит от задачи.

WBR, Юрий.

Привет, Anton!

GS>> Такие примеры "щёлкают" на уроках математики в средней школе.

AZ> А на формулу можно взглянуть? Hу не понимаю я как это число получилось.

AZ>>> И как его получить? Делителем? Оно ж должно быть очень точным.

GS>> Оно должно быть таким-же точным, как опорник АЦП. Почему бы GS>> не подключить делитель к этому опорнику?

AZ> А более конкретное название микросхемы, формирующей опорное напряжение, AZ> можно узнать? Имхо, парень, ты сейчас получишь заранее известный ответ: "Тебе надо, ты и ищи" :) Владимир Чекин

Hi, Yuriy!

02 Фев 04 18:31, Yuriy K -> Anton Zavyalov:

AZ>> Hе нравиться, что резистором R3 можно выставить напряжение на AZ>> выходе операционника больше AVcc, а, следовательно, пожечь АЦП.

YK> Правильно не нравится, АЦП с большой вероятностью рано или поздно YK> сгорит.

YK> Vcc = 3.3B YK> | YK> | | YK> +-----R1----+ *-|Vcc YK> | | | | YK> Вход | +3.3В | *-|AVcc YK> +-20В | | | | | YK> | |\| | --|AVRH YK> o--R2-*---|-\ | | MB90F474H YK> | |----*--------|AN0 YK> ----|+/ | YK> | |/| --|AVss YK> | | | | YK> | --- *-|Vss YK> | | | YK> +-R3--*--R4-- +3.3В | YK> | --- YK> ---

YK> R2/R1 = 40/3.3 YK> R4/R3 = 23.3/20 А разве получится подобрать такое точное соотношение сопротивлений? Подстроечные резисторы? Или точное не надо, а взять резисторы которые ближе всего удовлетворяют этому соотношению, но потом программно осуществить калибровку аналогово-цифрового канала?

С наилучшими пожеланиями, Anton.

Hi, Yuriy!

02 æÅ× 04 18:31, Yuriy K -> Anton Zavyalov:

YK> ðÒÁ×ÉÌØÎÏ ÎÅ ÎÒÁ×ÉÔÓÑ, áãð Ó ÂÏÌØÛÏÊ ×ÅÒÏÑÔÎÏÓÔØÀ ÒÁÎÏ ÉÌÉ ÐÏÚÄÎÏ YK> ÓÇÏÒÉÔ.

YK> Vcc = 3.3B YK> | YK> | | YK> +-----R1----+ *-|Vcc YK> | | | | YK> ÷ÈÏÄ | +3.3÷ | *-|AVcc YK> +-20÷ | | | | | YK> | |\| | --|AVRH YK> o--R2-*---|-\ | | MB90F474H YK> | |----*--------|AN0 YK> ----|+/ | YK> | |/| --|AVss YK> | | | | YK> | --- *-|Vss YK> | | | YK> +-R3--*--R4-- +3.3÷ | YK> | --- YK> ---

YK> Oõ - rail-to-rail output, 3.3v. ÷ÏÔ, ×ÒÏÄÅ ×ÙÂÒÁÌ - OPA234. ðÏ ÄÁÔÁÛÉÔÕ rail-to-rail, ÎÉÚËÏ×ÏÌØÔÏ×ÙÊ É ÒÁÂÏÔÁÅÔ Ó ÎÁÐÒÑÖÅÎÉÑÍÉ ÎÉÖÅ ÚÅÍÌÉ. äÁ É ÐÏ ÃÅÎÅ ÂÕÄÅÔ ÄÅÛÅ×ÌÅ, ÞÅÍ ÐÒÅÄÌÏÖÅÎÎÙÊ çÅÏÒÇÉÅÍ AD820. éÌÉ Ñ ÞÔÏ-ÔÏ ÕÐÕÓÔÉÌ? :)

ó ÎÁÉÌÕÞÛÉÍÉ ÐÏÖÅÌÁÎÉÑÍÉ, Anton.

Tue Feb 03 2004 11:14, Anton Zavyalov wrote to Yuriy K:

AZ>>> Hе нравиться, что резистором R3 можно выставить напряжение на AZ>>> выходе операционника больше AVcc, а, следовательно, пожечь АЦП.

YK>> Правильно не нравится, АЦП с большой вероятностью рано или поздно YK>> сгорит.

YK>> Vcc = 3.3B YK>> | YK>> | | YK>> +-----R1----+ *-|Vcc YK>> | | | | YK>> Вход | +3.3В | *-|AVcc YK>> +-20В | | | | | YK>> | |\| | --|AVRH YK>> o--R2-*---|-\ | | MB90F474H YK>> | |----*--------|AN0 YK>> ----|+/ | YK>> | |/| --|AVss YK>> | | | | YK>> | --- *-|Vss YK>> | | | YK>> +-R3--*--R4-- +3.3В | YK>> | --- YK>> ---

YK>> R2/R1 = 40/3.3 YK>> R4/R3 = 23.3/20

AZ> А разве получится подобрать такое точное соотношение сопротивлений?

Что значит _точное_? С какой точностью? 5% - запросто.

AZ> взять резисторы которые ближе всего удовлетворяют этому соотношению,

Да.

AZ> но потом программно AZ> осуществить калибровку аналогово-цифрового канала?

Резисторы имеют ограниченную точность. Обычно 5%, есть 1%, дальше идет резкий

рост цены.

Сначала стоит определиться, с какой точностью надо измерять входное напряжение, после чего уже задумываться о точности резисторов, опорного напряжения и АЦП.

WBR, Юрий.

Tue Feb 03 2004 15:13, Anton Zavyalov wrote to Yuriy K:

YK>> ðÒÁ×ÉÌØÎÏ ÎÅ ÎÒÁ×ÉÔÓÑ, áãð Ó ÂÏÌØÛÏÊ ×ÅÒÏÑÔÎÏÓÔØÀ ÒÁÎÏ ÉÌÉ ÐÏÚÄÎÏ YK>> ÓÇÏÒÉÔ.

YK>> Vcc = 3.3B YK>> | YK>> | | YK>> +-----R1----+ *-|Vcc YK>> | | | | YK>> ÷ÈÏÄ | +3.3÷ | *-|AVcc YK>> +-20÷ | | | | | YK>> | |\| | --|AVRH YK>> o--R2-*---|-\ | | MB90F474H YK>> | |----*--------|AN0 YK>> ----|+/ | YK>> | |/| --|AVss YK>> | | | | YK>> | --- *-|Vss YK>> | | | YK>> +-R3--*--R4-- +3.3÷ | YK>> | --- YK>> ---

YK>> Oõ - rail-to-rail output, 3.3v.

AZ> ÷ÏÔ, ×ÒÏÄÅ ×ÙÂÒÁÌ - OPA234. ðÏ ÄÁÔÁÛÉÔÕ rail-to-rail,

ïÎ ÎÅ rail-to-rail. Vout = 0 ... (V+)-1V.

MC33202, ÎÁÐÒÉÍÅÒ, ÅÓÌÉ 10Í÷ ÓÍÅÝÅÎÉÑ ÕÓÔÒÁÉ×ÁÅÔ, ÚÁÔÏ ÄÅÛÅ×Ï. OP279, LMC6482.

WBR, àÒÉÊ.

Hi, Yuriy!

03 Фев 04 16:00, Yuriy K -> Anton Zavyalov:

YK>>> R2/R1 = 40/3.3 YK>>> R4/R3 = 23.3/20

AZ>> А разве получится подобрать такое точное соотношение AZ>> сопротивлений?

YK> Что значит _точное_? С какой точностью? 5% - запросто. Точность нужна 1%.

Вроде LMC6482 подходит. Спасибо за совет, буду пробовать.

С наилучшими пожеланиями, Anton.

Anton, ты ещё здесь сидишь?

Понедельник Февраль 02 2004 17:20, Anton Zavyalov wrote to George Shepelev:

AZ>>> А как посчиталось 1.524В? GS>> Такие примеры "щёлкают" на уроках математики в средней школе. AZ> А на формулу можно взглянуть? Hу не понимаю я как это число AZ> получилось.

Учи математику, потом пригодится.

Подсказка - попробуй решить эту задачу _графически_.

AZ>>> И как его получить? Делителем? Оно ж должно быть очень точным. GS>> Оно должно быть таким-же точным, как опорник АЦП. Почему бы GS>> не подключить делитель к этому опорнику? AZ> А более конкретное название микросхемы, формирующей опорное AZ> напряжение, можно узнать?

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

Георгий

Tue Feb 03 2004 18:55, Anton Zavyalov wrote to Yuriy K:

YK>>>> R2/R1 = 40/3.3 YK>>>> R4/R3 = 23.3/20

AZ>>> А разве получится подобрать такое точное соотношение AZ>>> сопротивлений?

YK>> Что значит _точное_? С какой точностью? 5% - запросто.

AZ> Точность нужна 1%.

Точность чего? Резисторы 1% доступны, но для 4 резисторов точность схемы будет уже 2% (= sqrt(1+1+1+1)) Если учесть точность опорного напряжения, то точность измерения входного напряжения упадет где-нибудь до 3%.

AZ> Вроде LMC6482 подходит. Спасибо за совет, буду пробовать.

Да не за что. Мы их, кстати, уже не первый год в automotive оборудовании используем. Проблем не помню.

WBR, Юрий.

Anton, ты ещё здесь сидишь?

Вторник Февраль 03 2004 16:00, Yuriy K wrote to Anton Zavyalov:

YK> Сначала стоит определиться, с какой точностью надо измерять входное YK> напряжение, после чего уже задумываться о точности резисторов, YK> опорного напряжения и АЦП.

И в любом случае лучше рассчитать схему так, чтобы выходное напряжение ОУ не пыталось выходить за rail-to-rail. Лучше сделать "полный размах" чуть Уже, потеряв энное количество "ступенек" АЦП, обычно это несущественно.

Георгий

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required