Измеритель напряжения -25В...+25В на Arduino |
На этой страничке представлено устройство, позволяющее использовать Arduino в качестве вольтметра для измерения напряжения от -25В до +25В постоянного тока. Фактически это преобразователь входного измеряемого напряжения в напряжение, которое может считать АЦП Arduino. Прибор имеет возможность менять диапазон измерения, например до -5В...+5В. Также можно смещать полосу замера ниже или выше, например, -1В...+10В. Этот преобразователь может быть полезен для контроля аналогового сигнала от устройств, поддерживающих данный стандарт. ![]() Измеритель напряжения на Arduino Arduino UNO имеет шесть каналов приема аналогового сигнала (пины А0-А5), один из которых и будет использован в проекте. Для питания устройства (LM358) можно использовать питание самой платы Arduino или шилда (5 вольт). Также, в качестве опорного напряжения для замера входящего сигнала, преобразователь будет использовать 1,1 вольта с пина REF Arduino. На рисунке ниже представлена электросхема измерителя напряжения. Еще ниже приведены пояснения, которые помогут лучше понять принцип работы устройства. |
ЭЛЕКТРОСХЕМА |
Центральной частью измерителя является микросхема LM358 (datasheet), представляющая из себя два операционных усилителя на одном кристалле. Измеряемый сигнал подается на клеммы IN(-) и IN(+), далее он уменьшается до приемлемого с помощью делителя напряжения R3/POTI1 и входит на один из ОУ LM358. Туда же со второго ОУ заходит опорное напряжения с Arduino, благодаря чему мы можем измерять отрицательный сигнал, который "приподнимается" опорным над нулевой линией. Само опорное напряжение также можно регулировать с помощью делителя напряжения R1/POTI2, тем самым смещая диапазон замеров выше или ниже. В схему включены два RC-фильтра : (R2-C2) и (R4-C1). По сути оба операционных усилителя служат буферами, которые защищают микроконтроллер Arduino от проблем с входным сигналом. ![]() Электросхема измерителя напряжения Рассмотрим назначение элементов схемы подробней.
|
СБОРКА ПЛАТЫ |
Схема пайки элементов измерителя напряжения представлена на рисунке ниже. За базу взята макетная плата 55х45 мм. Конечно вы можете расположить элементы по другому и более компактно. ![]() Схема пайки измерителя напряжения на макетной плате Примечания :
|
ТЕСТОВЫЙ СТЕНД |
Прежде, чем начать работать с измерителем напряжения, его нужно откалибровать. А для этого нам понадобится тестовый стенд, схема которого представлена ниже. Наша задача выставить с помощью подстроечных резисторов диапзон замера и нулевую точку, а также обеспечить перевод аналогового сигнала на Arduino в напряжение на входе в измеритель (произвести интерполяцию). ![]() Схема подключения измерителя для тестирования Управлять системой можно с помощью трех кнопок : НАСТРОЙКИ, ВВЕРХ, ВНИЗ. Рассмотрим их функции подробно : Кнопка НАСТРОЙКИПри нажатии этой кнопки вы будете циклично переходить по пунктам меню. Изменение параметров осуществляется кнопками ВВЕРХ и ВНИЗ. Изменение цифровых параметров сразу принимается системой, подтверждение не нужно. Пройдемся по пунктам меню Настройки.
Кнопки ВВЕРХ-ВНИЗЭтими кнопками меняются значения параметров. Индикация LCDВерхняя строчка Нижняя строчка |
КАЛИБРОВКА |
После того, как плата собрана, ее нужно откалибровать. Для этого загрузим в Arduino тестовый скетч, а затем подключим плату к PLC согласно схеме. Для начала определимся какое напряжение мы будем мерить. Например, пусть это будет симметричное напряжение -25В...+25В. Раз оно симметричное, то нам надо установить на входе в операционный усилитель (ножка 3, смотри datasheet) половину от опорного напряжение : 1,1В / 2 = 0,55В. Для калибровки подсоедините мультиметр к 3-й ножки LM358 и земле на клеммнице опорного напряжения. Теперь, вращая потенциометр POTI2, добейтесь на тестере показаний 0,55 вольт. Далее подсоедините источник замеряемого напряжения к клеммам IN(-) и IN(+). Сбросьте на этом источнике вольтаж до нуля. Затем постепенно опускайте входное напряжение до -25 вольт (по мультиметру), одновременно наблюдая за показаниями параметра VD на экране LCD (на параметр VR внимание не обращайте). C помощью потенциометра POTI1 вы должны сделать так, чтобы при показаниях параметра VD близких к нулю, на входе у вас было -25 вольт (по тестеру). Далее постепенно поднимите входное напряжение до +25 вольт (по мультиметру), одновременно наблюдая за показаниями параметра VD на экране LCD (на параметр VR внимания не обращаем). Если при +25 вольтах параметр VD меньше 1023, то все нормально, если стал равен 1023, то с помощью потенциометра POTI1 вы должны сделать так, чтобы параметр VD ушел немного ниже 1023. Этими действиями мы "загоняем" замеряемое напряжение в диапазон опорного напряжения. Теперь зададим интерполяционную характеристику. Для этого точно установите входное напряжение +25 вольт (если вы с него еще не ушли). В настройках найдите пункт MaxVolt и установите значение параметра VD, затем перейдите к пункту MaxReal и установите значение +25 вольт. После этого опустите напряжение до -25 вольт. Перейдите к параметру MinVolt и занесите сюда то, что видно в параметре VD. Перейдите к пункту MinReal и установите значение -25 вольт. Можно еще пару раз поднять и опустить входное напряжение, корректируя настройки. Не забудьте сохранить их в память Arduino. Если вы поняли сам принцип калибровки, то без труда сможете настроить измеритель на другой нужный вам диапазон напряжений. Как вы помните, потенциометром POTI2 мы выставляли опорное напряжение. Тогда мы взяли половину от опорного, так как замеряемое напряжение было симметричным. Если у вас замеряемое напряжение не симметрично, например вы хотите мерить от -2 вольт до +10 вольт, вы конечно же можете оставить и ранее настроенную характеристику, но тогда вы потеряете часть рабочего диапазона опорного напряжения. С помощью POTI2 вы можете сместить диапазон замера выбрав всю шкалу опорного. Обратите внимание, для калибровки очень удобно использовать задатчик двухполярного напряжения со страниц этого сайта. Если у вас нет источника питания, способного выдавать отрицательное напряжения, просто перекидывайте плюс и минус на клеммах входного напряжения при калибровке. ![]() Стенд для калибровки |
ЧТО НУЖНО ДЛЯ ПРОЕКТА |
Измеритель напряжения
Тестовый стенд
|
ТЕСТОВЫЙ СКЕТЧ |
Ниже представлен скетч системы управления. В этом окне он неудобочитаем, поэтому скачать его в формате ino вы можете по этой ссылке. Для работы этого скетча вам понадобятся дополнительные библиотеки :
Если есть возможность, проверьте эти библиотеки на наличие обновлений. |
|