Цифровой тахометр на микросхеме attiny2313. Простой универсальный тахометр на микроконтроллере ATtiny2313. Радиотехника, электроника и схемы своими руками

Простой универсальный тахометр на микроконтроллере ATtiny2313

Этот простой тахометр на ATtiny2313 умеет считать количество оборотов любых двигателей, будь то многофазные, многотактные и т.п. Он может быть полезен в авто- мототехнике, для отображения оборотов двигателя. При этом совершенно не имеет значения, сколько тактов или цилиндров имеет двигатель. Его также можно использовать совместно с электронными контроллерами электродвигателей, будь то одно- или трёхфазные.

Схема тахометра очень простая - один микроконтроллер ATtiny2313 и четырёхсимвольный светодиодный индикатор. Транзисторные ключи в целях упрощения отсутствуют. Индикатор можно использовать как с общим катодом, так и с общим анодом - это выбирается в исходнике. Тахометр может подсчитывать обороты как в секунду, так и в минуту, что делает его полностью универсальным.

Дополнительно устройство имеет возможность программного управления яркостью: обычная и пониженная. Если джампер открыт, то устанавливается обычная яркость. При замыкании контактов яркость уменьшается.


Нажмите для увеличения
Перейдём непосредственно к схеме. Если устройство подключается непосредственно к контроллеру двигателя с TTL-уровнями, то импульсы можно подавать просто на вывод 6 микроконтроллера. В противном случае следует выполнить простейший преобразователь уровня на транзисторе.

Для получения и стабилизации напряжения питания +5 вольт применён линейный стабилизатор 1117 с низким падением напряжения для большей экономичности.

В качестве светодиодного индикатора применён индикатор от микроволновки с общим анодом. Так как он уже содержит в себе резисторы на 220 Ом, то на печатной плате они не предусмотрены.


На верхней стороне печатной платы имеются аж 10 перемычек, но они весьма легко устанавливаются.


С обратной стороны установлены SMD-компоненты: это два конденсатора по 22 пФ для кварцевого резонатора, микросхема стабилизатора и фильтрующие конденсаторы.

Кварцевый резонатор для микроконтроллера ATtiny2313 можно устанавливать на 8 или 4МГц, это задаётся в исходнике и управляет прескалером.

Режим отображения оборотов - в секунду или в минуту - задаётся аналогично, в исходнике. Для отображения количества оборотов в минуту рассчитанное количество оборотов в секунду просто программно умножается на 60. Имеется возможность программного округления расчитаных значений. Эти нюансы прокомментированы в исходном коде.

При прошивке микроконтроллера необходимо установить фьюзы:

CKSEL1=0
BODLEVEL0=0
BODLEVER1=0
SPMEN=0

Исходник написан на языке C в Codevision AVR. Он был позаимствован из другого проекта - тахометра для трёхлопастного вертолёта.

Коротко о настройке: необходимо заранее определить, какое количество импульсов за 1 оборот будет подаваться на вход тахометра. Например, если их источником будет контроллер трёхфазного мотора на LB11880 , то он выдаёт по три импульса на каждый оборот шпинделя. Поэтому в исходном коде следует указать это значение.

Выбор индикатора - с общим анодом или с общим катодом (ненужное значение - закомментировать):

//#define Anode
#define Cathode

Количество тахометрических импульсов на 1 оборот вала:

#define byBladeCnt 2

Выбор частоты кварцевого резонатора - 0x00 для 4МГц, 0x01 - для 8МГц:

#define Prescaler 0x01

Выбор отображения оборотов в минуту:

lTmp = (62500L * 60L * (long)wFlashCnt);

Для отображения количества оборотов в секунду необходимо убрать умножение на 60:

lTmp = (62500L * (long)wFlashCnt);

Для того, чтобы отключить округление значений, нужно закомментировать следующие строки:

If (byDisplay > 4)
{
wRpm++;
R += 10;
}

Так как в этой конкретной конструкции применён весьма специфический индикатор, то разводка печатной платы не прикладывается.

Данное устройство представляет из себя неплохой тахометр. Предел измерений 100 — 9990 об/мин. Точность измерения — ± 3 об/мин. Но для лучшего восприятия данные округляются. Данный прибор стоит у меня на авто — Таврия. Также устанавливалась на Chevrolet Cavalier, ВАЗ-2109, мотоцикл ЯВА-350 12-ти вольтовый, скутер Honda Lead 90.

Присутствуют две входных цепи:

  • вывод 6 (PD2) — вход прерывания INT0. Этот вход используется для измерения количества оборотов двигателя.
  • вывод 11 (PD6). Этот вход используется для уменьшения яркости индикаторов при включении габаритов на авто.

В схеме применён кварцевый резонатор на частоту 8MHz для большей точности и стабильности измерений.

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

Уменьшение яркости индикатора при включении габаритов необходимо для того, чтобы довольно яркий свет от индикатора не отвлекал водителя в тёмное время суток.

Печатная плата:

В собранном виде это выглядит вот так:

Рекомендую применять красный индикатор, т.к. его значительно лучше видно на солнце. Показания стают нечитаемыми только при прямом попадании яркого солнца. Этот эффект можно уменьшить или даже совсем от него избавиться если поставить индикатор за красный светофильтр, но у меня такого к сожалению не нашлось…

FUSES выставлены в проекте, но если кто-то шьёт не из CodeVisionAVR, то повторю их тут:

В проекте в 17-й строке есть следующее определение:

#define byBladeCnt 2 //1- две катушки, 2 — одна катушка, 4 — мотоцикл…

Для советских автомобилей и авто с распределительной системой зажигания этот параметр будет 2. Для систем зажигания с двумя катушками (как в ВАЗ-2110) — 1. На мотоцикле и мопеде (2-х тактная система зажигания) этот параметр равен 4.


Основная задача тахометра в автомобиле – это помощь выбора правильной передачи, что положительно влияет на срок работы двигателя. В большинстве автомобилей уже имеется аналоговый тахометр и когда его стрелка приближается к красной отметке, необходимо переключиться на повышенную передачу.

Кроме того автовладельцы применяют для регулировочных работ, как на холостом ходу, так и для контроля частоты вращения вала двигателя во время движения.

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

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

Конструкция всех тахометров позволяет обнулять полученные значения. Точность данных результатов измерений достаточно условна, около 500 об/мин, самые точные электронные тахометры измеряют с погрешностью до 100 об/мин.

Автомобильные тахометры бывают двух видов цифровые и аналоговые. Цифровой автомобильный тахометр состоит из следующих блоков:

Центральный процессор
АЦП 8 разрядов или более
Датчик температуры жидкости;
Электронный дисплей
Оптрон для диагностики клапана холостого хода
Блок сброса процессора.

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

Аналоговые автомобильные тахометры более распространены и понятны большему числу автолюбителей. Он показывает результаты измерений с помощью перемещающейся стрелки.

Обычно аналоговый тахометр состоит из :

микросхема
магнитная катушка
провода считывания информации с коленчатого вала
градуированная шкала
стрелка

Работает такой тахометр следующим образом. Сигнал от коленчатого вала поступает по проводам на микросхему, которая определяет положение стрелки по градуированному циферблату.

В автомобиле лучше всего иметь и тот и другой вид тахометра. Так цифровой отлично справляется с регулировкой холостого хода, проверки работы блока управления ЭПХХ (экономайзер принудительного холостого хода) и проверки штатного тахометра (т.к цифровой тахометр обладает гораздо более высокой точностью). Во время управления автомобилем гораздо удобнее использовать штатный аналоговый тахометром, т.к глаз и мозг человека лучше и быстрее анализирует аналоговую информацию, чем ее цифровое значение, а лучшая точность во время управления транспортным средством совсем не требуется.

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

Ниже представлена схема квазианалогового электронного тахометра. Принцип ее работы следующий. Частота вращения коленвала двигателя отображается на упрощенной линейной шкале из светодиодов. Шкала цифрового тахометра состоит из девяти светодиодов. Каждый из них примерно соответствует 600 оборотам в минуту двигателя. На холостом ходу светится только первый светодиод. Регулировка тахометра осуществляется путем подбора сопротивления R6. В зависимости от него, можно настроить индикаторы на требуемое количество цилиндров. Можно поменять и цену деления.

В качестве источника импульсов для правильной работы цифрового тахометра может быть датчик Холла, который присутствует в электронной системе зажигания, датчик положения вала и другие. Главное чтоб датчик посылал на нашу схему импульсы, которые меняют сопротивление резистора R1.

