Затеял прожект по самодельной приборке., Присоединяйтесь! |
Здравствуйте, гость ( Вход | Регистрация )
Затеял прожект по самодельной приборке., Присоединяйтесь! |
12.1.2017, 18:43
Сообщение
#101
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
На хабре положил серию статеек о решении сопутствующих проблем:
* https://habrahabr.ru/post/319336/ про fram или где сохранять одометры с моточасами. * https://habrahabr.ru/post/319180/ про обработку нажатий кнопок. * https://habrahabr.ru/post/319184/ про кооперативную многозадачность в тривиальном виде. Там много интересных комментариев. Приятного чтения. -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
12.1.2017, 21:01
Сообщение
#102
|
|
Сильно заинтересован Группа: Эндуристы Сообщений: 405 Регистрация: 19.1.2010 Вставить ник Цитата Из: Нижний Новгород Мотоцикл: Gas gas txt 300 2006г.в. Репутация: 5 |
По запчастям пока получается контроллер 100-120р дисплей 150р контроллер дисплея i2c 50р fram 230р часы 80р батарейка в часы -- не помню клава в процессе из 4 кнопок любых плата на заказ 2000р, прототип на макетной плате делаю в 10р источник питания 9-36в->5в шим 50р. датчик температуры 30р контроллер датчика температуры в процессе 50-300р, они все spi, а я ищу i2c. всё с алиекспресса, могу ссылки дать. А цена готового изделия какая? Полезно: 0
Вредно: 0
|
|
|
18.1.2017, 21:15
Сообщение
#103
|
||
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
цена готового Не знаю, я готовое ещё не делал. Зависит сильно от модели экранчика, от наличия платы, на которой всё смонтировано, или будет всё на термоклее болтаться, ну и от корпуса. С корпусом самая засада. Напечатать я кузов могу, но он хрупкий, надо отливать или брать готовый и адаптировать. Думаю. Если я буду делать на заказ, то возьму за работу тыщу-полторы и норм. На переднем плане собственно микроконтроллер в китайской сборке Arduino Pro Mini на ATMega328P. Сделал для приборки класс DisplayField, который отрисовывает поле на экранчике. Понимает BigCrystal, то есть большие буквы на две строчки размером. Продолжаю пользоваться плюсами пока что. Для отрисовки каждого поля необходимо породить подкласс и переопределить метод GetData, возвращающий строку для вывода. Сейчас вся радость занимает 23 байта на поле. Стараюсь ещё ужать, есть куда. Теперь можно объединять поля в контейнеры-экраны и ура, готовый интерфейс приспособленный под меню и вообще управление кнопочками. Да, не блокирует выполнение, построен на кооперативной многозадачности самодельной моей Не обращайте внимания на кривой дисплей на фото, это такой достался У него плюс -- это 20 знаков, а не 16, а минус, что в знакогенераторе вместо закрашенного места стоит какое-то "У". Подсветку ему не включал, было не до того. Итак, что я натворил: Здесь от основного класса порождаются поля. Основная задача -- написать метод GetData, который вернёт указатель на строку, которую надо показать в поле. Я очень не хочу использовать динамическое размещение памяти, согласен, размер поля в snprintf надо брать из родительского класса, но это же сырьё, понимаете же. В итоге, мы имеем три поля разного типа. Для простоты для начала их собрал в массивчик, на тему контейнера "Дисплей/Экран" ещё думаю. Далее там идёт инициализация поля:
Указано, как отрисовывать, большими или нормальными буквами. Это собственно программа. Про SmartDelay я писал выше, если что. Вместо датчиков сейчас просто заглушки в виде счётчиков и внутренних часов. Красота! Теперь только надо выравнивание вправо сделать нормальное для больших букв. Я сделал, но в другом куске кода. Осталось слить. У поля есть три режима:
Управляется это через объект.SetMode(), который можно вызвать снаружи в любой момент. Работает асинхронно. То есть, можно ходить по меню, цифры будут продолжать крутиться. Мигающий режим сделан как "текущее поле для редактирования", курсор. Так делаю настройки даты/времени, сброс одометров и мч. Так как логика рисования вынесена куда-то наверх, вы можете творить свои экраны, меню итп, хоть несколько экранов на одном дисклее (окна, бгг) и переключать их по кнопке. У меня в проекте такие экраны:
Как и схема приборки, всё очень модульно и можно переделать в разумных пределах достаточно быстро. Такие дела, братцы. Ну и за консультациями по поводу сборки и программирования этой ерунды обращайтесь, чем смогу, помогу, мне не жалко. -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
||
20.1.2017, 21:54
Сообщение
#104
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
Ну что, как и предполагали комментаторы на хабре, я упоролся и сделал кооперативную многозадачность для ардуины самодельную. Вот примерчик. Вечерняя пицца от программеров открыла мне нужную чакру и я написал мегамакрос для статической инициализации списка процессов. Уфф.
В общем, я зря это затеял, есть готорые неплохие решения, но это какое-то же моё, да. Ну и таймер я не использую, это жрёт батарейку, но зато оставляет его свободным для других извращений. Такие дела. Вот пример многопоточной проги: https://github.com/nw-wind/SmartDelay/blob/...c/asyncProc.ino -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
15.3.2017, 11:24
Сообщение
#105
|
||||
Сильно заинтересован Группа: Эндуристы Сообщений: 315 Регистрация: 12.2.2011 Вставить ник Цитата Из: Україна, Київ Мотоцикл: Suzuki Djebel 250 Репутация: 19 |
Подготовился к сезону и разместил на месте штатной приборки свою приблуду.
Теперь не сильно отличается от стока. Добрался до фрезера, вырезал корпус и основудля безконтактной зарядки, вышло компактно. Пара штрихов и можно будет назвать проект успешным. Полезно: 0
Вредно: 0
|
|||
|
||||
15.3.2017, 17:49
Сообщение
#106
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
Дай почитать код?
-------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
2.1.2018, 18:14
Сообщение
#107
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
Новая статья на хабре https://habrahabr.ru/post/345960/ для чайников, как делать Машину Конечных Автоматов.
-------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
2.1.2018, 19:20
Сообщение
#108
|
|
Сильно заинтересован Группа: Эндуристы Сообщений: 170 Регистрация: 2.12.2017 Вставить ник Цитата Из: электросталь Мотоцикл: YFZ 450 R QUAD Репутация: -1 |
Какие лучшие варианты датчиков вообще действительно необходимы?А самое главное где их лучше крепить?
1 датчик давления масла(думаю один из самых необходимых)? 2 датчик скорости ?Какие действительно необходимы?(потому что они есть не у всех,и которые есть не всегда нужны.Если карбюратор. -------------------- Не бойся что не получится.
Бойся, что не попробуешь. Полезно: 0
Вредно: 0
|
|
|
2.1.2018, 22:23
Сообщение
#109
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
По моему опыту, чем дальше ты от асфальта, тем меньше тебе надо датчиков и вообще информации.
То есть, пусть они будут, но смотреть на них на ходу ты не станешь. В качестве дисплея для эндуры я бы оставил большой одометр сбрасываемый с жарной кнопкой сброса и красную лампочку "Аааа", что-то пошло не так и надо вмешаться. А где-то рядом малюсенький дисплейчик с диагностикой по куче этих самых датчиков. На дорожную технику да, там надо много всего выводить тк в дороге делать нечего, только мультики на дисплее смотреть Все датчики покупаются на алиекспрессе, их там полно. Температуру можно измерять любой термопарой и микросхемой MAX6675. Вообще, можно опутать проводами мот, а можно использовать шину. Я люблю шину i2c -- это шлейф в 4 провода и все устройства на нём сидят параллельно. Для любого аналогового датчика есть ADS1115 в конце концов, она на 4 датчика. Я для себя решил, что лучше на шине i2c делать ну и там просто определить, что датчик отвалился, если что. Скорость считать можно датчиком холла с колеса, можно просто геркон повесить. Обороты считаются или индукционным (ещё не сделал до сих пор) с высоковольтного провода или с датчика положения коленвала. Можно задействовать пины разъёма родной приборки, смотря что туда приходит. Топливо можно мерять по давлению в баке или по электрической ёмкости трубки, вставленной в бак, например, через дырку от краника. В общем, нет пределов технических, только фантазия всё ограничивает. -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
3.1.2018, 9:25
Сообщение
#110
|
|
Живёт здесь Группа: Свои Сообщений: 1116 Регистрация: 5.4.2010 Вставить ник Цитата Из: Зеленоград Мотоцикл: Kawasaki KLX250S, Yamaha WR450F, Kawasaki Versys 650 Репутация: 23 |
Я для себя решил, что лучше на шине i2c делать ну и там просто определить, что датчик отвалился, если что. А если закоротился? Да еще и по питанию? -------------------- Думаете я ничего не умею? Прям как вы?
Полезно: 0
Вредно: 0
|
|
|
3.1.2018, 13:51
Сообщение
#111
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
А если закоротился? Да еще и по питанию? На МК есть защита. На худой конец, выкинешь контроллер и поставишь новый. Цена вопроса 80р. МК ATmega32 даёт 40мА на выход. Особо нечему гореть. -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
3.1.2018, 15:13
Сообщение
#112
|
|
Живёт здесь Группа: Свои Сообщений: 1116 Регистрация: 5.4.2010 Вставить ник Цитата Из: Зеленоград Мотоцикл: Kawasaki KLX250S, Yamaha WR450F, Kawasaki Versys 650 Репутация: 23 |
На МК есть защита. На худой конец, выкинешь контроллер и поставишь новый. Цена вопроса 80р. В дороге? И защиты нет. Если выход закоротить на землю, он сгорит. В случае I²C, при закорачивании линии данных на питание, выход МК сгорает гарантированно. И как искать место КЗ в шлейфе, опутывающем датчики? I²C - шина для связи между интегральными схемами внутри электронных приборов. Никак не для распределенной системы. Помехозащищенность нулевая. В таком случае используется шина с драйверами типа RS485 или CAN -------------------- Думаете я ничего не умею? Прям как вы?
Полезно: 0
Вредно: 0
|
|
|
3.1.2018, 19:14
Сообщение
#113
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
Вот продолжение про МКА, как запаковать МКА в сиплюсовый класс и сделать библиотеку для ардуины: https://habrahabr.ru/post/346006/
Помехозащищенность нулевая. Это есть такое. RS485 а чем она хороша? чем плоха i2c "с драйверами"? при закорачивании линии данных на питание, выход МК сгорает гарантированно. Не заметил. Хммм... Ничего, что для I2C используются аналоговые порты A4 и A5? Это эээ аналоговый вход. То есть, появление там питания +5В -- это норма. Там входное сопротивление мегаомы, хоть утычься туда питанием -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
3.1.2018, 19:29
Сообщение
#114
|
|
Живёт здесь Группа: Свои Сообщений: 1116 Регистрация: 5.4.2010 Вставить ник Цитата Из: Зеленоград Мотоцикл: Kawasaki KLX250S, Yamaha WR450F, Kawasaki Versys 650 Репутация: 23 |
чем плоха i2c "с драйверами"? Что-то не нашел драйверов для I2C. Приведи пример Ничего, что для I2C используются аналоговые порты A4 и A5? Это эээ аналоговый вход. То есть, появление там питания +5В -- это норма. Там входное сопротивление мегаомы, хоть утычься туда питанием Т.е. у всех приборов на линии I2C имеются только входы? А кто ж тогда передает? -------------------- Думаете я ничего не умею? Прям как вы?
Полезно: 0
Вредно: 0
|
|
|
4.1.2018, 0:03
Сообщение
#115
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
драйверов для I2C. Приведи пример хмм... полевой транзистор? две штуки. А кто ж тогда передает они перепрограммируются на i2c, но там, я повторю, на входе мегаомы. Мне не принципиально, пусть хоть кан будет. Вопрос только, что на этот кан можно посадить и сколько это будет стоить? Или на 485? В i2c мне только чувствительность к помехам не нравится, но можно скорость понизить. не нашел драйверов для I2C а что такое "драйвер"? I2c в токовую петлю - как говна: https://store.ncd.io/product/1-channel-4-20...2c-mini-module/ https://ru.aliexpress.com/item/100pcs-lot-X...iceBeautifyAB=0 -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
4.1.2018, 0:07
Сообщение
#116
|
|
Живёт здесь Группа: Свои Сообщений: 1116 Регистрация: 5.4.2010 Вставить ник Цитата Из: Зеленоград Мотоцикл: Kawasaki KLX250S, Yamaha WR450F, Kawasaki Versys 650 Репутация: 23 |
а что такое "драйвер"? Это микросхемы преобразующие сигналы МК для передачи по дифференциальной линии на расстояния до 1000м. I2c в токовую петлю - как говна: https://store.ncd.io/product/1-channel-4-20...2c-mini-module/ По 52$ целый модуль, да еще с потреблением до 20мА только на связь и возможность связать только 2 устройства, это просто ужасно. -------------------- Думаете я ничего не умею? Прям как вы?
Полезно: 0
Вредно: 0
|
|
|
4.1.2018, 1:46
Сообщение
#117
|
|
Карбон Углеродыч Группа: Модераторы Сообщений: 14118 Регистрация: 17.7.2010 Вставить ник Цитата Из: Север Хабаровска Мотоцикл: пешеход Репутация: 263 |
А давайте переименуем тему?
Вроде, не только про приборку здесь. Я хоть и понимаю одно слово из десяти, но мне тоже интересно Полезно: 0
Вредно: 0
|
|
|
4.1.2018, 1:50
Сообщение
#118
|
|
- Группа: Свои Сообщений: 2658 Регистрация: 29.4.2008 Вставить ник Цитата Из: Город Че Мотоцикл: Велосипед Репутация: 35 |
А давайте переименуем тему? Вроде, не только про приборку здесь. Так и так про приборку ) с расширенными функциями. Сейчас датчики соединят по bluetooth, чтобы проводов не было лишних, а потом ещё связь по Wi-Fi со смартфоном организуют. -------------------- Diablo_2
Полезно: 0
Вредно: 0
|
|
|
4.1.2018, 20:54
Сообщение
#119
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
По 52$ целый модуль, да еще с потреблением до 20мА только на связь и возможность связать только 2 устройства, это просто ужасно. Я к тому, что такие есть. Чип стоит 80р. Можно и дешевле найти, я не искал. На схеме же я вижу ту же токовую петлю. Я-то думал, драйвер какой-то, это что-то новое, а это хорошо забытое старое. Я в 90е годы паял "драйвер" из двух транзисторов КТ315Б для подключения терминала к СМ-ке на 300м по rs232. В общем, нет ничего страшного в i2c. Вроде, не только про приборку здесь. Вокруг неё хоть и понимаю одно слово из десяти Учиться никогда не поздно! по bluetooth, чтобы проводов не было лишних, а потом ещё связь по Wi-Fi со смартфоном организуют Это да. esp8266 популярны весьма нынче. Но вот как БТ и Вифи на мотике себя поведёт? А на нескольких мотиках рядом, а в движении? У меня ещё на подходе статейка про измерение скорости и оборотов на ардуине. Интересно кому? Класс "дисплей" я начал и пока бросил сделав только его детали: - экран (то, что видно), в дисплее может быть несколько) - поле (часть экрана, куда выводится инфа) - меню (список полей, по которым ходить кнопками, текущее поле мигает) Работает оно у меня только на АЦ дисплее через i2c подключаемом -- дешёвые китайские 16х2 или 20х4. Как подсунуть абстракцию так, чтобы не зависел код от аппаратуры -- я думаю ещё. Интерфейс классов разного железа слишком разный. Самая печаль, что есть на одном железе разные интерфейсы типа LCD и BigCrystal. Хочется оба. -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
6.1.2018, 0:13
Сообщение
#120
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
---
Совсем для чайников статья https://habrahabr.ru/post/346126/ про то, как делать тахометры и спидометры. -------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
10.1.2018, 12:28
Сообщение
#121
|
|
Сильно заинтересован Группа: Эндуристы Сообщений: 276 Регистрация: 13.11.2017 Вставить ник Цитата Из: Ростов-на-Дону Мотоцикл: Репутация: 13 |
Интересный проект! Послежу.
Вдобавок к перечисленным функциям хотелось бы ещё датчик относительного давления воздуха, датчик перегрузки, индикаторы загрузки вилки и заднего амортизатора и датчики коэффициента сцепления с дорожным покрытием. Ну если ты понимаешь, к чему я клоню ))) Полезно: 0
Вредно: 0
|
|
|
13.1.2018, 16:29
Сообщение
#122
|
|
Матёрый джебеловод Группа: Свои Сообщений: 5599 Регистрация: 8.8.2010 Вставить ник Цитата Мотоцикл: Продан. Репутация: 143 |
Вдобавок к перечисленным функциям хотелось бы ещё датчик относительного давления воздуха, датчик перегрузки, индикаторы загрузки вилки и заднего амортизатора и датчики коэффициента сцепления с дорожным покрытием. Датчики углов атаки и скольжения забыл. Если вся эта инфа не для штурмана, а для пилота, то насколько эти все данные информативны? То есть читаемы на ходу. При движении не по асфальту? Как оно при солнечном свете? Как в темноте? Две машины у меня, как водится в 21 веке, без термометра ОЖ. Поставил на одну с ЖК дисплеем, на другую с люминесцентным. В итоге- ЖК идеально видно на солнце, чуть хуже ночью с подсветкой, и вообще никак днем, но когда дисплей в тени. Люм. индикатор- на 5+ ночью, днем вообще не видно, если на солнце. Хоть два ставь одновременно...На экскаваторе ТФТ-дисплей, вот там видимость великолепная.
-------------------- Мои видео по Джебелю-200 ( обслуживание и пр) здесь: ССЫЛКА.
Полезно: 0
Вредно: 0
|
|
|
13.1.2018, 20:42
Сообщение
#123
|
|
Профессиональный чайник Группа: Свои Сообщений: 3128 Регистрация: 29.9.2013 Вставить ник Цитата Из: Всеволожск Мотоцикл: BMW R1200GS KTM 690SMC-R KTM 250EXC Репутация: 22 |
Мне нравится OLED, видно и днём и ночью и не бликует и крепкий.
-------------------- Здоровому спорт не нужен, больному -- вреден.
Полезно: 0
Вредно: 0
|
|
|
13.1.2018, 21:29
Сообщение
#124
|
|
Сильно заинтересован Группа: Эндуристы Сообщений: 132 Регистрация: 19.10.2011 Вставить ник Цитата Из: Кемеровская обл., Осинники Мотоцикл: Yamaha YBR125'12 и Suzuki Djebel 250XC'97 Репутация: 3 |
Мне нравится OLED, видно и днём и ночью и не бликует и крепкий. А они бывают в продаже размером нормальным? Что-нибудь сопоставимое с родным дисплеем джебела? Я чтот не нашел =( Полезно: 0
Вредно: 0
|
|
|
13.1.2018, 23:56
Сообщение
#125
|
|
Весьма заинтересован Группа: Эндуристы Сообщений: 96 Регистрация: 20.6.2016 Вставить ник Цитата Из: Ростов-на-Дону Мотоцикл: Suzuki DR250R '96 Репутация: 2 |
На хабре положил серию статеек о решении сопутствующих проблем: Как прикоснувшийся к эмбеду человек хочу внести свои 5 копеек:* https://habrahabr.ru/post/319336/ про fram или где сохранять одометры с моточасами. * https://habrahabr.ru/post/319180/ про обработку нажатий кнопок. * https://habrahabr.ru/post/319184/ про кооперативную многозадачность в тривиальном виде. Там много интересных комментариев. Приятного чтения. 1. Циклические буфера на еепром и код грея очень кстати насоветовали в каментах. 2. Не читал. 3. Не читал, люби конвееры и автомат состояний. Целиком эту идею с приборкой не поддерживаю(сорян))))))) Но творчество есть творчество, если тяга к нему есть - она джолжна быть реализована. -------------------- Имея один маркер можно изрисовать почти всё, имея два маркера можно изрисовать вообще всё!!!
Полезно: 0
Вредно: 0
|
|
|
Текстовая версия | Сейчас: 21.9.2024, 1:30 |