Page 17 of 55

Re: Тахометр на ATtiny2313

Posted: 29 Dec 2010 22:40
by Devais
master-makc,
О, спасибо.

Re: Тахометр на ATtiny2313

Posted: 29 Dec 2010 23:05
by hardlock
master-makc wrote:Но на машине сначала лучше оставить 220к ?
да, т.к. там амплитуда до 400 Вольт.

Re: Тахометр на ATtiny2313

Posted: 29 Dec 2010 23:38
by Drinker
Serioga wrote:
hardlock wrote:
Serioga wrote:А что собираешься мерять ?
обороты. На дизеле они так и меряются.
Не сталкивался :dontknow: Что там на выходе ?
На выходе там прямоугольник. Короче как я понял,следует изменить только входное сопротивление и подобрать делитель в прошивке?

Re: Тахометр на ATtiny2313

Posted: 30 Dec 2010 11:23
by Serioga
master-makc wrote:Все, вроде работает, но только когда уменьшил входное сопротивление в двое (на счетном входе прямоугольник амплитудой в 5В). Но на машине сначала лучше оставить 220к ?
Сначала 220к а потом как получится, хотя для прерывателя стандартная схема работает нормально.

Добавлено спустя 5 минут 45 секунд:
Serioga wrote:На выходе там прямоугольник. Короче как я понял,следует изменить только входное сопротивление и подобрать делитель в прошивке?
Делитель и фильтр (резисторы,емкость) под выходное напряжение а прошивку под количество импульсов.

Re: Тахометр на ATtiny2313

Posted: 09 Jan 2011 00:24
by stubborn
ребят была попытка повторить конструкцию в smd но видно ручки не из того места,сейчас перевожу печатку в дип так чтоб было просторней подскажите чем заменить bc 847?

Re: Тахометр на ATtiny2313

Posted: 09 Jan 2011 00:26
by hardlock
stubborn wrote:чем заменить bc 847?
да хоть КТ315 или КТ3102 (второй лучше)

Re: Тахометр на ATtiny2313

Posted: 09 Jan 2011 08:39
by Serioga
stubborn wrote:ребят была попытка повторить конструкцию в smd но видно ручки не из того места,сейчас перевожу печатку в дип так чтоб было просторней подскажите чем заменить bc 847?
Я ставил С9014.

Re: Тахометр на ATtiny2313

Posted: 09 Jan 2011 17:05
by gosha3753
Здравствуйте hardlock собрал я тахометр по вашей схеме работает.У меня к Вам вопрос у меня матиз 3х цэлиндровый одна бабина абароты на матисе-960. На тахометре они играют от-1500 до 2300 помогите пожалуста с Уважением Игорь.

Re: Тахометр на ATtiny2313

Posted: 09 Jan 2011 23:27
by hardlock
gosha3753 wrote:они играют от-1500 до 2300
скорее всего проблема во входном фильтре - пробуйте подбирать конденсаторы (в сторону увеличения). Когда добъётесь стабильных показаний, можно будет судить о правильности коэфициента...

Re: Тахометр на ATtiny2313

Posted: 12 Jan 2011 12:11
by gosha3753
hardlock Огромное Вам СПАСИБО с уважением Игорь.

Re: Тахометр на ATtiny2313

Posted: 12 Jan 2011 12:15
by hardlock
gosha3753, получилось хоть?

Re: Тахометр на ATtiny2313

Posted: 13 Jan 2011 00:31
by SWARNOY
добрый день подскажите как переделать прошивку на интервал оборотов 10 -200 об\мин( или 10 - максимум возможного, главное чтоб от 10 об\мин) и на геркон, или подскажите на правильном ли я пути размышлений
1) как ставить геркон я понял таким образом
( +5 вольт - геркон - сопротивление - база транзистора BC847)
это правильно?
2) немного не разберусь с импульсами
#define byBladeCnt 2 //1- две катушки, 2 - одна катушка, 4 - мотоцикл...
отношение один импульс =1 оборот в каком случае?
3) диапазон оборотов устанавливается в этой части?

