цифровая электроника
вычислительная техника
встраиваемые системы

 
» » Простой детектор скорости на Arduino своими руками



Простой детектор скорости на Arduino своими руками

Автор: Mike(admin) от 15-02-2019, 09:55

В этом проекте будет показано, как измерить скорость передвигающейся машины (или человека, или какого-либо другого объекта) с помощью нехитрого устройства на Arduino. Автоинспекция использует подобный тип системы для регистрации превышения скорости транспортных средств. Наш проект немного отличается от системы, используемой дорожной полицией, но общая концепция детектора скорости автомобиля такая же.


Простой детектор скорости на Arduino своими руками

В этом проекте будет показано, как измерить скорость передвигающейся машины (или человека, или какого-либо другого объекта) с помощью нехитрого устройства на Arduino. Автоинспекция использует подобный тип системы для регистрации превышения скорости транспортных средств. Наш проект немного отличается от системы, используемой дорожной полицией, но общая концепция детектора скорости автомобиля такая же.


Оба ИК-датчика подключены к контактам прерывания Arduino, и они обнаруживают спад сигнала. Цель использования прерывания заключается в том, что оно повышает эффективность системы. ЖК-дисплей подключен к Arduino, и измеренная скорость отображается на ЖК-дисплее.


Когда автомобиль движется перед первым датчиком, он передает выходной сигнал в Arduino, Arduino обнаруживает спад сигнала, теперь запускается внутренний таймер Arduino, а когда автомобиль движется перед вторым датчиком, таймер останавливается. Теперь Arduino измеряет скорость автомобиля, которая измеряется расстоянием во времени: скорость = расстояние/время.


ИК-датчик включает в себя ИК-светодиод и фототранзистор. Когда объект проходит между датчиками, свет отражается от объекта и падает на фототранзистор. Здесь используется операционный усилитель IC (LM358) и к нему подключен фототранзистор. Когда объект оказывается перед датчиком, он посылает логический высокий сигнал в Arduino.


Принципиальная схема подключения показана на рисунке ниже. В качестве управляющего устройства используется Arduino Nano. Вы можете использовать любые другие варианты Arduino по вашему выбору.


Простой детектор скорости на Arduino своими руками

Простой детектор скорости на Arduino своими руками

Код программы детектора скорости на Arduino представлен далее.



#include<LiquidCrystal.h>
LiquidCrystal lcd(4, 5, 6, 7, 8, 9);

int sensor1 = 2;
int sensor2 = 3;

int Time1;
int Time2;
int Time;
int flag = 0;

int distance = 27;

float Speed;

void setup() {
  attachInterrupt(0,fun1,RISING);
  attachInterrupt(1,fun2,FALLING);

  lcd.begin(16,2);
  lcd.clear();
  lcd.print("SPEED MEASURMENT");
}

void fun1()
{
  Time1 = millis(); 
  if (flag == 0) {flag = 1;}
  else {flag = 0;}
}

void fun2()
{
  Time2 = millis();
  if (flag == 0) {flag = 1;}
  else {flag = 0;}
}


void loop() {
  if (flag == 0){
  if      (Time1 > Time2) {Time = Time1 - Time2;  Speed = (distance*1000)/Time;}
  else if (Time2 > Time1) {Time = Time2 - Time1;  Speed = (distance*1000)/Time;}
  else    {Speed = 0;}
  }
  
  if (Speed == 0) { 
    lcd.setCursor(0, 1); 
    lcd.print(".......OK......."); 
    }
  else { 
    lcd.setCursor(2, 1); 
    lcd.print(Speed);
    lcd.print(" cm/sec");
    delay(10000);
    Time1 = 0;
    Time2 = 0;
    }
}

Простой детектор скорости на Arduino своими руками



© digitrode.ru


Теги: Arduino




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий
  • Группа: Гости
  • ICQ:
  • Регистрация: --
  • Статус:
  • Комментариев: 0
  • Публикаций: 0
^
Привет. А так использовал Ардуино
https://youtu.be/jP7XlEXUq3s

Привет. А я так использовал Ардуино
https://youtu.be/jP7XlEXUq3s