КАК ПРАВИЛЬНО ПОДКЛЮЧАТЬ КНОПКИ

 

Казалось бы, о чем тут говорить? А я лично в начале своего пути столкнулся с тем, что это далеко не очевидно. Одно дело подключить кнопочку в своем проекте Ардуино, масштабом с рабочий стол или верстак, а другое дело если ты планируешь реализовать ее на каком-то промышленном оборудовании. У Ардуинщика могут быть всякие способы, всякая там хрень на уме. Например, на кнопку приходит 0 Вольт в отжатом состоянии и 5 Вольт в нажатом. Так вот, это не "даст ист гуд". Простейшая схема должна выглядеть следующим образом:

 KNC circuit 1

Изначально я рассматривал для данной схемы варианты TVS диодов типа SMAJ5.0, но у них min BreakDown вольтаж где-то около 6.4. Атмега от таких прожарок сгорит к хуям собачьим. Поэтому тут на месте D1 кажется уместнее какой-нибудь стабилитрон, вроде BZT52C3V3 или BZT52C5V1 -  по сути, это диоды Зенера, которые обычно закрыты но в случае превышения определенного уровня или скачка напряжения срезают фронт до своего номинального значения. Соответственно, выбор такого диода зависит от используемого микроконтроллера. Например, логика всяких STM32 и ESP32 и иже с ними работает на 3.3 Вольтах, а для Атмег, Тинек и им подобных это будет 5 Вольт. 

В целом, суть схемы такая: нажимаешь KNC и ток через R1 идет на GND, на PD2 образуется логической 0. Микроконтроллер обрабатывает данное событие как нажатие. Резистор R2 предотвращает ложные срабатывания.

Есть еще схема с гальванической развязкой. Чуть более сложная... Используется на наших станках.

 KNC circuit 2

Здесь R1 - поддяжка VCC через светодиод, U1 - это транзисторный оптрон. KNC замыкает цепь VCC24V на землю, транзистор открывается и напряжение на PD2 падает в 0. Почему на KNC 2 резистора - не спрашивайте. Это не я придумал, а какие-то умные дяди из Москвы. Лично я бы, наверно, добавил от себя какую-то защиту по линии 24V. Конечно, зависит от ситуации... Надо бы поспрашивать у коллег, насколько часто горят эти оптроны. Очень любопытно. Но лень. Поэтому посижу пока в своем кабинете, а спрошу потом, при случае. Как бы то ни было, даже такая схема защищает наш CPU. Если что случится - перепаять оптрон гораздо дешевле и проще чем микроконтроллер.