IPB

Здравствуйте, гость ( Вход | Регистрация )



Нештатная информация на штатный дисплей
ustas
сообщение 23.10.2014, 21:53
Сообщение #1


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




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

На текущий момент:
1. уже "препарирован" и довольно хорошо изучен протокол парктроника Parkmaster (одного из недорогих) - уверенно получаю и интерпретирую данные с него.
2. влез в среднескоростную шину CAN на своей машинке - умею управлять дисплеем (пока не идеально, но процесс идет).
3. сделан первый прототип "промежуточной" железки (устанавливается между парктроником и can-шиной) и протестирован (на базовые функции).

Моя "железка" дополнительно содержит часы реального времени (RTC) - и теперь на машине появился календарь (был очень сильно удивлен, узнав, что штатно календаря вообще нет).
Выглядит сейчас вот таким образом:

Прикрепленный файл  WP_20141023_14_26_32_Pro.jpg ( 195.28 килобайт ) Кол-во скачиваний: 362


Если будет интересно - продолжу повествование.


Перейти в начало страницы
 
+Цитировать сообщение
17 страниц V   1 2 3 > »   
Начать новую тему
Ответов (1 - 19)
Сеттер
сообщение 23.10.2014, 22:30
Сообщение #2


хочу всё знать
*****

Группа: Супермодераторы
Сообщений: 5224
Регистрация: 23.5.2009
Из: Москва, Кунцево
Пользователь №: 27540
Спасибо сказали: 1993 раз(а)




Останавливаться нельзя не только в разработках, но и в повествованиях. Любые телодвижения в изменении (улучшении) функциональности машины только приветствуются. Молодец, так деожать.
Перейти в начало страницы
 
+Цитировать сообщение
annik
сообщение 23.10.2014, 22:46
Сообщение #3


Продвинутый участник
****

Группа: Супермодераторы
Сообщений: 1122
Регистрация: 24.9.2010
Из: Екатеринбург
Пользователь №: 28411
Спасибо сказали: 544 раз(а)




Здорово получается, а возможно выудить расход топлива из CAN-шины и вывести на дисплей? Просто праворукие собратья изначально идут без этой функции, а так хочется...
Перейти в начало страницы
 
+Цитировать сообщение
vitalson8
сообщение 23.10.2014, 23:09
Сообщение #4


Активный участник
***

Группа: Маздаводы
Сообщений: 717
Регистрация: 8.10.2010
Из: Москва ЮАО
Пользователь №: 28445
Спасибо сказали: 69 раз(а)




молодец,а по подробнее
Перейти в начало страницы
 
+Цитировать сообщение
_Michail_
сообщение 24.10.2014, 7:46
Сообщение #5


Продвинутый участник
****

Группа: Маздаводы
Сообщений: 949
Регистрация: 16.9.2010
Из: Моск. Обл. г. Видное
Пользователь №: 28389
Спасибо сказали: 231 раз(а)




