Умная сигнализация

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
kalobyte
Друг Кота
Сообщения: 13796
Зарегистрирован: Чт сен 20, 2007 14:08:00

Re: Умная сигнализация

Сообщение kalobyte »

Triple_H писал(а):Мешает цена вопроса, которая в магазине особенно.
он стоит бакса 3 у китайцев
Triple_H писал(а):плюс еще COM порта на компьютере нету
они давно уже усб
тематические ответы только в форуме, в приват не пишите
Реклама
Triple_H
Открыл глаза
Сообщения: 45
Зарегистрирован: Ср апр 23, 2014 22:17:24

Re: Умная сигнализация

Сообщение Triple_H »

kalobyte писал(а):
Triple_H писал(а):Мешает цена вопроса, которая в магазине особенно.
он стоит бакса 3 у китайцев
Triple_H писал(а):плюс еще COM порта на компьютере нету
они давно уже усб
А можно ссылку? Просто те, что мне попадались от 6 тыс. где- то.
Реклама
Triple_H
Открыл глаза
Сообщения: 45
Зарегистрирован: Ср апр 23, 2014 22:17:24

Re: Умная сигнализация

Сообщение Triple_H »

kalobyte писал(а):
Triple_H писал(а):Мешает цена вопроса, которая в магазине особенно.
он стоит бакса 3 у китайцев
Triple_H писал(а):плюс еще COM порта на компьютере нету
они давно уже усб
Я кажется понял, про какие программаторы вы говорите. Тогда еще один вопрос, на каком контроллере посоветуете собрать схему?
kalobyte
Друг Кота
Сообщения: 13796
Зарегистрирован: Чт сен 20, 2007 14:08:00

Re: Умная сигнализация

Сообщение kalobyte »

Triple_H писал(а):Я кажется понял, про какие программаторы вы говорите.
обычный дешевый для авр контроллеров
Triple_H писал(а):Тогда еще один вопрос, на каком контроллере посоветуете собрать схему?
любой авр контроллер
тематические ответы только в форуме, в приват не пишите
Реклама
Эиком - электронные компоненты и радиодетали
Triple_H
Открыл глаза
Сообщения: 45
Зарегистрирован: Ср апр 23, 2014 22:17:24

Re: Умная сигнализация

Сообщение Triple_H »

Не сочтите за наглость, но тут по ходу дела возникло еще пару вопросов, может кто поможет.
Решил собирать устройство на Attiny 2313, программа на CodeVisionAVR ( ну как программа, так пару строк :lol: ).

Собственно, сама рабочая часть программы:

Код: Выделить всё

         
while (1)    
 {
       //Place your code here   
      
    
                   
                 
       while (PIND.0==1) {     //сработал первый датчик
                  
      vhod=1; 
      
                         
    }   
    
                            
         
          while (PIND.1==1) {      //сработал второй датчик
     
     vihod=1;
     
     }         
                 
     
     
     if (vhod>vihod) {       //Срабатывает звонок
           
         PORTB.0=1;
     }; 
            
   
        
    if (vhod==vihod) { 
       PORTB.0=0, vhod=0, vihod=0;     // Выключается звонок
}
      



} 
}
Вот, то, что я хотел, чтобы при первом пересечении датчика номер один, звонок срабатывал, а при пересечении первым датчика номер два не срабатывал, у меня получилось.

Теперь вопрос, а как убрать ложное срабатывание, т.е. если пересекли первый датчик, но не пересекли второй датчик. Как бы сделать, чтобы при этом ну скажем звонок выключался через несколько секунд, или выключался при повторном пересечении.
Я пробовал через delay, но там получается или вообще не срабатывает или постоянно срабатывает. Хотел через таймер в контроллере, но там, что то сильно заморочено, может можно без него?

Заранее благодарен.
Реклама
kalobyte
Друг Кота
Сообщения: 13796
Зарегистрирован: Чт сен 20, 2007 14:08:00

Re: Умная сигнализация

Сообщение kalobyte »

есть такой паттерн программирования или как там это называется - машина состояний
выделяется переменная и в ней биты
каждый бит означает какое-то состояние машины

в общем цикле или по таймеру проверяются эти состояния и в зависимости от выполняются какие-то действия

https://ru.wikipedia.org/wiki/%D0%90%D0 ... 0%B8%D0%B5

педевикия говорит, что это парадигма :write:
вот столько заумных словей я уже знаю

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

ну и у дихальта годно написано http://easyelectronics.ru/avr-uchebnyj- ... tomat.html

чтобы время отмерять - надо сделать таймер, который тикает например 1с или 100мс и срабатывает прерывание по таймеру, а там ты прибавляеш каждый раз нужное число, только переменная в обработчике прерывания должны быть глобальной, чтобы к ней был доступ из главной функции

думаю понял
тематические ответы только в форуме, в приват не пишите
Реклама
Triple_H
Открыл глаза
Сообщения: 45
Зарегистрирован: Ср апр 23, 2014 22:17:24