Данная схема работает как простой частотомер. Импульсы, которые постоянно идут от датчика двигателя, поступают на счетный вход десятичного счетчика К561ИЕ8, и далее на светодиоды. Запитать схему можно от прикуривателя или .

Диод VD1 КД522 защищает схему от неправильного подключения полярности питания. Датчик оборотов коленчатого вала шлет импульсы на базу транзистора VT1. Сопротивление R1 выбираем в зависимости от датчика (на схеме сопротивление подобрано для датчика Холла в бесконтактной системе зажигания карбюраторного двигателя). С выхода VT1 импульсы попадают на триггер Шмитта, выполненный на элементах D1.1-D1.2. Он преобразует импульсы в требуемую прямоугольную форму. Конденсатор С2 фильтрует помехи, в паре с резистором R4 он составляет фильтр, срезающий импульсы высокой частоты. С Выхода D1.2 импульсы поступают на счетчик.

Мультивибратор собранный на элементах микросхемы D1.3 и D1.4 генерирует тактовые импульсы частотой зависящей от R6. Эти импульсы идут на цепочку C3-R7, что формирует импульс для обнуления счетчика D2. Сверхяркие светодиоды HL1-HL9 подключены непосредственно к выходам счетчика К561ИЕ8. С помощью R9 можно регулировать яркость индикации.

Светодиоды 1-4 на печатной плате подключаются монтажным проводом.

Наладку конструкции начинается с расчета значения резистора R1 в соответствии от размаха входящих импульсов. Затем заменяем R6 последовательно включенными переменными резисторами на 1 Ом и постоянным на 10 кОм. Далее подкручиваем переменный резистор на максимальное сопротивление. Затем крутим его так, чтобы на холостом ходу двигателя загорелись только два светодиода. Отмечаем это положение подстроечного резистора. Затем уменьшаем сопротивление, чтобы горел только один светодиод. Затем регулируем резистор в среднем положение. Далее измеряем мультиметром полученное сопротивление R8.

Что такое вообще тахометр ? Тахометр - это устройство, используемое для измерения об/мин (обороты в минуту) любого вращающегося тела. Тахометры делают на основе контактных или безконтактных. Бесконтактные оптические тахометры обычно используют лазерный или инфракрасный луч для контроля вращения любого тела. Это делается путем вычисления времени, затраченного на одно вращение. В этом материале, взятом на одном английском сайте, мы покажем вам, как сделать портативный цифровой оптический тахометр с помощью Arduino Uno . Рассмотрим расширенную версию прибора с ЖК-дисплеем и модифицированным кодом.

Схема тахометра на микроконтроллере

Список деталей для схемы

  • Микросхема - Arduino
  • Резисторы - 33k, 270 Ом, 10k потенциометр
  • LED элемент - синий
  • ИК-светодиод и фотодиод
  • 16 x 2 LCD экран
  • 74HC595 регистр сдвига

Тут вместо щелевого датчика задействован оптический - отражение луча. Так им образом не придется беспокоиться о толщине ротора, количество лопастей не изменит показания, и он может считывать обороты барабана - а щелевой датчик не может.

Итак, прежде всего для датчика вам потребуется излучающий ИК-светодиод и фотодиод. Как его собрать - показано в пошаговой инструкции. Нажимаем на фото для увеличения размера.

  • 1. Для начала нужно зашкурить светодиод и фотодиод, чтобы сделать их плоскими.
  • 2. Затем сложите полоску бумаги лист, как показано на рисунке. Сделайте две такие структуры так, чтобы светодиод и фотодиод плотно сесть в него. Соедините их вместе клеем и покрасьте в черный цвет.
  • 3. Вставить светодиод и фотодиод.
  • 4. Склеить их с помощью суперклея и припаять провода.

Номиналы резисторов могут различаться в зависимости от того, какой фотодиод вы используете. Потенциометр помогает уменьшить или увеличить чувствительность датчика. Припаяйте провода датчика как показано на рисунке.

Схема тахометра использует 8-разрядный регистр сдвига 74HC595 с LCD дисплеем 16х2. Сделайте в корпусе небольшое отверстие, чтобы зафиксировать LED индикатор.

Припаяйте 270-омный резистор на светодиод и вставьте в контакт 12 Arduino. Датчик введён в кубическую трубку, чтобы дать дополнительную механическую прочность.

Всё, устройство готово для калибровки и программирования. Скачать программу вы можете по этой ссылке .

Видео работы самодельного тахометра