Каталог

Датчик оптический прерывания луча KY-010

Цена:

60 р.
менее 500 шт.
Уже в корзине
Код товара: 12490

Описание товара

Модуль предназначен для обнаружения прерывания светового луча, и передачи соответствующей информации контроллеру для дальнейшей обработки или исполнительному механизму.  Основное преимущество использование данного модуля - это отсутствие механического размыкания, что дает почти неисчерпаемый ресурс, и минимизирует поломки и техническое обслуживание. Так же отсутствие механического контакта отменяет дребезг, побочный эффект любых механических кнопок, но всё равно при написании своих программ мы рекомендуем использовать минимальную задержку. 

Основные параметры модуля KY-010.

Напряжение питания: 5 В.
Датчик света: фототранзистор
Световой диапазон: ИК
Габариты: 19,1x15,2x6.6 мм

Принципиальная электрическая схема.

Резистор R1 ограничивает рабочий ток светодиода датчика. Резистор R2 подтягивающий, он создает положительный потенциал на выводе S когда транзистор закрыт, и не создает замыкания к выводу +5 В при открытом транзисторе. Итак, при включении модуля и подаче питания - на светодиод подается напряжение, он начинает излучать свет, фототранзистор освещается этим светом и открывается, то есть по сути прижимает вывод S к минусу питания -  что свидетельствует о наличии логического 0 на выводе S. Далее мы создали препятствие между светодиодом и фототранзистором любым не прозрачным предметом. Фототранзистор закрывается его сопротивление становится огромным - и на выводе S устанавливается потенциал + 5 В - это логическая 1.

Схема KY-010  

Давайте попробуем подключить KY-010 к Ардуино НАНО проверить всё на деле.

Схема подключения KY-010 к ARDUINO NANO  

Я использовал при программировании программу BascomAVR и программатор USBASP подключенный к порту ISP на плате НАНО.
Привожу простейший код для программы BaskomAVR по подключению KY-010

$regfile = "m328pdef.dat"                                   ' Указываем наш контроллер, в НАНО он именно такой установлен
$crystal = 16000000                                         ' Резонатор тоже на плате есть
$hwstack = 40
$swstack = 16
$framesize = 32


Config Portb.5 = Output                                     ' Указываем что на плате NANO вывод D13(он же PB5 контроллера) работает как выход (на нем и светодиод есть, мы визуально сможем видеть всё)
Config Int0 = Falling                                       'Настраиваем прерывание INT0 на отлов падения импульса из единички в ноль, В моем случае свет перекрыт - я открываю его - а потом снова закрываю
On Int0 Action                                              'В случае прерывания - идем в Action и там что то делаем

Enable Interrupts                                           ' Запускаем прерывания в нашей программе
Enable Int0                                                 ' И конкретно INT0 активируем


Do
                                                             '  Это основная программа - мы тут ничего не делаем, всё обработаем в прерывании
Loop

Action:                                                     ' Это наша подпрограмма которая выполнится в случае прерывания

Waitms 20                                                   'Добавил небольшую задержку, чтобы переходные процессы в транзисторе пришли в норму, но и без задержки тоже нормально работает
Toggle Portb.5                                              ' Тут просто меняем состояние вывода PB5 микроконтроллера(Он же D13 на плате NANO указан)

Return                                                      ' закончили дела - возвращаемся в основную программу, что то там делаем


End

Данный пример был собран и полностью опробован на практике, очень надеюсь и у Вас всё получится. Полный проект для BascomAVR вы можете скачать по этой ссылке - BascomAVR проект для работы с KY-010 

Так же прилагаю осциллограммы переходных процессов снятые с выхода датчика с контакта S. Как вы можете видеть - дребезга нет, но при 10мс становится видно что переходной процесс имеется, именно поэтому я всё таки добавил небольшую задержу в моем коде, чтобы переходные процессы не влияли на стабильность.

Осциллограммы снятые с KY-010  
footer shadow
Контакты

г. Москва, Пятницкое ш. д. 18, пав. 566

zakaz@compacttool.ru

8-495-752-55-22

compacttool logoadaptive site

accepted payment systems

Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !

© Все права защищены 2015 - 2024г https://compacttool.ru