Содержание
Для организации работы Ардуино, в частности для подачи управляющего напряжения на высокоимпедансный вход кнопкой требуется использования подтягивающего резистора. Без него невозможно организовать правильное функционирование контроллера.
Принцип работы подтягивающего резистора
Для подключения различных устройств к Ардуино используются резисторы. Резисторы бывают внутренние и внешние, постоянные и переменные (внутренние переменные могут быть цифровыми).
Устройство
Резистор – от английского глагола «resistance» (сопротивление). Пассивный элемент, который создает препятствие для движения электрического тока. Часть тока преобразуется из электрической энергии в тепло.
Пассивный резистор представляет из себя керамический цилиндр на поверхности которого нанесен резистивный (сопротивляющийся движению электрического тока) слой. На обоих концах цилиндра металлические (обычно медные) колпачки с выводами -проводниками. Проводники запаиваются на контактных площадках схемы.
Переменный резистор имеет еще один контакт, который называется ползунок. Он передвигается по резистивному слою и изменяет сопротивление между ползунком и контактами резистора.
Ардуино переменный резистор это резистивная линейка с электронными переключателями на каждом шаге потенциометра. В один момент времени может быть закрытым только один переключатель. От этого зависит сопротивление, которое выдает потенциометр.
Для чего используется
Они имеют разные функции:
- токоограничивающие;
- подтягивающие;
- стягивающие;
- делитель напряжения (комбинация из двух или потенциометр).
Работа токоограничивающего резистора заключается в ограничения тока.
Пример: в Ардуино требуется ограничить ток с выходных контактов. По документации он не должен превышать 40 мА. Напряжение питания 5В. По закону Ома определяется номинал резистора R= U/I = 5В/0,04А = 125 Ом (не меньше).
Стягивающий и подтягивающий резисторы используются в схемах рядом с входными контактами логических элементов. Стягивающие – когда нужен четкий логический ноль. Подтягивающий резистор arduino – когда нужна логическая единица.
Делитель напряжения используется для получения части напряжения от целого. Например: питание автомобильной бортовой сети 12,7В. Нужно зарядить аккумулятор для смартфона, который использует напряжение 5В. Делается делитель напряжения из двух резисторов сопротивление которых относится как 5 к 7. Еще одно сопротивление для ограничения тока.
Типы подтягивающих резисторов
Вход логических элементов обычно имеет, так называемое высокоимпедансное состояние – точка имеет высокое сопротивление и не подключена ни к питанию, ни к земле. Проводник подключенный к логическому входу будет выполнять роль антенны и срабатывать от паразитных наводок. На выходе Ардуино будет выдаваться совсем не то, что требуется. Чтобы вход не оставался в подвешенном состоянии его, через пассивный резистор, подключают (подтягивают) к линии питания. Соответственно на логическом входе гарантированно будет логическая единица. Такой резистор называется подтягивающим.
Подтягивающие резисторы могут быть:
- внешние — подключаться в виде внешних пассивных элементов;
- внутренние резисторы ардуино – как цифровой потенциометр входит в состав Ардуино.
Другой характеристикой является:
- сильный;
- слабый.
Сильный
Если резистор имеет небольшое сопротивление, то через него идет больший ток и разность потенциалов между линией питания и логическим входом будет небольшая. Он будет сильнее притягивать логическую единицу к входу Ардуино.
Но с другой стороны слишком большой ток постоянно идущий через вход устройство – это больший нагрев и бесполезные потери энергии.
Слабый
Если сопротивление резистора большое, то ток, идущий через резистор, будет небольшим. Соответственно разность потенциалов между входом и линией питания будет достаточно большой (подбирается так, чтобы напряжение между землей и входом не слишком отличалась от 3,3В).
Основные характеристики подтягивающих резисторов Arduino
Основные характеристики резисторов это:
- Сопротивление (единица измерения — Ом, и кратные единицы – КилоОм, МегаОм);
- Мощность (единица измерения — Вт);
- Точность или допуск (единица измерения — %).
Сопротивление — это величина сопротивления проводника, к которому проложено напряжение в 1 Вольт и течет ток в 1 Ампер.
Допуск – отклонение сопротивления от номинала в результате технологической погрешности при изготовлении.
Мощность способность преобразовать в тепловую определенное количество электрической энергии при прохождении тока через резистор. Формула имеет вид: P= I2 x R.
Расчет подтягивающего резистора
Расчет минимального сопротивления резистора достаточно прост и определяется из формулы:
Rp = (Vcc – 0,4)/3mA где:
- Rp – минимальный номинал сопротивления резистора;
- Vcc — Напряжение линии питания.
Соответственно Rp = (5V- 0,4V)/3mA= 1,5 кОм – Это минимальное сопротивление.
Максимальное сопротивление определяется по емкости шины конкретного устройства по формуле:
Rp = 1µs/Cb где:
1µs – время нарастания сигнала для стандартного сигнала;
Cb – емкость шины – 20 пФ.
Расчет показывает, что сопротивление будет равно 50 кОм.
Как правильно выбрать номинал
Номинал резистора лежит в пределах от 1,5 кОм до 50 кОм. Подбирается обычно подбором. Подается соответствующий сигнал с рабочей частотой. Просматриваются осциллограммы и меняя сопротивления выбирается наиболее подходящее.
Схема подключения переменных резисторов к Ардуино
Для Подключения управляющих элементов на вход Ардуино разработаны стандартные схемы.
Подключение кнопок
Подключение кнопок хорошо представлена в схемах на рисунках.
Подключение кнопки с помощью стягивающего резистора.
Стягивающий резистор подключен между землей и логическим входом устройства.
Подключение кнопки с помощью подтягивающего резистора.
Подтягивающий резистор включен между линией питания и входом устройства.
Подключение микроконтроллера
Ардуино – это популярный микроконтроллер, в который уже загружен набор базовых АТ команд (как BIOS в компьютере). Этот набор называется прошивкой. Пользователь может самостоятельно перепрошить микроконтроллер под свои задачи. Для выполнения конкретных задач пользователь может сам написать программу на специальном языке программирования, а может использовать уже написанные другими программы. Эти программы называются библиотеки и загружаются через стандартный порт в память микроконтроллера.
Как сделать осциллограф на Ардуино для компьютера, читайте здесь.
Другие
Имея Ардуино с загруженной библиотекой Вы получаете инструмент управляющей нужной системой. Достаточно подключить нужные датчики. Датчики можно подключать цифровые и аналоговые. Цифровые уже ориентированы на работу с Ардуино. Аналоговые подключаются через аналогово-цифровые преобразователи, встроенные в микроконтроллер. Если их не хватает – приходится использовать мультиплексоры.
Спектр датчиков широк и постоянно пополняется новыми. Уже сейчас широко используются в качестве датчиков различные терморезисторы, объемные датчики, фотодатчики, резистивные датчики положения.
Наличие огромного количество уже готовых библиотек также облегчает жизнь изобретателей и просто «рукастых» людей. Возможности Ардуино ограничиваются только их фантазией.