Что делает датчик касания
Перейти к содержимому

Что делает датчик касания

Простой тач-сенсор

Тач-сенсоры (датчики касания) бывают разных принципов действия, например резистивный (проводящие пленки), оптический (инфракрасный), акустический (SAW), емкостной и т.д. Данный проект является экспериментом с емкостным датчиком касания. Этот вид датчика хорошо известен как указывающее устройство, используемое в планшетных ПК и смартфонах.

Емкостной датчик касания

Принцип емкостного датчика касания

Емкостный датчик касания обнаруживает изменение емкости, происходящее на электроде от закрытия проводящим предметом, например пальцем. Есть несколько методов измерения емкости. В этом проекте используется метод интеграции, который используется в измерителе емкости. Изменение емкости Cx довольно небольшое, около 1пФ до 10пФ, но оно будет легко обнаружено , потому что у измерителя емкости разрешение измерения составляет 20пФ. Также, объекты, которые будут обнаруживаться должны быть заземлены, чтобы создать Cx схему согласно с принципом действия. Однако она хорошо работает, даже если человеческое тело изолировано от земли. Это может быть по нижеследующей причине.

Проводящие объекты с такой площадью поверхности имеют собственную емкость. Конкретно, C=4πε0r на поверхности шара, ε0 электрическая постоянная, r радиус. Тело человека имеет собственную емкость около 100пФ в соответствии с человеческой моделью для ESD теста. Это достаточно много по сравнению с Cx. Таким образом, человеческое тело можно рассматривать как заземленный провод, даже если оно не заземлено. Конечно, оборудованию тоже требуются провод заземления или собственный емкостный эквивалент человеческому телу. Однако в сочетании с землей или человеческим телом, с помощью различных паразитных емкостей и создается цепь Cx.

Аппаратная часть

Электрод датчика (сенсорная область) является 10мм квадратной медной пластиной расположенной на печатной плате и покрытой сверху изоляцией (каптоновой лентой). В качестве схемы датчика используется ATtiny2313 с подтягивающим резистором 1МОм. Время интеграции при нормальном состоянии определяется значением подтягивающего резистора и паразитной емкости на порту и электроде. Когда к электроду прикасаются пальцем, время интеграции увеличивается и можно обнаружить касание. Фактическое время интеграции от нескольких мкс до нескольких десятков мкс.

Схема емкостного датчика

Программное обеспечение

Во-первых, откалибруйте каждую точку (получите эталонное время связи с Cs), а затем запустите сканирование в постоянном периоде. Когда время интеграции увеличился и превысит порог, он решит “обнаружено”. Гистерезису требуется порог, или выход не будет стабильным при полу прикосновении. Время измерения для каждой точки равно времени интегрирования, так что это может быть сделано очень быстро.

Измеритель емкости измеряет время интеграции с разрешением один такт (100 нс) с аналоговым компаратором и функцией входной фиксации. Однако эта функция не доступна на всех портах ввода/вывода. Для реализации датчика касания на любом порту ввода/вывода, время интеграции измеряется опросом программным обеспечением, и разрешение становится 3 такта (375ns). В нормальном состоянии число отчета времени около 80, и это достаточно для сенсорных кнопок.

Заключение

В результате, я могу подтвердить, что емкостный сенсор может быть с легкостью реализован на обычном микроконтроллере . Пластиковая накладка может быть до 1 мм в толщину (в зависимости от диэлектрической проницаемости) для хорошей работы. Когда ATtiny2313 используется для модуля датчиков касания, она может иметь 15 точек прикосновения. Программа управления, используемая в этом проекте экспериментальна, и не проверялась в грязных условиях, таких как шумы и помехи, так что для реального использования может потребоваться любой анти-шумовой алгоритм.

Датчики определения расстояния и касания

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

Показания ультразвукового датчика измеряется в сантиметрах и дюймах. Он может измерять расстояние от 0 до 255 сантиметров с точностью +/-3 см. Ультразвуковой сенсор работает по тому же принципу, что и локатор летучей мыши: он измеряет расстояние путем расчета времени, которое потребовалось звуковой волне для возвращения после отражения от объекта, подобно эху.

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

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

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

Ультразвуковой датчик расстояния

Рис.1 Ультразвуковой датчик расстояния

В основе ультразвукового принципа обнаружения препятствий лежит принцип эха. В состав датчика входят два преобразователя: один преобразователь излучает ультразвуковые волны, а отраженные волны обнаруживаются другим, одним или более, преобразователем. Тот же самый преобразователь, который передает ультразвуковые волны, может быть использован и для обнаружения отраженной волны. Основное назначение датчиков — обнаруживать присутствие или отсутствие препятствия, но данный принцип (time of flight) позволяет также по времени возвращения эха при известной скорости распространения звука рассчитывать расстояние до объекта.[1-5]

Ультразвук представляет собой не что иное, как вибрацию на частоте > 20 кГц. Большинство коммерчески доступных преобразователей работает на частотах в диапазоне 40-250 кГц.

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

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

Важно, что скорость звука является функцией состава и температуры среды (воздуха) и влияет на точность и разрешение датчика. Точность измерений расстояния прямо пропорциональна точности значения скорости звука, используемого в вычислениях, и варьируется в реальных условиях от 345 м/c при комнатной температуре до более чем 380 м/c при температуре порядка 70 °C. Длина звуковой волны

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

Затухание звука является функцией частоты и влажности, что влияет на максимальное расстояние, детектируемое датчиком. Длинные волны (с меньшей частотой) характеризуются меньшим затуханием. На частотах свыше 125 кГц максимальное затухание случается при относительной влажности 100%, на частотах 40 кГц — уже при влажности в 50%. Так как датчик должен работать при любых значениях влажности, в расчетах используется максимальное затухание для каждой частоты.

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

Датчик касания

Датчик касания это кнопка, у которой возможно два состояния — нажато и отжато. Программно датчик распознает еще одно состояние Касание.

Увидеть на экране дисплея реакцию датчика касания можно в режиме Просмотра. При не нажатой кнопке датчика на дисплее появляется 0, а при нажатой — 1.

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

Датчик касания является одним из органов осязания для роботов, что делает его необходимым там где требуется реакция робота на объекты.

Датчик касания позволяет роботу осуществлять прикосновения.

Сенсор нажатия может определить момент нажатия на него чего-либо, а так же момент освобождения.

Датчик касания представлен на рис.2.

Рис.2 Датчик касания

Используемые образцовые приборы и дополнительное оборудование

Микрометр

Для замера холостого хода у датчика касания необходим микрометр (или Индикатор часового типа) ИЧ-25 который будет измерять расстояние прошедшее датчиком до момента срабатывания.

ИЧ-25 предназначен для измерения линейных размеров абсолютным и относительным методами, определения величины отклонений от заданной геометрической формы и взаимного расположения поверхностей.

Введение в емкостные датчики прикосновения

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

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

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

Конденсатор на базе печатной платы

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

Сенсорная кнопка Сенсорная кнопка

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

Возможно, сейчас вы захотите узнать, какую емкость реально обеспечивает такая разводка печатной платы. Кроме того, как мы рассчитаем ее точно? Ответ на первый вопрос: емкость очень мала, может составлять около 10 пФ. Что касается второго вопроса: не беспокойтесь, если забыли электростатику, потому что точное значение емкости конденсатора не имеет никакого значения. Мы ищем только изменения в емкости, и мы можем обнаружить эти изменения без знания номинального значения емкости печатного конденсатора.

Влияние пальца

Так что же вызывает эти изменения емкости, которые контроллер датчика прикосновений собирается обнаружить? Ну, конечно же, человеческий палец.

Влияние пальца на сенсорную кнопку Влияние пальца на сенсорную кнопку

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

Итак, почему же присутствие пальца изменяет емкость? Есть две причины: первая включает в себя диэлектрические свойства пальца, а вторая включает в себя его проводящие свойства.

Палец как диэлектрик

Обычно мы думаем о конденсаторе, как имеющем фиксированную величину, определяемую площадью двух проводящих пластин, расстоянием между ними и диэлектрической проницаемостью материала между пластинами. Мы, конечно, не можем изменить физические размеры конденсатора, просто прикоснувшись к нему, но мы можем изменить диэлектрическую проницаемость, так как палец человека обладает диэлектрическими характеристиками, отличающимися от материала (предположительно воздуха), который он вытесняет. Это правда, что палец не будет находиться в настоящей области диэлектрика, т.е. в изолирующем пространстве непосредственно между проводниками, но такое «вторжение» в конденсатор необязательно:

Влияние пальца на сенсорную кнопку в качестве диэлектрика Влияние пальца на сенсорную кнопку в качестве диэлектрика

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

Оказывается, что человеческая плоть является довольно хорошим диэлектриком, потому что наши тела состоят в основном из воды. Относительная диэлектрическая проницаемость вакуума равна 1, а относительная диэлектрическая проницаемость воздуха лишь немного выше (около 1,0006 на уровне моря при комнатной температуре). Относительная диэлектрическая проницаемость воды намного выше, около 80. Таким образом, взаимодействие пальца с электрическим полем конденсатора представляет собой увеличение относительной диэлектрической проницаемости, и, следовательно, приводит к увеличению емкости.

Палец как проводник

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

Влияние пальца на сенсорную кнопку в качестве проводника Влияние пальца на сенсорную кнопку в качестве проводника

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

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

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

Близкое расстояние или контакт

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

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

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

Заключение

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

Что делает датчик касания

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда не активна

Введение:

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

4.1. Изучаем первый датчик – датчик касания

Для подключения датчиков к модулю EV3 предназначены порты, обозначенные цифрами «1», «2», «3» и «4». Таким образом, к одному модулю EV3 одновременно можно подключить до четырех различных датчиков. Все порты абсолютно равнозначны и вы можете подключать датчики к любым портам, главное — будьте внимательны при указании номера порта для соответствующих датчиков в ваших программах.

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

Рис. 1

Первым датчиком, который мы изучим, будет датчик касания (Рис. 2).

Датчик касания

Рис. 2

Этот датчик, по сути, представляет собой специальную кнопку, которая может находиться в двух состояниях: «Нажатие» (Рис. 3 поз. 1) или «Освобождение» (Рис. 3 поз. 2). Также, последовательный переход в состояние «Нажатие», а затем «Освобождение» называется: «Щелчок» (Рис. 3 поз. 3) и может обрабатываться программой. как самостоятельное событие.

Состояния датчика касания

Рис. 3

4.2. Оранжевая палитра – Управление операторами

Какие же инструменты представляет нам среда программирования для получения информации с датчиков и реагирования на эту информацию в программе? Давайте начнем знакомиться с программными блоками, расположенными в Оранжевой палитре, которая называется «Управление операторами». (Рис. 4)

Оранжевая палитра Управление операторами

Рис. 4

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

  • С самым первым блоком Оранжевой палитры мы уже с вами знакомы: он называется «Начало». Именно с него начинаются все программы для роботов.
  • Второй программный блок называется «Ожидание». Этот блок заставляет программу ожидать выполнения какого-либо условия или наступления какого-либо события. Пока не выполнится условие, установленное в этом блоке, программа не перейдет к выполнению следующих программных блоков! Если перед тем, как начнется выполнение блока «Ожидание» были включены, какие-либо моторы, то они будут продолжать вращаться с установленной скоростью.
  • Третий программный блок называется «Цикл». Этот блок многократно выполняет программные блоки, вложенные внутрь его, пока не будет выполнено условие завершения цикла, заданное в настройках блока.
  • Следующий программный блок называется «Переключатель». Он служит для того, чтобы в зависимости от заданных условий — выполнить одну последовательность программных блоков, вложенных в один из своих контейнеров.
  • Заключительный программный блок называется «Прерывание цикла». Его предназначение — досрочное прекращение выполнения заданного цикла.

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

4.3. Оранжевая палитра, программный блок «Ожидание»

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

Установка датчика касания на робота

Рис. 5

Задача №6: необходимо написать программу, запускающую движение робота по щелчку кнопки.

Решение:

Само условие задачи подсказывает нам возможное решение: перед началом движения — необходимо дождаться нажатия-отпускания кнопки датчика касания. Возьмем программный блок «Ожидание», изменим режим программного блока на «Датчик касания»«Сравнение» (Рис. 6).

Блок "Ожидание". Датчик касания

Рис. 6

Как можно увидеть — программный блок «Ожидание» сменил свое отображение! Рядом с песочными часами появилось изображение датчика касания (Рис. 7 поз. 1), помогающее в программе визуально оценивать установленный режим работы. Настройка программного блока «Состояние» задает требуемое состояние датчика, достижение которого прекратит выполнение блока «Ожидание» (Рис. 7 поз. 2). Настройка «Состояние» может принимать следующие значение: «0»«Отпущено», «1»«Нажатие», «2»«Щелчок». Для решения нашей задачи выберем состояние «Щелчок». Вывод «Измеренное значение» (Рис. 7 поз. 3) при необходимости позволяет передать окончательное состояние датчика для обработки в другой программный блок.

Блок ожидания. Датчик касания.

Рис. 7

Итак: при такой настройке блока ожидания выполнение нашей программы будет остановлено до нажатия-отпускания кнопки датчика касания. Только после «Щелчка» выполнение будет передано следующему программному блоку. Установим после блока ожидания один программный блок «Рулевое управление», загрузим программу в робота и убедимся в правильности её выполнения! (Рис. 8)

Решение задачи 6

Рис. 8

Задача №7: необходимо написать программу, останавливающую робота, столкнувшегося с препятствием.

Из датчика касания давайте соберем небольшой бампер, который будет нам сигнализировать о том, что наш робот столкнулся с препятствием. Ниже приведены подробные инструкции для сборки, как из домашней, так и из образовательной версии конструктора Lego mindstorms EV3. Можете поэкспериментировать и придумать собственный вариант конструкции.

Lego mindstorms EV3 home

Инструкция по сборке для домашней версии конструктора

Lego mindstorms EV3 education

Инструкция по сборке для образовательной версии конструктора

Получившийся элемент закрепим на передней балке нашего робота и соединим датчик касания с портом «1» модуля EV3.

Lego mindstorms EV3 Home

Размещение на домашней версии набора

Lego mindstorms EV3 Education

Размещение на образовательной версии набора

Конструкция готова! Приступим к созданию программы. По условию задачи: робот должен двигаться вперед, пока не наткнется на препятствие. В этом случае датчик касания будет нажат! Для решения снова воспользуемся программным блоком «Ожидание».

Решение:

  1. Начать прямолинейное движение вперед (Рис. 9 поз. 1).
  2. Ждать, пока датчик касания не будет нажат (Рис. 9 поз. 2).
  3. Прекратить движение вперед (Рис. 9 поз. 3).

Решение задачи 7

Рис. 9

Для решения следующей задачи нам понадобится программный блок «Цикл» Оранжевой палитры.

Задача №8: необходимо написать программу, заставляющую робота двигаться вперед, при наезде на препятствие — отъезжать назад, поворачивать вправо на 90 градусов и продолжать движение вперед до следующего препятствия.

Подсказка: напишите и протестируйте программу движения — отъезда — поворота, а затем поместите эти блоки внутрь программного блока «Цикл».

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *