Кнопка «Touch» на печатной плате

10

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

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

введите описание изображения здесь

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

mxcd
источник
6
Вы имеете в виду емкостный сенсорный датчик?
PlasmaHH
@PlasmaHH Это может быть еще одна возможность, но я хоть что-то вроде усиления тока, который протекает при соединении вышеуказанного пэда пальцем, неиспользования его для управления mosfet или чем-то
mxcd
1
В зависимости от требований к питанию вашей конструкции, емкостное зондирование может быть слишком энергоемким. Вы можете уйти с 50 Гц (вероятно). Если вы дотронетесь до ворот моса, вы включите мос. Кроме того, вы обычно нарушаете его, поэтому он должен быть как-то защищен, но это хорошая отправная точка.
Владимир Краверо

Ответы:

12

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

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

схематический

смоделировать эту схему - схема, созданная с использованием CircuitLab

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

Емкостный датчик был бы альтернативным решением, но требует более сложной схемы.

Douwe66
источник
2
Я хотел бы рассмотреть добавление резистора 10 кОм между катодом D1 и переходом между R1 и правой стороной датчика, чтобы ограничить мгновенный ток в затворе M1 от статического разряда и помочь D1 выполнить свою работу, как правило, быстро замедляя опускается Если вы обнаружите, что эта схема особенно подвержена воздействию шума, то в этом может помочь конденсатор емкостью 100 пФ на R1 - вам придется его построить и опробовать!
stefandz
Хороший вопрос, я добавлю его на принципиальную схему
Douwe66
12

Можно использовать резистивные контактные площадки, как показано на рисунке, но емкостные контактные площадки, как правило, лучше. Резистивные площадки оставляют прямое соединение с цепью открытым снаружи. Поэтому они подвержены повреждениям от статического разряда и шума.

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

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

Накладки представляют собой небольшие диски диаметром 150 мм (3,8 мм) и в остальном окружены грунтом в верхнем слое. Микроконтроллер представляет собой PIC 16LF1786. Он и все остальные части, которые не предназначены для непосредственного взаимодействия с пользователем, установлены на нижней части этой двухслойной платы.

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

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

Как видите, помехоустойчивость исключительная. Даже самый слабый сигнал был более 300, а шум был ± 2 или около того.

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

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

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

Олин Латроп
источник
Каковы единицы измерения Yоси на вашем графике? Колодки просто подключены к контактам, или есть другие компоненты?
Дмитрий Григорьев
1
@Dmitry: Ось Y показывает внутреннюю меру «насколько сильно дотронулись до кнопки». Он получен из необработанных A / D-значений, но имеется несколько A / D-показаний, и эти показания подвергаются значительной обработке. Не было попыток сохранить их в определенных единицах, поскольку эти значения относятся друг к другу и произвольно вводятся пороговые значения. Очень приблизительно они находятся в единицах разности около 800 мкВ между показаниями. 350 означает около 280 мВ, но опять же, это не так просто.
Олин Латроп
То есть вы ведете колодки высоко и низко и измеряете какую-то скорость заряда / разряда с помощью АЦП?
Дмитрий Григорьев
1
@Dmitry: я веду что-то еще высоко и низко, затем измеряю изменение шага в колодках. Ничто не основано на времени, кроме того, что достаточно времени для чтения.
Олин Латроп