Code: Select all

void PrepareRpmData(WORD wRpm)
{
    BYTE i;
    WORD R;
    
    R = wRpm;       
    
    byDisplay[3] = wRpm % 10;
    wRpm /= 10;
              
    if (byDisplay[3] > 4)  //округляем
    {
      wRpm++;
      R += 10;
    }        
    
    byDisplay[3] = 0;
    
    
    // Первые 4 цифр - обороты двигателя
    for(i=0; i<3; i++)
    {
       byDisplay[2-i] = wRpm % 10;
       wRpm /= 10;
    }
    
    if (R < 10)
    {
      byDisplay[0] = 10;
      byDisplay[1] = 10;
      byDisplay[2] = 10;            
      goto exit;
    }   
    if ((R >= 10) & (R <100))
    {
      byDisplay[0] = 10;
      byDisplay[1] = 10;
      goto exit;
    }
    if ((R >= 100) & (R <1000))
    {
      byDisplay[0] = 10;
      goto exit;
    }            
4) требуется ли что-то изменить в формуле

Code: Select all

      wTimerOvfCnt++;    // Учитываем возможность переполнения

            lTmp = (62500L * 60L * (long)wFlashCnt);
            lTmp /= ((wTimerOvfCnt << 8) + TCNT0);
            lTmp /= byBladeCnt;
            wRpm = lTmp;

5) если планируется впаять 3 индикатора то строки с byDisplay[3] нуно будет переиеновать в byDisplay[2]
эта часть будет так выглядеть

Code: Select all

void PrepareRpmData(WORD wRpm)
{
    BYTE i;
    WORD R;
    
    R = wRpm;       
    
    byDisplay[2] = wRpm % 10;
    wRpm /= 10;
              
    if (byDisplay[2] > 4)  //округляем
    {
      wRpm++;
      R += 10;
    }        
    
    byDisplay[2] = 0;
    
    
    // Первые 3 цифр - обороты двигателя
    for(i=0; i<2; i++)
    {
       byDisplay[2-i] = wRpm % 10;
       wRpm /= 10;
    }
    
    if (R < 10)
    {
      byDisplay[0] = 10;
      byDisplay[1] = 10;
                
      goto exit;
    }   
    if ((R >= 10) & (R <100))
    {
      byDisplay[0] = 10;
     
      goto exit;
    }
    
    
а местами удалить к примеру эту запись

Code: Select all

      
  PORTB = ~byCharacter[byDisplay[3]];
  PORTD.4 = 1;
  delay_us(LED_delay);
  PORTD.4 = 0;
6) логика мне подсказывает что нужно что-то изменить тут

Code: Select all

byDisplay[2-i] = wRpm % 10;
       wRpm /= 10;
это так?

можете разьяснить что это за формула,
7) хотя интуитивно я догадываюсь, но лучше спрошу, почему везде приравнивается к 10 ( wRpm /= 10 , byDisplay[0] = 10)

Re: Тахометр на ATtiny2313

Posted: 14 Jan 2011 19:30
by Casper_pro
SWARNOY wrote:добрый день подскажите как переделать прошивку на интервал оборотов 10 -200 об\мин
Чтобы у тебя всё получилось тебе надо:

1. убрать из прошивки строчки

if (byDisplay[3] > 4) //округляем
{
wRpm++;
R += 10;
}

byDisplay[3] = 0;

2. сделать датчик выдающий 9 импульсов на оборот, а лучше 12! А если будет датчик с 1 импульсом на оборот то измерения будут начинаться только с 80 об/мин.

3. вставить количество импульсов на оборот выдаваемых датчиком в строку 17 пошивки.

Re: Тахометр на ATtiny2313

Posted: 14 Jan 2011 22:22
by Artem
Доброго времени суток
Собрал тахометр, включил - ноль показывает, но при подключении на выход коммутатора - показывает значение, вдвое превышающее нормальное. Значит залить прошивку с коефициентом 4 (сейчас - 2)?

