- Необходими компоненти
- Електрическа схема за Raspberry Pi и PIR сензор, базиран на детектор на движение
- Python код за Raspberry Pi:
Системите за сигурност играят важна роля в ежедневието ни и там можем да намерим много различни видове системи за сигурност с различни видове технологии и с различен ценови диапазон. Като електронен ентусиаст, можете да създадете проста система за сигурност, като похарчите няколко долара и малко свободно време. Тук в тази статия споделям ръководство за „направи си сам“, за да направя проста аларма, базирана на Raspberry pi и PIR сензор, която ще включи зумера, когато PIR сензорът открие всяко човешко движение в района. Също така разгледахме проста схема на детектор на движение, базирана на PIR сензор, в една от предишните ни статии, където подробно разгледахме работата на PIR сензора.
Необходими компоненти
- Raspberry Pi 3 (всеки модел)
- PIR сензор
- Звънец
- Макет
- Свързващи проводници
Работа на PIR сензор
Пасивният инфрачервен (PIR) сензор се нарича пасивен, защото получава инфрачервена, а не излъчва. По принцип той открива всяка промяна в топлината и всеки път, когато открие някаква промяна, изходният му ПИН става ВИСОК. Те също се наричат пироелектрически или IR сензори за движение.
Тук трябва да отбележим, че всеки обект излъчва известно количество инфрачервена светлина при нагряване. Човек също излъчва инфрачервена светлина поради телесната топлина. PIR сензорите могат да открият малки вариации в инфрачервената светлина. Всеки път, когато даден обект премине през обхвата на сензора, той произвежда инфрачервена светлина поради триенето между въздуха и обекта и се улавя от PIR.
Основният компонент на PIR сензора е пироелектричният сензор, показан на фигурата (правоъгълен кристал зад пластмасовата капачка). Заедно с това, BISS0001 ("Micro Power PIR Motion Detector IC"), някои резистори, кондензатори и други компоненти, използвани за изграждане на PIR сензор. BISS0001 IC взема входа от сензора и извършва обработка, за да направи изходния щифт HIGH или LOW съответно.
Пироелектричният сензор се разделя на две половини, когато няма движение, двете половини остават в едно и също състояние, което означава, че и двете усещат едно и също ниво на инфрачервена светлина. Веднага след като някой влезе в първата половина, инфрачервеното ниво на едната половина става по-голямо от другото и това кара PIR да реагират и прави изходния щифт висок.
Пироелектричният сензор е покрит с пластмасова капачка, която има множество от Френелови лещи вътре. Тези лещи са извити по такъв начин, че сензорът да може да покрие широк диапазон.
Електрическа схема за Raspberry Pi и PIR сензор, базиран на детектор на движение
Както е показано в горната схематична схема за детектор за движение на базата на Raspberry Pi и PIR сензор, положителният щифт на PIR сензора е свързан с щифт 4 (5v), а заземяващият щифт на PIR сензора е свързан с Pin 6 (Ground) на Raspberry Pi (Тук можете да намерите Pin диаграмата на Raspberry Pi). Изходният щифт на PIR сензора е свързан с GPIO 23 на Raspberry pi, който се използва за подаване на вход към Raspberry Pi. GPIO щифтът 24, който е деклариран тук за изход, е свързан с положител на зумера, а земята на зумера е свързана със земята (щифт 6) на малинов пи.
Python код за Raspberry Pi:
Кодът на Python за този детектор за движение, базиран на малина pi и PIR, е доста прост и може да бъде разбран лесно с коментарите, вградени в раздела за кодове по-долу. Декларирах GPIO пин 23 и 24 като входни и изходни щифтове.
while True: ако GPIO.input (23): # Ако има движение, PIR сензорът дава вход на GPIO23 GPIO.output (24, True) # Изход, даден на зумер чрез GPIO24 time.sleep (1) #Buzzer се включва за 1 секунда GPIO. Изход (24, False)
А ", докато" контур се използва като True, така че съдържанието вътре в контура, винаги ще се изпълняват. ако GPIO.input (23): операторът открива дали GPIO пин 23 е висок и ако същото е вярно, прави изходния ПИН 24 висок. Функцията time.sleep (secs) се използва за пауза на програмата в python за определено време, където 'secs' е времето в секунди. Така че тук използвахме да го правим на пауза за 1 секунда. В следващия ред ние направихме на изхода на 24, както е фалшива така зумер спира, докато примката започва следващата итерация, както Докато линия се задава винаги е вярно без никакво предварително условие.