Электронная линейка на ардуино своими руками

Добавил пользователь Alex
Обновлено: 18.09.2024

Проект УЦИ по отображению данных с китайской цифровой линейки на семидюймовый дисплей под управлением Arduino .

библиотека I2C для lcd 1602 yadi.sk/d/SZd1MUGPw2zSoс библиотека с кириллицей yadi.sk/d/d5R0cZQ8w2zSd .

Линейки: ali.ski/e3grbP Внимание! Линейки бывают разные. В целом, совместимые, но другие могут иметь и другую .

Простенький приборчик EC10/2-SR для измерения перемещений при помощи инкрементального энкодера. Может .

Подключение модуля энкодера KY-040 к Arduino в связке с многоразрядным семисегментным дисплеем на базе .

В этом уроке мы поподробнее познакомимся с дальномерами.

Ультразвуковой дальномер HC-SR04


На сегодняшний день (2016 г) стоит не более 1$ на AliExpress.

Датчик имеет 4 вывода:

  • Vcc – На этот контакт подается питание в 5В.
  • Trig – На этот контакт нужно подать логическую единицу на 10мкс, чтобы дальномер испустил ультразвуковую волну.
  • Echo – После того, как ультразвуковая волна вернется обратно, на этот контакт будет подана логическая единица на время, пропорциональное расстоянию до объекта
  • Gnd – Этот контакт подключается к земле.

Ультразвуковой дальномер – работает по принципу “летучей мыши”. Он посылает ультразвуковую волну и считает время, за которое волна возвратится. Зная скорость звука и время, за которое волна пришла обратно, можно рассчитать расстояние до объекта.

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

Дальномер

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


Код

Пояснения

pulseIn(ECHO, HIGH); - С помощью этой функции мы считали время, на которое на пине ECHO устанавливается значение HIGH. Это время считается в микросекундах.

В общем виде pulseIn(); можно записать так:

pulseIn(пин, значение, таймаут);

Пин – Пин, на котором будет производиться подсчет времени.

Значение – Уровень ожидаемого сигнала, при котором будет проводиться подсчет. HIGH или LOW.

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

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

Парктроник

Схема парктроника выглядит так:


Код

Пояснения

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

dist_setup – это коэффициент, с помощью которого можно регулировать расстояние до срабатывания парктроника.

У меня он равен единице. Если вам нужно уменьшить расстояние – нужно уменьшить коэффициент, но тогда он будет в виде 0.xxx. Для этого вводится переменная типа float.

Частоту писка можно также изменять. Для этого нужно изменить значение frequency. Но следует помнить, что пищит пьезоизлучатель ужасно. Крайне. И, мне кажется, что он быстро отобьет у вас желание им пользоваться дальше или дольше 5 минут.

Как вариант – понизить частоту до 20 Гц или подключить обычный динамик на 8 Ом, к примеру.

Пароль

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

Внимание на схему.


Код

Пояснения

Для того чтобы зажечь все пять светодиодов – нужно знать последовательность действий, которую нужно выполнять. Вот для вас задание – “Не смотря объяснения ниже, определить, какую же последовательность действий нужно выполнять, чтобы загорелись все пять светодиодов”

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

Разобрались? Если да – молодцы, а если нет – почти молодцы.

Всего есть три “символа ввода” – от 0 до 10, от 10 до 15 и от 20 до 25.

Состояние от 0 до 10 включается, если поднести обе руки на расстояние от 0 до 10 см к обоим дальномерам. Если это сделать – загорится желтый светодиод.

Состояние от 10 до 15 включится, когда вы поднесете руку к правому или левому дальномеру на расстояние от 10 до 15 см. О совершении этого действия вам подскажут крайний левый светодиод для левой руки и крайний правый – для правой.

Состояние от 20 до 25 включается в тот момент, когда расстояние от руки до одного из дальномеров будет от 20 до 25 см. Об этом вас проинформируют второй слева и второй справа светодиоды для левой и правой руки соответственно.

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

  • Поднести ПРАВУЮ руку на расстояние от 10 до 15.
  • После того, как загорелся крайний правый светодиод – поднести ЛЕВУЮ руку на расстояние от 20 до 25. Все это делается, не меняя положения правой руки.
  • После индикации второго слева светодиода – отвести ЛЕВУЮ руку влево, чтобы не загорелся крайний левый светодиод, иначе – код нужно будет набирать сначала. ПРАВУЮ руку приблизить на расстояние от 0 до 10, а ЛЕВУЮ подвести на это же расстояние, не задевая расстояние от 10 до 15
  • Светодиоды должны гореть и не реагировать на ваши действия.
  • Нажать кнопку RESET, для сброса пароля. Светодиоды должны потухнуть.

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

