Преобразователь токовой петли 4-20 мА

Электросхема
Сборка платы
Тестовый стенд
Калибровка
Что нужно для проекта
Тестовый скетч

Фото преобразователя
Версия для печати

Вернуться на главную

В автоматизации современной промышленности и на транспорте (включая судоходство) большое распространение получил стандарт передачи аналогового сигнала "токовая петля 4-20 мА". Практически все поставщики промышленных микроконтроллеров поддерживают этот стандарт. Основное преимущество токовой петли (по сравнению с более дешевой параметрической передачей напряжением) в том, что точность не зависит от длины и сопротивления линии передачи, поскольку управляемый источник тока автоматически поддерживает требуемый уровень тока в линии. Такая схема позволяет запитывать датчик непосредственно от линии передачи.

Фото. Преобразователь токовой петли 4-20 мА

Преобразователь токовой петли 4-20 мА

Датчики, применяемые в таких системах, преобразуют измеряемый параметр (давление, уровень жидкости, скорость потока и т.д.) в ток. Наименьшее значение измеряемого диапазона соответствует 4 мА, наибольшее - 20 мА. То есть весь диапазон допустимых значений составляет 16 мА. Нулевое значение тока в цепи означает обрыв линии и позволяет легко диагностировать такую неисправность.

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

На этой страничке представлен самодельный преобразователь для подключение датчиков, работающих по протоколу токовой петли 4-20 мА, к Arduino. Этот преобразователь пропорционально конвертирует ток от датчика в напряжение 0-5 вольт. Это напряжение, в свою очередь, подается на аналоговый вход Arduino для последующей обработки в АЦП контроллера.

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

Схема подключения датчика

Схема подключения датчика

ЭЛЕКТРОСХЕМА

Центральной частью преобразователя тока является микросхема LM358 (datasheet), представляющая из себя два операционных усилителя на одном кристалле. В даташите к нему приведена схема дифференциального усилителя, которая и была взята в качестве руководства для создания этого преобразователя тока.

Электросхема преобразователя тока

Электросхема преобразователя тока

Рассмотрим назначение элементов схемы подробней.

  • Ток петли 4-20 мА подается через клеммы LOOP (1 - плюс, 2 - минус) в преобразователь, где проходит через токоизмерительный резистор RX номиналом 10 Ом. Падение напряжения (пропорциональное силе тока петли) выделяется и усиливается в дифференциальном усилителе LM358. Далее оно попадает на вход повторителя напряжения второго ОУ микросхемы LM358. После этого сигнал поступает на аналоговый вход Arduino.
  • Для дополнительной фильтрации сигнала в схему добавлены резистор R5 (220К) и керамический конденсатор C1 (4,7 мкФ). Увеличивая номинал этого конденсатора, вы можете улучшить фильтрацию. Но при этом вырастет и время переходных процессов, например, для 4,7 мкФ время роста сигнала от 0 до 20 мА составляет около 5 секунд. Поэтому подбирая номинал конденсатора, нужно найти золотую середину.
  • Резистор R7 номиналом 3 МОм служит для подтяжки пина А0 Arduino к земле, чтобы при отсутствии сигнала от преобразователя значения на контроллере не "гуляли". Номинал этого резистора берите самый большой, какой есть, чтобы не терять сигнал от датчика.
  • В клеммнице A0-GND клемма 1 - выход сигнала на Arduino, а клемма 2 - земля, которая служит для контрольных замеров выходного напряжения непосредственно на плате.
  • Светодиод D1 и токоограничительный резистор R6 (220 Ом) показывают наличие питания на микросхему LM358 (вывод 1 - катод (минус), вывод 2 - анод (плюс)).
  • Питание на LM358 подается через клеммницу LM358 SUPPLY 5V (1 - плюс, 2 - минус).
  • Элемент U1 LM358 на схеме символизирует ножки питания этой схемы. Оно общее для обоих операционных усилителей. Напряжение 5 вольт можно подать с Arduino или шилда.
  • Резисторы R2/R1 и R4/R3 определяют коэффициент усиления LM358. Эти соотношения должны быть равны. Они выбираются исходя из номинала резистора RX и опорного напряжения Arduino. В данном случае 5 вольт. Важное замечание. Хотя опорное и 5 вольт, но по факту больше, чем напряжение питания LM358 минус 1,0-1,5 вольта вы на выходе с усилителя не получите, поэтому при расчетах берите за верхнюю границу замеров 3,75 вольта. Также не забывайте о влиянии резисторов R5 и R7 на выходное напряжение с преобразователя. В любом случае, прежде, чем паять плату, поэкспериментируйте, собрав схему на безспаечной макетной плате (breadboard).
  • Обратите внимание на провод соединяющий выход с преобразователя (LOOP, пин 2 - минус) и общую для всех питаний землю.

По поводу выбора схемы замера с операционным усилителем. Действительно, а зачем здесь усилитель? Берем опорное напряжение 5 вольт, делим на максимальный измеряемый ток 20 мА и получаем токоизмерительный резистор 250 Ом. Да, это рабочая модель, но есть опасность сжечь Arduino, например, если 24 вольта с датчика прилетят на аналоговый вход контроллера, или произойдет переполюсовка, и на вход PLC придет отрицательное напряжение. К тому же номинал токоизмерительного резистора должен быть как можно меньше, чтобы не вносить искажения в замер. Применяя операционный усилитель LM358 (или ему подобные), мы решаем все эти проблемы.