При подключении на вход коммутатора (на датчик Холла) - показывает обороты правильно, но ниже 1500 не ловит (показывает ноль). Какой нужно резистор вместо 220к поставить, чтобы подключить на датчик Холла? Порядка 10к?

Если перепрошивать тиньку, хватит кварца с кондерами, подпаянных на ножки МК или нужен генератор?

Спасибо за внимание

Re: Тахометр на ATtiny2313

Posted: 14 Jan 2011 23:49
by hardlock
Artem wrote:но при подключении на выход коммутатора - показывает значение, вдвое превышающее нормальное. Значит залить прошивку с коефициентом 4 (сейчас - 2)?
зажигание с распределителем? Если да, то... если при подключении ко входу показывает правильно, то скорей всего тахометр ловит раразитный сигнал отруда-то - увеличивайте резистор на входе и ёмкость.
Artem wrote:Какой нужно резистор вместо 220к поставить, чтобы подключить на датчик Холла? Порядка 10к?
где-то так.
Artem wrote:Если перепрошивать тиньку, хватит кварца с кондерами, подпаянных на ножки МК или нужен генератор?
хватит кварца.

Re: Тахометр на ATtiny2313

Posted: 15 Jan 2011 14:57
by Artem
Спасибо, буду пробовать

Добавлено спустя 4 часа 39 минут 19 секунд:
Появилась новая проблема - при работающем двигателе все мельтешит, некоторые цифры в полную яркость горят, некоторые еле-еле. Показывает вообще ерунду какую-то, при чем нестабильно.
Это началось после попытки вместо 220к подпаять 100к и подключить к датчику Холла. В этом может быть причина? Или просто совпадение?

В чем это может быть проблема? До этого работало четко, только неправильно обороты показывал. Напряжение питания мерял - 4,97 В.
Что ж за напасть такая...

Спасибо за внимание

Re: Тахометр на ATtiny2313

Posted: 15 Jan 2011 15:27
by Casper_pro
А ти к тому что нужен выводу датчика холла подключил?

Re: Тахометр на ATtiny2313

Posted: 15 Jan 2011 16:02
by Artem
У меня всего один вывод с датчика Холла. Та и моргает сейчас все, даже поключенное на выход коммутатора (на катушку зажигания).

Re: Тахометр на ATtiny2313

Posted: 15 Jan 2011 16:23
by Casper_pro
Ну незнаю! Ти проверь всю схему, может когда паял соплей навешал?

Re: Тахометр на ATtiny2313

Posted: 15 Jan 2011 16:54
by Artem
Я перепаивал всего один резистор, до этого все работало. Соплей нет.
Уважаемый hardlock, не подскажете в чем может быть проблема?

Re: Тахометр на ATtiny2313

Posted: 16 Jan 2011 22:40
by hardlock
Artem, неподключенный дэвайс работает нормально? Ну в смысле подключено только питание? Если да, то возможно происходит помеха по входу и МК зависает/сбрасывается.

Re: Тахометр на ATtiny2313

Posted: 17 Jan 2011 08:18
by Artem
Не совсем нормально - при включении питания моргнет правый ноль и тухнет. Раньше тоже такое было, но при подключении входа - ноль уже не тух, а сейчас и при подключенном к коммутатору тухнет пока не заведешь двигатель. Потом начинает все моргать...

Re: Тахометр на ATtiny2313

Posted: 17 Jan 2011 09:16
by hardlock
Artem wrote:моргнет правый ноль и тухнет
МК завис или ушёл в РЕСЕТ. Попробуйте 1-й вывод подтянуть к +5Вольтам.

Re: Тахометр на ATtiny2313

Posted: 17 Jan 2011 13:25
by Artem
Через какой резистор?

Re: Тахометр на ATtiny2313

Posted: 17 Jan 2011 13:26
by hardlock
Artem, от 0к (но тогда прошивать не получится) до 10к