Цифровой тахометр для скутера своими руками
Добрый день.
Выношу на Ваше рассмотрение схему простенького цифрового тахометра на AVR ATtiny2313, КР514ИД2, и оптопаре спроектированного мною.
Сразу оговорюсь: аналогичных схем в интернете много. У каждой реализации свои плюсы и минусы. Возможно, кому-то мой вариант подойдет больше.
Начну, пожалуй, с тех. задания.
Задача: нужно сделать цифровой тахометр для контроля оборотов электрического двигателя станка.
Вводные условия: Есть готовый реперный диск на 20 отверстий от лазерного принтера. В наличии много оптопар от сломанных принтеров. Средние (рабочие) обороты 4 000-5 000 оборотов/минуту. Погрешность отображаемых результатов не должна превышать ± 100 оборотов.
Ограничение: питание для блока управление составляет 36В (тахометр будет установлен в один корпус с блоком управления – об этом ниже).
Маленькое лирическое отступление. Это станок моего друга. На станке установлен электромотор PIK-8, обороты которого контролируются согласно найденной в интернете и модифицированной схеме. По просьбе друга и был разработан простенький тахометр для станка.
Изначально в схеме планировалось применить ATMega16, но рассмотрев условия, решено было ограничиться ATtiny2313, работающего от внутреннего (RC) генератора на частоте 4 Мгц.
Общая схема выглядит следующим образом:
При необходимости внесения изменений в прошивку тахометра на плате предусмотрен разъем ISP.
На схеме подтягивающий резистор R12, номиналом 30 кОм, подобран опытным путём для конкретной оптопары. Как показывает практика – для разных оптопар он может отличаться, но среднее значение в 30 кОм должно обеспечить устойчивую работу для большинства принтерных оптопар. Согласно документации к ATtiny2313, величина внутреннего подтягивающего резистора составляет от 20 до 50 кОм в зависимости от реализации конкретной партии микроконтроллеров, (стр. 177 паспорта к ATtiny2313), что не совсем подходит. Если кто захочет повторить схему, может для начала включать внутренний подтягивающий резистор, возможно у Вас, для Вашей оптопары и вашего МК работать будет. У меня, для моего набора не заработало.
Так выглядит типичная оптопара от принтера.
Светодиод оптопары запитан через ограничивающий резистор на 1К, который я разместил непосредственно на плате с оптопарой.
Для фильтрации пульсаций напряжения на схеме два конденсатора, электролитический на 220 мкФ х 25В (что было под рукой) и керамический на 0,1 мкФ, (общая схема включения микроконтроллера взята из паспорта ATtiny2313).
Для защиты от пыли и грязи плата тахометра покрыта толстым слоем автомобильного лака.
Замена компонентов.
Можно применить любой светодиодный индикатор на четыре цифры, либо два сдвоенных, либо четыре поодиночных. На худой конец, собрать индикатор на отдельных светодиодах.
Вместо КР514ИД2 можно применить КР514ИД1 (которая содержит внутри токоограничивающие резисторы), либо 564ИД5, К155ПП5, К155ИД9 (при параллельном соединении между собой ножек одного сегмента), или любой другой преобразователь двоичного в семисегментный (при соответствующих изменениях подключения выводов микросхем).
Транзисторы VT1-VT4 – любые слаботочные, работающие в режиме ключа.
Принцип работы основан на подсчете количества импульсов полученных от оптопары за одну секунду и пересчет их для отображения количества оборотов в минуту. Для этого использован внутренний счетчик Timer/Counter1 работающий в режиме подсчета импульсов поступающих на вход Т1 (вывод PD5 ножка 9 МК). Для обеспечения стабильности работы, включен режим программного подавления дребезга. Отсчет секунд выполняет Timer/Counter0 плюс одна переменная.
Расчет оборотов, на чем хотелось бы остановиться, происходит по следующей формуле:
M = (N / 20) *60,
где M – расчетные обороты в минуту (60 секунд), N – количество импульсов от оптопары за одну секунду, 20 – число отверстий в реперном диске.
Итого, упростив формулу получаем:
M = N*3.
Но! В микроконтроллере ATtiny2313 отсутствует функция аппаратного умножения. Поэтому, было применено суммирование со смещением.
Для тех, кто не знает суть метода:
Число 3 можно разложить как
3 = 2+1 = 2 1 + 2 0 .
Если мы возьмем наше число N сдвинем его влево на 1 байт и приплюсуем еще одно N сдвинутое влево на 0 байт – получим наше число N умноженное на 3.
В прошивке код на AVR ASM для двухбайтной операции умножения выглядит следующим образом:
Mul2bytes3:
CLR LoCalcByte //очищаем рабочие регистры
CLR HiCalcByte
mov LoCalcByte,LoInByte //грузим значения полученные из Timer/Counter1
mov HiCalcByte,HiInByte
CLC //чистим быт переноса
ROL LoCalcByte //сдвигаем через бит переноса
ROL HiCalcByte
CLC
ADD LoCalcByte,LoInByte //суммируем с учетом бита переноса
ADC HiCalcByte,HiInByte
ret
Проверка работоспособности и замер точности проводился следующим образом. К вентилятору компьютерного куллера был приклеен картонный диск с двадцатью отверстиями. Обороты куллера мониторились через BIOS материнской платы и сравнивались с показателями тахометра. Отклонение составило порядка 20 оборотов на частоте 3200 оборотов/минуту, что составляет 0,6%.
Вполне возможно, что реальное расхождение составляет меньше 20 оборотов, т.к. измерения материнской платы округляются в пределах 5 оборотов (по личным наблюдениям для одной конкретной платы).
Верхний предел измерения 9 999 оборотов в минуту. Нижний предел измерения, теоретически от ±10 оборотов, но на практике не замерялся (один импульс от оптопары в секунду дает 3 оборота в минуту, что, учитывая погрешность, теоретически должно правильно измерять скорость от 4 оборотов в минуту и выше, но на практике данный показатель необходимо завысить как минимум вдвое).
Отдельно остановлюсь на вопросе питания.
Вся схема питается от источника 5В, расчетное потребление всего устройства не превышает 300 мА. Но, по условиям ТЗ, тахометр конструктивно должен находится внутри блока управления оборотами двигателя, а к блоку от ЛАТРа поступает постоянное напряжение 36В., чтобы не тянуть отдельный провод питания, внутри блока установлена LM317 в паспортном включении, в режиме понижения питания до 5В (с ограничивающим резистором и стабилитроном для защиты от случайного перенапряжения). Логичнее было бы использовать ШИМ-контроллер в режиме step-down конвертера, на подобии МС34063, но у нас в городе купить такие вещи проблематично, поэтому, применяли то, что смогли найти.
Фотографии платы тахометра и готового устройства.
К сожалению, сейчас нет возможности сфотографировать на станке.
После компоновки плат и первой пробной сборки, коробка с устройством отправилась на покраску.
В случае, если у Вас тахометр не заработал сразу после включения, при заведомо верном монтаже:
1) Проверить работу микроконтроллера, убедится, что он работает от внутреннего генератора. Если схема собранна правильно – на циферблате должно отображаться четыре нуля.
2) Проверить уровень импульсов от оптопары, при необходимости подобрать номинал резистора R12 или заменить схему подключения оптопары. Возможен вариант обратного подключения оптотранзистора с подтяжкой к минусу, с включенным или нет внутренним подтягивающим резистором МК. Также возможно применить транзистор в ключевом (инвертирующем) режиме работы.
P.S. по желанию заказчика тахометр отображает не один ноль, а четыре при отсутствии импульсов от оптопары.
P.P.S. Тахометр оказался очень чувствителен к перепадам оборотов двигателя. Незначительные пульсации напряжения вызывают отклонение частоты вращения, что незамедлительно отображается на экране тахометра. В будущем планирую сделать обработку для округления отображаемых результатов в пределах ±50 оборотов, если это будет нужно заказчику.
Предлагаю вариант тахометра на AVR микроконтроллере с большими цифрами на символьном дисплее. Цифры выстраиваются из отдельных сегментов на всю высоту дисплея, что делает показания прибора более читабельными. Рассчитывался на диапазон измерения от 300 до 9999 оборотов в минуту. Но получилось так, что при более высоких (от 10000) об/мин, младший разряд сдвигается за пределы экрана и прибор показывает количество оборотов в минуту, делённое на 10, что тоже неплохо.
Схема построена на микроконтроллере ATmega8. Для вывода показаний тахометра используется распространённый дисплей WH1602 на базе контроллера HD44780 (KS0066).
Для более точного подсчета частоты вращения коленчатого вала, микроконтроллер тактируется от внешнего кварцевого резонатора на 8 MHz. Фьюзы выставляются соответствующие:
Если высокая точность измерения не сильно важна, то можно обойтись без внешнего кварца, при этом фьюзы нужно будет выставить на тактирование от внутреннего RC генератора на 8 МГц. Так как печатная плата разведена для МК в корпусе TQFP-32, на ней, для удобства, предусмотрен ISP разъём для внутрисхемного программирования. В прикрепленном архиве находятся несколько прошивок с различными временными интервалами обновления показаний тахометра на дисплее: 50, 100, 150, 200, 250, 333 и 500 мс (период указан в имени файла прошивки), а также для сигналов входа 1 импульс на оборот и 2 импульса на оборот. Также в архиве находятся файл печатной платы и проект Proteus. После сборки схемы и прошивки микроконтроллера получается такое вот устройство:
На видео показана работа тахометра с прошивкой 1 импульс на оборот и периодом обновления показаний дисплея 50 мс
Автор: Евгений Живоглядов.
Дата публикации: 01 декабря 2017 .
Категория: Мототехника.
Назначение и принцип действия тахометра
Тахометр – это устройство, которое измеряет количество оборотов двигателя мотоцикла за одну минуту и отображает эту информацию на приборной панели (в удобно читаемом виде). Показания этого прибора необходимы мотоциклисту (особенно начинающему) для:
- своевременного переключения скорости на коробке передач: как только обороты двигателя увеличиваются до определенного значения, необходимо переключаться на повышенную передачу и наоборот;
- предотвращения эксплуатации силового агрегата мотоцикла на предельных режимах (об этом сигнализирует красный сектор тахометра);
- экономии топлива в том случае, если работа двигателя осуществляется на оптимальных оборотах (наиболее соответствующих включенной передаче, нагрузке на мотоцикл и дорожным условиям).
Модели, производители и цены
Модельный ряд тахометров, предназначенных для установки на мотоциклах, мопедах и скутерах, весьма разнообразен как по цене, дизайну, исполнению (со стрелкой или цифровым дисплеем), так и по количеству производителей, изготавливающих продукцию данного назначения.
Установка и подключение
Монтаж тахометров, дополнительно устанавливаемых на мотоцикл, довольно прост. Кронштейн, закрепленный на корпусе изделия, позволяет легко установить прибор на один из болтов крепления руля к вилке.
Установить изделия на руль в наиболее удобном для обзора месте позволит применение специальной крепежной муфты для установки дополнительного оборудования. Ее можно без труда приобрести за 200÷300 рублей в любом магазине аксессуаров для мотоциклов. Некоторые модели тахометров имеют такие крепежные приспособления уже в комплекте поставки.
Некоторые производители в составе с самим измерительным прибором поставляют полный набор самых различных крепежных элементов и проводов для подключения.
Важно! Провода подключения тахометров американских и европейских производителей имеют другую расцветку. Но в отличие от китайских поставщиков в комплекте обязательно присутствует схема подключения устройства.
Самостоятельное изготовление тахометра
Наиболее распространенный вариант изготовления тахометра на мотоцикл своими руками – использование в качестве основы для самодельного измерительного устройства штатного прибора ТХ-193-38130 от автомобиля ВАЗ-2106 (или ВАЗ-2103, или Нива-2121).
- Аккуратно разбираем автомобильный тахометр ТХ-193.
- Конденсатор (емкостью 0,22 мкФ), установленный в цепи амперметра, выпаиваем и устанавливаем новый (емкостью 0,47 мкФ). В противном случае показания прибора будут занижены в 2 раза.
- Собираем устройство в обратной последовательности.
- Из металлической банки (например, из-под кофе) подходящего диаметра изготавливаем корпус.
- Крепим изготовленное устройство в наиболее удобном месте (например, рядом со спидометром).
- Подключаем прибор к электрической цепи мотоцикла (схема аналогична описанной выше).
- Заводим мотоцикл и проверяем самодельный тахометр в работе.
Каждое последующее нажатие кнопки переключает режим работы тахометра на следующий. Всего их девять: 0.5, 1, 2, 3, 4, 5, 6, 7, 8 имп./оборот соответственно, они устанавливают количество импульсов выдаваемых датчиком за один оборот маховика. Чем выше количество импульсов, тем точнее производится измерение.
Стоит обратить внимание на параметры и устройство входной цепи. Для конкретного типа зажигания возможны некоторые корректировки номиналов, из-за разных устройств зажигания в различных видах авто. Это необходимо, чтобы тахометр хорошо работал с основными гармониками и не реагировал на высшие гармоники. Без такой корректировки точная работа тахометра невозможна.
Обновленная версия прошивки включает в себя функцию проверки индикаторов. Это необходимо для проведения двухсекундного теста выявления неисправности датчиков.
Прикрепленные файлы:
Автор: Вадим Корнелюк. Москва.
Существует очень простой способ защиты автомобильного АКБ от переполюсовки. Если аккумулятор неправильно подключить к
Аудиосистема должна быть в любой машине. Пусть это будут два простеньких предустановленных динамика, идущих
Зачастую радиолюбители, которые желают изготовить импульсный трансформатор, не доводят до конца свое воплощение. Либо
Жаль, что исходников нету в этом архиве((
Есть))
Файлы в формате .lay – есть печатная плата. – а /hex – прошивка.
Если надо что-то еще – сообщите
исходник прошивки контроллера)
Пожалуйста скиньте файл в Splan
можете пожалуйста скинуть схему в Splan. Заранее спасибо.
К сожалению нет схемы в Splan.
все равно спасибо. а как программа работает?
Надеюсь, не нужно объяснять работу самого тахометра, а в частности микропроцессоров PIC16F серии 62X. Всегда можно посмотреть даташит на эту микросхему (pic16f628a datasheet). Могу кратко сказать, что микроконтроллер по данной схеме работает в режиме многократного сброса с последующим отсчетом по встроенному таймеру.
Вас интересует работа в sPlan, хотя лично в этом планировщике не работал, но судя по интерфейсу в нем нет ничего сложного: перемещай готовые элементы с левой колонки на белый лист и соединяй их линиями-проводниками.
это то я все знаю) сам тахометр подключается к реле? и автоматически начинает считывать?
Электронному тахометру нужен сигнал низкого потенциала, чтобы открыть транзистор BT547 обратной проводимости. Обычно, замыкание на массу никто не использует. Подключают непосредственно к бесконтактному датчику Хола или к клемме катушки зажигания, соединенной с коммутатором зажигания. Не знаете точно к какой клемме подключать, проверьте экспериментально: на одной будет работать, на другой нет.
Здравствуйте .
Что то я не очень хорошо понял , из ваших слов следует что без разницы куда подключать , к датчику Холла или на клемму катушки зажигания , но датчик Холла выдаёт один импульс на оборот двигателя , а катушка два ??
Стандартно эти тахометры я подключаю к катушке или коммутатору. Ведь все равно он настраиваемый?.
Эт я сам немного недопонял смысл настройки .
Прошивку скачать не удаётся , ссылка что ли не рабочая ??
Ссылку исправил, Спасибо, что нашли баг.
Скачал прошивку , спасибо , буду пробовать собирать , потом отпишусь что получилось .
Конечно, отпишитесь. размещу ваши фотки на сайте. Может кто, и закажет Вам девайс
и еще, устройства?
и еще, есть фото устройства?
Работа тахометра
Цены не было бы, если бы еще добавить режим измерения напряжения бортовой сети и кнопку переключения между тахометром и напряжением…
Может можно доработать схему и прошивку?
Отличная идея. Надо подумать.
Спасибо за мысль.
В архиве несколько прошивок,так какую из них зашивать?
Есть папка “Исправленная прошивка” – можете его использовать.
день добрый всем, а случайно прошивки под общий катод нет у кого?
а для дизеля подходит? там подключается к клеме генератора.
данный тахометр работает в диапазоне от 0,5 до 8 импульсов на 1 оборот вала. Если передаточные число шкива генератора кратное этим параметрам тахометр будет работать.?
Подкупает простота.
А так:
Зачем 4-е знака? И 3-х хватило бы. Тем более, что на 50-и оборотах может, врать. И на видео последний “0” везде, только в настройках, когда “0,5” выбрал. Это 4-х тактный скутер, к примеру.
Скорость обновления, не для мотоцикла или скутера. Не успеет, он за машиной не поспевает….
Конечно, можно не ставить индикатор 1 знака. Но тогда придется нарисовать, что ли, этот ноль. Как по мне, не очень информативно, когда высвечиваются обороты двигателя только с десятков оборотов в минуту, а ноль перед ними нужно додумывать. А любопытным прохожим или пассажирам, так и вовсе придется объяснять, что это тысячи оборотов, а не сотни в минуту, просто надо ноль добавлять в конце. Не нравится мне такая презентация своей самоделки, которой гордиться надо! Да и устройство без четвертого индикатора имеет незаконченный вид, как будто выгорел этот индикатор.
Собрал на ардуине ) с шкалой из 40 светодиодов, шкалой ускорителя (10 сегментов) и трехцифровым индикатором )
Как-то печатная плата в архиве не совпадает со схемой в том же архиве. Как это прикажете понимать?
Почему исчез предыдущий мой комментарий? Автор, будьте добры ответить на мой вопрос.
Здравствуйте Артем. Все комментарии проходят модерацию. Все ваши комменты опубликованы. Ничего никуда не пропало.
Спасибо за ответ и проявленное внимание, но… Конденсатор который Вы на печатке отметили цифрой “2”, после сопротивления в 62к на схеме отсутствует. Какой его номинал? На схеме, которая идет в архиве с печаткой его нет.
Читайте также: