Масштабирующее напряжение для аналогового входа Arduino, за пределами делителей напряжения


16

Недавно я построил несколько волоконно-оптических датчиков изгиба, и я хочу прочитать значения, которые я получаю от них, в компьютер через Arduino. Я измеряю свет этим фотодиодом от Industrial Fiber Optics . В настоящее время я даю светодиод на другом конце, а также фотодиод 2.2V. Мой вопрос связан с тем фактом, что колебания напряжения, измеряемые мультиметром на фотодиоде, являются линейными, но довольно малыми, поскольку волокно деформируется, даже довольно радикально. Если волокно прямое, в зависимости от волокна (его сложно оценить одинаково), напряжение, например, колеблется около 1,92 В, а при изгибе оно поднимется, скажем, до 1,93-1,94 В. Я не беспокоюсь о том, чтобы получить идентичные напряжения, поскольку я могу масштабировать в программном обеспечении.

Что меня беспокоит, так это потеря разрешения при выполнении A / D с Arduino. Если мои колебания напряжения будут порядка 10 мВ, разве 10-разрядный аналого-цифровой преобразователь Arduino не изменит его, даже если я увеличу напряжение до 5 В с помощью делителя напряжения? То, что я ищу, это аналоговый скейлер. Как я могу расширить этот диапазон между 1,92 и 1,94, чтобы охватить весь диапазон, от 0 В до 5 В, чтобы я мог использовать весь спектр Arduino A / D?

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

(Вы можете подумать, как и Давр: «Почему вы используете волоконную оптику для определения изгиба? Почему вы ожидаете изменения напряжения при изгибе волокна?» Хитрость заключается в том, чтобы удалить оболочку на одной стороне оптоволоконного кабеля. Это позволяет свету рассеиваться. Когда кабель отогнут от царапины, из кабеля выходит больше света, что вызывает падение напряжения в приемнике и наоборот.)


Не могли бы вы показать схему своего приемника? Вы подаете напряжение смещения 1,9 В?
эндолит

Если вы имеете в виду схему для самого получателя, я привел ссылку на таблицу выше. Вот и снова: i-fiberoptics.com/pdf/IFD91.pdf Если вы имеете в виду, как я это подключил, вы можете увидеть на фотографии. Приемник черный. Я даю ему 2,2 В (хотя на фото это литий-ионная батарея) через красный провод к стороне приемника с оранжевой точкой, и я измеряю напряжение на резисторе, который идет на землю на другая сторона.
терраса

Ответы:


11

Так что, если я правильно понимаю, вы хотите, чтобы иметь возможность «читать» изменение 10 мВ поверх сигнала 1,9 В?

Если это так, то я бы предложил два отдельных этапа. Первым будет фотодиодный усилитель (стр. 9 - самая стандартная схема). Это поможет преобразовать ток с вашего фотодиода в напряжение.

Вторым этапом будет инструментальный усилитель, такой как семейство INA от Texas Instruments (лучший, но также может быть дорогим). Это поможет удалить ваш сигнал «синфазного режима», который в данном случае равен 1,9 В. Вы также можете добавить усиление к инструментальному усилителю или поочередно добавить простой операционный усилитель в неинвертирующей конфигурации в конце, чтобы помочь усилению Ваш сигнал до необходимого 5 В.

Я не говорю, что это будет прекрасно, но я думаю, что это хорошее начало.

В заключение, мне нравится идея Дэвида выше о зажимах, хотя они могут вызвать некоторые ошибки измерения на аналого-цифровом преобразователе. Что более важно, хотя, если вы можете качать его, попробуйте лучший операционный усилитель, чем 741. Они распространены, но характеристики ужасны. Напряжение смещения 3 или 4 мВ на входных клеммах может действительно испортить небольшой сигнал, который вы пытаетесь измерить.

~ Крис Гаммелл


1
Вам не нужен инструментальный усилитель. Подойдет простой дифференциальный усилитель. Тем не менее, вам нужно постоянное питание 1,9 В для использования в качестве ориентира. Я предполагаю, что что-то подобное уже существует в цепи как смещение для датчика. Это помогло бы иметь схему. Кроме того, после устранения смещения необходимо повторно добавить другое смещение, чтобы оно находилось в диапазоне 0–5 В на АЦП.
эндолит

