Страница 1 из 6 123456 ПоследняяПоследняя
Показано с 1 по 10 из 58

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Новичок
    Регистрация
    05.09.2011
    Возраст
    31
    Сообщений
    9
    Вес репутации
    157

    По умолчанию Тахометр на БСЗ

    Прива всем, имеется авто, карбюратор, с бесконтактной системой зажигания.
    Подключаю ардуино к датчику холла, хочу сделать тахометр... ну и вобщем то не работает))) может ктонить сможет мне помочь? спасибо)

    вот код:
    PHP код:
    //Reads the State of a Pot and displays on screen

    int potPin 1;
    int Old 0;
    int Now 0;
    long time 0;
    int count 0;

    void setup()
    {

      
    pinMode(potPinINPUT);  
      
    Serial.begin(9600); 
      
    Old analogRead(potPin);
      
    time millis();
    }

    void loop()
    {

      
    Now analogRead(potPin);
      if (
    abs(Now Old) >= 400)
      {
      
        
    Old Now;
        
    count++;
        if (
    count 50)
        {
          
    //замеряем время за 50 импульсов и все это переводим в обороты в минуту
          
    Serial.println(3000000/((millis() - time)*2)); 
          
    count 0;
          
    time millis();
        }
      }  

    Последний раз редактировалось Chip; 05.09.2011 в 21:47.

  2. #2
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,379
    Вес репутации
    10

    По умолчанию Re: Тахометр на БСЗ

    Аналоговый вход зачем используешь?
    1-Переконфигурируй этот порт на цифровой.
    2-Ты не получишь 50 имульсов, длительность импульса на низких оборотах может составлять десятки миллисекунд . В итоге ты один импульс считаешь большое количество раз.

  3. #3
    Новичок
    Регистрация
    05.09.2011
    Возраст
    31
    Сообщений
    9
    Вес репутации
    157

    По умолчанию Re: Тахометр на БСЗ

    Chip, спс что откликнулся)
    Аналоговый вход.... не знаю зачем использую, счас попробую цифровой)
    по поводу импульсов... устройство именно так себя и веет, т.е. ставишь считывать хоть 2 импульса хоть 20000 оно это мгновенно считывает(((( хотя я же вроде сделал проверку чтобы считывал тока када смена импульса идет.....
    И как тогда быть?!? вообще чтоли не получится сделать?(((((((

  4. #4
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,379
    Вес репутации
    10

    По умолчанию Re: Тахометр на БСЗ

    Получится, только нужно ждать окончания положительного импульса, только потом проверять наличие нового импульса

  5. #5
    Местный
    Регистрация
    10.11.2010
    Сообщений
    144
    Вес репутации
    194

    По умолчанию Re: Тахометр на БСЗ

    Цитата Сообщение от Chip Посмотреть сообщение
    Получится, только нужно ждать окончания положительного импульса, только потом проверять наличие нового импульса
    Может прерыванием "по уровню" сделать?

  6. #6
    Пользователь
    Регистрация
    01.11.2010
    Возраст
    42
    Сообщений
    57
    Вес репутации
    178

    По умолчанию Re: Тахометр на БСЗ

    Цитата Сообщение от edw123 Посмотреть сообщение
    Может прерыванием "по уровню" сделать?
    это как?

  7. #7
    Местный
    Регистрация
    10.11.2010
    Сообщений
    144
    Вес репутации
    194

    По умолчанию Re: Тахометр на БСЗ

    Цитата Сообщение от sirik Посмотреть сообщение
    это как?
    не проверять всё время в цикле 1 на ножке, а при появлении 1 "автоматически" посчитается импульс.

  8. #8
    Пользователь
    Регистрация
    01.11.2010
    Возраст
    42
    Сообщений
    57
    Вес репутации
    178

    По умолчанию Re: Тахометр на БСЗ

    Цитата Сообщение от edw123 Посмотреть сообщение
    не проверять всё время в цикле 1 на ножке, а при появлении 1 "автоматически" посчитается импульс.
    если импульс будет дольше, чем Arduino пробежит по программе, то получим не правильное значение; надо считать 1 и 0. кстати, хочу немного усовершенствовать программу, но чуть позже

    на счет подключения: я не могу проверить какое напряжение приходит от датчика (нет осциллографа(((( ). от него идет 2 провода, я цепляюсь на тот, который, скажем так, несет информацию коммутатору. но если предположить что он просто коммутирует +, то тогда напряжение должно быть ~14V.
    массу соединил, так как если ее не объединять, то всегда есть небольшой сигнал на входе, не понятно почему (думаю паразитный ток через базу проходит ну или как он там правильно называется)

    все-таки думаю, что либо не правильный транзистор подобрал, либо резисторы

    2 Rembo2743: можешь нарисовать свою схему с названием деталей и ихними номиналами?

  9. #9
    Новичок
    Регистрация
    05.09.2011
    Возраст
    31
    Сообщений
    9
    Вес репутации
    157

    По умолчанию Re: Тахометр на БСЗ

    подключил к цифровому каналу, терь ваще ляпота - показывает 0 када искры нет, 1 када искра есть....
    осталось 2 проблемы:
    1) (millis() - time) возвращает всегда разные значения, от 0 до 40... почему может быть такая нестабильность?!?
    2) не могу перевести это все дело в об\мин
    может кто сможет подсказать чтонить?!? спасибо)

  10. #10
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,379
    Вес репутации
    10

    По умолчанию Re: Тахометр на БСЗ

    Выложи свой скетч, я посмотрю в чем проблема

Страница 1 из 6 123456 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •