Тахометр на Arduino

Содержание

Тахометр представляет собой счетчик числа оборотов в минуту (RPM counter). Существует два типа тахометров: механические и цифровые.

Внешний вид тахометра на Arduino

Общие принципы работы проектируемого тахометра

В этом проекте мы будем создавать цифровой тахометр на основе платы Arduino и модуля инфракрасного датчика для обнаружения вращения и подсчета числа оборотов любого вращающегося объекта. Принцип его действия основан на том, что инфракрасный передатчик излучает инфракрасные лучи которые затем отражаются обратно к инфракрасному приемнику и затем инфракрасный модуль генерирует импульс на своем выходе который обнаруживается контроллером Arduino когда мы нажимаем кнопку start. Он осуществляет счет в течение 5 секунд.

После этих 5 секунд плата Arduino рассчитывает число оборотов в минуту по следующей формуле:

RPM= Count x 12 для одиночного вращающегося объекта.

Но поскольку в этом проекте для демонстрации работы схемы мы используем потолочный вентилятор, то мы должны внести некоторые изменения в приведенную формулу:

RPM=count x 12 / objects
где
objects – число лопастей в вентиляторе.

Обобщенная структурная схема работы устройства представлена на следующем рисунке.

Структурная схема работы тахометра

Необходимые компоненты

  1. Плата Arduino Pro Mini (купить на AliExpress).
  2. Модуль инфракрасного датчика (купить на AliExpress).
  3. ЖК дисплей 16х2 (купить на AliExpress).
  4. Кнопка.
  5. Макетная плата.
  6. Батарейка на 9 В.
  7. Соединительные провода

Работа схемы

Схема тахометра на основе платы Arduino представлена на следующем рисунке.

Схема содержит плату Arduino Pro Mini, модуль инфракрасного датчика и ЖК дисплей. Плата Arduino управляет всем процессом функционирования устройства: считывание импульса с выхода модуля инфракрасного датчика, вычисление частоты вращения (в оборотах в минуту) и передача значения этой частоты на ЖК дисплей. Инфракрасный датчик используется для обнаружения объекта. Мы можем регулировать чувствительность данного датчика с помощью встроенного в него потенциометра. Модуль инфракрасного датчика состоит из инфракрасного передатчика и фотодиода, который обнаруживает инфракрасные лучи. Инфракрасный передатчик излучает инфракрасные лучи, когда эти лучи падают на поверхность, они отражаются от нее и улавливаются фотодиодом (более подробно об этих процессах можно прочитать в статье про робота, движущегося вдоль линии). Выход фотодиода подключен к компаратору, который сравнивает значение с выхода фотодиода с опорным напряжением и результат сравнения выдает на плату Arduino.

Выход модуля инфракрасного датчика напрямую подключен ко контакту 18 (A4) Arduino. Vcc и GND подсоединены к контактам Vcc и GND arduino. ЖК дсиплей подключен к плате Arduino в 4-битном режиме. Его управляющие контакты RS, RW и En напрямую подсоединены к контактам 2, GND и 3 Arduino. Контакты данных D4-D7 подключены к контактам 4, 5, 6 и 7 Arduino. В схеме также присутствует кнопка, которую необходимо нажать для подсчета числа оборотов. Наш тахометр на основе платы Arduino подсчитывает число оборотов в течение 5 секунд а потом по вышеприведенной формуле осуществляет пересчет этого значения в число оборотов в минуту. Кнопка подключена к контакту 10 Arduino.

Исходный код программы

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


Источник: microkontroller.ru