Mundarija:
Video: Ultrasonik sensor ob'ektlarning pozitsion o'zgarishlarini yozib oladi: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Sizning qimmatbaho narsalaringizni xavfsiz saqlash juda muhim, agar siz kun bo'yi o'z qal'angizni qo'riqlayotgan bo'lsangiz, cho'loq bo'lardi. Raspberry pi kamerasidan foydalanib, siz rasmlarni kerakli vaqtda olishingiz mumkin. Ushbu qo'llanma, agar chegara hududida o'zgarishlar sezilsa, video yoki rasmga olishingizga yordam beradi.
Uskuna:
- Raspberry Pi 2/3/4
- Ultrasonik sensor
- Pi kamera
- Jumperlar
1 -qadam: ulanishlar
- TRIGni RPI4B 17 ga o'tkazing
- VCC dan RPI4B 5V gacha
- GND dan RPI4B GND gacha
- 470 ohmli rezistorga ulang-1 ulang
- GND-ulanish uchun 1K ohmli rezistor-1
- RPI4B 4 ga ulanish-1
O'chirish sxemasi circuito.io yordamida tuzilgan, u eng mashhur mikrokontrollerlar, sensorlar va boshqalarga ega va yangi boshlanuvchilar uchun platformadan foydalanish oson.
2 -qadam: Kodni yuklang
Skriptni ishga tushirishdan oldin, terminalni ochish buyruqlari orqali papka yarating va keyin skript faylini tahrir qiling.
pi@raaspberrypi: mkdir media
pi@raaspberrypi: nano o'lchov.py
Kod kamera va GPIO kutubxonalaridan foydalanadi. GPIO_TRIGGER va GPIO_ECHO pinlari Raspberry Pi-ning 17 va 4-chi pinlariga tashqi tomondan to'g'ri ulanganligini tekshiring.
Quyidagi kodni nusxa ko'chiring va joylashtiring yoki python fayliga yozing va uni "o'lchov.py" deb nomlang.
#Kutubxonalar RPi. GPIO -ni GPIO sifatida import qilish vaqtini pikameradan import qilish PiCamera # Kamera rejimi kamerasi = PiCamera () camera.rotation = 180 # Agar tasvir mukammal burchakli bo'lsa, bu qatorga izoh bering # GPO rejimi GPIO.setmode (GPIO. BCM) GPIO.setwarnings (False) #set GPIO Pins GPIO_TRIGGER = 17 GPIO_ECHO = 4 #GPIO yo'nalishini o'rnatish (IN / OUT) GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN) def masofasi (): # Trigger -ni HIGH GPIO.output -ga (GPIO_TRIGGER, True) o'rnating Ish vaqti GPIO.input (GPIO_ECHO) == 0: StartTime = time.time () # kelish vaqtini tejash GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # boshlanish va kelish vaqti orasidagi # vaqt farqi = StopTime - StartTime # sonic tezligi (34300 sm / s) # bilan ko'paytiriladi va 2 ga bo'linadi, chunki u erda va orqadagi masofa = (TimeElapsed * 34300) / 2 qaytish masofasi, agar _name_ == '_main_' bo'lsa: camera.start_preview (alfa = 200) urinib ko'ring: while True: dist = masofa () chop etish ("O'lchangan masofa = %.1f sm" % dist) agar dist <= 20: # bu qiymatni sozlamangizga ko'ra o'zgartiring = vaqt.ctime (). almashtirish ("", "-") camera.capture ("media/image % s.jpg" % hozir) chop etish ("Rasm media/image- % s.jpg" da % hozir saqlangan) # kamera.start_recording ("media/video- % s.h264" % hozir) # Videoni olish uchun bunga izoh qoldirmang # chop eting ("Media media/image- % s.jpg" da saqlangan % hozir) # uyqu (5) # Bunga izoh qoldirmang 5 soniya vaqt davomida video yozib olish uchun. uxlash (3) camera.stop_preview () # camera.stop_recording () # video yozish uchun buni sharhlamang GPIO.cleanup ()
3 -qadam: Kodni ishga tushiring
Endi skriptni ishga tushiring
pi@raspberrypi: python tədbiri.py
Masofa har 3 soniyada o'lchanadi (siz skriptdagi qiymatni o'zgartirishingiz mumkin) va agar ob'ekt 20 santimetr ichida aniqlansa, pi kamerasi suratga oladi va media papkasida saqlaydi.
Shu bilan bir qatorda, sharh sifatida ko'rsatilgan skript satrlaridan (#) hashtaglarni izohsiz olib tashlash orqali video suratga olishingiz mumkin. Bundan tashqari, "time.sleep (5)" da qiymatni oshirish/kamaytirish orqali video uzunligini uzaytirish mumkin.
Baxtli aylanish!
Tavsiya:
Animatronik ko'z bilan Halloween oshqovog'i - Bu qovoq ko'zini yuma oladi!: 10 qadam (rasmlar bilan)
Animatronik ko'z bilan Halloween oshqovog'i | Bu oshqovoq ko'zini yuma oladi!: Ushbu ko'rsatmaga binoan, siz ko'zlari qimirlatganda hammani dahshatga soladigan Halloween oshqovog'ini yasashni o'rganasiz. Ultrasonik sensorning tetik masofasini kerakli qiymatga moslashtiring (9 -qadam), va sizning oshqovoq shirasini olishga jur'at etgan har bir kishini toshbo'ron qiladi
Dasturni yozib oling va uni yozib oling: 8 qadam
O'qish dasturini yaratish uchun dasturni yaratish kerakmi ?: O'yin dasturining oxirgi versiyasi Texnologiyaning eng so'nggi bosqichi bo'lib o'tdi, shuning uchun u o'z dasturini yaratdi. Python va kutubxonachilarning vazifasi shundaki, ular hech qanday dasturga ega emas
Arduino va analogli joystikli 28BYJ-48 qadamli dvigatelning burchakli pozitsion nazorati: 3 qadam
Arduino va analogli joystikli 28BYJ-48 qadamli dvigatelning burchakli pozitsion boshqaruvi: Bu men 28BYJ-48 qadamli dvigatelning boshqaruv sxemasi bo'lib, men uni oxirgi yillik dissertatsiya loyiham doirasida ishlatdim. Men buni oldin ko'rmaganman, shuning uchun men kashf qilgan narsalarni yuklayman deb o'yladim. Umid qilamanki, bu boshqalarga yordam beradi
Qayta ishlangan sun'iy yo'ldosh idishlari antennasi Wi-Fi va uyali telefon signallarini oladi: 4 qadam
Qayta ishlangan sun'iy yo'ldosh antennalari Wi-Fi va uyali telefon signallarini yozib oladi: Men San-Antoniodan Shimoliy Karolinaning qishloqlariga ko'chib kelganimda, men o'zim yashagan joyda wi-fi yoki uyali telefon signalini ololmay qoldim. Menga uyali signalni olishning yagona yo'li - men borgan joyimdan har ikki tomonga bir mil masofani bosib o'tish
Karnay haydovchisi DIYni o'rab oladi: 4 qadam
Karnay haydovchisi DIYni o'rab oladi: Manbadan: Karnay dizayni bo'yicha darslik eslatmalari + video materiallar Ilgari, karnaylarni ta'mirlash bo'yicha xizmatlar juda kam, ko'pincha qimmat bo'lgan va DIYni almashtirish deyarli imkonsiz edi. Internet buni yaxshiladi, atrof keng tarqalgan