Съдържание:

Ултразвуков сензор за улавяне на позиционни промени на обекти: 3 стъпки
Ултразвуков сензор за улавяне на позиционни промени на обекти: 3 стъпки

Видео: Ултразвуков сензор за улавяне на позиционни промени на обекти: 3 стъпки

Видео: Ултразвуков сензор за улавяне на позиционни промени на обекти: 3 стъпки
Видео: Samsung S10 Plus en 2023 | Esto SÍ es un gama [ALTA] ✓ 2024, Юли
Anonim
Ултразвуков сензор за улавяне на позиционни промени на обекти
Ултразвуков сензор за улавяне на позиционни промени на обекти

Важно е да пазите ценните си вещи, би било куца, ако продължавате да пазите замъка си по цял ден. С помощта на малина pi камера можете да правите снимки в точния момент. Това ръководство ще ви помогне да заснемете видеоклип или да направите снимка, когато промените се усетят в граничната зона.

Хардуер:

  1. Raspberry Pi 2/3/4
  2. Ултразвуков сензор
  3. Pi камера
  4. Джъмпери

Стъпка 1: Връзки

Връзки
Връзки
  • TRIG към RPI4B 17
  • VCC към RPI4B 5V
  • GND към RPI4B GND
  • Ехо към 470-омов резистор към връзка-1
  • GND до 1K ом резистор към връзка-1
  • връзка-1 към RPI4B 4

Схемата на схемата е направена с помощта на circuito.io, тя има всички най -популярни микроконтролери, сензори и т.н., а платформата е лесна за използване за начинаещи

Стъпка 2: Качете кода

Качете кода
Качете кода
Качете кода
Качете кода

Преди да стартирате скрипта, създайте папка чрез следните команди, отварящи терминала, и след това редактирайте файла на скрипта.

pi@raaspberrypi: mkdir media

pi@raaspberrypi: nano mere.py

Кодът използва библиотеки с камера и GPIO. Вземете кръстосана проверка пиновете GPIO_TRIGGER & GPIO_ECHO са правилно свързани към 17-ти и 4-ти пин на Raspberry Pi отвън.

Копирайте и поставете кода по -долу или въведете във файла python и го наименувайте като „mere.py“

#Librariesimport RPi. GPIO като GPIO време за импортиране импортиране os от пикамера импортиране PiCamera # Камера режим камера = PiCamera () camera.rotation = 180 # Коментирайте този ред, ако изображението е перфектно наклонено #GPIO Mode GPIO.setmode (GPIO. BCM) GPIO.setwarnings (False) #set GPIO Pins GPIO_TRIGGER = 17 GPIO_ECHO = 4 #set GPIO посока (IN / OUT) GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN) def distance (): # задайте Trigger на HIGH GPIO.output (GPIO_TRIGGER, True) # настройте Trigger след 0.01ms на LOW time.sleep (0.00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () # запис StartTime while GPIO.input (GPIO_ECHO) == 0: StartTime = time.time () # запис на времето на пристигане, докато GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # времева разлика между начало и време на пристигане = StopTime - StartTime # умножете със скоростта на звука (34300 cm / s) # и разделете на 2, защото там и обратно разстояние = (TimeElapsed * 34300) / 2 връщане разстояние, ако _name_ == '_main_': camera.start_preview (alpha = 200) try: while True: dist = distance () print ("Измерено разстояние = %.1f cm" % dist), ако dist <= 20: # променете тази стойност според вашите настройки сега = time.ctime (). replace ("", "-") camera.capture ("media/image % s.jpg" % now) print ("Изображението е запазено на media/image- % s.jpg" % now) # камера.start_recording ("media/video- % s.h264" % now) # Декомментирайте това, за да заснемете видео # печат ("Видеото е запазено в media/image- % s.jpg" % now) # sleep (5) # Uncomment this за заснемане на видеоклип за 5 секунди time.sleep (3) camera.stop_preview () # camera.stop_recording () # Декомментирайте това, за да заснемете видео # Нулирайте, като натиснете CTRL + C, с изключение на KeyboardInterrupt: print ("Измерването е спряно от потребителя") GPIO.cleanup ()

Стъпка 3: Стартирайте кода

Пуснете кода
Пуснете кода
Пуснете кода
Пуснете кода
Пуснете кода
Пуснете кода
Пуснете кода
Пуснете кода

Сега стартирайте скрипта като

pi@raspberrypi: pythonasure.py

Разстоянието се измерва на всеки 3 секунди (можете да промените стойността в скрипта) и се отпечатва на екрана, ако обект е идентифициран в рамките на 20 сантиметра, камерата pi прави снимка и записва в папката за медии.

Като алтернатива можете да заснемете видеоклип, като декомментирате или премахнете хаштаговете (#) от редовете на скрипта, споменати като коментари. Можете също така да удължите дължината на видеоклипа, като просто увеличите/намалите стойността в „time.sleep (5)“.

Честит кръг!

Препоръчано: