Как сделать тахометр своими руками?

Мастер-класс по изготовлению цифрового и аналогового самодельного тахометра

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

Самодельное устройство на микроконтроллере

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

  • сама микроплата, в данном случае будет использоваться схема Arduino;
  • резисторы;
  • чтобы сделать светодиодный тахометр, потребуется LED-элемент;
  • инфракрасный а также фото диоды;
  • дисплей, в нашем случае это LCD;
  • регистр сдвига 74HC595.

Схема для изготовления на микроконтроллере Arduino

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

Чтобы приступить к выполнению задачи, подготовьте все элементы и можете начинать:

  1. В первую очередь нужно обработать наждачной бумагой (мелкозернистой) светодиод и фотодиод — вам необходимо, чтобы в итоге они были плоскими.
  2. После этого полоску бумаги необходимо положить — вам необходимо сделать два подобный элемента таким образом, чтобы диоды могли быть плотно установлены в них. Обе детали в итоге необходимо соединить при помощи клея, после чего произвести их покраску в черный цвет.
  3. После этого устанавливаются сами диоды, которые впоследствии склеиваются при помощи клея, затем к ним припаиваются провода.
  4. Следует отметить, что номинальные значения резисторов могут отличаться, здесь все зависит от того, как будет использоваться фотодиод. Потенциометр позволяет снизить или повысить чувствительность контроллера в целом. Провода от контроллера необходимо припаять так, как на фото.
  5. Из схемы для изготовления автомобильного тахометра на светодиодах можно понять, что в ней применяется восьмиразрядный регистр сдвига. Также схема тахометра включает в себя LCD-экран. В корпусе следует соорудить небольшое отверстие для фиксации диодной лампочки.
  6. Далее, необходимо напаять резистор на 270 Ом к диодному элементу, после чего установить его в контакт 12. Сам контроллер вводится в кубическую трубку — это позволит обеспечить устройство дополнительной прочностью.

Простое устройство на базе микрокалькулятора

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

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

В нашем же случае контакты нужно попросту параллельно припаять к клавише сложения калькулятора.

Когда нужно произвести измерение скорости вращения оборотов, замер делается по следующей схеме:

  1. Сначала сам калькулятор нужно включить.
  2. После этого одновременно нажимаются кнопки «+» и «1».
  3. После этого девайс запускается и на нем производится сам замер. Для этого сначала одновременно с калькулятором необходимо включить и секундомер.
  4. Посчитайте, пока не пройдет тридцать секунд, а затем обратите внимание на дисплей — на нем должно быть выведено соответствующее значение.
  5. Полученное значение — это количество оборотов, которое коленвал произвел за полминуты. Если этот показатель вы удвоите, то получите число оборотов в минуту.

Аналоговые и цифровые тахометры

Аналоговый тахометр на дизель или бензиновый мотор предназначены для преобразования электронного импульса и выдачи его на девайс индикации. Что касается цифровых устройств, то он преобразовывают аналоговый импульс в определенную последовательность единиц и нулей, которые, в свою очередь, распознаются контроллерами (автор видео — Александр Jung).

Аналоговые варианты состоят из таких компонентов:

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

Что касается цифровых устройств, то их предназначение такое же, однако в основе конструкции цифрового гаджета лежат другие компоненты:

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

Видео «Как соорудить тахометр из компьютерной мыши?»

Как сделать устройство на основе платы от старой компьютерной мыши — смотрите на видео (автор — канал VirF Live Productions).


Самодельный тахометр для автомобиля

Некоторые автолюбители так привыкают к тахометру, что при замене авто, в котором нет тахометра, чувствуют себя очень неуютно. Тахометр помогает правильно отрегулировать двигатель, уменьшить расход бензина, увеличить общий ресурс двигателя и приучится правильно водить автомобиль. Существуют готовые покупные тахометры, но цена обычно довольно высока. Есть сложные и простые схемы автомобильных тахометров, по которым тахометр можно сделать самому. Предлагаю простые схемы тахометров.

Первый вариант простого тахометра.

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

Основой схемы этого тахометра является одновибратор (DA1), запуск которого производят импульсы от работающей системы зажигания автомобиля, наведенные в катушке L1. Входная клемма Х1 может использоваться для настройки тахометра или же для подачи сигнала с прерывателя, как это показано пунктиром. Для четырехцилиндрового 4-тактного двигателя, имеющего 3000 об/мин, частота прерывания составит 100 Гц, а для 1500 об/мин — 50 Гц, что позволяет просто калибровать прибор по частоте сети.

Импульсы с выхода 3 микросхемы DA1 поступают на стрелочный индикатор — миллиамперметр РА1, который их интегрирует и показывает действующее напряжение в цепи. Атак как длительность у всех импульсов на выходе одновибратора одинаковая, напряжение, которое покажет прибор, будет пропорционально частоте образования искр. Шкалу РА1 можно проградуировать в частоте вращения вала (обороты в минуту). В качестве датчика (катушки L1) можно использовать магнитную головку от магнитофона, расположенную вблизи от высоковольтной катушки, или же потребуется сделать намотку на проводе, идущем от катушки зажигания к распределителю (укрепляется изоляционной лентой). Для защиты входа микросхемы от высоковольтных выбросов напряжения в качестве VD2 лучше использовать TVS-диод на напряжение ограничения 12 В. В качестве индикатора также можно использовать магнитофонный индикатор уровня сигнала или любой аналогичный прибор.

Следующая схема простого автомобильного тахометра.
Для изготовления тахометра понадобится опять таки крупный индикатор уровня записи от магнитофона (м476З). Заметьте, данная схема очень простая, это вроде выпрямителя-интегратора импульсов, которые поступают от прерывателя системы зажигания автомобиля. Обратите внимание, что высшая отметка шкалы составляет 6000 оборотов в минуту.


Импульсное напряжение, поступающее на конденсатор С1 через развязывающий резистор R1, устраняет выбросы напряжения на спаде и фронте. После чего идёт параметрический стабилизатор на R2 VD1, он ограничивает амплитуду данных импульсов. В дифференцирующую цепь входит конденсатор C2. Данная цепь является преобразователем переменного напряжения, имеющего прямоугольную форму в короткие импульсы. В итоге параметры данных импульсов не влияют на амплитуду и длительность входных импульсов, поэтому при изменении частоты вращения меняется только их частота. Конденсатор C2 заряжается с помощью выпрямительного моста, а разряжается с помощью резисторов R1 и R2. Некоторая часть разрядного и зарядного токов конденсатора C2 протекает сквозь измерительный прибор, в результате чего происходит отклонение стрелки. Благодаря инерционности механизма работа выполняется непрерывно.
Этот тахометр можно разместить в любом удобном месте приборной панели автомобиля. Советуем вам воспользоваться индикатором с подсветкой, либо же установите в его корпус небольшую лампочку, что очень положительно скажется на восприятие показаний в темное время суток.
Чтобы наладить прибор понадобится другой автомобильный тахометр. С его помощью Вы сможете отградуировать изготовленный самодельный автомобильный тахометр. Если у Вас нет в наличии другого тахометра, можете воспользоваться генератором прямоугольных импульсов с изменяемой частотой была в пределах 25 – 200 Гц, и амплитудой 15 – 20 В.

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


Основой схемы является формирователь одиночных импульсов, собранный на микросхеме CD4007 (отечественный аналог – К176ЛП1). Формирователь запускается положительными импульсами, возникающими в момент размыкания контактов прерывателя. Индикатор РА1, подключенный к выходу формирователя через ограничивающий резистор R5, измеряет напряжение на измерительном конденсаторе С1, которое пропорционально частоте входных импульсов с точностью не хуже 1. 2% – Частота следования импульсов в 30 раз меньше частоты вращения коленчатого вала четырехтактного двигателя.

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

Будет полезно:  Галогенки на авто какие лучше?

Принцип действия прибора. В исходном состоянии транзистор VT1 закрыт, а VT2 открыт. В это время левая (по схеме) обкладка конденсатора С 5 соединена через небольшое сопротивление открытого транзистора VT2 с шиной +5 В. Ток в это время через микроамперметр РА1 не идет. При первом отрицательном полупериоде переменного напряжения, поданного на вход тахометра, транзистор VT1 открывается, а VT2 закрывается. В это время С5 быстро заряжается через микроамперметр РА1, VD3 и R5.
При положительном полупериоде входного напряжения VT1 закрывается, а VT2 открывается. Теперь С5 разряжается через малое сопротивление открытого VT2 и VD4. При следующем отрицательном полупериоде процесс повторяется аналогично.
Подстроечным резистором R6 устанавливается верхняя граница частоты измеряемого сигнала. Номинал конденсатора С5 подбирается в зависимости от типа двигателя. Чем выше частота оборотов двигателя, тем меньше должна быть емкость конденсатора С5. Правильно собранная схема тахометра наладки не требует. Надо только подстроечным резистором R6 установить максимальные показания тахометра, открыв дроссельную заслонку двигателя до конца.

Схема подключения тахометра к электрооборудованию мотоцикла или мопеда.


Если используется контактное зажигание, вход самодельного тахометра подключается к точке А. Для бесконтактного зажигания – подключаем к точке Б.

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

Автомобильный тахометр — это измерительный прибор, который предназначен для измерения количества оборотов коленчатого вала двигателя в минуту (об/мин). Раньше в автомобили устанавливались механические тахометры. В современных автомобилях устанавливаются электрические или электронные тахометры.

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

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

При изготовлении стробоскопа своими руками я вмонтировал, тахометр в его корпус. При проверке и настройке УОЗ двигателя такое техническое решение показало удобство в работе.

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

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

Электрическая принципиальная схема

Представленная схема тахометра отличается простотой и доступностью деталей для повторения благодаря применению интегрального таймера – микросхемы КР1006ВИ1 (аналог NE555).

Схема состоит следующих функциональных узлов. Формирователя импульсов, выполненного на VT1-VT2, широтно-импульсного модулятора на микросхеме DA1 типа КР1006ВИ1 и резисторного моста на резисторах R8-R13. Для снятия показаний применен электродинамический стрелочный микроамперметр. К недостаткам схемы тахометра можно отнести необходимость балансировки моста для каждого типа миллиамперметра при повторении схемы. Но это не сложная операция.

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

Принцип работы

При поступлении импульсов от прерывателя или катушки индуктивности, используемой в стробоскопе, конденсатор С1 через диод VD1 и резистор R1-R2 перезаряжается, создавая на базе транзистора VT1 импульсы, открывая его. В результате на коллекторе транзистора, включенного в ключевом режиме, образуются короткие положительные импульсы, длительность которых определяется емкостью конденсатора С1. VT2 служит для инвертирования импульсов, перед подачей на вход DA1. Форма импульсов приведена на электрической схеме тахометра с правой стороны, верхняя осциллограмма. На фото ниже структурная схема КР1006ВИ1.

Интегральный таймер КР1006ВИ1 включен по типовой схеме формирователя импульсов. По положительному фронту импульсов, поступающих на вход 2, микросхема формирует на выходе 3 положительные импульсы с шириной, линейно изменяющейся в зависимости от частоты поступающих на вход. Частота выше, импульсы шире. Исходная ширина импульсов зависит от постоянной времени R6, R7 и C3.

Выходящие с вывода 3 микросхемы DA1 импульсы поступают на левое плечо моста тахометра, которое образуют резисторы R8-R9 и R11. На правое плече моста тахометра, которое образуют резисторы R10 и R12, R13 поступает постоянное опорное напряжение +9В с интегрального стабилизатора напряжения К142ЕН8А. Конденсатор С4 исключает дергание стрелки тахометра при измерении низких оборотов двигателя. Стабилизатор также обеспечивает питание всех активных элементов тахометра. В диагональ моста включен микроамперметр.

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

Микросхемы стабилизаторов серии К142ЕН обеспечивают стабильное выходное напряжение в широком диапазоне температуры, чем и обусловлено применение микросхемы К142ЕН8А в тахометре. Конденсаторы С2, С5 и С6 установлены для сглаживания пульсаций питающего напряжения.

Конструкция и детали

Так как схема простая, то печатную плату я не разрабатывал. Монтаж всех деталей, кроме миллиамперметра, выполнил на универсальной макетной плате размером 30 мм×50 мм. На фотографии видно как размещены элементы схемы.

Для подвода питающего напряжения и входного сигнала применен трехконтактный разъем. Шкала миллиамперметра напечатана на принтере и приклеена сверху на его штатную шкалу.

