Механічні датчики для Arduino

Кількість датчиків призначених для спільної роботи з платформою Arduino воістину не піддається обчисленню. При бажанні можна придбати майже будь-якій готовий модуль від банальної кнопки до детектора радіації. Такі датчики можна придбати як окремо, так і в наборах найрізноманітнішого розміру. Один з таких порівняно дешевих наборів можна придбати на Алі за 10 доларів. Набір поставляється в поліетиленовому пакеті, деякі з датчиків, приблизно третина були упаковані в окремі пакети. Разом з датчиками в посилку вкладено окремий листок з переліком комплектації.

Даний набір включає в себе 37 приладів, які дозволяють реєструвати різноманітні явища і процеси, а також невелика кількість найпростіших пристроїв виведення інформації [1-3]. Купівля такого набору виправдана на початковому етапі, коли потрібно вивчити особливості роботи великої кількості різних пристроїв. Набір можна підключити до платам типу Arduino UNO або Arduino Nano без використання пайки, що є безсумнівним плюсом на першому етапі роботи.

У першій частині даного огляду мова піде про механічних датчиках, що реагують на натискання, вібрацію, поворот і т.п. Велика частина описаних нижче датчиків підключаються, по суті, аналогічно цифровий кнопці. Для прикладу в пам’ять мікроконтролера на платі Arduino UNO можна записати програму, яка по командам від датчика запалює світлодіод, підключений до 13 цифровому порту, код взятий з [4].

Модуль тактовою кнопки KY-004 [5]

Розмір модуля 24 х 15 мм, маса 1,3 м Крім кнопки на платі встановлений резистор, опором 10 кому. Для підключення служить трьох контактний роз’єм, загальний висновок роз’єму позначений знаком «-», центральний контакт служить для подачі напруги живлення + 5В, інформаційний контакт позначений «S»

В цілому звичайна цифрова кнопка. Застосування такого модуля, мабуть, виправдано тільки в схемах, де потрібно додати до мікроконтролеру 1-2 кнопки.

Датчик вібрації KY-002 [6]

Розмір модуля 24 х 15 х 15 мм, маса 1,2 м Конструктивно датчик являє собою циліндричну металеву пружину по осі, якій розташовується провідник, який замикається при різких прискорення, що повідомляються пристрою [7]. Схема підключення, логіка роботи та маркування контактів, аналогічні таким у модуля тактовою кнопки KY-004

Слід мати на увазі, що цей датчик по-різному реагує на прискорення в різних напрямках. Прискорення докір осі датчика він сприймає добре, а ось на прискорення вздовж осі датчика реагує помітно гірше. Датчик припаяний до плати маркування контактів, на якій збігається з такою у двох попередніх датчиків.

Датчик удару KY-031 [8]

Розмір модуля 30 х 18 мм, маса 1,6 м Датчик являє собою пружинний контакт в прямокутному пластиковому корпусі. Датчик чутливий до прискорення спрямованим поперек поздовжньої осі датчика

Датчик повороту KY-020 [9]

Розмір модуля 24 х 15 мм, маса 1,3 м Датчик являє собою металеву кульку, який замикає контакти, в тому випадку, коли плата змінює своє положення в просторі приблизно на 90 градусів.

Пристрій підключається повністю ідентично кнопці KY-004.

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

Механічний датчик повороту

Механічний датчик повороту (валкодера або енкодер) KY-040 [10-15]. Валкодера є групою механічних контактів по послідовності замикання, яких можна судити про швидкість і напрямок обертання його штока. Безпосередньо під штоком розташовується кнопка, яку можна використовувати натискаючи на шток. На жаль, в екземплярі, що дістався автору, ця кнопка сильно залипає, так що про надійне спрацьовування немає й мови.

Розмір модуля 30 х 18 мм, висота 28 мм, маса 6,5 м В платі є два кріпильних отвори, діаметром 3 мм, на відстані 14 мм один від одного. Модуль має п’ять висновків:

  • «GND» — загальний,
  • «+» — харчування 5 В,
  • «SW» — висновок кнопки,
  • «DT» і «CLK» — висновки сигналів з валкодера.

Робота з кнопкою аналогічна такій для будь-якої цифрової кнопки, наприклад KY-004, або аналогічної. З висновків «DT» і «CLK» при обертанні штока пристрою можна вважати послідовності сигналів високого і низького логічного рівня, зсунуті по фазі приблизно на чверть періоду. Визначаючи за допомогою цих меандров швидкість і напрямок обертання ручки валкодера можна наприклад управляти яскравістю світлодіода [14]. Головна перевага даного пристрою перед змінним резистором, в тому, що кут повороту штока валкодера нічим не обмежений.

Джойстик KY-040 [16-17]

Джойстик являє собою комбінований датчик з двох змінних резисторів і цифровий кнопки. Конструктивно модуль являє собою друковану плату, на якій розташовується модуль джойстика. Ручка джойстика механічно пов’язана з парою змінних резисторів, опором 10 кому. Відхилення ручки викликає зміна опору резисторів. При натисканні на джойстик замикається розташована під ним кнопка. Втім, надійність спрацьовування кнопки залишає бажати кращого, особливо при великих кутах відхилення ручки джойстика.

Розмір модуля 40 х 26 мм, висота 28 мм, маса 9,8 м В платі є чотири кріпильних отвори, діаметром 3 мм, розташованих у вершинах прямокутника зі сторонами 20 і 26 мм. На платі є п’ять висновків:

  1. «GND» — загальний,
  2. «+ 5V» харчування,
  3. «VRx» — висновки змінного резистора кодує переміщення по осі X,
  4. «VRy» — висновки змінного резистора кодує переміщення по осі Y,
  5. «SW» — висновок кнопки.

Можна написати просту програму, яка буде за допомогою світлодіода, підключеного до 13 цифровому порту відображати натискання кнопки джойстика, а інформацію про опір змінних резисторів виводити в термінал послідовного порту.

Ссылка на основную публикацию