Показати повідомлення
Вот к концу сезоно окончательно доломался спидометр. Одометр вообще никогда не работал, слизалась пластмассовая шестерня. на разборках машинка стоит 100 грн. а мне еще и тросик надо (зацепил где-то)
вот и решил заменить это все бортовым компьютером
Это вторая, лайт версия.
Итак... бортовой компьютер включает в себя следующие функции:
- спидометр;
- одометр:
- часы реального времени с календарем;
- время в пути;
- суточный (засечка) пробег;
- максимальная скорость;
- средняя скорость;
- Напряжение бортовой сети;
- температура двигателя;
- и т.к. имеется свободная нога, возможно ограничетель скорости, (при превышении установленной отключался коммутатор)
Прошивка находится в стадии отладки. Все элементы БК протестированы на макетной плате.
Но есть 2 вопроса, терзающие мою душу:
Насколько я знаю ЖКИ не годится, ибо потечет на солнце, что поставить? OLED? PLED?
И не менее важный вопрос: Интерфейс...
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
Кстати мой кпк тоже выдал ошибку в топике про бензодатчик.
Fatal error: Allowed memory size of 52428800 bytes exhausted (tried to allocate 16456 bytes) in /home/hostings/moto/forum.php on line 259
Если поможет.
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
про бензодатчик напишу сюда...
вообщем возникла такая безумная идея, а что если мерять вес топлива в баке? Например подключив датчик давления (см рис. коряво, но, я дуаю понятно) и колебания пофигу. На ямках будут колебания. но в такие моменты не до уровня топлива... Конечно если я еду в горку(с горки) в разных точках бака давление будет разное, это можно компенсировать, поставив 2 датчика в 2-х разных точках или один спаренный (например КРХ5050DP)...
теперь о БК.. конечно окружность, хоть и 2 бита, но меньше считать. Не хотел выкладывать сырой код, но что ж вы меня застваили. У меня спидометр реализован так:
unsigned int speed; // время оборота колеса
unsigned char odometr; //счетчик оборотов колеса
eeprom int spd = 20669 ; // постоянная, по которой определяется скорость, формулa: V(km/h)= 3.6*pi*D/((1/Fтаймера)*TCNT)
/*
из формулы видно что можно менять постоянную spd варьируя значением D
и проделывая соответсвующие вычисления обновлять постоянную
*/
char odol = 0; // временная переменная перерасчета километража
char metri; //переменная, хранящая пробег в сотнях матров
// прерывание от геркона колеса
interrupt [EXT_INT1] void ext_int1_isr(void)
{
speed = TCNT1 ; //заносим в переменную speed значение доп. 8бит старших и 8бит младших счетного регистра тайцмера Т0
odometr ++ ; //приращиваем переменую пройденного расстояния
TCNT1 = 0; //обнуление счетчика
}
//подпрограмма вычесления текущей скорости и вывода ее на ЖКИ
speedometr(unsigned char _lcd_x, unsigned char _lcd_y)
{
unsigned char speed_real = spd / speed;
char *_temp_str;
itoa(speed_real,_temp_str);
if (speed_real < 10)
{
lcd_gotoxy(_lcd_x+2, _lcd_y);
lcd_puts(_temp_str);
lcd_gotoxy(_lcd_x+1, _lcd_y);
lcd_putchar(0x83);
lcd_gotoxy(_lcd_x, _lcd_y);
lcd_putchar(0x83);
}
else if (speed_real<100)
{
lcd_gotoxy(_lcd_x+1, _lcd_y);
lcd_puts(_temp_str);
lcd_gotoxy(_lcd_x, _lcd_y);
lcd_putchar(0x83);
}
else
{
lcd_gotoxy(_lcd_x, _lcd_y);
lcd_puts(_temp_str);
}
lcd_gotoxy(_lcd_x+3, _lcd_y);
lcd_putsf(kmh);
}
void main(void)
{ //бла бла бла описания портов и т.д. вообщем програмка...
speedometr(0,1); //вывод текущей скорости на ЖКИ в нулевую ячейку первой строки
}
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
Змінено: 11.02.2008 р., mokriy
Да, и у меня такая же фигня.
На всякий случай, тоже написал Игорю.
to mokriy: Интересно, что у меня дома, по такой схеме работает водомер в резервном водяном баке, правда вместо датчика - обычный манометр низкого давления.
Теоретически, должно работать. Только датчики должны быть бензостойкими.
Кстати, в космодроме есть интересные оптические (на преломление) датчики наличия жидкости. Простые как грабли. Как датчик резервного остатка вполне подошли бы.
Ушествие Второе. Окончательное.
необязательно бензостойкие датчики, их можно подключить через мембранку, или подобрать трубочку с таким внутренним диаметром что бы бензин не попадал непосредственно на датчик.
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
Со спидометром я разобрался, правда у меня без формул, пишу на асме) . Теперь вопрос по одометру, в какой момент лучше делать сохранку, в момент отключения зажигания, или при обновлении счётчика? Естественно, износ епромки будет напорядок меньше, при сохранке в момент выключения.
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
Теоретически, еепромка в АВР допускает до 100 тыс. циклов перезаписи (о ПИКах я не в курсе). Если хитро распределить эти циклы по некоторому объему памяти, можно это количество многократно увеличить. А это значит, сохраняйся хоть через каждый километр, мопед закончится раньше, чем EEPROM.
С другой стороны, психологически, понятны опасения при расходовании ограниченных ресурсов. Я и сам такой, что делал бы сохранение при выключении.
Ушествие Второе. Окончательное.
показания одометра я вообще думал вписывать не в ЕЕPROM, а в память программ (Flash). и обновлять это значение раз в сутки по расписанию часиков. Потом передумал и все-таки решил что в EEPROM после каждого выключения зажигания. Можно, конечно и дублировать переменную в память программ и даже в память часиков, которые подпитываются от отдельной батарейки.
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
В пике епромка допускает 10-100 тыс. записи, память программ 1-10 тыс. Я буду хранить пробег и всякие мелочи в четырёх местах епромки с КС на рыло. Запись будет происходить в одно из четырёх мест при выключении питания. При несовпадении пробега с КС, будут взяты данные с прошлой записи. Здесь всё просто и надёжно. Теперь надо прикрутить автомат опережением, с этим прийдётся подзаморочиться.
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
У тебя планируется разместить силовой ключ системы зажигания в одном блоке с БК?
Это я к тому, что ПМСМ было бы как-то не очень красиво - тянуть через весь мопед провода от катушки зажигания.
Ушествие Второе. Окончательное.
Змінено: 12.02.2008 р., Leon
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
Ну да. Сам коммутатор ПМСМ лучше оставить отдельным блоком. Слегка настораживает перспектива "размазывания" системы зажигания по всему скуту. Имею в виду длинные "корпуса" и т.д.
PS Хотя, в авто бывает и не так "размазано"...
Ушествие Второе. Окончательное.
Змінено: 12.02.2008 р., Leon
Думаю в БК поставить оптрон, провод к полевику, который будет стоять на самой катушке.
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
Тоесть ты стоковый коммутатор вообще использовать не будешь? а датчик?
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
Родной коммутатор стоит 180гр (в прошлом году покупал), и он без автомата. Полевик стоит около 5 грн. Какой смысл использовать родной?
Для моего автомата момента зажигания буду ставить датчик Холла на колено, нехочу париться с фронтами родного датчика.
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
Появилась идея прикрутить к БК функцию автоматического управления габаритками и фарой. У меня для этой цели есть два свободных выхода на процике. Стратегия такая - габаритки включать, когда работает мотор и выключать, через время после остановки мотора. Фару включать в тёмное время суток и при превышении 60 км/час. Естественно всё можно подгонять в настройках под себя.
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
Если я не ошибаюсь, то запрещено ездить без ближнего света и габаоритов, независимо день или ночь.. по крайней мере на скутерах после 96 года свет вообще не выключается, автомат дальний/ближний тож считаю лишним.
Вот расковырял старый СД-РОМ, там привод оптической головки от ДПТ
сижу думаю как прикрутить его к БК...
папа,а правда что от форумов тупеют?
- гы,сынок,лол!
Нипонил, зачем привод сидюка в БК?
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
У меня очередная бредовая идейо. Нужен ли иммобилизатор, как дополнительная функция к БК? После включения зажигания вводится пин-код, что-то в этом духе. :spy:
[url=sdelal.net]http://industrialniy.users.photofile.ru/photo/industrialniy/115116213/135197751.gif
Фича полезная, ИМХО... Гы....Transporter?
Правила дорожного движения написаны кровью...тех, кто их нарушал, в основном.