Хочу поделиться схемой прибора, включающего в себя функции:
- индикации текущего времени
- измерения температуры двигателя и окружающего воздуха
- измерения напряжения бортовой сети (со шкалой) 7 - 16В
- измерения частоты вращения коленчатого вала двигателя (со шкалой) 900 - 8000 об/мин
- позже была добавлена функция измерения уровня топлива 0 - 70 литров
Проект разрабатывался как дополнительное измерительное оборудование на мокик китайского производства, но может быть установлен так же и в автомобиль в качестве бортового "миникомпьютера", особенно если использовать дисплей с синей подсветкой, как на фотографии ниже - выглядит очень красиво. Так же устройство имеет дополнительные функции, такие как
- автоматическая смена яркости подсветки дисплея в зависимости от внешнего освещения
звуковые и визуальные:
- индикация включенных указателей поворота
- предупреждение о низком уровне заряда аккумулятора
- предупреждение о перегреве двигателя
настройки:
- программная калибровка вольтметра
- установка порога предупреждения о перегреве двигателя (80 - 125°C)
- установка порога предупреждения о низком уровне заряда аккумулятора (10.0 - 12.5В)
- возможность поменять показания датчиков температуры местами, т. к. используются два DS18B20 на шине 1-wire
- установка значения "импульс/оборот" для тахометра (1 - 6)
- в прошивке с измерением уровня топлива - калибровка ДУТ
Схема построена на базе микроконтроллера ATmega16(A), вывод информации осуществляется на графический дисплей LCM12864C. Можно использовать любые, разрешением 128х64 точек с контроллером KS0108/KS0107 и совместимые с ними, но при этом особое внимание следует уделить расположению выводов, так как у разных производителей оно различается.
Датчики температуры и м/с часов реального времени подключены к МК по стандартным схемам. На входы АЦП ADC0 и ADC1 поступают напряжения с делителя R1-R2 для измерения напряжения бортовой сети, и с R17-R7 для измерения уровня освещенности. Подстроечником RV1 устанавливается контраст LCD. Управление яркостью подсветки осуществляется с помощью ШИМ через транзистор Q1 - яркость имеет 2 уровня (100 и приблизительно 60%). На транзисторе Q2 собран усилитель звука. PD5 микроконтроллера через делитель R9-R6 подключается к среднему выводу переключателя указателей поворотов. Наглядно это показано на схеме мопедов китайского производства, находящейся в прикрепленном архиве. Там же показана точка подключения входа сигнала с датчика вращения коленвала. Для обработки этого сигнала применен триггер Шмитта (CD4093). Питание элементов схемы осуществляется через линейный стабилизатор напряжения 7805 (U5). Предусмотрена защита от переполюсовки на диоде Шоттки D2.
Печатная плата двухсторонняя и разведена под комплектующие в SMD исполнении. Микросхема CD4093 в DIP корпусе, впаяна поверхностным монтажом, так как не было в наличии этих м/с в SMD. Файл платы с подписанными компонентами прилагается.
Для удобства прошивки микроконтроллера в корпусе TQFP-44 предусмотрен разъем ISP для внутрисхемного программирования. Фьюзы выставляются на работу МК от внешнего кварцевого резонатора:
Дисплей и плата помещены в подходящий корпус:
Управление осуществляется всего двумя кнопками, они располагаются на отдельной небольшой плате.
В основном режиме кнопкой HR/SEL устанавливаются часы, кнопкой MIN/+/OK - минуты. Чтобы попасть в меню настроек, нужно включить устройство с зажатой кнопкой HR/SEL:
Той же кнопкой выбираем нужный пункт. Калибровка вольтметра. Здесь производится программная калибровка показания вольтметра. Мультиметром измеряем напряжение питания устройства и выставляем кнопкой MIN/+/OK точно такое же. Двигатель перегрет. Устанавливается порог температуры предупреждения о перегреве двигателя. Аккумулятор разряжен. Устанавливается напряжение, ниже которого устройство будет сообщать о разряде аккумулятора. Поменять показания датчиков температуры местами на дисплее удобно, если они вследствие порядка своих серийных номеров оказались расположены наоборот. Просто в этом пункте жмём MIN/+/OK - показания датчиков сразу же меняются местами. Импульс/оборот. Устанавливается количество импульсов за один оборот коленвала двигателя. Все установленные настройки, за исключением смены датчиков, сохраняются при нажатии кнопки MIN/+/OK в выбранном пункте "Сохранить и выйти", после чего появляется основной экран.
Во время эксплуатации, при переходе температуры дв. и/или напряжения акк. через установленные пороги, начинает мерцать соответствующий параметр на дисплее и 1 раз в 2 секунды раздаётся звуковое предупреждение. При включении указателей поворота, в такт с работой прерывателя, слева от часов мигают стрелки, и раздается звуковой сигнал. Если функция индикации указателей поворота не нужна, то можно выбросить из схемы D1 и R6, R9 нужно подключить к VCC. Также при отсутствии необходимости в автоматической смене яркости подсветки LCD, нужно исключить из схемы R17 и R7, а вывод PA1 микроконтроллера (BR_SENS) нужно подтянуть через резистор 10 -15кОм к VCC, если нужен максимальный уровень яркости, или к GND, если требуется пониженная яркость. Датчик температуры двигателя подключается к устройству с помощью экранированного кабеля.
В прикрепленном архиве находятся прошивка и фьюзы для микроконтроллера, проект Proteus, печатная плата в формате Sprint Layout, схема подключения входа сигналов поворотников и тахометра, схема устройства.
25.02.2015 Добавлена прошивка 12864_600-8000rpm.hex с измерением частоты вращения коленвала от 600 об/мин.
28.02.2015 Добавлена прошивка 12864_600-8000rpm+.hex . Поправлена библиотека дисплея, что позволило расширить список используемых дисплеев с контроллером KS0108/KS0107 от разных производителей.
11.04.2015 В статью добавлен архив "+измерение остатка топлива.rar" со схемой и прошивками для устройства с новой функцией - измерения уровня топлива.
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
LCD1 | LCD-дисплей | LCM12864C | 1 | С контроллером KS0108 | Поиск в магазине Отрон | |
U1 | МК AVR 8-бит | ATmega16 | 1 | Корпус TQFP-44 | Поиск в магазине Отрон | |
U2 | Часы реального времени (RTC) | DS1307 | 1 | Корпус SO-8 | Поиск в магазине Отрон | |
U3, U4 | Датчик температуры | DS18B20 | 2 | Поиск в магазине Отрон | ||
U5 | Линейный регулятор | L7805AB | 1 | L7805AB2T | Поиск в магазине Отрон | |
U6 | Вентиль | CD4093B | 1 | Поиск в магазине Отрон | ||
Q1, Q2 | Биполярный транзистор | PMBS3904 | 2 | Поиск в магазине Отрон | ||
D1, D3 | Стабилитрон | BZV55C4V7 | 2 | Поиск в магазине Отрон | ||
D2 | Диод Шоттки | SK24 | 1 | Поиск в магазине Отрон | ||
X1 | Кварцевый резонатор | 32.768 кГц | 1 | Поиск в магазине Отрон | ||
X2 | Кварцевый резонатор | 12 МГц | 1 | Поиск в магазине Отрон | ||
R1 | Резистор | 30 кОм | 1 | Все резисторы SMD 1206 | Поиск в магазине Отрон | |
R2, R6, R10 | Резистор | 10 кОм | 3 | Поиск в магазине Отрон | ||
R3-R5 | Резистор | 4.7 кОм | 3 | Поиск в магазине Отрон | ||
R7 | Резистор | 470 кОм | 1 | Поиск в магазине Отрон | ||
R8 | Резистор | 47 кОм | 1 | Поиск в магазине Отрон | ||
R9 | Резистор | 15 кОм | 1 | Поиск в магазине Отрон | ||
R11 | Резистор | 12 кОм | 1 | Поиск в магазине Отрон | ||
R12, R14 | Резистор | 1 кОм | 2 | Поиск в магазине Отрон | ||
R13 | Резистор | 22 Ом | 1 | Поиск в магазине Отрон | ||
R15 | Резистор | 200 Ом | 1 | Поиск в магазине Отрон | ||
R16 | Резистор | 100 кОм | 1 | Поиск в магазине Отрон | ||
R17 | Фоторезистор | GL5516 (500кОм) | 1 | Поиск в магазине Отрон | ||
RV1 | Подстроечный резистор | 10кОм | 1 | Поиск в магазине Отрон | ||
C1 | Конденсатор | 1 мкФ | 1 | SMD 0805, кроме С5-С6 | Поиск в магазине Отрон | |
C2-C4, C7, C8, C12 | Конденсатор | 0.1 мкФ | 6 | Поиск в магазине Отрон | ||
C5 | Танталовый конденсатор | 47мкФ х 16В | 1 | Поиск в магазине Отрон | ||
C6 | Танталовый конденсатор | 33мкФ х 6.3В | 1 | Поиск в магазине Отрон | ||
C9, C10 | Конденсатор | 22 пФ | 2 | Поиск в магазине Отрон | ||
C11 | Конденсатор | 0.33 мкФ | 1 | Поиск в магазине Отрон | ||
Кнопка тактовая | IT-1102w | 2 | Поиск в магазине Отрон | |||
LS1 | Излучатель звуковой | KC-1201 | 1 | Поиск в магазине Отрон | ||
BAT1 | Батарейка | CR2032 | 1 | Поиск в магазине Отрон | ||
Держатель для батареек | CR-2032 | 1 | Поиск в магазине Отрон | |||
Скачать список элементов (PDF)
Прикрепленные файлы:
- 4-157.rar (294 Кб)
- 12864_600-8000rpm.hex (41 Кб)
- 12864_600-8000rpm+.hex (41 Кб)
- +измерение остатка топлива.rar (103 Кб)
Комментарии (251)
|
Я собрал (0) |
Подписаться
Для добавления Вашей сборки необходима регистрация
[Автор]
[Автор]
[Автор]
1. Стереть EEPROM и откалибровать заново.
2. Выставить на 7 литрах значение ADC больше или меньше (в зависимости от типа ДУТ), чем на 6 литрах. Как вариант, можно отключиться от выхода ОУ и подать на вход ADC1 либо VCC (ADC=1023), либо GND (ADC=0).
[Автор]
Да, на входе должно быть 0-5V, через делитель можно.
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
Вчера закончил свой девайс, твердотельное реле управления свечами накала дизельного двигателя. С зависимость времени от температуры, если кому надо выложу схему и прошивку.
[Автор]
Я собрал ваш прибор, U33, и хочу задать следущий вопрос: для того, чтобы уменьшить уровень подсветки в ночное время нужно программный код переписать (ну там частоту сигнала на PD7 понизить) или есть другой способ? Не хотелось бы увеличивать R13 (R13 ограничивает ток на подсветку при 22 омах на 250мА) - ведь тогда и дневной режим "потускнеет".
Сам я собрал по вашей схеме, используя ваш лайоут и от Alesashka (уже не помню что где заимствовал), но изменив размер смд-компонентов на не менее 1206. Протравил, спаял, подправил сразу пару ошибок (по размеру и расстоянию смд).
[Автор]
Да, уменьшать уровень яркости ночной подсветки нужно программно. По этому вопросу напишите в ЛС.
1. Упущен конденсатор С5 на 47мкФ и установлен вместо 0,1мкФ - 0,33мкФ на ноге 12в регулятора 7805.
2. Непонятна реализация датчика тахометра с сигнальными проводами + и -. Есть пример решения.
3. Конденсатор С12 отсутствует, хотя есть конденсатор на втором контакте фоторезистора GL5516
4. Добавили сигнал поворотников и сохранили датчики температуры или наоборот... прошивкой поделитесь?
2. сигнал тахометра ожидает стандатрный меандр (это +) около 4,5 вольт и массу авто/датчика (это минус). Сажает, все что выше через D3 на 4,7 вольт.
3. Фоторезистор не нуждается в сглаживании - так быстро свет / уровень яркости не мерцает. Но можете добавить (или скачать версию ниже).
4. "Стрелки поворотников" автор реализовал сам, читайте внимательней шапку темы. Я добавил только диоды на второй сигнал (у автора один), чтобы сигналы не смешивались. И прошивка тоже его (+izmerenie-ostatka-topliva.rar) в шапке.
2.общий провод "-" питания платы он же масса авто. не критично.
3.Принято
4.Из описания автора "...Индикация указателей поворота удалена, а фоторезистор теперь подключен на PD0 ..." поэтому и возникает вопрос реализации в прошивке и как будет это выглядеть? )
1. Если подключить микросхему к блоку питания компа 12в, реально прошить или нужен блок питания внешний?
2. Если к микросхеме не подключать фоторезистор, можно прошить?
3. Не подключать еще и динамик, можно?
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
Когда обороты возрастают больше 1000 то показывает сначала число оборотов, потом 9900, опять число, опять 9900. Примерно с разницей в секунду.
Вот так: 1200-9900-1400-9900-2200-9900.
Подключал к датчику холла. Магнит на датчике и магнит на коленвале. Один провод с датчика выходит это +. Минус подключил к общей цепи. Что странно, без минуса тахометр показывает обороты тоже. Но так же 1200-9900-2000-9900.
Мерял напряжение с датчика. Вдруг поможет? Оно около 0.02 Вольт. Двигатель 2 тактный. В меню число оборотов 1. Изменение на другие цифры ничего не дало.
В чем проблема? Подскажите пожалуйста.
[Автор]
Для проверки можно отсоединить CD4093 от МК и подать на пин ICP1 однополярный прямоугольный сигнал амплитудой 5 вольт, частотой от 20Гц и выше. Если показания тахометра перестанут скакать, значит дело в плохой обработке сигнала.
[Автор]
Я использую CD4093BE в DIP корпусе. Нужно подключать линию питания через конденсатор на минус?
На фото выше тоже DIP корпус и конденсатора нет.
[Автор]
[Автор]
Эту функцию могу добавить за небольшую оплату. По этому вопросу пишите в ЛС.
Думаю что пробило (+) контакт на оборотах. МК при подключении к контакту ISP выдает ошибку.
Автору написал, он молчит.
Помогите пожалуйста:
Что еще можно проверить, могло сгореть?
Как защитить МК от подобного? Может стабилитроны на бОльшее напряжение впаять?
Схема ниже: https://hostingkartinok.com/show-image.php?id=5d8a8b8bb717d3928240fd85d23e4df7
Завалялась AtMega 16L TQFP-44. Для этого устройства она подойдет? Даташит говорит 8 МГц максимум. Здесь 12МГц внешний кварцевый резонатор.
Как это работает: частота МК + частота резонатора или Только частота резонатора?
[Автор]
[Автор]