Задатчик тока 4-20 мА (от Arduino) |
На этой страничке сайта представлен задатчик токовой петли, который обеспечивает РУЧНУЮ установку тока в диапазоне 2,2 - 22,0 мА. Такой прибор больше подходит для имитации реального аналогового датчика. Здесь же вы узнаете, как сделать задатчик, управляемый с помощью Arduino посредством кнопок. Его можно применять не только для калибровки преобразователей, но и для формирования управляющего аналогового сигнала, а также, как источник тока для питания нагрузки. Данный прибор обеспечивает установку тока в диапазоне 0 - 22,0 мА и его стабилизацию в двухпроводном подключении при изменении напряжения от 11 до 32 В. Хочу обратить внимание на отличия данного задатчика от ручного. Последний можно назвать пассивным - он устанавливается в разрыв токовой петли, как настоящий датчик, фактически представляя из себя переменный резистор, с помощью которого мы меняем силу тока. Представленный же на этой страничке задатчик - активный - он больше похож на источник тока, и к нему даже можно подключать нагрузку (в пределах установленных ограничений). По этой причине подключение этого задатчика к контроллеру или преобразователю токового сигнала несколько отличается. Смотрите на схему ниже (можете сравнить ее с подключением ручного задатчика). ![]() Схема подключения датчика Как известно, Arduino UNO не имеет своего собственного цифро-аналогового преобразователя (ЦАП), но его можно смоделировать по средством ШИМ-сигнала, который могут выдавать определенные цифровые пины платы (у Arduino UNO это 3, 5, 6, 9, 10, 11). К сожалению, ЦАП UNO имеет разрядность 8 бит (в отличии от АЦП в 10 бит), то есть выдавать ШИМ-сигнал мы сможем с точностью 1/256 (0,4%). Если вас это не устраивает, добро пожаловать на эту страничку. |
КАК РАБОТАЕТ |
Итак, опишем принцип работы данного задатчика. По средством двух кнопок (БОЛЬШЕ и МЕНЬШЕ) задается скважность ШИМ-сигнала, поступающего на один из цифровых пинов. Меняя скважность от 0 до 255, мы получим на выходе напряжение от 0 до 5 вольт (естественно, после сглаживания и фильтрации в задатчике). Это напряжение, пройдя через операционный усилитель LM358, будет управлять открытием и закрытием биполярного транзистора BD345, который непосредственно установит требуемый нам ток. |
ЭЛЕКТРОСХЕМА |
За основу устройства взята схема с форума radiokot.ru. Центральной частью задатчика является микросхема LM358 (datasheet), представляющая из себя два операционных усилителя на одном кристалле. Сигнал от Arduino (например с цифрового пина 3) подается на вход задатчика (1 клеммницы PWM). Далее этот сигнал фильтруется в RC-фильтре (R3-C1) и поступает в неинвертирующий усилитель напряжения на первом ОУ LM358. Затем сигнал уходит на второй ОУ микросхемы, после чего подается на базу NPN-транзистора BD435 (datasheet), который и управляет током, проходящим по клеммам LOOP(+) и LOOP(-). ![]() Электросхема задатчика тока Рассмотрим назначение элементов схемы подробней.
|
СБОРКА ПЛАТЫ |
Схема пайки элементов задатчика тока представлена на рисунке ниже. За базу взята макетная плата 55х40 мм. Конечно вы можете расположить элементы по другому и более компактно. ![]() Схема пайки задатчика тока на макетной плате Примечания :
|
ТЕСТОВЫЙ СТЕНД |
Прежде, чем начать работать с задатчиком тока, его нужно откалибровать. А для этого нам понадобится тестовый стенд, схема которого представлена ниже. Наша задача - настроить с помощью подстроечного резистора POTI1 максимальный выходной ток с задатчика (ограничить), а также задать токовую характеристику в контроллере, чтобы расчетный ток на экране LCD соответствовал фактическому току по показаниям мультиметра. ![]() Схема подключения задатчика для тестирования Управлять системой можно с помощью трех кнопок : НАСТРОЙКИ, ВВЕРХ, ВНИЗ. Рассмотрим их функции подробно : Кнопка НАСТРОЙКИПри нажатии этой кнопки вы будете циклично переходить по пунктам меню. Изменение параметров осуществляется кнопками ВВЕРХ и ВНИЗ. Изменение цифровых параметров сразу принимается системой, подтверждение не нужно. Пройдемся по пунктам меню Настройки.
Кнопки ВВЕРХ-ВНИЗЭтими кнопками меняются значения параметров. Индикация LCDВерхняя строчка Нижняя строчка |
КАЛИБРОВКА |
После того, как плата собрана, ее нужно откалибровать. Для этого загрузим в Arduino тестовый скетч, а затем подключим плату к PLC согласно схеме. Подсоедините к выходным клеммам токовой петли задатчика мультиметр в режиме замера тока. Кнопкой ВВЕРХ установите уровень ШИМ-сигнала 255, а затем потенциометром POTI1 установите ток по тестеру 22 mA. Теперь зададим токовую характеристику. С помощью кнопок ВНИЗ и ВВЕРХ установите по мультиметру ток около 4 мА и измените соответственно параметры PWM_Min (берем с LCD) и CurMin (берем с тестера). Затем выставляем по мультиметру ток около 19,5 мА и меняем параметры PWM_Max и CurMax. Теперь при изменении силы тока задатчиком мы увидим такие же показания тока на LCD-экране, как и на мультиметре. Перепроверьте показания на LCD еще раз, при необходимости скорректируйте. Не забудьте сохранить изменения в памяти Arduino. ![]() Стенд для калибровки |
ЧТО НУЖНО ДЛЯ ПРОЕКТА |
Задатчик тока
Тестовый стенд
|
СКЕТЧ |
Ниже представлен скетч системы управления. В этом окне он неудобочитаем, поэтому скачать его в формате ino вы можете по этой ссылке. Для работы этого скетча вам понадобятся дополнительные библиотеки :
Если есть возможность, проверьте эти библиотеки на наличие обновлений. |
|