СБОРКА ПЛАТЫ

Схема пайки элементов преобразователя тока представлена на рисунке ниже. За базу взята макетная плата 70х55 мм. Конечно вы можете расположить элементы по другому и более компактно.

Схема пайки преобразователя тока на макетной плате

Схема пайки преобразователя тока на макетной плате

Примечания :

  1. Микросхема LM358 устанавливается в панель DIP8. Хотя вы можете ее сразу впаять в плату.
  2. Питание 5 В имеет подводы в трех вариантах : клеммница, штыревой соединитель "папа" и "мама" для проводов Dupont.
  3. Аналоговый выход для Arduino также выполнен в трех вариантах : клеммница, штыревой соединитель "папа" и "мама" для проводов Dupont.
  4. То же касается подводов токовой петли.
  5. Мощность резисторов R6 и R7 - 0,25 ватт, RX - не менее 1 ватта, остальных не менее 0,5 ватт.
  6. На схеме есть одно соединение, которое автор не смог провести в плоскости платы, пришлось пустить их по "воздуху".

Собрав плату, нам нужно ее проверить, а для этого, как нельзя лучше, подойдет имитатор датчика 4-20 мА из другого раздела сайта.

Проверка преобразователя

Проверка преобразователя

ТЕСТОВЫЙ СТЕНД

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

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

Схема подключения преобразователя для тестирования

Схема подключения преобразователя для тестирования

Управлять системой можно с помощью трех кнопок : НАСТРОЙКИ, ВВЕРХ, ВНИЗ. Рассмотрим их функции подробно :

Кнопка НАСТРОЙКИ

При нажатии этой кнопки вы будете циклично переходить по пунктам меню. Изменение параметров осуществляется кнопками ВВЕРХ и ВНИЗ. Изменение цифровых параметров сразу принимается системой, подтверждение не нужно.

Пройдемся по пунктам меню Настройки.

  • MinVolt=XXX (minimum voltage) : нижняя граница напряжения с аналогового порта переведенный в цифровой вид (1024 градации).
  • MaxVolt=XXX (maximum voltage) : верхняя граница напряжения с аналогового порта переведенный в цифровой вид
  • MinVal=XX (minimum value) : условная цифровая величина какого-либо параметра, соответствующая нижней границе вольтажа (это может быть ток, давление, уровень и т.п.).
  • MaxVal=XX (maximum value) : условная цифровая величина какого-либо параметра, соответствующая верхней границе вольтажа.
  • Increment=X.XX : приращение, на которое будет увеличиваться или уменьшаться калибруемая величина. На выбор 1.0 , 0.1 и 0.01.
  • SaveSet. (UP) : нажав кнопку ВВЕРХ, вы сохраните настройки программы в память контроллера. При перезагрузке контроллера (выключение - включение) именно эти настройки загрузятся в программу.
  • ReadSet. (UP) : нажав кнопку ВВЕРХ, вы перенесете настройки из памяти контроллера в программу.

Кнопки ВВЕРХ-ВНИЗ

Этими кнопками меняются значения параметров.

ИНДИКАЦИЯ LCD

Верхняя строчка :
"X=XX.XX V=XXX" - калибруемая величина (Х), соответствующая текущему напряжению, переведенному в цифровой вид (V)
Нижняя строчка :
пункты меню настроек

КАЛИБРОВКА

После того, как плата собрана, ее нужно откалибровать. Для этого загрузим в Arduino тестовый скетч, а затем подключим плату к PLC (аналоговый вход A0, питание от шилда).

Подсоединим к задатчику тока мультиметр в режиме замера тока (клеммы ТЕСТ). Потенциометром выставим силу тока 4 мА, а затем изменим параметры MinVolt (берем параметр V в верхней строчке LCD) и MinVal (присваиваем 4 мА). Затем выставляем по мультиметру ток 20 мА и меняем параметры MaxVolt (берем параметр V в верхней строчке LCD) и MaxVal (присваиваем 20 мА). Теперь при изменении силы тока задатчиком мы увидим такие же показания тока на LCD-экране, как и на мультиметре.

Результаты замеров в скетче могут выглядеть подобным образом :

  • float MinVolt = 126;
  • float MaxVolt = 626;
  • float MinVal = 4.00;
  • float MaxVal = 20.00;

Стенд для калибровки

Стенд для калибровки

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

ЧТО НУЖНО ДЛЯ ПРОЕКТА

  • макетная плата под пайку 70х55 мм - 1 шт
  • клеммницы двойные - 3 шт
  • микросхема LM358 (datasheet) в корпусе DIP-8 - 1 шт
  • панелька DIP-8 - 1 шт
  • резистор 10 Ом (1 Вт) - 1 шт
  • резистор 220 Ом (0,25 Вт) - 1 шт
  • резистор 10К (0,5 Вт) - 2 шт
  • резистор 160К (0,5 Вт) - 2 шт
  • резистор 220К (0,5 Вт) - 1 шт
  • резистор 3М (0,25 Вт) - 1 шт
  • конденсатор керамический 4,7 мкФ - 1 шт
  • провод типа AWG - 10 см
  • штыревой соединитель - 12 шт
  • разъем PBS - 12 шт
  • светодиод - 1 шт

ТЕСТОВЫЙ СКЕТЧ

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