ПОнравилась приборка с хонды, я тоже мечтал сделать графически стрелку на ЖКИ, но прикинул что круглых ЖКИ нужно диаметра по доступной мне цене, мне не достать, найти б по дешевке приводы стрелок, я непойму либо я немогу просто найти приборов по адекватной цене, либо просто живу в месте где такие никому уже ненужные вещи (кроме меня) по цене золота...
Жаль Беларусь далеко, от икаруса также привод понравился...
KOT_637,
Очень интересная разработка, один вопрос, с целью расширения кругозора (опять же во мне играет этот минимализм) - а почему в данной разработке не применима динамическая индикация, переферию - вон, останется 12 транзисторов - по числу знакомест, и 7 резисторов - по числу сегментов(ну или восемь, если использовать точку)?
Или я что-то не досмотрел?
По-моему закачивать побитно достаточно неудобно, или к этой линии предполагается еще что-то цеплять?
Прошу прощения, действительно не досмотрел, 10 транзисторов.
KOT_637,
Очень интересная разработка, один вопрос, с целью расширения кругозора (опять же во мне играет этот минимализм) - а почему в данной разработке не применима динамическая индикация, переферию - вон, останется 12 транзисторов - по числу знакомест, и 7 резисторов - по числу сегментов(ну или восемь, если использовать точку)?
Или я что-то не досмотрел?
По-моему закачивать побитно достаточно неудобно, или к этой линии предполагается еще что-то цеплять?
Прошу прощения, действительно не досмотрел, 10 транзисторов.
Вот ссылка на прошивку и модель в протеусе спидометра. http://ifolder.ru/20447543
Если будут просьбы то приведу в порядок схему и прочую документацию к изготовлению спидометра и выложу ссылку на скачивание.
Вот тут скачал .
Интересуюсь, схемками по этой теме, хочу собрать себе, но не для явы, а для авто(ваз2110) У меня летом спидометр отстает от скорости, причем чем выше скорость, тем больше отставание(зимой нормально, но тоже бывает, когда в салоне жарко). Так гайцы пару раз ловили, по спидометру 100, а на радаре 130. Теперь все больше поглядываю на тахометр, не очень комфортно.
Планирую пока так -
Штатный спидометр подправить с помощью программки(если получится)
Где одометр поставить температуру за бортом, в салоне, и двигателя и там же одометр
где суточный пробег дубляж скорости, суточный пробег, и когда двигатель не работает счетчик моточасов.
Думаю семисегментные в машине будут лучше видны, можно поставить регулятор яркости.
joalil все будит но чуть пожже, на неделе, может следующей.
Семисигментные индикаторы дешевле и надежней, но неудобны в использовании, габариты, динамическая индикация.... Также думаю в машине будет нормально видно, особенно если есть легкая тонировка.
занялся разработкой приборной панели себе на скутер, спидометр выполню по схеме AGR`а, а вот тахометр хочется стрелочный. Индикацию на шаговом двигателе уже сделал, стрелка бегает как надо. Но вышла загвоздка с измерением частоты вращения коленвала. Я учусь писать в mikroC и никак не могу разобраться с измерением частоты, понял только, что нужно использовать TMR1 с прерываниями по RB6 (контроллер 628a). Буду очень благодарен, если кто-нибудь выложит кусок программы на си, который будет измерять частоту импульсов с RB6.
Шаговик выдрал вроде бы из принтера, маленький, такой же, как в 3.5 дюймовом дискетнике, но на валу не шлицы, а шестерёнка. Шаговик с 4 обмотками, 18 градусов на шаг, итого 20 шагов на оборот. Приделал редуктор с передаточным числом 12/38 из деталей детской машинки, теперь за один шаг стрелка двигается где-то на 5.6 градуса. Шкалу сделал до 12000 об/мин (одноцилиндровый двухтактник 70сс с алюминиевой поршневой на жидкостном охлаждении), около 270 градусов. Тогда дискретность отображения получается около 250 об/мин, что для оперативной индикации вполне приемлемо.
Сейчас бьюсь с измерением частоты. Понял, что нужно считать период между импульсами с помощью TMR1, больше ничего не понял. Все готовые нагугленные решения либо построены на PIC18, либо имеют период измерения в 1с. Крнтроллер я использую PIC16F628A, драйвер шаговика ULN2003A.
Регистрация: 09.03.2004 Сообщения: 1858 Темы: 84 Откуда: Полоцк, Беларусь Мото: пока нет :(
Период в rpm перевести большая проблема ? Вот один из вариантов : прерывания от rb0 останавливаем тмр1, сохраняем tmr1h, tmr1l (16 разрядное значение tmr1) очищаем тмр1 и снова запускаем. Выход из прерывания. Допусти тмр1 без пред делителя, тактовая проца 4 мгц значит за 1 минуту насчитает 60 000 000. 60 000 000 делим на tmr1h tmr1l в результате получаем количество оборотов в минуту. Если два импульса на 1 оборот коленвала, то вместо 60 000 000 делим 30 000 000.
да нет, перевести период в обороты в минуту - не проблема проблема в том, что TMR1 16-битный, и, когда он насчитает 65535, он обнулится и дальше пойдёт. При тактовой 4МГц (я погорячился и начал на 10МГц лепить, но благо частоту сменить всегда можно) таймер будет переполняться при частоте где-то ниже 15Гц. Пропадают обороты ниже 3000 об/мин, жалко... Ну, наверное, можно будет кварц поменьше поставить, или ввести переменную, которая будет считать переполнения TMR1. пытаюсь разобраться. вот накидал код, в протеусе не очень работает, но вечером попробую в железо зашить
do {
period = 0; //
TMR1L = 0; // очищаем TMR1 и переменную периода
TMR1H = 0; //
while (PORTA.F0==0); //если на RA0 - низкий уровень, то...
T1CON=0b00000001; //...запускаем TMR1
while (PORTA.F0==1); //ждём конца импульса
while (PORTA.F0==0); //если на RA0 снова низкий уровень, то...
T1CON=0b00000000; //останавливаем TMR1
period = (TMR1H<<8)+TMR1L; //записываем в 16-битный period 8-битные TMR1H и TMR1L
while (PORTA.F0==1); //ждём конца импульса
а в ПИКах нет предделителя для таймера? по словам AGR я так понял есть,тогда зачем менять тактовую частоту проца?
Я к примеру сделал у себя так: в перывании считывается значание таймера в переменную и после этого сразу таймер обнуляю, а из переменной вычисляю значение оборото, скорости...
Правда у меня вобще таблица зашита: значения таймера- показания тахометра, поэтому функции деления, умножения я исключил, уж очень много времени они на 8-битном процессоре занимают.
есть предделитель, для TMR1 он бывает 1:1, 1:2, 1:4 и 1:8. Но, я так понял, если его включать, то сбрасывать таймер будет каждый 1-й, 2-й, 4-й или 8-й импульс. Т.е. таймер ещё чаще будет переполняться
Регистрация: 28.11.2008 Сообщения: 181 Темы: 7 Откуда: Very middle-middle Russia Мото: Jawa 350/634 1982г
Мне вот почему-то думается так: начинка тахометра стрелочного в принципе допустима, такой же как в китайских мопедах. Характеристика конечно нелинейная, но об этом позже. Спидометр чуть сложнее, но из тех же ингридиентов, и абсолютно аналоговый, с сохранением внешнего вида и шкал родных банок. А вот для широты души, уже дополнительный, возможно съемный блок бортавога камппутера со своими индикаторами в любом виде. Ведь точность значений нужна более для понтов и спортивного интереса, а реально в дороге не требуется, для статистики дальнобоя может быть, хотя меня лично не коробит пользоваться другими устройствами. _________________ Jawa 634(-7-01) / 6v / black / 1982.
"...нет ничего невозможного, нужно всего лишь достаточно сильно хотеть..." (CR, 1983)
Попробовал в протеусе запустить - обороты измеряет вполне адекватно, но только начиная от 16 Гц (960 об/мин) при 4МГц тактовой частоты. Всё, что ниже, выдаёт случайные числа - переполнение TMR1 не удаётся никак зафиксировать.
while (PORTA.F0==0); //если на RA0 низкий уровень, то...
T1CON=0b00000001; //...запускаем TMR1
if (TMR1H==255) {
perepoln++;
TMR1H=0;
TMR1L=0;
}
while (PORTA.F0==1); //ждём конца импульса
Не работает. Подскажите, как сделать так, чтобы при каждом переполнении TMR1 переменная perepoln увеличивалась на единицу?
Добавлено:
Удалось снизить нижний предел частоты до 2Гц (120 об/мин) при Fosc=4MHz путём включения предделителя 1:8. В принципе, этого достаточно для прибора, т.к. точность индикации всё равно около 250 об/мин
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы можете скачивать файлы