Да, интересная тема, хотелось бы продолжения (IMG:https://m5club.ru/forum/style_emoticons/default/smile.gif)
Перейти в начало страницы
 
+Цитировать сообщение
ustas
сообщение 24.10.2014, 15:53
Сообщение #6


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




ок, тогда буду писать дальше.. подскажите, на что лучше обратить внимание при повествовании? на технические детали реализации или на что-то другое?

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

К примеру, дисплей - это как минимум два разных адреса (первый - это адрес для "печати" первых 7 символов, а второй - для вторых 6 символов). Еще, похоже, собственными адресами обладают следующие части экрана: "вехрняя часть" (DISK IN, AF и т.п.), маршрутный комп (левая часть - там где часы), климат (правая часть).

Пока мои интересы заканчиваются основной строкой.

Дешифровка для основной строки не вызвала никаких проблем - используются стандартные ASCII-коды (так что о кириллице можно забыть - ее там просто нет).

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

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

Надо проверить пару гипотез - как это можно обойти.

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

Есть мысль подключить свою разработку несколько глубже (как это было сделано в первоначальном варианте у "исходного" проекта) - врезаться в шину между машиной и дисплеем и когда нужно выводить "свое" - просто отключать дисплей от шины машины и рулить им самостоятельно. Вариант - 100% эффективный, но надо будет немного разбирать салон, чтобы добраться до дисплея.

P.S. кстати, можно писать какие-то предложения по тому, для чего можно использовать штатный дисплей и вообще шину...
лично мне еще хочется узнать, можно ли, например, выловить на шине текущую скорость (это можно - 100%) и при превышении, например, 7км/ч - автоматически закрывать замки дверей (такая фича была штатно в предыдущем пыжике). Конечно, это к дисплею не относится, но шина, к которой я подключаюсь (это среднескоростная шина, она же "шина комфорта") по идее, содержит много интересного - там гуляют команды (и параметры) климата, света, ... сейчас посмотрел - есть данные по скорости, средней скорости, текущему и среднему расходу (т.е. маршрутник сделать - вообще ничего сложного)

P.P.S. если кто-то поделится информацией по соответствию идентификаторов сообщений, длинны сообщений, правил декодирования - буду очень признателен

Сообщение отредактировал ustas - 24.10.2014, 16:02
Перейти в начало страницы
 
+Цитировать сообщение
al4630z
сообщение 24.10.2014, 16:14
Сообщение #7


Активный участник
***

Группа: Маздаводы
Сообщений: 254
Регистрация: 24.4.2011
Из: Саратовская обл. г. Балаково
Пользователь №: 29133
Спасибо сказали: 69 раз(а)




Браво!
Вот она победа над пустым дисплеем при нештатной балалайке.
Кто последний за девайсом? Никто!? Тогда я первый.
С нетерпением жду. Удачи в работе.
Дисплей снять не проблема, темы есть соответствующие. Как только сдёрнешь магнитолу останется два шурупа, верхнюю нахлобучку с дисплеем на себя и в верх. 15 минут работы.
Со скоростью - неплохое предложение. Неплохо бы вольтметр.Парктроники тоже . А со светом что можно замутиь?

Сообщение отредактировал al4630z - 24.10.2014, 16:22
Перейти в начало страницы
 
+Цитировать сообщение
ustas
сообщение 24.10.2014, 16:24
Сообщение #8


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




При пустом дисплее (нештатной балалайке) подключение - просто в диагностический разъем (и не надо решать проблему "штатных" и "нештатных" сообщений).

Могу изготовить небольшую партию для желающих (с нештатной балалайкой).

Можно замутить маршрутный комп.

Данные на шине (касающиеся маршрутника):
- текущая скорость
- средняя скорость
- текущий расход
- средний расход

можно добавить календарь (чтобы выводилась дата, как у меня)

что еще хочется? Какую информацию выводить?

кто готов стать "подопытным"?

Еще нужно придумать, по какому алгоритму переключать данные (портить салон "колхозными" кнопками, имхо, не лучший вариант). Можно просто в цикле данные крутить...

Есть идеи?

Ну и надо понимать - каков вообще спрос на подобное? Сколько желающих?
Перейти в начало страницы
 
+Цитировать сообщение
Гоша
сообщение 24.10.2014, 16:25
Сообщение #9


Отстал от жизни
*****

Группа: Маздаводы
Сообщений: 2367
Регистрация: 21.6.2011
Из: Новгородская обл. Боровичи
Пользователь №: 29350
Спасибо сказали: 647 раз(а)




(IMG:https://m5club.ru/forum/style_emoticons/default/wacko.gif) У кого то руки золотые, а у кого то мозг (IMG:https://m5club.ru/forum/style_emoticons/default/blink.gif) Понял что ничего не понял (IMG:https://m5club.ru/forum/style_emoticons/default/biggrin.gif)
Перейти в начало страницы
 
+Цитировать сообщение
!Lnur
сообщение 24.10.2014, 18:11
Сообщение #10


Гуру)
*****

Группа: Маздаводы
Сообщений: 2002
Регистрация: 27.10.2013
Из: Уфа
Пользователь №: 32237
Спасибо сказали: 1062 раз(а)




Цитата(ustas @ 24.10.2014, 18:53) *
Есть мысль подключить свою разработку несколько глубже (как это было сделано в первоначальном варианте у "исходного" проекта) - врезаться в шину между машиной и дисплеем и когда нужно выводить "свое" - просто отключать дисплей от шины машины и рулить им самостоятельно.

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

Кстати когда балалайка выключена, конфликт сигналов не возникает? мерцание пропадает?

З.Ы.: Я раньше тоже электроникой увлекался, а сейчас ленивый стал: купил в диагностический разъём блютус-заглушку, она из смартфона делает простой бортовой компьютер )))

Сообщение отредактировал !Lnur - 24.10.2014, 18:18
Перейти в начало страницы
 
+Цитировать сообщение
ustas
сообщение 24.10.2014, 19:26
Сообщение #11


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




!Lnur, не совсем понял... т.е. перед выводом сообщения гасить штатную балалайку?