Плата с деталями закреплена в крышке корпуса стробоскопа на винтах. Миллиамперметр установлен в вырезанном в крышке корпуса прямоугольном окне и закреплен с помощью силикона.

Такая конструкция размещения тахометра обеспечивает удобство доступа к плате стробоскопа, достаточно снять крышку, отсоединить разъем.

Настройка тахометра

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

Таблица перевода оборотов вращения двигателя в частоту
Обороты двигателя, оборотов в минуту 700 800 900 1000 1100 1200 1500 2000 2500 3000 3500 4000 4500 5000 6000
Частота генератора, Гц 12 13 15 17 18 20 25 33 42 50 58 67 75 83 100
Частота генератора, 2×Гц 24 26 30 34 36 40 50 66 84 100 116 134 150 166 200

Так как в автомобилях обычно за один оборот вала двигателя датчик выдает два импульса, то при калибровке тахометра нужно устанавливать частоту на генераторе в два раза больше. Например, при калибровке точки шкалы 800 нужно будет подать на вход тахометра импульсы частотой не 13 Гц, а 26 Гц. Ряд частот для такого случая приведен в нижней строке таблицы.

Для того, чтобы не испытывать трудностей при калибровке шкал тахометра нужно знать принцип работы мостовой схемы. Перед Вами принципиальная схема моста постоянного тока. При равенстве соотношений величин резисторов R1/R2 и R3/R4 напряжения в точках диагонали моста A и B равны, и ток через mA не протекает, стрелка стоит на нуле.

Если, например, уменьшить величину резистора R1, то напряжение в точке А увеличится, а в точке В останется прежним. Через миллиамперметр, находящийся в диагонали моста потечет ток и стрелка отклонится. То есть при постоянном напряжении в точке В и изменении напряжения в точке А стрелка прибора будет двигаться относительно шкалы.

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

Номиналы резисторов на схеме указаны при сопротивлении рамки миллиамперметра 1,2 кОм. Если использовать прибор, имеющий другое сопротивление рамки, то придется подбирать номинал резисторов R8, R9 и R12, R13, временно заменив их переменными. После калибровки прибора, измеряется сопротивление переменных резисторов, и они заменяется постоянными.

Переключатель S1 можно не устанавливать и настроить прибор для измерения в требуемом диапазоне по одной шкале. В таком случае точность измерений снизится в два раза. При растянутой шкале прибора такой точности тоже будет достаточно.

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

Автомобильный стрелочный тахометр для новичка или немного шаманства с фиксированной точкой на AVR

Всем привет! Хотелось бы поделиться с сообществом своей историей модернизации тахометра ТХ-193

Неделю назад обратился ко мне один человек с довольно нестандартным заданием — нужно было обеспечить работу древнего тахометра ТХ-193(ВАЗ 2106) с современным двигателем ВАЗ21126(Приора), имеющем систему зажигания с индивидуальными катушками на каждый цилиндр, а значит просто подключить ТХ-193 к катушке зажигания уже не получится. К тому-же заказчик хотел повысить эксплуатационные качества прибора, оставив не тронутым его внешний вид и дизайн. В общем дело кончилось тем, что я взялся выпотрошить электронную начинку прибора и разработать свою, с блэкджеком и шлюхами. Информацию о частоте вращения коленчатого вала тахометр теперь будет получать от ЭБУ Январь 7.2, для чего в последнем имеется специальный вывод.

Будет полезно:  Почему японские машины лучше?

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

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

Для разработки схемы по сути достаточно было знать о миллиамперметре лишь то, что при токе порядка 10мА стрелка отклоняется до предела, а сопротивление обмотки равно примерно 180Ом. В качестве мозга был выбрал контроллер ATtiny2313A славной фирмы Atmel, тактируемый от внешнего кварцевого резонатора на 16МГц. Питание прибора осуществляется от бортовой сети автомобиля, а значит по ГОСТу он должен выдерживать «бороду» до 100В и стабильно работать в диапазоне от 9-15В. Ввиду незначительного потребления(несколько десятков миллиампер) было принято решение использовать линейный стабилизатор 7805 с индуктивным фильтром и сапрессором для защиты от импульсных помех. Прибор собирался из того, что было под рукой, поэтому в готовом изделии применяется мощная версия 7805, хотя вполне хватило бы и 78L05 на 100мА.
Миллиамперметром контроллер управляет, естественно, используя ШИМ. Для чего был задействован 16ти разрядный таймер в режиме Phase and Frequency Correct PWM.
Информация о частоте вращения коленчатого вала передается от ЭБУ в виде импульсов от 0 — 12В. Активный уровень низкий. 2 импульса за 1 оборот коленчатого вала. Для захвата этих импульсов используется внешнее прерывание INT0 и соответствующая цепочка из RC фильтра, подтяжек и защитных диодов. В общем и целом схемотехника устройства довольно типична и я с удивлением обнаружил, что только что так много написал о ней. Но да не судите строго, первая статья всё-таки.

