Наш магазин на eBay Наш магазин на AliExpress Наш канал в telegram

555-й таймер. Часть 1. Как устроен и как работает таймер NE555. Расчёт схем на основе NE555

Эта статья посвящена микросхеме, сохраняющей популярность уже более 30 лет и имеющей множество клонов. Встречайте — таймер NE555 (он же — LM555, LC555, SE555, HA555, а также
множество других, есть даже советский аналог — КР1006ВИ1). Такую популярность этой микросхеме обеспечили простота, дешивизна, широкий диапазон напряжений питания (4,5-18В), высокая точность и стабильность (температурный дрейф 0,005% / oС, дрейф от напряжения питания — менее 0,1% / Вольт), ну и конечно же, самое главное, — широчайшие возможности применения.

Но, обо всём по порядку. Начнём мы с того, как эта микросхема устроена.

Функциональная схема таймера NE555

Итак, функциональная схема таймера показана на рисунке 1.

Ноги:

1. GND — земля/общий провод.

2. Trigger — инвертирующий вход компаратора, ответственного за установку триггера. Когда напряжение на этой ноге становится меньше 1/3 Vcc (то есть меньше, чем напряжение на неинвертирующем входе компаратора) — на вход SET триггера поступает логическая 1. Если при этом отсутствуют сигналы сброса на входах Reset, то триггер установится (на его выходе появится логический 0, так как выход инвертированный).

3. Output — выход таймера. На этом выводе присутствует инвертированный сигнал с выхода триггера, то есть когда триггер взведён (на его выходе ноль) — на выводе Output высокий уровень, когда триггер сброшен — на этом выводе низкий уровень.

4. Reset — сброс. Если этот вход подтянуть к низкому уровню, триггер сбрасывается (на его выходе устанавливается 1, а на выходе таймера низкий уровень).

5. Control — контроль/управление. Этот вывод позволяет изменять порог срабатывания компаратора, управляющего сбросом триггера. Если вывод 5 не задействован, то этот порог определяется внутренним делителем напряжения на резисторах и равен 2/3 Vcc. Вывод Control можно использовать, например, для организации обратной связи по току или напряжению (об этом я позднее расскажу).

6. Threshold — порог. Когда напряжение на этом выводе становится выше порогового (которое при незадействованном выводе 5, как вы помните, равно 2/3 Vcc) — происходит сброс триггера и на выходе таймера устанавливается низкий уровень.

7. Discharge — разряд. На этом выходе 555-й таймер имеет транзистор с открытым коллектором. Когда триггер сброшен — этот транзистор открыт и на выходе 7 присутствует низкий уровень, когда триггер установлен — транзистор закрыт и вывод 7 находится в Z-состоянии. (Почему эта нога называется «разряд» вы скоро поймёте.)

8. Vcc — напряжение питания.

Далее, давайте рассмотрим, в чём же основная идея использования этого таймера. Для этого добавим к нашей схеме пару элементов внешней обвязки (смотрим рисунок 2). 4-ю и 5-ю ноги мы пока не будем использовать, поэтому будем считать, что 4-я нога у нас гвоздём прибита к напряжению питания, а 5-я просто болтается в воздухе (с ней и так ничего не будет).

Одновибратор на таймере NE555

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

Чтобы произошло переключение триггера — необходимо подать на вторую ногу уровень ниже 1/3 Vcc (тогда переключится компаратор и сформирует высокий уровень на входе Set нашего триггера). Пока уровень на 2-й ноге остаётся выше 1/3 Vcc — наш таймер находится в стабильном состоянии и никаких переключений не происходит.

Ну что ж, — давайте кратковременно подадим на 2-ю ногу низкий уровень (на землю её коротнём, да и всё) и посмотрим что будет происходить.

Как только уровень на 2-й ноге упадёт ниже 1/3 Vcc — у нас сработает компаратор, подключенный к устанавливающему входу триггера (S), что, соответственно, вызовет установку триггера.

На выходе триггера появится ноль (поскольку выход триггера инвертирован), при этом на выходе таймера (3-я нога) установится высокий уровень. Кроме этого транзистор на 7-й ноге закроется и 7-я нога перейдёт в Z-состояние.

При этом через резистор Rt начнёт заряжаться конденсатор Ct (поскольку он больше не замкнут на землю через 7-ю ногу микрухи).

Как только уровень на 6-й ноге поднимется выше 2/3 Vcc — сработает компаратор, подключенный ко входу R2 нашего триггера, что приведёт к сбросу триггера и возврату схемы в первоначальное состояние.

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

Как нам теперь узнать длительность этого импульса? Очень просто, — для этого достаточно посчитать, за какое время конденсатор Ct зарядится от 0 до 2/3 Vcc через резистор Rt от постоянного напряжения Vcc.

Сначала решим эту задачку в общем виде. Пусть у нас конденсатор заряжается через резистор R напряжением Vп от начального уровня U0.

Вспоминаем, как связаны ток и напряжение на конденсаторе: i=C*dU/dt. Ток через резистор: i=(Vп-U)/R. Поскольку это один и тот же ток, который течёт через резистор и заряжает конденсатор, то мы можем составить простое дифференциальное уравнение, описывающее процесс заряда нашего конденсатора: C*dU/dt=(Vп-U)/R.

Преобразуем наше уравнение к виду: RC*dU/dt + U = Vп

Это дифференциальное уравнение имеет решение, вида: U=U0+(Vп-U0)*(1-e-t/RC) ( формула 1 )

Теперь вернёмся к нашей схеме. Зная, что U0=0, напряжение питания равно Vcc, а конечное напряжение равно 2/3 Vcc, найдём время заряда:

2/3 Vcc = Vcc*(1-e-t/RC)

2/3 = 1-e-t/RC

1-2/3 = e-t/RC

ln(1/3) = -t/RC

Отсюда получаем длительность импульса нашего одновибратора:

t = RC*(-ln(1/3)) ≈ 1,1*RC

А теперь мы нашу схему немного изменим. Добавим в неё ещё один резистор, и чуть изменим подключение ног (смотрим рисунок 3).

Мультивибратор на таймере NE555

Так, что у нас получилось? На старте конденсатор Ct разряжен (напряжение на нём меньше 1/3 Vcc), значит сработает компаратор запуска и сформирует высокий уровень на входе S нашего триггера. Напряжение на 6-й ноге меньше 2/3 Vcc, значит компаратор, формирующий сигнал на входе R2, — выключен (на его выходе низкий уровень, то есть сигнала Reset нет).

Следовательно сразу после включения наш триггер установится, на его выходе появится логический 0, на выходе таймера установится высокий уровень, транзистор на 7-й ноге закроется и конденсатор Ct начнёт заряжаться через резисторы R1, R2. При этом напруга на 2-й и 6-й ногах начнёт расти.

Когда эта напруга вырастет до 1/3 Vcc — пропадёт сигнал Set (отключится компаратор установки триггера), но триггеру пофиг, на то он и триггер, — если уж он установился, то сбросить его можно только сигналом Reset.

Сигнал Reset сформируется верхним на нашем рисунке компаратором, когда напряжение на конденсаторе, а вместе с ним на 2-й и 6-й ногах, достигнет значения 2/3 Vcc (то есть как только напряжение на конденсаторе станет чуть больше — сразу сформируется Reset).

Этот сигнал (Reset) сбросит наш триггер и на его выходе установится высокий уровень. При этом на выходе таймера установится низкий уровень, транзистор на 7-й ноге откроется и конденсатор Ct начнёт разряжаться через резистор R2. Напряжение на 2-й и 6-й ногах начнёт падать. Как только оно станет чуть меньше 2/3 Vcc — верхний компаратор снова переключится и сигнал Reset пропадёт, но установить триггер теперь можно только сигналом Set, поэтому он так и останется в сброшенном состоянии.

Как только напряжение на Ct снизится до 1/3 Vcc (станет чуть ниже) — снова сработает нижний компаратор, формирующий сигнал Set, и триггер снова установится, на его выходе снова появится ноль, на выходе таймера — единица, транзистор на 7-й ноге закроется и снова начнётся заряд конденсатора.

Далее этот процесс так и будет продолжаться до бесконечности — заряд конденсатора через R1,R2 от 1/3 Vcc до 2/3 Vcc (на выходе таймера высокий уровень), потом разряд конденсатора от 2/3 Vcc до 1/3 Vcc через резистор R2 (на выходе таймера низкий уровень).

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

Осталось только посчитать длительности импульсов и пауз. Для этого снова воспользуемся формулой 1, которую мы вывели выше.

При заряде конденсатора напряжением Vcc через R1,R2 от 1/3 Vcc до 2/3 Vcc, имеем:

2/3 Vcc = 1/3 Vcc + (Vcc-1/3 Vcc)*(1-e-t/(R1+R2)C)

1/3 = 2/3*(1-e-t/(R1+R2)C)

1/2 = 1-e-t/(R1+R2)C

e-t/(R1+R2)C = 1/2

t/(R1+R2)C = -ln(1/2)

Отсюда получаем длительность импульса нашего мультивибратора:

tи = -ln(1/2)*(R1+R2)*C ≈ 0,693*(R1+R2)C

Аналогично находим длительность паузы, только теперь у нас начальный уровень 2/3 Vcc, конденсатор мы не заряжаем от Vcc, а разряжаем на землю (т.е. вместо Vп в формулу нужно подставить ноль, а не Vcc) и разряд идёт только через резистор R2:

1/3 Vcc = 2/3 Vcc + (0-2/3 Vcc)*(1-e-t/R2*C)

2/3*(1-e-t/R2*C) = 1/3

1-e-t/R2*C = 1/2

e-t/R2*C = 1/2

t/R2*C = -ln(1/2)

Отсюда получаем длительность паузы мультивибратора:

tп = -ln(1/2)*R2*C ≈ 0,693*R2*C

Ну и дальше уже несложно посчитать для нашего мультивибратора период импульса и частоту:

T = tи + tп = -ln(1/2)*(R1+2*R2)*C ≈ 0,693*(R1+2*R2)*C

f = 1/T

Продолжение: Генератор прямоугольных импульсов с регулируемой скважностью, на 555-м таймере.

Комментарии 11

  • Вопрос вот в чем:
    Длительность высокого уровня сигнала вычисляется как t1 = 0.693*(R1+R2)*C
    Длительность низкого уровня сигнала вычисляется как t2 = 0.693*R2*C
    Правильно ли я понимаю что отсюда следует что нельзя настроить 555 так чтобы к примеру длительность сигнала высокого уровня была равна 3 секунды а низкого уровня равна 8 секундам.

    Эксперементировал и на железе тоже — ничего не выходит. Спасибо за ответ)

    • Да, всё так и есть, в описанной схеме (которая является простейшей) добиться того, чтобы t2 было больше t1 не получится.
      Для того, чтобы получилось как вы хотите — нужно сделать цепи заряда и разряда независимыми, скажем развязать их диодами. Пример такого разделения можно найти по ссылке в конце статьи («генератор с регулируемой скважностью»).

  • Огромное спасибо за ответ. Сделайте пожалуйста еще одно небольшое уточнение, какие размерности нужно подставлять в формулу для вычисления времени импульса высокого уровня и времени паузы из второй статьи?

    • Какие угодно.
      Если сопротивление в Омах, а емкость в фарадах, то ответ будет в секундах. Соответственно, если сопротивление в килоомах (*10^3), а емкость в микрофарадах (*10^-6), то ответ получится в миллисекундах (10^3*10^-6=10^-3) и т.д.

  • Наконец то нашел нормальное описание работы этого таймера 555. В остальных статьях что выдает поисковик, один и тот же текст, с непонятным для начинающих объяснением.

  • Мне кажется что на рисунке одновибратора ошибка. (Второй сверху) Ножки TRESHOLD и Trigger должны быть соединены а вывод Discarge болтаться в воздухе. Так, по крайней мере, получается при моделировании (Tina-Ti и на OrCad ).

  • В догонку. Если я прав то конечно это опечатка. Но она нервы попортит.

    • Нет. На схеме нет ошибок. Вторая нога — это вход. Просто на рисунке не всё показано. Зато всё описано, почитайте внимательно описание:
      «…пусть изначально у нас на второй ноге присутствует высокий уровень…»
      «…давайте кратковременно подадим на 2-ю ногу низкий уровень…»
      Дополните вашу модель подтягивающим резистором от второй ноги к питанию и кнопкой на землю (можно с кондёром) и будет вам рабочая схема — при нажатии кнопки — единичный импульс.

  • Согласен. Невнимательно читал. По описанной мной схеме (не я придумал) получается одиночный импульс при включении питания.

  • есть вопрос по использованию таймера для контроля разряда аккумулятора. Для контроля диапазона напряжений использую 2 и 6 выводы, на которые подается контролируемое напряжение (10.8 …14.4в) с делителей. При стабилизированном напряжении питания таймера 5в, выставляю 1.667в на ножке 2 при минимальном контролируемом напряжении 10.8в и 3.33в на ножке 6 при максимальном контролируемом напряжении 14.4в. Все работает четко, как должно быть.
    Затем эту же плату пытаюсь использовать для контроля напряжения аккумулятора 6в. в диапазоне 5.4 … 7.2в. Правда питание таймера в этом варианте идет напрямую от контролируемого аккумулятора. По идее, если я установлю 1/3 напряжения питания на ножке 2 при VCC=5.4в и 2/3 на ножке 6 при Vcc=7.2в, то схема должна переключаться в заданном диапазоне 5.4 … 7.2в. Однако этого не происходит. Переключения нет вообще или иногда удается достичь перехода в противоположное состояние, а назад возвращаться не хочет. Пока вывод 5 никуда не подключен. Таймеры менял. В чем может быть причина?

    • Причина как раз в том, что питание идёт напрямую от контролируемого аккумулятора и пороговые уровни компараторов плавают вместе с контролируемым напряжением. У вас фактически есть 4 делителя, запитанных от одного и того же напряжения, и при этом у них у всех разные коэффициенты деления. Тут как не меняй питающее напряжение, никаким образом нельзя получить чтобы при одном питании с первого делителя был выход больше чем со второго, а при другом, наоборот, со второго выход больше, чем с первого. Если уж с первого больше, то при любом питании так и будет. Ну и для всех остальных выходов аналогично.

Добавить комментарий