Показано с 1 по 10 из 10
  1. #1
    Новичок
    Регистрация
    17.01.2008
    Сообщений
    7
    Вес репутации
    202

    Вопрос Можно ли реализовать на одном контроллере

    Добрый день.
    Хочу на ардуине реализовать три задачки
    1) Работу как slave модуля сигнализации, т.е. ловим определенные сигналы с авто и отключаем-включаем внешний модуль сигнализации
    2) Работу с радар детектором - подключаем ардуину к пину датчика скорости и по импульсам считаем, когда скорость более 40 км включаем исполнительное устройство, менее 40 устройство отключаем, реализуем я так понимаю на прерываниях
    3) Поворот зеркал заднего вида вниз при включении заднего хода, тут тоже все понятно, ловим сигнал заднего хода и включаем, отключаем исполнительное устройство.
    Так вот вопрос: можно ли все эти три задачи реализовать на одном контроллере, или прийдется покупать два?

  2. #2
    Продвинутый
    Регистрация
    15.12.2008
    Возраст
    38
    Сообщений
    229
    Вес репутации
    393

    По умолчанию Re: Можно ли реализовать на одном контроллере

    Одного должно хватить. Только не очень понятно, что такое "определенные сигналы", и как ардуина будет общаться с модулем сигнализации.

  3. #3
    Новичок
    Регистрация
    17.01.2008
    Сообщений
    7
    Вес репутации
    202

    По умолчанию Re: Можно ли реализовать на одном контроллере

    Помогите реализовать работу с прерываниями в этом случае.
    Я так понимаю мне нужно работать с двумя прерываниями а) внешним, считать импульсы и б) по таймеру, что бы раз в секунду (или быстрее) их посчитать и включить-отключить исполнительное

  4. #4
    Продвинутый
    Регистрация
    15.12.2008
    Возраст
    38
    Сообщений
    229
    Вес репутации
    393

    По умолчанию Re: Можно ли реализовать на одном контроллере

    Здесь на форуме вкладывали несколько вариантов обработки спидометра. Все имеют право на жизнь.
    Я бы сделал примерно так:
    PHP код:

    void speed_int
    ()
    {
      
    tick++;//импульсы датчика скорости
      
    if(tick>=6)//проехали 1 м
      
    {
        
    tick=0;//обнуляем
        
    v=3516/time_speed;//считаем скорость
        
    time_speed=0;
      }
    }

    ISR(TIMER2_OVF_vect
    {
      
    time_speed++;//считаем время

    Последний раз редактировалось manu_245; 06.09.2012 в 14:46.

  5. #5
    Пользователь Аватар для filinmd
    Регистрация
    06.08.2012
    Возраст
    33
    Сообщений
    80
    Вес репутации
    161

    По умолчанию Re: Можно ли реализовать на одном контроллере

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

  6. #6
    Новичок
    Регистрация
    17.01.2008
    Сообщений
    7
    Вес репутации
    202

    По умолчанию Re: Можно ли реализовать на одном контроллере

    manu_245
    Спасибо, попробую отпишусь. Но тут вы применяете С, а не стандартные команды как я понимаю?

  7. #7
    Продвинутый
    Регистрация
    15.12.2008
    Возраст
    38
    Сообщений
    229
    Вес репутации
    393

    По умолчанию Re: Можно ли реализовать на одном контроллере

    Да. А что за стандартные команды? Это ассемблер имеется ввиду?
    Забыл еще уточнить настройки:
    PHP код:
    pinMode(2INPUT);//pin 2 input
    digitalWrite(2HIGH);//включаем подтяжку
    TCCR2B 1<<CS22 0<<CS21 0<<CS20//250 KHz
    TIMSK2 1<<TOIE2;//interrupts
    attachInterrupt(0speed_intFALLING);//прерывание по датчику скорости. по спаду. 
    Соответственно при изменении частоты таймера константу в расчете скорости необходимо изменить.

  8. #8
    Новичок
    Регистрация
    17.01.2008
    Сообщений
    7
    Вес репутации
    202

    По умолчанию Re: Можно ли реализовать на одном контроллере

    Ну вот стандартные команды http://arduino.ru/Reference
    Там вот таких нет
    TIMSK2 = 1<<TOIE2

  9. #9
    Новичок
    Регистрация
    17.01.2008
    Сообщений
    7
    Вес репутации
    202

    По умолчанию Re: Можно ли реализовать на одном контроллере

    В общем реализовал первый этап - отключаю динамик радар детектора при достижении 40 км в час, вход простейший делитель, импульсы скорости. Выход оптрон с шунтирующим резистором который подает на пин управления громкости усилителя НЧ радар детектора землю и тем глушит громкость.
    Последний раз редактировалось tdn2; 11.11.2012 в 21:20.

  10. #10
    Новичок
    Регистрация
    17.01.2008
    Сообщений
    7
    Вес репутации
    202

    По умолчанию Re: Можно ли реализовать на одном контроллере

    Реализовал второй этап, slave модуль на базе ардуино. Схема аналогична управлению динамиком радар детектора. Через резистивные делители, подаем сигналы со штатного центрального замка и сигналы поворотников на ардуино, алгоритм определяет момент включения штатной сигнализации и подает-снимает управляющий сигнал на вход нештатной сигнализации. Аналогичный модуль стоит от двух тысяч рублей и больше размерами.

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

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

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

Ваши права

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