Собранный прибор без циферблата теперь выглядит так:

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

Начнем с общей архитектуры:
Таймер 0 тикает с частотой 250кГц, а значит период тика = 4мкс прерывание по переполнению происходит с частотой 250кГц / 256 = 0.976кГц
а значит прерывание происходит один раз в 1024мкс. Можно было заморочиться и подогнать это дело ближе к одной миллисекунде путем обновления счетчика таймера в прерывании, но в данной задаче это не к чему. Т.е. мы можем измерять время с точностью 4мкс, что вполне достаточно для заданной точности прибора.
Таймер 0 у нас не только отсчитывает время, но ещё и выставляет флажки для запуска тех или иных задач с определенной периодичностью.
Задачи у нас две. Давать отмашку прерыванию INT0 на измерение периода импульсов на входе и изменять положение стрелки.

Таймер 1 тикает с частотой 16мГц, но т.к. он 16ти битный и используется режим Phase and Frequency Correct PWM — итоговая частота ШИМ оказывается очень небольшой и составляет что-то около 122Гц. Это потому, что таймер тикает сначала вверх, а потом вниз. Зато имеем тру 16битный ШИМ и можем очень точно рулить стрелкой! В даташите найдутся все подробности.
Механика, к слову сказать, оказалась отвратительного качества, плавно двигать стрелку было не реально из-за повышенного трения в механизме, который пришлось для начала хотя-бы смазать трансмиссионным маслом. Но это уже детали.
Была составлена таблица соответствия показаний прибора с соответствующим значением регистра таймера в ШИМ попугаях.
В исходниках это дело называется GAUGE_TABLE и вынесено по привычке в отдельный файл.

Далее было обнаружено, что если просто одним махом изменить ток в цепи амперметра для того, чтобы к примеру передвинуть стрелку на 1000 вперед, то она совершит два-три-четыре колебания в районе целевой отметки, что было совершенно неприемлемо и на что заказчик обращал особое внимание. Дело в том, что эти тахометры изначально имеют такую проблему и несколько раз газанув в такт колебаниям можно заставить стрелку раскачиваться со значительной амплитудой(более половины шкалы!).
С этим нужно было что-то делать. Идея моя заключалась в том, чтобы подводить стрелку к отметке серией более мелких шагов, постепенно приближаясь к цели. Собственно говоря эта часть и является самой интересной и полезной для новичков, т.к. требует некоторой сноровки. Ведь имея дело с микроконтроллером вызов log2() в цикле является, мягко говоря, не самой удачной идеей. К тому-же 8битная архитектура накладывает ещё больше ограничений. Ну а про «плавучку» (floating point) и вовсе нужно забыть. Но все эти трудности, как всегда, приводят лишь к более глубокому пониманию процессов и расчётов, производимых процессором.

Текста почему-то получается всё больше, но не остановиться более подробно на этом моменте я просто не могу!
Итак, понятно, что нам нужна логарифмическая прогрессия. Шаг изменения тока в цепи миллиамперметра должен уменьшаться по мере приближения к целевой отметке. Ресурсы на вес золота, а значит только табличный метод. Точек тоже по возможности минимум.
Начнем с построения логарифмической таблицы.
Всё очень просто: запускаем excel и несколькими взмахами мыши получаем 50 значений логарифма по основанию 2 для последовательности от 1 до 50. Для наглядности строим красивый график.
Прекрасно! То, что нужно! Но во-первых — точек аж 50, а во вторых все числа с плавающей точкой. Это нам никак не подходит!
Поэтому отбираем из имеющегося массива 5 точек с шагом 10. Получаем что-то вроде этого:

