Меню

Датчик он замкнут или нет

ТИПЫ И ПОДКЛЮЧЕНИЕ ДАТЧИКОВ

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

А — приемное устройство,
Б — устройство обработки сигнала,
В — устройство формирования выходного сигнала,

По способу обнаружения воздействия эти устройства можно подразделить на датчики:

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

При обнаружении требуемого воздействия все они формируют определенный тип выходного сигнала. Стоит отметить следующие варианты:

  • Пороговый — имеет два состояния — «0» или «1». Первое характеризуется, как правило, отсутствием выходного напряжения или разомкнутым контактом реле (для релейного выхода, иначе называемого «сухие контакты»). Во втором случае — все наоборот.
  • Аналоговый — здесь мы имеем изменение значения выходного (чаще всего) напряжения или сопротивления в зависимости от интенсивности воздействия на датчик контролируемого им параметра.
  • Цифровой — формирует код, характеризующий его состояние. Кроме того, они могут передавать свой уникальный адрес. Отсюда их название — адресные датчики. Код этот может быть последовательным и параллельным. Для подключения цифрового устройства, использующего последовательный код достаточно двухпроводной линии, параллельный код требует количества соединительных проводов в соответствии с его разрядностью.

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

ПОДКЛЮЧЕНИЕ

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

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

Теперь — несколько схем подключения различных типов датчиков (рисунок слева):

  1. имеющих релейный выход («сухие контакты») с питанием по отдельной линии (а — нормально разомкнутые, б — нормально замкнутые).
  2. «сухие контакты» без питания (а — нормально разомкнутые, б — нормально замкнутые).
  3. с питанием по шлейфу сигнализации, имеющий цифровой выход (адресный). (ВАЖНО! требуется соблюдать полярность шлейфа).

Значение резистора R определяется типом приемно контрольного прибора, предназначен этот резистор для ограничения тока шлейфа сигнализации при формировании сигнала тревоги.

Несколько слов про количество датчиков, подключаемых к одному шлейфу сигнализации. В первых двух случаях — практически без ограничений. Все определяется параметрами соединительных линий и источником питания. Для варианта 3 расчет осуществляется следующим образом: K=Iшл./Iдатчика, где K — максимально допустимое количество датчиков Iшл. — максимально допустимый ток шлейфа сигнализации конкретного типа используемого приемно контрольного прибора Iдатчика — ток потребления датчика.

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

Источник

Практические схемы включения датчиков

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

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

Принцип активации (работы) датчиков при этом может быть любым – индуктивные (приближения), оптические (фотоэлектрические), и т.д.

В первой части были описаны возможные варианты выходов датчиков. По подключению датчиков с контактами (релейный выход) проблем возникнуть не должно. А по транзисторным и с подключением к контроллеру не всё так просто.

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

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

Отличие PNP и NPN датчиков в том, что они коммутируют разные полюсы источника питания. PNP (от слова “Positive”) коммутирует положительный выход источника питания, NPN – отрицательный.

Ниже для примера даны схемы подключения датчиков с транзисторным выходом. Нагрузка – как правило, это вход контроллера.

PNP выход датчика. Нагрузка (Load) постоянно подключена к “минусу” (0V), подача дискретной “1” (+V) коммутируется транзистором. НО или НЗ датчик – зависит от схемы управления (Main circuit)

NPN выход датчика. Нагрузка (Load) постоянно подключена к “плюсу” (+V). Здесь активный уровень (дискретный “1”) на выходе датчика – низкий (0V), при этом на нагрузку подается питание через открывшийся транзистор.

Призываю всех не путаться, работа этих схем будет подробно расписана далее.

На схемах ниже показано в принципе то же самое. Акцент уделён на отличия в схемах PNP и NPN выходов.

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

На левом рисунке – датчик с выходным транзистором NPN. Коммутируется общий провод, который в данном случае – отрицательный провод источника питания.

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

Как проверить индуктивный датчик?

Для этого нужно подать на него питание, то есть подключить его в схему. Затем – активировать (инициировать) его. При активации будет загораться индикатор. Но индикация не гарантирует правильной работы индуктивного датчика. Нужно подключить нагрузку, и измерить напряжение на ней, чтобы быть уверенным на 100%.

Замена датчиков

Все эти типы датчиков можно заменить друг на друга, т.е. они взаимозаменяемы.

Это реализуется такими способами:

  • Переделка устройства инициации – механически меняется конструкция.
  • Изменение имеющейся схемы включения датчика.
  • Переключение типа выхода датчика (если имеются такие переключатели на корпусе датчика).
  • Перепрограммирование программы – изменение активного уровня данного входа, изменение алгоритма программы.

Ниже приведён пример, как можно заменить датчик PNP на NPN, изменив схему подключения:

PNP-NPN схемы взаимозаменяемости. Слева – исходная схема, справа – переделанная.

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

Итак, схема слева. Предположим, что тип датчика – НО. Тогда (независимо от типа транзистора на выходе), когда датчик не активен, его выходные “контакты” разомкнуты, и ток через них не протекает. Когда датчик активен, контакты замкнуты, со всеми вытекающими последствиями. Точнее, с протекающим током через эти контакты)). Протекающий ток создает падение напряжения на нагрузке.

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

Если внутренней нагрузки в датчике нет, и коллектор “висит в воздухе”, то это называют “схема с открытым коллектором”. Эта схема работает ТОЛЬКО с подключенной нагрузкой.

Так вот, в схеме с PNP выходом при активации напряжение (+V) через открытый транзистор поступает на вход контроллера, и он активизируется. Как того же добиться с выходом NPN?

Бывают ситуации, когда нужного датчика нет под рукой, а станок должен работать “прям щас”.

Смотрим на изменения в схеме справа. Прежде всего, обеспечен режим работы выходного транзистора датчика. Для этого в схему добавлен дополнительный резистор, его сопротивление обычно порядка 5,1 – 10 кОм. Теперь, когда датчик не активен, через дополнительный резистор напряжение (+V) поступает на вход контроллера, и вход контроллера активизируется. Когда датчик активен – на входе контроллера дискретный “0”, поскольку вход контроллера шунтируется открытым NPN транзистором, и почти весь ток дополнительного резистора проходит через этот транзистор.

Читайте также:  Датчик стандартный 178 296 mitutoyo

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

Да, не совсем то, что мы хотели, и схемы взаимозаменяемости npn и pnp датчиков не всегда приемлемы.

Как добиться полного функционала? Способ 1 – механически сдвинуть либо переделать металлическую пластинку (активатор). Либо световой промежуток, если речь идёт об оптическом датчике. Способ 2 – перепрограммировать вход контроллера чтобы дискретный “0” был активным состоянием контроллера, а “1” – пассивным. Если под рукой есть ноутбук, то второй способ и быстрее, и проще.

Условное обозначение датчика приближения

На принципиальных схемах индуктивные датчики (датчики приближения) обозначают по разному. Но главное – присутствует квадрат, повёрнутый на 45° и две вертикальные линии в нём. Как на схемах, изображённых ниже.

НО НЗ датчики. Принципиальные схемы.

На верхней схеме – нормально открытый (НО) контакт (условно обозначен PNP транзистор). Вторая схема – нормально закрытый, и третья схема – оба контакта в одном корпусе.

Цветовая маркировка выводов датчиков

Существует стандартная система маркировки датчиков. Все производители в настоящее время придерживаются её.

Однако, нелишне перед монтажом убедиться в правильности подключения, обратившись к руководству (инструкции) по подключению. Кроме того, как правило, цвета проводов указаны на самом датчике, если позволяет его размер.

  • Синий (Blue) – Минус питания
  • Коричневый (Brown) – Плюс
  • Чёрный (Black) – Выход
  • Белый (White) – второй выход, или вход управления, надо смотреть инструкцию.

Система обозначений индуктивных датчиков

Тип датчика обозначается цифро-буквенным кодом, в котором зашифрованы основные параметры датчика. Ниже приведена система маркировки популярных датчиков Autonics.

Система обозначений датчиков Autonics

Скачать инструкции и руководства на некоторые типы индуктивных датчиков:

• Autonics_proximity_sensor / Каталог датчиков приближения Autonics, pdf, 1.73 MB, скачан: 1805 раз./

• Omron_E2A / Каталог датчиков приближения Omron, pdf, 1.14 MB, скачан: 2351 раз./

• ТЕКО_Таблица взаимозаменяемости выключателей зарубежных производителей / Чем можно заменить датчики ТЕКО, pdf, 179.92 kB, скачан: 1810 раз./

• Turck_InduktivSens / Датчики фирмы Turck, pdf, 4.13 MB, скачан: 2335 раз./

• pnp npn / Схема включения датчиков по схемам PNP и NPN в программе Splan/ Исходный файл., rar, 2.18 kB, скачан: 3679 раз./

Скачать книгу про датчики

Реальные датчики

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

А вот какие оптические датчики я встречаю в своей работе.

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

Источник

ShIoTiny и окружающий мир: подключение датчиков к бинарным входам, дребезг контактов и другие вопросы

Основные тезисы или о чем эта статья

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

Предыдущие статьи серии

Вступление или ответы на вопросы

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

Дело в том, что отвечать подробно и всем сразу — я не имею возможности. Хобби есть хобби и посвятить ему столько времени сколько работе, домашним делам или детям — редко кому удается. Не удается и мне. Да и вопросы из писем по сути можно свести к нескольким. Поэтому проще написать статью, подробно охватывающую несколько вопросов, чем писать десяток писем.

Множество вопросов касается того, как подключить датчики различного типа и как с ними работать. Это и не удивительно: работа с выходными реле довольно проста. А что только не хотят подключить ко входам! Тут вариантов масса. Этому и посвящена сегодняшняя статья и будет, скорее всего, посвящена следующая: очень обширная тема — подключение датчиков.

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

Ответы на самые популярные вопросы читателей

Наверное самый популярный вопрос — «а почему у вас нет поддержки ШИМ/DS1821/RTC… и так далее?». Отвечаю. Потому что, когда я проектировал именно ShIoTiny — мне это было не надо. Что касается ШИМ, то его просто некуда вывести на плате ShIoTiny. Для подключения RTC не осталось ног. И так далее. Но если проект достаточно успешно будет развиваться — я сделаю другое устройство с такой же идеологией программирования, но с другим набором периферии. Конечно, кое-какие дополнительные чипы я поддержу и в ShIoTiny, как поддержал, например, буквально вчера датчик температуры DS1820/22. Но нельзя объять необъятное и впихнуть невпихуемое. Память контроллера, как и мое время — не безграничны.

Следующий по популярности вопрос — «планируете ли вы серийно выпускать ShIoTiny?». Отвечу подробно. В данный момент у меня есть еще несколько плат и если кому интересно — пишите, вышлю. Если они к тому времени останутся, конечно. Серийно (имеется ввиду 50-100 штук) выпускать опять же в данный момент не планирую. Просто нет такого спроса, а выпустить скажем 50 плат — это не так то просто для хобби и встанет в большую для меня сумму. Будет много желающих получить готовую плату — ситуация может измениться. Так что если не все, то многое зависит от мнения и желания общества.

Еще один вопрос, задаваемый весьма часто: «где взять исходники?». Отвечаю. В данный момент — нигде. По некоторым причинам выложить их я пока не могу и не знаю смогу ли в обозримом будущем.

И, наконец, вопросы по MQTT и UDP multicast. По этим вопросам я надеюсь сделать отдельную статью, потому что особенностей много. Кое-что по MQTT есть в предыдущей статье про систему вентиляции, но там все описано в общих чертах. И еще — читайте инструкцию. Там есть многие ответы, хоть это пока и черновик.

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

Датчик — что это и зачем оно?

Любая надпись на неизвестном языке — всего лишь сложный узор для того, кто никогда не видел букв или иероглифов. Для слепых не существует картин. Для глухих — музыки. К чему это я? А к тому, что информация — это условное отображение предмета или явления на каком-либо материальном носителе. Информации без материального носителя не существует. Равно как не существует информация и без того, кто способен ее понять.

Читайте также:  Форд скорпио температура по датчику

Поэтому, если мы хотим, чтобы наш ShIoTiny не был «слепым», «глухим» и «неграмотным» — мы должны научить его «воспринимать» и «понимать» информацию об окружающем мире и на ее основе принимать те или иные решения по управлению нужным нам оборудованием.

Информация об окружающем мире существует в самых разнообразных представлениях и на различных материальных носителях: колебания воздуха — звук и поток фотонов — свет; концентрация водяных паров в воздухе и температура земли; наличие или отсутствие массы и ее величина. И так далее. Все это может нести для нас нужную для принятия решений информацию.

Но наш микроконтроллер ESP8266 — основа ShIoTiny — понимает только два вида информации — цифровые бинарные сигналы и аналоговые сигналы в диапазоне от до .

Следовательно, нам требуются «переводчики» с языка того или иного физического явления или физической величины на язык электрических сигналов, понятных микроконтроллеру ESP8266. Такие «переводчики» и называются датчиками.

Строго говоря, в нашем случае, датчик — это техническое средство, которое преобразует информацию об окружающем мире в понятные электронным компонентам контроллера ShIoTiny электрические сигналы.

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

С «во-первых» — все понятно. Подключить непосредственно к ShIoTiny датчик, выдающий информацию в механическом, гидравлическом или пневматическом виде — физически невозможно.

С «во-вторых» — тоже все ясно. Вряд ли кто-то будет подключать к ShIoTiny специфические датчики-уловители быстрых частиц или измерители pH в расплаве радиоактивного лития. Ну а если кто и будет — я думаю, что его квалификация куда выше моей и статья эта ему скорее всего не понадобится. А вот температура воды или воздуха, давление воздуха или воды, влажность, освещенность, уровень жидкости или состояние двери (открыта-закрыта) — это все как раз очень даже может измеряться контролером ShIoTiny в бытовых системах управления.

Разберемся с «в-третьих». Какие электрические сигналы обычно бывают на выходе распространенных типов датчиков? Можно выделить три основных вида сигналов на выходах датчиков:

Бинарные сигналы. То есть сигналы, имеющие лишь два уровня — логический 0 или логическую 1. Электрические параметры не важны — их всегда можно преобразовать к нужным уровням.

Аналоговые сигналы. То есть ток или напряжение, изменяющиеся в зависимости от измеряемого параметра в заданном диапазоне значений.

Цифровые сигналы. Это датчики, которые общаются с микроконтроллерами по определенному протоколу.

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

Бинарные входы ShIoTiny

Начнем с простейшего — с бинарных входов ShIoTiny. Они обозначены Input1, Input2 и Input3. Так как эти входы абсолютно идентичны — будем рассматривать вход Input1. Все, что говорится об этом входе — точно так же справедливо и для двух других бинарных входов — Input2 и Input3.

Схема бинарного входа ShIoTiny приведена на рисунке. Сразу оговорюсь, схема с небольшим изъяном — надо было резистор 10К подключать до резистора . Но на работу устройства это не влияет и это прекрасно. Итак, зачем так много элементов в схеме бинарного входа? Такой вопрос мне тоже задавали. Попробую на него ответить.

Бинарный вход в ShIoTiny работает на «сухой» и «мокрый» контакты. Кроме того, в схеме предусмотрена защита от перенапряжения (то есть, если на вход Input1, например, попадет 5 Вольт вместо 3х Вольт).

Защита бинарного входа

Защита от перенапряжения, которая сделана на всех бинарных входах ShIoTiny, разумеется не спасет контроллер от выгорания, если подать на его вход сетевое напряжение

220В. Но от попадания на входы Input1,2,3 +5В или даже +12В — такая защита вполне спасает.

Работает такая защита очень просто и может применяться не только с ESP8266, но и с другими микроконтроллерами.

Рассмотрим два варианта работы защиты: при подаче на вход Input1 напряжения +5В и -5В относительно нулевого провода («земли»).

Когда напряжение на входе Input1 находится в норме — защитные диоды D1 и D2 закрыты, так как они включены в обратном направлении.

Как только напряжение на входе Input1 превысит +3В (например мы замкнули вход Input1 на +5В), тут же диод D1 открывается и притягивает вход контроллера GPIO к питанию +3В, не давая подняться напряжению на входе GPIO ESP8266 выше . Реально, напряжение будет чуть выше (3.2В или 3.3В) — но это не важно. Вход микроконтроллера не сгорит и это главное.

Как только напряжение на входе Input1 станет отрицательным (например мы замкнули вход на -5В), тут же диод D2 открывается и притягивает вход Input1 к «земле» , не давая опуститься напряжению на входе GPIO ESP8266 ниже . Реально, напряжение будет чуть ниже (-0.2В или -0.3В) — но это опять же не важно. Вход микроконтроллера не сгорит.

Резистор — ограничитель тока, чтобы не было короткого замыкания при работе защиты. Токи через него небольшие. Например, в нашем примере, если мы подадим на вход Input1 +5В, то ток через резистор будет около 2мА. При отрицательном напряжении -5В на входе Input1 ток через резистор будет около 5мА.

Если кто не понимает, почему диоды открываются и закрываются, то рекомендую почитать книгу «Электроника шаг за шагом» Р. А. Свореня. В интернете она есть, например, тут. Начинающим особенно советую — язык этой книги прост и примеров масса.

Какие бывают контакты

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

Как мы уже говорили — бинарные датчики это такие датчики, выход которых имеет два состояния — ноль и единицу. Но это логически. А физически может быть два варианта выходов бинарного датчика: «сухой контакт» и «мокрый контакт». Рассмотрим что это такое и с чем это едят.

«Сухой контакт» — это контакт, который не имеет собственного источника напряжения. То есть просто два любых металлических проводника, которые можно замкнуть между собой и разомкнуть их. Под это определение попадают масса датчиков — кнопки, выключатели, поплавковые датчики уровня жидкости, герконы (датчики магнитного поля) и так далее. На электрических схемах нормально разомкнутые «сухие контакты» обычно обозначаются так, как показано на рисунке.

Нормально разомкнутые — это значит, разомкнутые при отсутствии внешнего воздействия — кнопка не нажата, выключатель не включен, у геркона нет поблизости магнита…

Есть также и нормально замкнутые «сухие контакты». На электрических схемах они обычно обозначаются так, как показано на рисунке.

В противоположность нормально разомкнутым, нормально замкнутые «сухие контакты» в отсутствии внешнего воздействия — замкнуты.

Читайте также:  Отключение датчика скорости лада гранта

И те и другие «сухие контакты» можно спокойно подключать ко входам Input1,2,3 контроллера ShIoTiny. Подключаются датчики с выходом типа «сухой контакт» к бинарным входам ShIoTiny так, как показано на рисунке.

Если «сухой контакт» Input1 замкнут, то на вход контроллера подается напряжение примерно ноль вольт (точнее — 0.3Вольта из-за ошибки в схеме), так как «сухой контакт» замыкает на землю вход контроллера через делитель, образованный сопротивлениями и 10К. При этом узел Input1 выставит на своем выходе единицу.

И наоборот, если сухой контакт Input1 разомкнут, то на вход контроллера подается напряжение примерно три вольта, так как вход контроллера подтянут к напряжению питания через резистор 10К. При этом узел Input1 выставит на своем выходе ноль.

Все это подробное описание — для любопытных. В сухом остатке имеем следующее: если мы подключили ко входу Input1 датчик с выходом типа «сухой контакт», то когда контакт разомкнут — на выходе узла Input1 будет ноль, а когда контакт замкнут — на выходе того же узла будет единица. Аналогично и для входов и узлов Input2 и Input3.

Перейдем к «мокрым контактам».

«Мокрый контакт» — это контакт, имеющий собственный источник напряжения хотя бы в одном своем положении. Например, выход другого контроллера или логической схемы; линия питания лампочки и так далее. Вариантов тут может быть масса. Но почти все они непосредственно или с помощью нескольких деталей позволяют согласовать бинарные входы Input1,2,3 с выходом устройства — «мокрым контактом».

Начнем с простейшего — согласование входа Input1 с выходом датчика или микросхемы типа «открытый коллектор» или «открытый сток».

По сути, в нашем случае, эта схема полностью аналогична подключению датчика с выходом типа «сухой контакт». Только роль контакта выполняет транзистор.

Схема такого подключения показана на рисунке. Суть понятия «открытый коллектор» или «открытый сток» состоит в том, что эмиттер (или исток) выходного транзистора подключен к «земле» (часто прямо внутри микросхемы), а коллектор (или сток) — подключен к «ноге» микросхемы и больше ни к чему.

Как работает эта схема понятно и новичку (не воображаемому газу, а человеку!). Как только транзистор внутри микросхемы открывается — он замыкает вход Input1 на землю и далее все работает по аналогии с «сухим» контактом.

К сожалению, далеко не все микросхемы и датчики имеют такой замечательный выход с открытым коллектором или стоком. Многие, если не большинство микросхем и датчиков имеют активный выход. Это значит, что когда у нас на выходе логическая единица — то выход «подтянут» к напряжению питания, а когда логический нуль — выход «подтянут» к земле. Выход такой микросхемы показан на рисунке ниже. Разумеется всё упрощённо.

Как нам быть, если микросхема или датчик, которую мы хотим подключить ко входу Input1, имеет такой активный выход?

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

Если напряжение питания микросхемы или датчика Vcc такое же как и у ESP8266 (то есть 3 Вольта) — то можно просто подключить этот выход ко входу Input1, что собственно и показано на предыдущем рисунке.

А как быть если питание датчика или микросхемы скажем +5В или +12В? В нашем случае, можно поступить довольно просто, включив диод Шоттки, как показано на рисунке ниже.

И еще один нюанс: все схемы с «мокрым» контактом у нас дают инверсный сигнал. То есть когда на выходе датчика или микросхемы логическая единица, то узел Input1 будет выставлять на выходе нуль. И наоборот. Но это исправляется программно — достаточно вставить узел-инвертор на схему. Все это показано на рисунке.

Вот, собственно и все основное, что надо знать о подключении датчиков к бинарным входам Input1,2,3.

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

Трепет контактов

Контакты трепещут. Не от страха перед создателем устройства, а от того, что они упруги. Когда вы нажимаете кнопку — контакты могут замкнуться-разомкнуться 5-7 раз, прежде, чем стабильно замкнутся. Такое же явление возникает и при отпускании кнопок. И называется это явление — «дребезг контактов«.

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

Бороться с этим неприятным явлением можно по-разному. Наверное самый старый способ борьбы — триггерный. При этом способе применяется кнопка с переключающим контактом и обычный RS-триггер, включенные по схеме, как показано на рисунке.

Как это работает? Очень просто. Триггер имеет два состояния. Пока кнопка замкнута на вход R триггера — на выходе Q триггера установлен ноль.

Мы нажали кнопку — пока средний контакт кнопки не коснулся нижнего — ничего не меняется, на выходе триггера нуль. Как только средний контакт кнопки коснулся нижнего контакта той же кнопки и замкнул вход триггера S на землю — на выходе триггера появляется единица. И эта единица остается пока контакты «дребезжат». Ведь для переключения выхода триггера обратно, в нуль, необходимо, чтобы вход R триггера замкнули на землю! Точно так же работает эта схема и при отпускании кнопки.

Можем ли мы сделать такую схему на ShIoTiny? Да без проблем! На рисунке она показана.

Но тратить два входа их трех на один датчик?! Да еще при том, что далеко не все датчики имеют переключающий контакт!

Нет, мы пойдем другим путем, как завещал, всем знакомый с детства гениальный теоретик В.И. Ульянов!

Второй, и самый наверное на сегодня распространенный, способ борьбы с дребезгом контактов — это программный фильтр.

Что кроется за этими умными словами? А опять же — ничего сложного. Представим, что мы не будем реагировать на «короткие» изменения состояния контактов. Например, если у нас с кнопки считывается нуль, то на короткие (скажем длительность меньше 0.3сек) всплески единицы мы забьем перестанем реагировать. И только когда у нас кнопка в течении 0.3сек будет непрерывно выдавать единицу — мы отреагируем на это. То же самое и при изменении состояния кнопки с единицы в нуль.

То есть по сути — мы переждем переходный процесс, отфильтровав короткие импульсы. Тем самым мы защитимся от дребезга и ложных срабатываний. И не нужно будет иметь переключающего контакта и RS-триггера!

Как нам это сделать практически? В ShIoTiny есть узел-фильтр, который используется для устранения дребезга подключается так как нарисовано ниже.

Фильтр Delay0/1 в данном случае игнорирует все импульсы, которые имеют длительность менее 0.4сек.

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

Заключение

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

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

Источник

Adblock
detector