Написать пост

Дальномер на Arduino Nano

Создаем ультразвуковой дальномер своими руками

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

Для создания нам понадобится:

1. Ультразвуковой датчик HC-SR04.


2. Дисплей TM1637.


3. Arduino nano.

4. Любой выключатель.

5. Провода.

6. Батарейный отсек и два аккумулятора 18600.


Первым делом заливаем этот скетч в ардуино:

#include <NewPing.h> //Подключаем библиотеку
#define TRIGGER_PIN  5
#define ECHO_PIN     4  
#define MAX_DISTANCE 500 //Максимальная дистанция в сантиметрах

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
#include <Arduino.h> //Подключаем библиотеку
#include <TM1637Display.h> //Подключаем библиотеку
#define CLK 2
#define DIO 3
#define TEST_DELAY  1000
TM1637Display display(CLK, DIO);

void setup() 
{
  Serial.begin(9600);
  analogWrite(A0, 255); // Подаем питание на A0
  analogWrite(A1, 0); // GND на A1
  analogWrite(A2, 255); // Подаем питание на A2
  analogWrite(A3, 0); // GND на A3
}

void loop() {
  display.setBrightness(0x0f);
  uint8_t data[] = { 0x0, 0x0, 0x0, 0x0 };
  display.setSegments(data);
  int distance = sonar.ping_cm();
                   
  Serial.print("Ping: ");
  Serial.print(sonar.ping_cm());
  Serial.println("cm");
  display.showNumberDec(distance, false, 3,1);
  delay(500);  //Частота обновления
}

Далее паяем все по схеме:


Датчик HC-SR04 пин VCC в A0, GND в A1, Trig в D5, Echo в D4. Дисплей TM1637 пин VCC в A2, GND в A3, DIO в D3, CLK в D2. Аккумуляторы в VIN и GND на ардуино. 

Собираем корпус из подручных материалов, хорошо, если есть 3d-принтер, в этом случае скачиваем корпус здесьhttps://www.thingiverse.com/thing:4890033 . Заливаем термоклеем датчики для надежного крепления.

Максимальное расстояние работы дальномера — 5 метров.

6 июня в 19:00

Коментарии

Как заблокировать вызовы с неизвестных и скрытых номеров на MIUI 12Аноним10 октября в 14:57

для тех кто на MIUI Global 12.5.4
приложение безопасность, листаем в низ, антиспам, настройки, блокировка вызовов, для каждой сим карты можно использовать разные параметры

Sublime Text 4. Установка русского языкаАноним10 октября в 01:53

Большое спасибо! Очень помогли

Как удалить Kaspersky Endpoint Security 11, если забыл пароль?Аноним10 октября в 17:24


После длительной возни выявил порядок действий:
1) Удаляем все, что связано с Касперским (агент, управление, центры..)
2) Перезагружаем и устанавливаем последнюю версию "Агента".
3) После установки проверяем, политики должны исчезнуть и все кнопки становятся активны.
4) Запускаем безопасный режим (выполнение перезагрузки при зажатой кнопке "шифт") и заходим в реестр:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\KasperskyLab\protected\KES10\settings
вносим изменения в параметры EnablePswrdProtect и OPEP.
EnablePswrdProtect - меняем 1 на 0.
OPEP - удаляем все значение.
Перезагружаемся.
5) Запускаем удаление программ и сносим старую версию, перезагружаем.
6) После ставим новую версию, игнорируя импорт настроек старой версии.
Всё!

Как установить командную строку (CMD) по умолчанию в терминале Windows на Windows 11Аноним10 октября в 19:05

Аноним, в powershell функция параметр не открывается,спрашивает какой программой вы хотите открытьНужно не в powershell, а в Терминале Windows открывать пареметры

Как установить командную строку (CMD) по умолчанию в терминале Windows на Windows 11Аноним10 октября в 19:03

в powershell функция параметр не открывается,спрашивает какой программой вы хотите открыть

Импорт большого дампа БД в OpenServer через консольАноним9 сентября в 18:39

Спасибо за пост!!!
Хочу заметить и для себя на будущее и для других, что когда подключаемся к базе с паролем, то первое сообщение настораживает
"mysql: [Warning] Using a password on the command line interface can be insecure."
и хочется всё сбросить, но нужно ждать))
Это просто текстовое предупреждение, а в свою очередь идёт загрузка базы!
Кстати, при регистрации на сайте, сообщение с паролем на почту не приходит)

Как запустить Generals Zero Hour в оконном режиме?Аноним9 сентября в 16:22

не получается чет,купил игру в ориджине

Как заблокировать вызовы с неизвестных и скрытых номеров на MIUI 12Аноним9 сентября в 15:24

MIUI Global 12.5.4 нет раздела "антиспам".
Есть некоторые настройки в разделе "АОН и спам" в меню системного приложения "Вызовы", но нет возмосности огранить список поступающих звонков только телефонной книгой.