Уже лучше. Последовательное приближение к цели всё ещё сохраняется, но точек в 10 раз меньше.
Дальше нужно нормировать полученный набор. Т.е. сделать так, чтобы все значения находились в диапазоне от 0 до 1. Для этого просто разделим каждый элемент на 5,64385618977472 (максимальное значение нашего массива).

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

Как видим, форма графика не изменилась, но цифры теперь укладываются в 16битный диапазон и нет никаких дробей.
В исходниках полученный массив называется logtable[]

Масштабирующий коэффициент(если можно его так назвать) 1024 появился здесь не случайно и нужно очень хорошо понимать почему именно 1024.
Во-первых это степень двойки и выбрана она потому, что дорогие операции деления и умножения на степень двойки можно заменить дешевым сдвигом влево/вправо и было-бы глупо не использовать такую возможность.
Во-вторых коэффициент должен выбираться и исходя из масштабов тех данных, к которым он будет применяться. В нашем случае это значения регистра 16ти разрядного таймера, который управляет заполнением ШИМа. Экспериментально было выявлено, что неудовлетворительные колебания стрелки обнаруживаются даже при её резком смещении на 200 об/мин. Т.е. если нужно двинуть стрелку на более чем

200 об/мин — потребуется сглаживание. Из таблицы GAUGE_TABLE видно, что соседние ячейки в среднем отличаются на 4000 ШИМ попугаев, что соответствует примерно 500 об/мин на шкале прибора. Не трудно прикинуть, что в цифрах смещение стрелки на 200об будет 4000 / 2,5 = 1600 ШИМ попугаев.
Следовательно масштабирующий коэффициент нужно выбрать таким образом, чтобы во-первых он был как можно бОльшим, потому что иначе мы теряем разряды и точность, а во-вторых как можно меньшим, чтобы не заставлять нас переходить от 16ти разрядных переменных к 32х разрядным и не расходовать ресурсы понапрасну. В итоге выбираем наименьшую степень двойки, которая меньше 1600 и обеспечивает достаточную точность. Это и будет 1024.
Этот момент очень важен. Я сам до сих пор порою испытываю трудности с выбором правильных коэффициентов и размеров переменных.

Ну а дальше уж пошло-поехало. Находим в коде реализацию display_rpm() и видим, что для определения конкретного значения в ШИМ попугаях используется таблица GAUGE_TABLE[] и предположение, что между соседними отметками шкала линейна. Для организации изменения тока по логарифмическому закону введен массив на 5 точек pwm_cuve[] в котором содержится набор значений, который нужно последовательно отнять или прибавить(в зависимости от направления движения стрелки) от pwm_ocr1a_cur_val чтобы заставить стрелку двигаться плавно и чётко.
каждый шаг формируется путем умножения значения pwm_delta на коэффициент из нашей таблицы logtable[];
Перед умножением значение предварительно масштабируется путем деления на 1024.
Конечный расчётный пункт назначения стрелки target_pwm записывается в pwm_cuve[] как есть, потому что из-за проблем с округлением и из-за ограничения размерности переменных 16битами точное значение в результате расчётов будет там образовываться весьма не часто, поэтому приходится обеспечить гарантию того, что стрелка окончит свой путь в заданной точке.
В общем то всё вышесказанное по сути заключено в одной строке
pwm_cuve[ table_i ] = pwm_ocr1a_cur_val + (pwm_delta / LOG_TABLE_MAX * logtable[ table_i ]);

Далее главный цикл по сигналу от таймера0 раз в PWM_UPD_PERIOD выгребает значения из pwm_cuve и присваивает их переменной pwm_ocr1a_cur_val, значение которой в прерывании будет присвоено регистру OCR1A, что немедленно приведет к изменению заполнения ШИМа и изменению тока в цепи миллиамперметра.

Вот, собственно и почти все хитрости, за исключением перевода периода, представленного в тиках таймера в частоту вращения коленчатого вала, которая измеряется в об/мин.
Сократилось всё это до engine_rpm = (uint16_t)(15000000UL / (uint32_t)rot_time);
О том как получилась эта цифра мы можем поговорить или не поговорить в следующий раз, потому что и без того текста получилось не мало и явно не многие дочитают даже до этого места.