1
Я согласен, что вам не нужно, но это хорошая идея. Инструментальный усилитель - это просто дифференциальный усилитель с буферами перед ним (иногда с добавленными резисторами для усиления). Если вы просто используете дифференциальный усилитель, вы попадаете в зависимость от резисторов в своем дифференциальном усилителе; иногда всего 1K. Если он пытается что-то измерить, этот высокий импеданс (из буферов iAmp) действительно может помочь (то есть, нет тока в измерительном устройстве).
Крис Гаммелл

12

Формирование сигнала в этом смысле чрезвычайно распространено. Вы хотите использовать усилитель для того, чтобы сделать этот диапазон диапазона 10 мВ (например) полным диапазоном 0-5 В arduino. Это можно сделать с помощью операционных усилителей, таких как LM741. Вероятно, вы также захотите использовать «зажим напряжения» (например, два стабилитрона) на выходе вашего формирователя сигнала / входа в АЦП, чтобы убедиться, что значение не превышает 5 В. Если вы посмотрите в Интернете листы данных на операционные усилители и / или схемы формирования сигнала, вы должны найти инструкции относительно того, что вы ищете.


4

Предлагаем вам взглянуть на комбинацию дифференциального PGA (программируемого усилителя усиления) и ЦАП, при этом выход датчика поступает на вход «+», а ЦАП - на вход «-». (Или что-то интегрированное, что дает вам эквивалентную функциональность.) По сути, посмотрите на сигнал с низким усилением, выясните, каково его смещение, подайте это напряжение на ЦАП и увеличьте усиление.

PGA308 от TI выглядит неплохо.

Если вы хотите менее дорогое решение, используйте дифференциальный усилитель с фиксированным усилением (подойдет стандартный 4-резистор + операционный усилитель) + стабильный, тихий 8-разрядный ЦАП (характеристики стабильности / шума важнее точности), снова вставьте выход датчика на входе «+» на дифференциальном усилителе и выход ЦАП на входе «-».

Упражнение для читателя: покажите, что вы можете вывести выход diff-amp из насыщения в линейный диапазон, используя технику двоичного поиска с ЦАП, и убедившись, что коэффициент усиления не превышает G1 = входное напряжение полномасштабного АЦП, делится на сумму номинального размера шага ЦАП и его DNL (дифференциальной нелинейности). Я бы, вероятно, использовал меньшее из (G1 / 2) и G2, где G2 = входное напряжение АЦП полной шкалы, деленное на диапазон выходного напряжения датчика, который вас интересует.


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

Зачем тебе ЦАП? Вы просто генерируете смещение постоянного тока с этим? Это кажется излишним.
эндолит

Да. ЦАП был основан на предположении о необходимости изменения смещения постоянного тока в широком диапазоне. Если у вас есть система с напряжением, охватывающим только узкий диапазон (при условии, что вы правильно выполнили анализ допусков), тогда резисторный делитель и эталон могут быть достаточными для получения напряжения смещения. Или, для большей сложности, резисторная сеть + мультиплексоры (это то, что некоторые ЦАПы). ЦАП на самом деле не настолько сложное или дорогое устройство, если вам не требуется сверхвысокая скорость или сверхточное разрешение.
Джейсон С

3

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


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

2

Вам нужно две вещи: использовать дифференциальный вход для сравнения со стандартом 1,9 В (или близко к нему) и усилитель для увеличения разрешения этой разности.

Для достижения наилучших результатов вы должны использовать внешние высококачественные инструментальные усилители или операционные усилители. Но вы можете попробовать использовать средства, встроенные в микроконтроллер. В Arduino Mega (чип ATMega2560) и Arduino Leonardo есть опция для дифференциальных усиленных входов в АЦП прямо на чипе. (У Уно этого нет). ATMega2560 может сделать несколько каналов (мультиплексированных) усиленного дифференциального АЦП для нескольких датчиков - прочитайте таблицу данных, чтобы увидеть, какие комбинации выводов возможны. Он имеет опцию 200-кратного усиления, которая позволяет установить полное разрешение 1024 шага на 25 мВ. Вам просто нужно расположить окно 25 мВ там, где оно вам нужно!

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

Сложнее всего получить стабильный и точный эталон 1,9 В для сравнения.


Пришел сюда, чтобы сказать это. +1!
Ник Джонсон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.