Перейти к содержанию
    

1. Постоянный уровенть в системах охраны - это плохо - всегда можно обойти .

2. Импульсный сигнал - постоянная проверка на "вшивость" самой системы и посчитайте с какой скоростью человек пройдет этот барьер по сравнению с пулей. Каким сигналом можно пренебречь ,а на какой отреагировать?

 

 

Если бы уровень был постоянный( Я считал что пока ик диод светит на тсоп , на выходе тсопа будет постоянное напряжение, только перекрыл ик диод, на выходе тсопа 0. Даже если быстро прийти через луч хватит чтобы запустить цикл. а получается что на ножке есть лог единица только когда пересек луч и потом он опять попадает на тсоп.

 

На счет проверки на вшивость не понял, если не сложно объясните по подробнее

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если бы уровень был постоянный( Я считал что пока ик диод светит на тсоп , на выходе тсопа будет постоянное напряжение, только перекрыл ик диод, на выходе тсопа 0. Даже если быстро прийти через луч хватит чтобы запустить цикл. а получается что на ножке есть лог единица только когда пересек луч и потом он опять попадает на тсоп.

 

На счет проверки на вшивость не понял, если не сложно объясните по подробнее

 

 

А Вы всё таки попробуйте мерить относительно земли

Вшивость - пока данные от входа совпадают с данными на выходе - система работает правильно ( утририровано к Вашему случаю)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если мерять относительно земли то постоянно 4.8 вольта. насчет вшивости отдаленно понимаю так как если светить пультом от телика то идут сбои

 

теперь для нормальной работы как я понимаю нужно 2 вещи. Отсылать сигнал с ик пачками а не постоянно. Разобраться как принимать сигнал пачками и обрабатывать

Изменено пользователем ururur

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если мерять относительно земли то постоянно 4.8 вольта. насчет вшивости отдаленно понимаю так как если светить пультом от телика то идут сбои

т.е при перекрытии датчика , на выходе tsop нет ~0? Тогда система не работает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Завтра еще раз проверю ,спасибо за информацию(напряжение мерял на ножке мк с подключенным к ней тсопом)

 

Может стоит использовать АЦП. Мерять если напряжение на ножке упадет меньше нужного то запускать цикл. Сейчас GND тсопа подключен к массе, питание через 110 ом на + , выход через 100 ом на ножку МК.

Изменено пользователем ururur

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может стоит использовать АЦП.

 

Не стоит. Посмотрите , что у Вас на выходе при освещёном tsop и при закрытом

И внимательно изучите DS на Ваш tsop , что бы правильно сформировать посылку

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В частности там говорится , что непрерывный сигнал (для примера взят 38 кгц) блокируется TSOP. Да и таймер скорее не подойдёт - легче всё сформировать USART и сравнивать проще

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Эх, какая то туманность андромеды..)))

Выход тсоп с открытым коллектором и сигал на выходе инверсный.. т.е. когда есть сигнал то он (выход) притянут к земле.

На счет пульта. Сигнал будет скакать, там же данные прут)))

Итак, попробуем на пальцах:

Постоянная составляющая 36кГц, грубо говоря, эта та частота которой нужно управлять. Включил- выключил, и если это делать быстро(1000 раз в секунду), то у вас получится промодулированная частота (пачками).

Если эту частоту не модулировать то приемник воспринимает ее как помеху и фильтрует.

 

На выходе тсопа вы контролируете уже не 36кГц, а 1кГц(наша модулирующая частота). Этого достаточно чтобы обнаружить объект проходящий на достаточно большой скорости)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Эх, какая то туманность андромеды..)))

Выход тсоп с открытым коллектором и сигал на выходе инверсный.. т.е. когда есть сигнал то он (выход) притянут к земле.

На счет пульта. Сигнал будет скакать, там же данные прут)))

Итак, попробуем на пальцах:

Постоянная составляющая 36кГц, грубо говоря, эта та частота которой нужно управлять. Включил- выключил, и если это делать быстро(1000 раз в секунду), то у вас получится промодулированная частота (пачками).

Если эту частоту не модулировать то приемник воспринимает ее как помеху и фильтрует.

 

На выходе тсопа вы контролируете уже не 36кГц, а 1кГц(наша модулирующая частота). Этого достаточно чтобы обнаружить объект проходящий на достаточно большой скорости)))

Подскажите пожалуйста что мне добавить в код чтобы отсылать эту частоту 1000 раз в секунду

 

Меряю между выходом тсоп и массой. Луч направлен , показывает 4.6 вольта. если перекрыть рукой датчик то ничего не меняется когда убираеш руку то напряжение падает до 0 и опять поднимается до 4.6

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите пожалуйста что мне добавить в код чтобы отсылать эту частоту 1000 раз в секунду

 

Меряю между выходом тсоп и массой. Луч направлен , показывает 4.6 вольта. если перекрыть рукой датчик то ничего не меняется когда убираеш руку то напряжение падает до 0 и опять поднимается до 4.6

 

За секунду лично я проскочу Ваш барьер. Мировой рекорд 100м - 9,58 сек .

Вам уже не однократно написали как это делается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавил посылку пакетами.

 

volatile int modulation=200;

 

interrupt [TIM0_OVF] void timer0_ovf_isr(void)

{

if(modulation<20) //длина пачки

{

PORTB.3=1;}

else

{

PORTB.3=0;}

if(modulation<200) //для счета длины посылки

{modulation++;}

else

{modulation=0;}

TCNT0 = 0;

}

 

 

работает так-же((

 

За секунду лично я проскочу Ваш барьер. Мировой рекорд 100м - 9,58 сек .

Вам уже не однократно написали как это делается.

 

Извените, но до меня не доходит как правильно сделать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извените, но до меня не доходит как правильно сделать

 

Изучите DS там расписаны времена , в том числе и между посылками. А также приведён тестовый сигнал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Насколько я понимаю тсоп не будет работать как ИК транзистор. Тоесть если сигнал есть он пропускает (тсоп подает на out напряжение), если сигнал прервался то не пропскает(в случае тсопа появляется 0 на out ) Я прав? если да тогда работа моего барьера нормальная, осталось только пачковать сигнал чтобы ловить предметы с большей скоростью проходящие через луч.

 

Сейчас посылаю пачками сигнал вот так

 

interrupt [TIM0_OVF] void timer0_ovf_isr(void)

{

TCCR0=0x19;

delay_ms(20)

TCCR0=0x00;

delay_ms(20)

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...