Честно гвооря в коде применено ещё несколько «хитростей», которые могут показаться новичкам не совсем очевидными. Если кому-то захочется подробнее разобраться — вэлкам в каменты и лс.

Немного видео, как и обещал
На точность показаний не обращайте внимание, стрелка нормально не одета + циферблат не закручен.
Движение стрелки с шагом 1000об/мин одним скачком.

Будет полезно:  Как лучше хранить летнюю резину?

Плавное изменение тока

Дело ясное, что в реальности скачков в 1000об/мин не будет и те незначительные перелеты стрелки, которые всё-же можно наблюдать на видео не станут проблемой. Просто если устранить и их — то можно здорово потерять в быстродействии прибора и его показания будут отставать от реальности.

P.S. Не сказать, что в архиве совсем говнокод, но да, местами можно было сделать красивее. Да, я знаю, что магические числа это плохо и да, я мог бы лучше. С другой стороны потеряться в исходнике в 200строк довольно сложно, поэтому кое-где я позволил себе немного на халтурить.
Просто зарегаться на хабре хотелось уже давно, а написать сколько-нибудь подробную статью по прошествии времени после реализации проекта становится всё сложнее, поэтому я решил, что сегодня будут «вести с полей».
Так что реальный код с реального устройства, собранного за реальный срок в 7 вечеров, которое завтра будет установлено на славный автомобиль ВАЗ 2108 с двигателем 21126 и надеюсь будет ещё долго радовать владельца, согласившегося выложить за мои труды аж 100 вечнозеленых.
Но мы то с вами знаем, что проделал я весь этот путь не только и не столько ради денег. Ведь так приятно, когда ты создал что-то и оно даже работает!

В архиве проект Atmel studio и схема+плата в Altium designer. Изготавливалась плата методом ЛУТ.
UPD: Архив был выложен на бесплатный файлообменник и потому скоропостижно скончался. Для хранения архива на habrastorage я встроил его в фото тахометра без циферблата(оно в верхней части статьи). В общем jpg нужно сохранить себе и открыть винраром. Можно ещё просто изменить расширение на zip.
UPD2: Схема и плата переработаны, картинки обновлены, архив по прежнему в картинке.
UPD3 Архив в картинки теперь не вставляется. Пишите в ЛС тут или найдете меня vk.com/trotskyi

До новых встреч!

Проверка прибора на автомобиле

Клиент очень доволен!
А когда увидел эту статью и все исходники, включая некоторые фото самого процесса изготовления платы — сказал, что его мозг взорван!

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

Автомобильный тахометр — это измерительный прибор, который предназначен для измерения количества оборотов коленчатого вала двигателя в минуту (об/мин). Раньше в автомобили устанавливались механические тахометры. В современных автомобилях устанавливаются электрические или электронные тахометры.

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

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

При изготовлении стробоскопа своими руками я вмонтировал, тахометр в его корпус. При проверке и настройке УОЗ двигателя такое техническое решение показало удобство в работе.

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

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

Электрическая принципиальная схема

Представленная схема тахометра отличается простотой и доступностью деталей для повторения благодаря применению интегрального таймера – микросхемы КР1006ВИ1 (аналог NE555).

Схема состоит следующих функциональных узлов. Формирователя импульсов, выполненного на VT1-VT2, широтно-импульсного модулятора на микросхеме DA1 типа КР1006ВИ1 и резисторного моста на резисторах R8-R13. Для снятия показаний применен электродинамический стрелочный микроамперметр. К недостаткам схемы тахометра можно отнести необходимость балансировки моста для каждого типа миллиамперметра при повторении схемы. Но это не сложная операция.

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

Принцип работы

При поступлении импульсов от прерывателя или катушки индуктивности, используемой в стробоскопе, конденсатор С1 через диод VD1 и резистор R1-R2 перезаряжается, создавая на базе транзистора VT1 импульсы, открывая его. В результате на коллекторе транзистора, включенного в ключевом режиме, образуются короткие положительные импульсы, длительность которых определяется емкостью конденсатора С1. VT2 служит для инвертирования импульсов, перед подачей на вход DA1. Форма импульсов приведена на электрической схеме тахометра с правой стороны, верхняя осциллограмма. На фото ниже структурная схема КР1006ВИ1.

Интегральный таймер КР1006ВИ1 включен по типовой схеме формирователя импульсов. По положительному фронту импульсов, поступающих на вход 2, микросхема формирует на выходе 3 положительные импульсы с шириной, линейно изменяющейся в зависимости от частоты поступающих на вход. Частота выше, импульсы шире. Исходная ширина импульсов зависит от постоянной времени R6, R7 и C3.

Выходящие с вывода 3 микросхемы DA1 импульсы поступают на левое плечо моста тахометра, которое образуют резисторы R8-R9 и R11. На правое плече моста тахометра, которое образуют резисторы R10 и R12, R13 поступает постоянное опорное напряжение +9В с интегрального стабилизатора напряжения К142ЕН8А. Конденсатор С4 исключает дергание стрелки тахометра при измерении низких оборотов двигателя. Стабилизатор также обеспечивает питание всех активных элементов тахометра. В диагональ моста включен микроамперметр.

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

Микросхемы стабилизаторов серии К142ЕН обеспечивают стабильное выходное напряжение в широком диапазоне температуры, чем и обусловлено применение микросхемы К142ЕН8А в тахометре. Конденсаторы С2, С5 и С6 установлены для сглаживания пульсаций питающего напряжения.

Конструкция и детали

Так как схема простая, то печатную плату я не разрабатывал. Монтаж всех деталей, кроме миллиамперметра, выполнил на универсальной макетной плате размером 30 мм×50 мм. На фотографии видно как размещены элементы схемы.

Для подвода питающего напряжения и входного сигнала применен трехконтактный разъем. Шкала миллиамперметра напечатана на принтере и приклеена сверху на его штатную шкалу.

Плата с деталями закреплена в крышке корпуса стробоскопа на винтах. Миллиамперметр установлен в вырезанном в крышке корпуса прямоугольном окне и закреплен с помощью силикона.

Такая конструкция размещения тахометра обеспечивает удобство доступа к плате стробоскопа, достаточно снять крышку, отсоединить разъем.

Настройка тахометра

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

Таблица перевода оборотов вращения двигателя в частоту
Обороты двигателя, оборотов в минуту 700 800 900 1000 1100 1200 1500 2000 2500 3000 3500 4000 4500 5000 6000
Частота генератора, Гц 12 13 15 17 18 20 25 33 42 50 58 67 75 83 100
Частота генератора, 2×Гц 24 26 30 34 36 40 50 66 84 100 116 134 150 166 200

Так как в автомобилях обычно за один оборот вала двигателя датчик выдает два импульса, то при калибровке тахометра нужно устанавливать частоту на генераторе в два раза больше. Например, при калибровке точки шкалы 800 нужно будет подать на вход тахометра импульсы частотой не 13 Гц, а 26 Гц. Ряд частот для такого случая приведен в нижней строке таблицы.

Для того, чтобы не испытывать трудностей при калибровке шкал тахометра нужно знать принцип работы мостовой схемы. Перед Вами принципиальная схема моста постоянного тока. При равенстве соотношений величин резисторов R1/R2 и R3/R4 напряжения в точках диагонали моста A и B равны, и ток через mA не протекает, стрелка стоит на нуле.

Если, например, уменьшить величину резистора R1, то напряжение в точке А увеличится, а в точке В останется прежним. Через миллиамперметр, находящийся в диагонали моста потечет ток и стрелка отклонится. То есть при постоянном напряжении в точке В и изменении напряжения в точке А стрелка прибора будет двигаться относительно шкалы.

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

Номиналы резисторов на схеме указаны при сопротивлении рамки миллиамперметра 1,2 кОм. Если использовать прибор, имеющий другое сопротивление рамки, то придется подбирать номинал резисторов R8, R9 и R12, R13, временно заменив их переменными. После калибровки прибора, измеряется сопротивление переменных резисторов, и они заменяется постоянными.

Переключатель S1 можно не устанавливать и настроить прибор для измерения в требуемом диапазоне по одной шкале. В таком случае точность измерений снизится в два раза. При растянутой шкале прибора такой точности тоже будет достаточно.

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

Ссылка на основную публикацию
Adblock
detector