Найти в Дзене
TehnoZet-2

Подтягивающий (стягивающий), токоограничивающий резисторы. Зачем, для чего, почему и конечно, что делать?

В этой статье мы поговорим о резисторах. Подтягивающем (стягивающем) резисторе и о токоограничивающем резисторе. Зачем они нужны, для чего используются, почему нам все это надо и конечно, что со всем этим делать. Статья как всегда для "чайников", для тех кто хочет разобраться со всем этим и понять зачем, почему именно так и вообще как это все работает. Написано простыми словами для непрофессионалов и не так как в учебниках. Подтягивающий (стягивающий) резистор — резистор, включённый между проводником, по которому распространяется электрический сигнал, и питанием или землей. Обычно говорят подтягивающий резистор для всех случаев, слово стягивающий резистор употребляется мало. Бывают Сейчас, да и раньше то же, активно используется цифровая техника, а техника на то и цифровая, что бы любить цифру. А их у техники всего две 0 и 1, ноль и один, высокий и низкий уровни, HIGH или LOW, есть сигнал, нет сигнала, белое и черное, холодное и горячее, доброе и злое, тьфу не туда понесло. Так в мир
Оглавление

В этой статье мы поговорим о резисторах. Подтягивающем (стягивающем) резисторе и о токоограничивающем резисторе. Зачем они нужны, для чего используются, почему нам все это надо и конечно, что со всем этим делать. Статья как всегда для "чайников", для тех кто хочет разобраться со всем этим и понять зачем, почему именно так и вообще как это все работает. Написано простыми словами для непрофессионалов и не так как в учебниках.

Резисторы
Резисторы

Подтягивающий (стягивающий) резистор — резистор, включённый между проводником, по которому распространяется электрический сигнал, и питанием или землей.

Обычно говорят подтягивающий резистор для всех случаев, слово стягивающий резистор употребляется мало.

Бывают

  • подтягивающий (подтягивающий вверх, подтягивающий к питанию, pull-up resistor)
  • стягивающий (подтягивающий вниз, подтягивающий к земле, pull-down resistor)

Сейчас, да и раньше то же, активно используется цифровая техника, а техника на то и цифровая, что бы любить цифру. А их у техники всего две 0 и 1, ноль и один, высокий и низкий уровни, HIGH или LOW, есть сигнал, нет сигнала, белое и черное, холодное и горячее, доброе и злое, тьфу не туда понесло. Так в мире цифры принято, там все просто и дискретно, но как всегда, вмешивается во все это подлый, реальный мир. И появляется не то и не другое, состояние неопределенности, третье состояние. Провод свободно висящий в воздухе ловит электромагнитные помехи, в него попадают лучи из глубин космоса и так далее и тому подобное и на нем хаотически то появляются, то пропадают различные потенциалы. Формируется неопределённое состояние то плюс то минус, то высокий потенциал то низкий, не то и не сё, непонятное состояние, но у нас тут не квантовая физика, мы любим определенность. Так вот, такого состояния не должно быть! А давайте его отключим вовсе? Но тогда разорвётся наша цепь, ток перестанет протекать и все перестанет работать. Но на самом деле в больших схемах так и делают просто отключают участки цепи и такое состояние называют состояние-Z.

Состояние - Z это высокоимпедансное состояние или высокоомное состояние, или состояние «Выключено» Или другими словами это отключенный проводник. А отключают его для того что бы не было короткого замыкания, что бы на линию (проводник) не подавался одновременно сигнал и "0" и "1" и собственно, что бы и не было этого короткого Zамыкания (Z). Кстати, это состояние "ничего" или "выключено" используют много где, ну например, в кодировки для RF пультов, кодировка Tri-State, в понятие шины (USB, SPI, IIP) реализуется это через транзистор который работает как ключ (открыт, закрыт). Это было отступление, а мы перейдем дальше и рассмотрим простейшие примеры как убрать это плохое, неопределенное соcтояния.

Подсоединим кнопку к одному из пинов, неважно к какому.

И вот тогда на пине при замыкании кнопки появится +5 вольт, все хорошо.

-2

Или так, тогда на пине при замыкании кнопки будет земля, отлично.

-3

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

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

Вот так (внимание эти схемы не правильные, не повторяйте их!)

Неправильная схема для пояснения
Неправильная схема для пояснения

Или так

Неправильная схема для пояснения
Неправильная схема для пояснения

Все хорошо на проводах сформировалось постоянный потенциал плюс или минус.

В одном случае минимальные токи которые формируются из за наводок в проводе стекают в землю, на проводе, а значит и на пине появляется однозначно минус и это хорошо.

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

Но посмотрим, что произойдет при замыкании кнопки - а произойдет короткое замыкание между минусом (землей ) и плюсом.

Не делайте так! Короткое замыкание хоть оно и короткое, но это плохо!

Что же сделать что бы его, этого короткого замыкания не было?

Можно отключить участок схемы ну например через реле или транзистор (см. выше Z-состояние) или подключить сопротивление, что бы оно - сопротивлялось. Сопротивление подключим между землей и 5 вольтами. Тогда при замыкании кнопки сопротивление начнет, правильно, сопротивляется протеканию тока и ток пойдет по пути наименьшего сопротивления т. е. на пин.

Выглядеть это будет так:

I. Подтягивающий вниз или подтягивающий к земле резистор или стягивающий резистор к земле (pull-down resistor)

Подтянули к земле (вниз)
Подтянули к земле (вниз)

Или так

Подтягивающий резистор вверх или подтягивающий резистор к питанию (pull-up resistor)

Подтянули к питанию
Подтянули к питанию

Итак:

В первом случае мы подтянули к земле.

  • I. Подтягивающий вниз или подтягивающий к земле резистор или стягивающий резистор к земле (pull-down resistor)
  • II. Подтягивающий резистор вверх или подтягивающий резистор к питанию (pull-up resistor)

Какое же резистор выбрать, как его рассчитать?

Резистор должен обладать некоторыми требованиями, такими как:

  • Его сопротивление должно быть не очень низким (единицы Ом), при замкнутой цепи "ток потечет и на землю" в конечном итоге при замкнутой кнопке произойдет короткое замыкание.
  • Его сопротивление должно быть не очень высоким (МОм), в конечном итоге это будет эквивалентно разрыву цепи и смысл всей затеи пропадает.

Формулы для расчета.

Расчет минимального сопротивления резистора

Формулы для расчета будут несколько различается (но по сути одно и то же):

  • Для подтягивающего вверх к питанию pull-up резистора

Rpull-up = (Vпит – Vвыс(min)) / Iпотр

Где:

  • Vпит – это напряжение питания.
  • Vвыс(min) – это минимальное допустимое напряжение логического уровня.
  • Iпотр – максимальный ток, потребляемый цифровым выводом.

  • Для подтягивающего вниз к земле pull-down резистору

Rpull-up = (Vниз(max) – 0) / Iотд

Где:

  • Vниз(max) – максимальное напряжение логического уровня.
  • Iотд – максимальный ток, отдаваемый цифровым выводом.

Как узнать максимальное и минимальное напряжение логического уровня? А для Вас у меня есть целая статья, которой я очень горжусь: "Логические уровни или где заканчивается ноль и начинается единица."

Рассчитаем для ESP Vвыс(min) возьмём 3 вольта, из статьи выше.

Максимально протекающий ток через пин для:

  • ESP это 12 мА (0,012А)
  • Arduino Uno это 50 мА (0,05А)

Rpull-up = (3.3-3)/ 0,012 = 25R - 25 Ом, очень мало получается!

Максимальное сопротивление резистора.

Определяется по емкости шины конкретного устройства и больше относится к нарастанию и спаду фронта импульса.

Rp = 1µs/Cb где:

1µs – время нарастания сигнала для стандартного сигнала;

Cb – емкость шины – 20 пФ.

Из этой формулы у меня получился R=1МОм.

Итак исходя из выше приведенных расчетов резистор может быть в пределах от 25RОм до1МОм, что является довольно большим разбросом. Если кто укажет на ошибки или может предложит другие расчеты резисторов с радостью его послушаю и дополню статью.

Из практики я знаю подтягивающий резистор должен быть в районе 1кОм-10 кОм и пользуюсь этими значениями

Подтягивающий резистор должен быть в районе 1кОм-10 кОм

Токоограничивающий резистор

Служит для защиты входа/выхода микроконтроллера по току. Сопротивление этого резистора таково, что падение напряжения на нем не влияет на напряжение на входе контроллера. Этот резистор и входной резистор микроконтроллера образуют делитель напряжения, следовательно, его значение может быть довольно большим. Для большинства входов можно использовать значения от 100 Ом и до 10 кОм. Про расчёте помним о максимально протекающем токе через PIN, например, для:

  • ESP это 12 мА (0,012А) по закону великого и ужасного Ома R=U/I; R=3.3/0.012=275 Om
  • Arduino Uno это 50 мА (0,05А)R=5/0.05=100 Om

Я использовал резистор от 200 Oм до 2 кОм

Подключаем этот резистор вот так

Токоограничивающий резистор
Токоограничивающий резистор

Общая схема будет такая

-9

Или такая

-10

Встроенные резисторы

Подтягивающие резисторы могут быть встроены в микроконтроллеры и называются они внутрисхемные подтягивающие резисторы

Программирование осуществляется следующим образом.

//двумя командами
pinMode(pin, INPUT); // настроить пин на ввод
digitalWrite(pin, HIGH); // включить подтягивающий резистор
// или одной командой
pinMode(pin,INPUT_PULLUP); // назначаем режим работы пина- вход с подтяжкой

Ардуино

Микроконтроллер Atmega имеет программируемые встроенные подтягивающие к питанию резисторы 20 кОм.

ESP8266

На самом (в самом) чипе подтягивающих резисторов нет

Они есть на отдельных модулях, например:

  • WeMos D1 Mini Pro

D3 и D4 подтянуты к плюсу, D8 стянут на минус

  • NODEMCU (на основе 12E)
  • Adafruit Feather Huzzah ESP8266

Подтягивающие резисторы GPIO: 0, 2, 4, 5, 12, 13, 14, 15

Ну вот на сегодня все, но как всегда...

Продолжение следует...

Подписывайтесь на мой канал TehnoZet-2, там много интересного! Мы только развиваемся! Понравилась статья, хотите продолжения - ставьте лайк, жмите палец вверх!

Пользуйтесь рубрикатором по каналу, там все по разделам: "Страничка путеводитель по каналу TehnoZet-2"

Статьи по теме

Исполнительные устройства

Про кнопки

Другое

Резисторы
Резисторы

Тэги

#простоосложном

#длямаленьких

#щасспаяю

#подключаемся