Цифровой дальномер на Arduino


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

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

Цифровой дальномер на Arduino

Принципиальная схема цифрового дальномера показана на рисунке ниже. за основу взята плата Arduino Uno, также потребуется ультразвуковой датчик HC-SR04, ЖК-дисплей от Nokia 5110 и источник питания на 9 В (можно использовать батарею или аккумулятор формата «Крона».

Цифровой дальномер на Arduino

Принципиальная схема цифрового дальномера

Сборка и тестирование

  1. Подключите ЖК-дисплей, ультразвуковой датчик и аккумулятор к плате Arduino согласно электрической схеме.
  2. Загрузите и установите Arduino IDE с веб-сайта.
  3. Библиотеку для ультразвукового датчика скачайте по этой ссылке, а библиотеку для дисплея от Nokia 5110 LCD — по этой ссылке.
  4. Распакуйте библиотеки, скопируйте и вставьте их в папку Libraries Arduino IDE. Подключите Arduino к ПК / ноутбуку с помощью USB-кабеля.
  5. Запустите Arduino IDE. Создайте пустой скетч и скопируйте в него текст программы из этой статьи. Сохраните скетч. Выберите правильную плату и COM-порт в меню Tools. Скомпилируйте и загрузите код в Arduino.
  6. Правильно закрепите датчик на макете и направьте его на стену или какой-то крупный объект, расстояние которого вы хотите измерить. Когда датчик HC-SR04 обнаружит ультразвуковые сигналы, отражающиеся от объекта, вы увидите расстояние между датчиком и объектом на ЖК-дисплее. Кроме того вы увидите информацию о расстоянии в окне Serial Monitor в Arduino IDE. Расстояние отображается в сантиметрах.

Текст прошивки Arduino (Скетч):

#include <HCSR04.h>
UltraSonicDistanceSensor distanceSensor(6, 5);
 // echo pin  5 
// Trigger pin 6
#include <LCD5110_Graph.h>
LCD5110 myGLCD(8,9,10,11,12);
extern uint8_t SmallFont[];
extern uint8_t BigNumbers[];

long distance; //To get some accuracy in time and distance

void setup() {
  Serial.begin (9600);
  myGLCD.InitLCD();  
}

void loop() {
  // Now to get the distance  
  distance=distanceSensor.measureDistanceCm();
  Serial.println(distance);      
  myGLCD.update();
  myGLCD.setFont(SmallFont);        
  myGLCD.print("distance ",CENTER,10);
  myGLCD.print("cm",RIGHT,40);  
  myGLCD.setFont(BigNumbers);
  myGLCD.printNumF(distance,2,5,20);
  delay(2000);
  myGLCD.update();
  }
  

Если использовать аккумулятор напряжением 9V как это показано на принципиальной схеме, устройство может работать автономно.

Источник (на английском): https://www.electronicsforu.com/electronics-projects/digital-distance-meter-with-arduino


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

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