» електроника » Arduino »Прост далекомер на Arduino

Прост далекобойник Arduino


Добър ден любители Направи си сам! Днес ще сглобим обикновен далекомер Arduino Pro Mini. Устройството може да измерва разстояние от 2 до 400 см. Грешката на това устройство достига само +/- 1-5 см, в зависимост от измереното разстояние.

Инструменти и материали
-Arduino Pro mini
Сензор HC-04
- Индикатор за tm1637
-Wire (имам - MGTF 0,12)
-Programmator
-Пластичен корпус
-Li-on батерия
-Малък превключвател
- Табло за зареждане на TP4056
-Superkley
-Пояло желязо
-Pripoy
-Kanifol
Пробиване, тренировка и др.

Първа стъпка: Схема:
Според схемата всичко е просто, без допълнения.


Стъпка втора. Подготовка на случая:
Първо опитваме сензора и пробиваме два отвора за 15 мм.

След това направете дупка за микро-usb конектор с тренировка 3-3,5 мм.

Избираме тренировка за диаметъра на превключвателя и тренировка.

На капака правим „прозорец“ за седемсегментния индикатор (на снимката без обработка) и завършваме всички нередности с файл.


Стъпка трета. Фърмуер:
В скицата се открояват променливи, които можете да коригирате за себе си. Целият код се коментира.

#include  // библиотеки за работа
#include 
// ------------- За да конфигурирате --------------------------------- --------------------------------
bool Long = 0; // 0 - измерва дължината от сензора
               // 1 - измерва дължината от стената на корпуса, която е противоположна на сензора
неподписан вътрешен корпус = 10; // разстояние от сензора до противоположната стена на корпуса (в сантиметри)

#define CLK 2 // щифтове за свързване
#define DIO 3
#define TRIG 4
#define ECHO 5
// ------------------------------------------------ ----------------------------------------------
неподписан int импулс = 0; // променливи за изчисление
неподписан int sm = 0;

GyverTM1637 disp (CLK, DIO);
настройка за невалидност () {
 pinMode (TRIG, OUTPUT); // зададен като изход
 pinMode (ECHO, INPUT); // зададен като вход
 яркост (7); // яркост 0-7
 точка на топене (0); // изключете дебелото черво
  disp.clear (); // изчисти индикатора
}

void loop () {
 digitalWrite (TRIG, HIGH); // захранване 5 волта
  забавянеМикросекунди (10); // забавяне 10 микросекунди
  digitalWrite (TRIG, LOW); // служи 0
 
  импулс = импулсIn (ECHO, HIGH); // измерва дължината на пулса
  sm = импулс / 58; // конвертира в сантиметри

  ако (Long == 1) {// проверете настройките
    sm = sm + корпус;
  }

  ако (sm <= 2) {// нула фалшиви стойности
    sm = 1;
  }
  ако (sm> = 405) {
    sm = 1;
  }

  int цяло число = sm / 10;
  int decimal = sm% 10;
  десетичен = десетичен * 10;
 disp.displayClock (цяло число, десетичен); // изход към индикатор

  забавяне (300); // забавяне 0,3 сек. между стойността на изхода
}

След това свържете програмиста и флаш MK.


Стъпка четвърта. Монтаж:
Тъй като устройството работи с батерия, нямаме нужда от допълнително зареждане. Затова на дъската Arduino спояваме светодиодите и бутона за нулиране (за да намалим размера).

Залепете батерията към тялото върху суперзалепващо. Залепваме дъската за зареждане на батерията, инсталираме превключвателя и спояваме всичко според схемата.

Залепваме сензора към кутията и спояваме всичко според схемата.Първоначално имаше идея да залепите дъската върху двустранна лента, но след това беше решено да я залепите върху суперзалепване.Индикаторът може да се завинтва или залепва.


Стъпка пета. Тест:
Забележка: четвъртият сегмент винаги ще показва 0. Това е, за да се гарантира, че последният сегмент не е празен. Оказва се, ако показанието е 270, тогава това означава, че разстоянието е 27 cm.

За да сте сигурни, показанията могат да бъдат проверени с владетеля.
8
8.3
7.6

Добавете коментар

    • усмихвамусмивкиxaxaдобреdontknowYahooНеа
      шефдраскотинаглупакдаДа-даагресивентайна
      съжалявамтанцувамdance2dance3извинениепомощнапитки
      спиркаприятелидобърgoodgoodсвиркаприпадамезик
      димплясканеCrayдеклариратподигравателендон-t_mentionизтегляне
      топлинасърдитlaugh1MDAсрещаmoskingотрицателен
      not_iпуканкинаказвамчетаплашаплашитърсене
      присмехthank_youтоваto_clueumnikостърСъгласен
      лошоbeeeblack_eyeblum3изчервяванесамохвалствоскука
      цензурираншегаsecret2заплашвампобедаюsun_bespectacled
      ShokРеспектхахаprevedдобре дошълkrutoyya_za
      ya_dobryiпомощникne_huliganne_othodifludзабранаблизо
3 коментари
Гост Георги
Проектът беше откраднат от "AlexGiver", така че авторът е "плъх" !!!
първи
Не се нуждаем от допълнителни такси. Следователно на дъската Arduino спойка светодиодите
, но тогава глупаво харчим много повече спестени
четвъртият сегмент винаги ще показва 0.

За да сте сигурни, показанията могат да бъдат проверени с владетеля.
И какви са резултатите?

Самият проект в представената форма е чисто образователен, без практическо значение.
Лъв
Експериментирах много с този сензор, за съжаление точността на неговото измерване силно зависи от перпендикулярността на измервателната равнина спрямо равнината на устройството.

Съветваме ви да прочетете:

Предайте го за смартфона ...