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

 
» » » Цифровой тахометр своими руками на основе Arduino и ИК-датчика



Цифровой тахометр своими руками на основе Arduino и ИК-датчика

Автор: Mike(admin) от 21-05-2021, 23:55

Если в рамках ваших проектов вы часто работаете с двигателями, и вам нужно измерять обороты их валов, то вам может потребоваться тахометр. Можно, конечно, пойти в Интернет и поискать нужный цифровой тахометр, но все они, скорее всего, могут быть довольно дорогими, особенно для начальных проектов. Поэтому оптимальным вариантом будет самостоятельно сделать простой цифровой тахометр, используя ИК-датчик и Arduino.


Цифровой тахометр своими руками на основе Arduino и ИК-датчика

Схема цифрового тахометра на основе Arduino и инфракрасного датчика выглядит следующим образом.


Цифровой тахометр своими руками на основе Arduino и ИК-датчика

Код программы цифрового тахометра на основе Arduino и ИК-датчика следующий.



#include <Arduino.h>
#include <SPI.h>
#include <Wire.h>
unsigned long rpmtime;
float rpmfloat;
unsigned int rpm;
bool tooslow = 1;

void setup() {
  Serial.begin(9600);
  TCCR1A = 0;
  TCCR1B = 0;
  TCCR1B |= (1 << CS12); // Предделитель 256
  TIMSK1 |= (1 << TOIE1); // разрешить переполнение таймера
  pinMode(2, INPUT);
  attachInterrupt(0, RPM, FALLING);
}

ISR(TIMER1_OVF_vect) {
  tooslow = 1;
}

void loop() {
  delay(1000);
  if (tooslow == 1) {
    Serial.println("Too Slow");
  }
  else {
    rpmfloat = 120 / (rpmtime/ 31250.00);
    rpm = round(rpmfloat);
    Serial.println("RPM = ");
    Serial.println(rpm);
  }
}

void RPM () {
  rpmtime = TCNT1;
  TCNT1 = 0;
  tooslow = 0;
}



© digitrode.ru


Теги: Arduino, ИК-сигналы




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

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

Оставить комментарий