Тогда будет как минимум странно: ... играет музыка, потом вырубается - на экране то, что нужно - врубаем музыку... а если это в цикле (сейчас у меня 10 секунд показывается "штатное" сообщение, а потом - 2 секунды - дата).

Или я чего-то не догоняю?

Кстати, использовать одну из незадейстованных кнопок - в принципе, идея неплохая, но.... вроде как все кнопки в каком-либо из режимов все-таки задействуются (т.е. абсолютно незадействованной кнопки - нет). Если я неправ - скажите, какая это кнопка?

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

Кстати, не пробовал вырубать штатную балалайку, но, думаю, при этом мерцания не будет (или будет, если магнитола шлет "пробелы" на пустой дисплей). Попробую завтра - сейчас выходить из дома не очень хочется...
Перейти в начало страницы
 
+Цитировать сообщение
_Michail_
сообщение 24.10.2014, 20:34
Сообщение #12


Продвинутый участник
****

Группа: Маздаводы
Сообщений: 949
Регистрация: 16.9.2010
Из: Моск. Обл. г. Видное
Пользователь №: 28389
Спасибо сказали: 231 раз(а)




Какой контроллер используется на текущий момент? Может есть смысл сменить на более быстродействующий?
Перейти в начало страницы
 
+Цитировать сообщение
!Lnur
сообщение 24.10.2014, 20:44
Сообщение #13


Гуру)
*****

Группа: Маздаводы
Сообщений: 2002
Регистрация: 27.10.2013
Из: Уфа
Пользователь №: 32237
Спасибо сказали: 1062 раз(а)




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

Неиспользуемая кнопка балалайки - это, например, кнопка МЕДИА, естественно у кого она есть и не используется по назначению.
Я могу ошибаться, но думаю при нажатии на неё на соответствующем разъёме балалайки (разъеме для CD-ченжера) должен появиться сигнал включения,
и скорей всего появляется соответствующая команда и по шине.
Кстати на резъёме для ченжера есть сигналы шины управления (M-BUS) может с неё удастся сигнал взять?
Перейти в начало страницы
 
+Цитировать сообщение
ustas
сообщение 24.10.2014, 20:56
Сообщение #14


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




Сходил-таки в машину.

Если штатную балалайку выключить, то она шлет "пробелы" на экран. Т.о. "промаргивания" - остались.

Чуть больше деталей по реализации:
1. Сейчас моя платка выглядит следующим образом:
Прикрепленный файл  WP_20141024_21_19_26_Pro.jpg ( 329.08 килобайт ) Кол-во скачиваний: 145

2. МК - atmega328p (работает на 16МГц)
3. модуль RTC - DS1307
4. Интерфейс OBD2 реализован на MCP2515+MCP2551
5. Для питания платы распаян USB-разъем (исключительно питание)
6. Большой черный разъем - для подключения парктроника (просто был готовый обжатый кабель на момент установки парктроника - его и проложил сразу для своих нужд).
7. На плате присутствует резервная батарейка (для часового модуля)
8. Имеется "пищалка" (поскольку у парктроника она встроена в дисплей, от которого я планирую отказаться)

Делал из того, что было под рукой. Выбор МК - "выбираю из того, с чем умею работать".

"Хитрая форма" платы обусловлена тем, что делалась под имеющийся корпус:
Прикрепленный файл  WP_20141024_21_19_08_Pro.jpg ( 386.92 килобайт ) Кол-во скачиваний: 82


Это корпус от "обходчика иммобилайзера".
Перейти в начало страницы
 
+Цитировать сообщение
_Michail_
сообщение 24.10.2014, 21:18
Сообщение #15


Продвинутый участник
****

Группа: Маздаводы
Сообщений: 949
Регистрация: 16.9.2010
Из: Моск. Обл. г. Видное
Пользователь №: 28389
Спасибо сказали: 231 раз(а)




Понятно. Буду думать.


Спасибо сказали:
Перейти в начало страницы
 
+Цитировать сообщение
ustas
сообщение 24.10.2014, 21:18
Сообщение #16


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




Цитата(!Lnur @ 24.10.2014, 21:44) *
Если штатный дисплей использовать, например, в качестве индикатора парктроника (как раз то с чего ты начал разрабатывать идею), то кратковременное выключение магнитолы для изменения режима индикации, думаю, возражений не вызовет. Естественно для индикации календаря такой вариант не применим, но извини, я не вижу необходимости постоянной индикации календаря на дисплее, мне достаточно один раз узнать дату и всё )))

Да, для парктроника так и есть - вырубание музыки дополнительно позволяет убрать "отвлекающие моменты".
Дата постоянно не нужна - это точно.. но вот тот момент, когда мне это понадобилось - неизвестен. Если нужно что-то ткнуть - так я уж до телефона доберусь... поэтому пока включил "динамическую индикацию" (когда дата периодически появляется на дисплее и пропадает).

Цитата(!Lnur @ 24.10.2014, 21:44) *
Неиспользуемая кнопка балалайки - это, например, кнопка МЕДИА, естественно у кого она есть и не используется по назначению.
Я могу ошибаться, но думаю при нажатии на неё на соответствующем разъёме балалайки (разъеме для CD-ченжера) должен появиться сигнал включения,
и скорей всего появляется соответствующая команда и по шине.
Кстати на резъёме для ченжера есть сигналы шины управления (M-BUS) может с неё удастся сигнал взять?


MEDIA я как раз использую - поставил "на постоянное жительство" блютус-модуль музыкальный и активно юзаю.

"Сигнал включения" в нашем случае - это уже какая-то команда на шине, а не просто "высокий(низкий) потенциал" на каком-то пине разъема.

Кстати, есть некоторое подозрение, что нажатие некоторых кнопок - транслируются в шину (вроде как есть кнопки "громкость+", "громкость-", "mute" - по крайней мере встречалась подобная информация при гуглении). Но тут нужно или снифер шины городить (хотя он уже фактически есть в моей платке) и анализировать данные (вот это занимает больше всего времени) или где-то найти доку по адресам, сообщениям и их кодированию (но что-то мне кажется, что такого документа просто нет).

P.S. наверняка моя плата сразу заработает на мазда3... (купил на разборке дисплей от мазда3 - подключил его 4 проводками к диагностическому разъему и увидел ровно те же надписи, что и на дисплее моей машины). Возможно, заработает на мазда6 (и других маздах) - но тут попробовать надо.
Перейти в начало страницы
 
+Цитировать сообщение
!Lnur
сообщение 24.10.2014, 21:47
Сообщение #17


Гуру)
*****

Группа: Маздаводы
Сообщений: 2002
Регистрация: 27.10.2013
Из: Уфа
Пользователь №: 32237
Спасибо сказали: 1062 раз(а)




Цитата(ustas @ 24.10.2014, 23:18) *
Кстати, есть некоторое подозрение, что нажатие некоторых кнопок - транслируются в шину (вроде как есть кнопки "громкость+", "громкость-", "mute" - по крайней мере встречалась подобная информация при гуглении)

Подозрения небезосновательны, вспомни кнопки на руле - как раз громкость+/громкость-, mute, канал+, канал-. ;-)
Перейти в начало страницы
 
+Цитировать сообщение
ustas
сообщение 24.10.2014, 21:55
Сообщение #18


Участник
**

Группа: Маздаводы
Сообщений: 139
Регистрация: 19.4.2014
Из: Истра (МО)
Пользователь №: 32720
Спасибо сказали: 58 раз(а)




о.. точно.. тогда еще интереснее может быть.

На руле точно есть кнопки, которыми я не пользуюсь - можно их отлавливать.

И теперь для себя нашел еще одно применение штатного дисплея: на пыжике при включении круиза на приборке можно было выставить требуемую скорость (она выводилась в явном виде)..

Тут же приходится "угадывать" (или нажимать на SET тогда, когда требуемая скорость уже набрана). Если отлавливать нажатия (ну и еще все-таки послушать, что же в шине еще "гуляет") - то, возможно, получится выводить на дисплей задаваемую скорость круиза.
Перейти в начало страницы
 
+Цитировать сообщение
Сеттер
сообщение 24.10.2014, 22:40
Сообщение #19


хочу всё знать
*****

Группа: Супермодераторы
Сообщений: 5224
Регистрация: 23.5.2009
Из: Москва, Кунцево
Пользователь №: 27540
Спасибо сказали: 1993 раз(а)




Вот это мне по душе - хорошая темка получается.
ПиСь. Давненько не было - соскучились, да и руки чешутся.
Перейти в начало страницы
 
+Цитировать сообщение
поиск
сообщение 25.10.2014, 5:59
Сообщение #20


Участник
**

Группа: Маздаводы
Сообщений: 87
Регистрация: 7.2.2014
Из: днепр
Пользователь №: 32499
Спасибо сказали: 17 раз(а)




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

17 страниц V   1 2 3 > » 
Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 18.11.2024, 9:01





РЕКЛАМА НА САЙТЕ