После того, как у вас будет получаться зажечь все светодиоды, можно вам проверить себя и изменить код так, чтобы последовательность была другая – на ваше усмотрение. Можно сделать больше “символов”, а можно оставить те же, но сделать каждый символ с использованием двух дальномеров. Это будет заданием для самостоятельного решения.

Инфракрасный дальномер Sharp


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

Терменвокс

Есть такой музыкальный инструмент, как терменвокс. И сейчас мы соберем подобие этого инструмента.


Код

Пояснения

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

Кнопка нужна для остановки или запуска нашего “Терменвокса”

Итог

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

Проект УЦИ по отображению данных с китайской цифровой линейки на семидюймовый дисплей под управлением Arduino .

библиотека I2C для lcd 1602 yadi.sk/d/SZd1MUGPw2zSoс библиотека с кириллицей yadi.sk/d/d5R0cZQ8w2zSd .

Линейки: ali.ski/e3grbP Внимание! Линейки бывают разные. В целом, совместимые, но другие могут иметь и другую .

Простенький приборчик EC10/2-SR для измерения перемещений при помощи инкрементального энкодера. Может .

Подключение модуля энкодера KY-040 к Arduino в связке с многоразрядным семисегментным дисплеем на базе .

Схемы и проекты на Arduino Uno, Mega, Nano и Mini. Рубрика содержит большое количество схем подключения к платам Arduino различных дисплеев, датчиков, взаимодействия с другими устройствами по Bluetooth и WiFi, и множество проектов в формате DIY (сделай сам, своими руками). Для каждого проекта приведены схема устройства и текст программы (скетч) с комментариями, что позволяет начинающим радиолюбителям на конкретных примерах научиться созданию практических схем на платформе Arduino.

Измерение уровня воды с помощью Arduino и водонепроницаемого датчика JSN SR-40T


Ультразвуковые датчики, также известные как сонары (SONAR), представляют собой электронные устройства, используемые для измерения расстояния до объекта при помощи излучения ультразвуковых волн. Кроме измерения расстояния они также используются в задачах обнаружения объектов и роботах, объезжающих препятствия. Ранее для измерения расстояния … Читать далее ->

Пульт дистанционного управления дроном на Arduino


В данной статье мы рассмотрим создание на основе платы Arduino и двух джойстиков пульта дистанционного управления (RC controller), который будет работать на частоте 2,4 ГГц. Данный пульт дистанционного управления (ДУ) автор проекта в дальнейшем планирует использовать для управления квадрокоптером (дроном), … Читать далее ->

Управление мышкой компьютера с помощью пальцев и Arduino


Комнатный термометр на Arduino Nano


В данной статье мы рассмотрим создание на основы платы Arduino Nano и датчика температуры DS18B20 термометра с красивым внешним видом для измерения температуры в комнате. Измеренная температура будет отображаться с помощью адресной светодиодной ленты. Необходимые компоненты Плата Arduino Nano (купить … Читать далее ->

Подключение радиочастотного модуля XY - WA 2,4 ГГц к Arduino для связи на большие расстояния


Несомненно, беспроводная связь является одной из ключевых технологий будущего. А в настоящее время широкое применение находят различные радиочастотные модули (RF modules), работающие на частотах диапазона 2,4 ГГц, в так называемом ISM диапазоне (ISM band) – диапазоне частот, выделенного для безлицензионного … Читать далее ->

Регулируемая электронная нагрузка постоянного тока на Arduino


Если вы когда-нибудь работали с батареями (аккумуляторами), импульсными (SMPS) или любыми другими источниками питания у вас наверняка возникала потребность в проверке их работы в различных условиях, то есть под различной нагрузкой. Устройство, которое обычно используется для этих целей, называется нагрузкой … Читать далее ->

Ультразвуковая акустическая левитация на Arduino и датчике HC-SR04


Магнитная левитация с помощью Arduino


Левитация долгое время считалась чем то сверхъестественным, магическим. Люди долгое время преклонялись перед ней, не знали как ее объяснить. Но постепенно наука сумела объяснить принцип этого явления и с тех пор она стала достаточно привычным явлением, но, тем не менее, … Читать далее ->

Детектор лжи на Arduino Nano своими руками


В данной статье мы рассмотрим создание простого детектора лжи на основе платы Arduino Nano, который позволит определять когда испытуемое лицо (например, ваш знакомый или родственник) говорит неправду. Принцип работы детектора лжи основан на изменении состояния кожи человека под влиянием его … Читать далее ->

Термометр на Arduino и датчике температуры DS18B20


В данной статье мы рассмотрим подключение цифрового датчика температуры DS18B20 к плате Arduino Uno. Приведены схема и программа (скетч) для проекта. Также на нашем сайте вы можете посмотреть проекты измерения температуры с помощью платы Arduino и датчиков lm35 и DHT11. … Читать далее ->

Читайте также: