Как работает сенсорная панель?

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

Как это работает? Как бы вы сделали это самостоятельно (если возможно, со стандартным Arduino)?

Ответы (2)

Вероятно, используется паразитная емкость . В случае сенсорной панели используется специальный чип (контроллер емкостного сенсорного датчика приближения), называемый MPR121 от NXP (который был Freescale (который был Motorola)). Использование выделенного чипа, вероятно, приведет к более надежной работе, чем использование встроенных функций сенсорного переключателя некоторых встроенных микропроцессоров.

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

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

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

Кто-то написал библиотеку емкостных датчиков для Arduino. Вы можете получить это здесь .

Вероятно, более полное и ориентированное на Atmel программное решение для сенсорного переключателя можно найти здесь . Он называется QTouch и, скорее всего, несовместим с Arduino SDK.

Нет, он определенно использует специальный сенсорный датчик.
Да вы правы. Я обновлю свой ответ.
  • Сенсорный ИС | Freescale MPR121

источник