Страница 1 из 1

LED-спидометр+топливо или тахометр+температура на Atmega8

Добавлено: Чт мар 28, 2013 19:59:19
phantom36
Может кому-то пригодится, была идея переделать штатную комбинацию ВАЗ-2110 на что-то более "заковыристое", было принято решение сделать её заново, на 2х контроллерах, один бы занимался спидометром и тахометром через прерывания и таймеры, и уровнем топлива\температурой через АЦП, второй - общаться по K-Линии с мозгами, и рассказывать всё это дело на ЖК экранчике. так как идея с шаговыми моторами провалилась в силу мёртвости тех, что были в наличии - было принято решение сделать индикаторы на светодиодах. суть работы счётчиков оборотов и спидометра таковы:

1.пускаем таймер1
2.ждём прерывания int0 через микруху 4050, которая делает из "автомобильного" сигнала TTL совместимый
3. дожидаемся прерывания, значение таймера пишем во временную переменную, в которой будет храниться время между импульсами
4. обнуляем и пускаем тймер
5. подсчитываем время между импульсами
ну и так по кругу.

почему выбран такой вариант? чтобы спидометр/тахометр был быстрым, вариант с подсчётом за 100мс, или 50мс на тетрадке выглядит терпимо, в реальности - позорно, показания обновляются редко, при резком "тапке фпол" на тахометр было противно смотреть, он опаздывал что было заметно на глаз, на холостых оборотах 50мс ждать было мало, точность - отвратительная, по этому был сделан выбор считать время между импульсами, как только есть два импульса - всё, у нас есть почти идеально точные показания...

программка написана на BASCOM AVR, чтобы в сути можно было разобраться - есть некоторые комментарии в исходнике. суть программы - посчитать время между импульсами, запилить из времени число от 0 до 37, это первая шкала до 9000об/мин с шагом в 250об/мин или до 180км/ч с шагом 5км/ч, посмотреть через АЦП сопротивление датчика температуры или датчика уровня топлива в число от 0 до 9, после этого "затолкать" эти цифры в сдвиговый регистр MBI5026 чтобы он зажёг нужные нам светодиоды.

в чём идиотизм написанной программы и платы в целом? в том, что я перепутал расположение микросхем, шкалы, делённые на 3 микросхемы заполняются "задом наперёд", по этому в программке при заполнении регистров этот косяк исполняется программно, на уровне знаний школьника :lol:

платка есть только в растре для печати при разрешении 600DPI, ибо что Ares меня послал нафиг с моими запросами :)))

видео работы этого чудища, снятое на кирзовый сапог - http://www.youtube.com/watch?v=-0OSIYQO ... e=youtu.be

что нужно для изготовления:
атмега 8 tqfp44 - мозги
3 штуки mbi 5026GD или её кореша - драйверы светодиодов\16битные сдвиговые регистры
1 штука hcf 4050 - буфер, используется как согласователь 0/12в сигналов в 0/5 TTL-совместимые
6 перемычек-резюков, плата односторонняя, без них не обошлось...
3 резистора 910Ом
кварц 8-16мгц
2 кондёра к нему, 20пФ
1 индуктивность 10-100мкГн - питание АЦП
1 кондёр 0,1мкФ - питание АЦП
1 резюк 10кОм - цепь входа АЦП
и, самое аццкое - 46 светодиодов :)))

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Пт мар 29, 2013 09:49:04
nek
ну что сказать? видео прикольное, молодца! я когда-то тоже хотел подобное замутить... потом машину поменял и все прошло:(

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Ср янв 08, 2014 11:34:06
Elektrik158
Ув. phantom36, подскажите пожалуйста имеется ли прошивка под спидометр? Потому что в архивах я увидел только тестовый прогон бегущих огней и тахометр, хотя вы вроде описываете и тахометр и спидометр.

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вс янв 19, 2014 00:34:41
phantom36
Elektrik158 писал(а):Ув. phantom36, подскажите пожалуйста имеется ли прошивка под спидометр? Потому что в архивах я увидел только тестовый прогон бегущих огней и тахометр, хотя вы вроде описываете и тахометр и спидометр.
уже нету, эта конструкция сильно эволюционировала уже. первый недочёт допущенный в схеме это напряжение питания 5В, драйверы 5026 ощутимо греются, им приходится "душить" 16 светодиодов с током 20ма с 5В до 1.8-2.2В. сделанные трудятся успешно, пока зима и машины ездят с печкой нагревая всю приборку - всё работает нормально, но лучше перевести питание на 3.5В. второе упрощение - это заменить 4050 на резисторный делитель, один хрен с него там толку, 1/8 используется... кварц выкинуть за ненадобностью, его точность тут как пианино крокодилу нужна... код я переписывал на С, делал уже чтобы тахометр/спидометр и топливомер/температурометр работали на одной меге. на днях займусь - отпилю лишнее и выложу сюда. ну и переделал там алгоритм определения нуля оборотов и датчика скорости, в бейсиковском варианте он был реализован как стрельба по муравьям из "града" :)))

вообще, гляньте продолжение темы этой конструкции у меня на драйве, может вам второй вариант больше подойдёт, что будет лучше - тем и поделюсь... http://www.drive2.ru/cars/lada/2112/211 ... l/2148998/

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вс янв 19, 2014 03:00:05
Elektrik158
Проектик конечно интересный, но в моем случае очень избыточный. Я первую версию себе на праздниках собирал. Планирую вкорячить его на мотоцикл, в штатный спидометр. для чего плата была уменьшена до диаметра 71мм и дополнительно установлены светодиоды подсветки цифр (то что вы сделали во второй версии отдельной платкой), пришлось очень понапрягаться чтобы это все туда разместить в уменьшенные габариты. Посему если вдруг где-то в недрах носителей отыщутся исходники спидометра первой версии, буду очень благодарен.
А как у вас во второй версии измеряется и отображается скорость? Atmega644 производит замеры и расчеты, а платы первой версии являются лишь ее индикаторами? И да вы правы схемка в Протее - вырвиглазная :)) , хотелось бы увидеть более удобочитаемый вариант

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вс янв 19, 2014 08:57:00
phantom36
Elektrik158 писал(а):Проектик конечно интересный, но в моем случае очень избыточный. Я первую версию себе на праздниках собирал. Планирую вкорячить его на мотоцикл, в штатный спидометр. для чего плата была уменьшена до диаметра 71мм и дополнительно установлены светодиоды подсветки цифр (то что вы сделали во второй версии отдельной платкой), пришлось очень понапрягаться чтобы это все туда разместить в уменьшенные габариты. Посему если вдруг где-то в недрах носителей отыщутся исходники спидометра первой версии, буду очень благодарен.
А как у вас во второй версии измеряется и отображается скорость? Atmega644 производит замеры и расчеты, а платы первой версии являются лишь ее индикаторами? И да вы правы схемка в Протее - вырвиглазная :)) , хотелось бы увидеть более удобочитаемый вариант
да вот из-за нехватки прерываний как раз там платки только индикаторы, Atmega8 считает обороты, скорость, топливо и температуру, выталкивает в регистры показания, и по UART шлёт что насчитала в Atmega644, 644я занимается связью с K-Line, индикацией дверей, графикой, часами/календарём и подсчётом статистики... во второй версии удалось всё это наконец втолкать в одну Atmega1280 и всю работу и управление ШИМами подсветок, но драйверы пришлось заменить на MBI5039, 5026 не могут адекватно регулировать яркость светодиодов по OE, тупят сильно...

щас из китая приедут STM32F103C8T6, будет реинкарнация с цветным дисплеем 320х240, сбудется моя мечта идиота :beer:

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вс янв 19, 2014 09:48:06
Elektrik158
Можете выложить здесь проект в Протеусе, хочется порассматривать соединения и элементы.

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вс мар 02, 2014 05:19:52
777Pelmen777
Доброго времени суток!
Уважаемый, а можно ли как-то минимизировать схему и печатку и оставить только тахометр?
Просто хочу тахометр влепить в часы, которые расположены непосредственно в приборке на вольво 340.
Если есть такая возможность, то я Вас попрошу это сделать и выложить минималистичный вариант.
Заранее благодарен.

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Пн мар 03, 2014 09:12:57
Elektrik158
Каков диаметр ваших часов? я себе уменьшал плату на 10мм от исходной, теснее фактически некуда, правда у меня по внутреннему радиусу шкалы стоит еще один ряд светодиодов обозначающий тысячи оборотов.

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Пн мар 03, 2014 13:31:48
777Pelmen777
Спасибо большое , что ответили, я в ближайшее время постараюсь замерять и отписаться :)

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вт мар 11, 2014 12:11:38
phantom36
вот вариант с тахометром/спидометром и двумя датчиками АЦП температура/топливо. 4050 можно выкинуть по подобии схемы Вазовской комбинации VDO, если надо - схему выложу. схему лучше переделать под МК с четырьмя таймерами, чтобы была возможность регулировки яркости ШИМом на драйверах светодиодов. сделать тупо три варианта скважности и перебор одной кнопкой. очень советую. прошивка кривочитаемая адекватным человеком, делалась как макет для переписки потом на avrstudio C, по идиотским кускам - спрашивайте, раз интерес появился - буду регулярно проверять темку. чтобы из прошивки исключить сложную часть "переворота массивов" нужно пользовать smd светики, тогда не надо будет "отражать" шкалы. драйверы tlc5925 на схеме в протее нога в ногу совместимы с MBI5026GD и MBI5039GF (эти можно рулить по яркости через шим, у них по даташиту тайминги уже позволяют сравнительно низкочастотный шим прикрутить.). если есть интерес по изменению прошивки или схемки - пишите. будет свободное время - буду заниматься. просто раньше никто не проявлял интереса.

по прошивке:

алгоритм

запуск.
шкалы постепенно заполняются до максимума, потом шкалы спидометра/тахометра спускаются в 0, шкалы АЦП спускаются до считаных значений топлива и температуры.

основной цикл:
тики константы времени делятся на тики, получаем частоту.
данные заталкиваются в регистры
ждём 100мс
читаем ацп
повторяем

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

если делать ЛУТом - проще светодиоды рисовать в кореле или фотошопе, в изисе нету возможности задавать сотые градуса поворота светодиодов...

Re: LED-спидометр+топливо или тахометр+температура на Atmega

Добавлено: Вт май 26, 2015 07:51:21
serg1968-09
phantom36 Добрый день.У вас есть какие нибудь продвижения по этой теме? Или же все осталось без изменений.Тема у вас интересная,вот только схемку почитабельней бы,если вас не затруднит,да и если тема еще актуальна.