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