Re: Умная сигнализация

Сообщение Triple_H »

Благодарю за столь расширенный ответ.
Я пробовал нарисовать в Horizont Configurator, но там почему то, именно с этим контроллером выдает ошибку :cry: .
Почитаю ссылки, и по экспериментирую с таймерами.
Аватара пользователя
kotpalych
Электрический кот
Сообщения: 1065
Зарегистрирован: Пн ноя 21, 2011 16:45:00

Re: Умная сигнализация

Сообщение kotpalych »

Получил что-то похожее на логике .
Изображение
Думаю , что в программе задержку следует включить после команды выключения звонка .
Вложения
4013l.png
(14.71 КБ) 442 скачивания
Невозможно починить то, что не сломалось.
Triple_H
Открыл глаза
Сообщения: 45
Зарегистрирован: Ср апр 23, 2014 22:17:24

Re: Умная сигнализация

Сообщение Triple_H »

Отдельная благодарность kotpalych, за схемку ( правда я еще не совсем понял как она работает, но сейчас буду разбираться :lol: ). Жаль раньше не было, я уже контроллер заказал.
Аватара пользователя
kotpalych
Электрический кот
Сообщения: 1065
Зарегистрирован: Пн ноя 21, 2011 16:45:00

Re: Умная сигнализация

Сообщение kotpalych »

Triple_H писал(а):не совсем понял как она работает
Описание моей схемы(надеюсь правильное) .
После размыкания датчика 1 , единица со входа данных триггера U1:B поступит на его прямой выход , одновременно через конденсатор C1 поступит сбрасывающий импульс на U1:A . Реле времени на R1 C3 отключит сигнализацию примерно через 8 секунд . Если до срабатывания реле времени разомкнется датчик 2 , то сигнализация отключится подачей с прямого выхода U1:A на вход сброса U1:B положительного импульса через конденсатор C2 , при этом через конденсатор C1 , U1:A также будет сброшен . Следующее переключение датчика установит на входе данных триггера U1:B ноль , что не позволит сигнализации сработать по первому переключению датчика 1 .
По программе могу предложить только алгоритм .
Если сработал первый датчик проверить признак запрета срабатывания сигнализации.
Если запрета нет - инвертировать сигнализирующий вывод порта .
Иначе - сбросить признак запрета .
Если сработал второй датчик - проверить включение сигнализации .
Если сигнализация выключена - установить признак запрета срабатывания сигнализации .
Иначе - выключить сигнализацию.
Спящий режим .
К началу .
Невозможно починить то, что не сломалось.
Аватара пользователя
Brigadir
Друг Кота
Сообщения: 35639
Зарегистрирован: Вс янв 25, 2009 21:16:04
Откуда: Москва

Re: Умная сигнализация

Сообщение Brigadir »

Triple_H писал(а):Спасибо за ответ.
Задача та тупая, но вот как без контроллера бы это сделать. Их то прошивать надо, а программатора нету ((
Берешь счетчик...реверсивный...и собираешь. :))) А к нему приладишь и табло: сколько человек вошло и сколько ушло... Счетчик - ИЕ7, дешифратор счета - ИЕ4 + светодиодный индикатор. Но придется делать двойной ИК барьер.
А поболтать?
Triple_H
Открыл глаза
Сообщения: 45
Зарегистрирован: Ср апр 23, 2014 22:17:24

Re: Умная сигнализация

Сообщение Triple_H »

Brigadir писал(а):
Triple_H писал(а):Спасибо за ответ.
Задача та тупая, но вот как без контроллера бы это сделать. Их то прошивать надо, а программатора нету ((
Берешь счетчик...реверсивный...и собираешь. :))) А к нему приладишь и табло: сколько человек вошло и сколько ушло... Счетчик - ИЕ7, дешифратор счета - ИЕ4 + светодиодный индикатор. Но придется делать двойной ИК барьер.
Благодарю, но я не собирался никого считать, так просто чтобы звенело :) Хотя, это идея, а то ходят там всякие. Все таки попробую на контролере сделать, хотя там с наскока не получиться, заморочено, что -то там с таймерами :cry:
Аватара пользователя
Brigadir
Друг Кота
Сообщения: 35639
Зарегистрирован: Вс янв 25, 2009 21:16:04
Откуда: Москва

Re: Умная сигнализация

Сообщение Brigadir »

На счетчике: вошел = счетчик прибавил единицу. Сирена запищала. Вышел = минус единица , сирена отключилась.
Магазин (к примеру) : к концу рабочего дня глянул на счетчик - осталась одна единица....это кто там спрятался за ширмой???? не грабитель ли? В метро: именно так считают количество пассажиров (в турникете счетчик). А сирена зачем? Более приятнее...колокольчик на двери....звякнул = зашел клиент! :))) Дешево и сердито!
Где купить счетчик? А купи калькулятор: там есть две кнопки - плюс и минус....есть и индикатор.... :))) и никаких контроллеров...
А поболтать?
Ответить

Вернуться в «Умные мысли»