В данном проекте мото-бортового компьютера вы увидите как можно использовать LCD-дисплей от мобильного телефона Nokia 6280, управляемый микроконтроллером PIC18F4455. Данный БК установлен на мотоцикле Yamaha TDM850 (99 г. выпуска).
Характеристики устройства:
- отображение текущей передачи (с 1 по 5), плюс нейтральная передача
- напряжение аккумулятора. Отображение аналоговое и цифровое
- время с запуска
- отображение аналогового и цифрового спидометра
- суточный счетчик
- отображение положения ручки газа (в процентах)
- отображение аналогового и цифрового тахометра
- если мотор не заведен, то отображается надпись «Engine Stop»
- отображение температуры воздуха, охлаждающей жидкости, масла
- при определенных оборотах отображается надпись «GearUp» (переключить передачу вверх). В режиме настроек (Debug Mode) возможна корректировка об/мин при которых появляется предупреждающая надпись
- на 5-ой передаче при раскручивании движка более 3500 об/мин и при параметре TRP меньшем чем задан в настройках (к примеру 17%), отображается надпись «Economic Drive» (экономичная езда)
Режим настроек (Debug Mode):
В данном режиме БК показывает данные датчика скорости, TPS датчика (ручка газа), уникальные коды устройств датчика температуры DS18B20. Также, врежиме настроек вы можете поменять параметры для режимов «GearUp», «Economic Drive» и настроить подсветку LCD.
В устройстве не предусмотрены какие-либо кнопки для изменения параметров, поэтому используются сигналы от датчиков переключателя передач и TPS-датчика ручки газа.
Вход в режим настроек и изменение параметров:
- ручку переключения передач передвиньте на нижнюю передачу и включите питание. На экране устройства появится надпись Debug Mode.
- для пролистывания параметров передвигайте вниз ручку переключателя передач.
- для изменения параметра используйте ручку газа
- для сохранения изменений параметра, передвиньте ручку переключателя передач вверх. Параметр изменит свой цвет на синий.
Все данные хранятся в энергонезависимой памяти и не стираются после выключения питания бортового компьютера.
Для выхода из режима настроек выключите питание, а потом снова включите.
Вся электронная начинка расположена слева от защиты и с LCD экранчиком соединена плоским шлейфом. С второй стороны электронного блок БК отходят соединения к модулю зажигания, температурным датчикам и датчику положения ручки передач.
От модуля зажигания БК получает +12В, сигналы об/мин (RPM) и ручки газа.
Температурные сенсоры DS18B20 подключены по протоколу 1Wire, в режиме «parasite power» (т.е. не требуют внешнего питания).
Датчики переключателя передач расположены под левой защитой картера двигателя. В качестве датчиков используются 2 оптических сенсора. На фотографиях вы можете увидеть все 3 положения: обычное положение, положение при переключении передачи вниз и положение при переключении передачи вверх.
На данном мотоцикле нет заводского датчика скорости, поэтому я сделал его своими руками. В качестве датчика скорости я использовал датчик-Холла TLE4945. Датчик установлен под крышкой картера двигателя.
Для работы датчика Холла требуются магниты, в моем случае я использовал три магнита. Причина этого более высокая точность: скорость измеряется от 0 до 350 км/ч с разрешением 1 км/ч, обновление данных происходит каждую секунду. При монтировании магнитов вы должны соблюдать ориентирование их магнитного поля. Последовательность полюсов магнитов у меня такая: S-N-S-N-S-N.
В принципиальной схеме используется простое решение для связи PIC18F4550 и Nokia 6280 Lcd (320×240 пикселей) через параллельный порт.
Для термодатчиков DS18B20 используется 1 канал вводавывода 1Wire. Для датчика положения передач и нейтральной передачи используется 3 линии МК, один вход МК используется для датчика скорости, 2 аналоговых входа для измерения напряжения питания и датчика ручки газа, и один выход используется для подсветки LCD. USB разъем используется для программирования и тестирования.
Как было сказано выше, все 3 датчика DS18B20 сидят на одной линии 1Wire и для правильной работы устройства надо знать их уникальные 64-разрядные коды.
У моих датчиков были следующие коды:
«Воздух» = 9300000078625728
«Вода» = D5000002061B2128
«Масло» = 4600000206125A28
Для правильной работы БК, в коде программы вы должны изменить эти коды на коды своих датчиков (см. скриншот выше).
Скачать прошивку вы можете ниже
Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот
IC1
МК PIC 8-битPIC18F45501
U1
Линейный регуляторLM78L051
zd1
ИС источника опорного напряженияLM385-2.51
Ail, Water, Oil
Датчик температурыDS18B203
Opto1, Opto2
ОптопараPC8172
Hal
Датчик ХоллаTLE4945L1
OptoSensor-GearDown(Up)
Оптосенсор2
Q1
Биполярный транзисторBC5471
D1
Выпрямительный диод1N40071
D2
Выпрямительный диод1N41481
С1
Конденсатор0.47 мкФ1
С2, С5, С6
Электролитический конденсатор1 мкФ3
С3, С4
Конденсатор27 пФ2
С7, С8
Электролитический конденсатор100 мкФ2
С9, С10
Конденсатор0.1 мкФ2
R1-R8, R27-R29, R37
Резистор1.2 кОм12
В схеме два резистора R37R9-R15, R21, R23, R30-R33, R38, R38
Резистор1 кОм15
В схеме два резистора R38R17
Резистор100 кОм1
R18
Резистор2.7 кОм1
R19, R22
Резистор6.8 кОм2
R20, R25, R35
Резистор4.7 кОм3
В схеме два резистора R35.R24
Резистор10 кОм1
R34
Резистор560 Ом1
R35-R37
Резистор100 Ом3
В схеме два резистора R36R36
Резистор120 Ом1
Переменный резистор500 Ом2
ХТ
Кварцевый резонатор20 МГц1
Led
LCD-дисплейNOKIA6280 320×2401
Con1
USB-разьем1
Con2
Разьем1
Добавить все
Скачать список элементов (PDF)
Прикрепленные файлы:
- Nokia6280Lcd.zip (24 Кб)