Mundarija:

Virtual teshik: 4 qadam (rasmlar bilan)
Virtual teshik: 4 qadam (rasmlar bilan)

Video: Virtual teshik: 4 qadam (rasmlar bilan)

Video: Virtual teshik: 4 qadam (rasmlar bilan)
Video: #ZAPAL EX QIZLAR BUNCHA ARZONSIZ ๐Ÿ˜ 2024, Dekabr
Anonim
Image
Image

Butun dunyoda taxminan 770 million kuzatuv kamerasi mavjud. Ulardan ba'zilari hali ham standart parolga ega, shuning uchun ularni Internetga ulangan har bir kishi osongina kirishi mumkin.

Bu virtual teshik - bu himoyalanmagan kameralarning bir qismini ko'rish uchun mo'ljallangan qurilma. Har safar teshik ochilganda, boshqa kamera ko'rsatiladi.

Ta'minotlar

  • 1 Arduino Micro
  • 1 -rasmli rezistor
  • 1 Raspberry Pi 3 modeli B
  • 1 Raspberry Pi ekrani
  • 1 yog'och quti
  • 1 eshikli ko'z
  • Matkap
  • Tornavida

1 -qadam: Raspberry Pi va Arduino -ni sozlash

Raspberry Pi va Arduino sozlamalari
Raspberry Pi va Arduino sozlamalari

Virtual teshik 2 xil qismdan iborat: Raspberry Pi (kichik ekranli) va Arduino Micro. Raspberry Pi Internetga ulangan va bitta tasodifiy kamera tasmasini ko'rsatadigan veb -saytni ko'rsatadi, uning teshik yoki ochiqligini aniqlash uchun yorug'lik teshigi mavjud. Teshik yopilganda, Raspberry Pi -ga signal yuboriladi (Arduino Micro orqali) va veb -sayt boshqa kamera tasmasiga o'tadi. Men bu loyihada ishlatgan kamera ma'lumotlari Insecam veb -saytidan olingan, 73 000 dan ortiq himoyalanmagan kameralar.

Ko'rsatish uchun veb -sayt

Virtual teshik uchun men Insecam -dan yig'ilgan ma'lumotlar bilan veb -sayt qurdim. Siz o'z veb -saytingizni juda yaxshi qura olasiz, lekin bu imkonsizdir. Agar siz o'z veb -saytingizni yaratishni xohlamasangiz, siz bu havoladan foydalanishingiz mumkin (har safar bo'sh joy bosilganda veb -kamera o'zgaradi; biz keyinchalik bu tugmani arduino -dan ishga tushiramiz) yoki manba kodini ko'ring.

Raspberry pi -ni sozlash

  1. Raspberry Pi ishlayotgani va sozlanganligiga ishonch hosil qiling (agar siz malina pi bilan yangi bo'lsangiz, ushbu qo'llanmani ko'ring)
  2. LCD displeyni Raspberry Pi -ga ulang
  3. Malinali pi ishga tushganda veb -sahifasini ochishiga ruxsat bering

Arduino -ni sozlash

Diqqat: ushbu loyihani amalga oshirish uchun Arduino kartangiz kutubxona sahifasida aytib o'tilganidek, klaviatura kutubxonasini qo'llab -quvvatlashi kerak:

Qo'llab -quvvatlanadigan modellar - 32u4 va SAMD asosidagi platalar (Leonardo, Esplora, Zero, Due va MKR Family).

  1. Yorug'lik sensorini Arduino -ga ulang
  2. Kodni Arduino -ga yuklang. Kod birinchi navbatda 5 soniya davomida kalibrlashni amalga oshiradi (bu vaqtda fotosensorning minimal va maksimal qiymati qayd qilinadi), so'ngra yorug'lik qiymati chegaradan past bo'lganda (bo'sh joy yopilgan degan ma'noni anglatadi) "bo'sh joy" tugmachasini yuboradi.

oldingiMillis = 0

// chunki yorug'lik har doim o'zgarib turadi, biz har bir yuklashda fotosessorni sozlaymiz. uzoq kalibrlash vaqti = 5000; uzoq startMillis = 0; // analog sensori uchun maksimal qiymat 1024 int sensorMin = 1024; int sensorMax = 0; int o'rtacha = 0; int chegarasi = 5; bool lastState = rost; bool isClosed = rost; void setup () {Serial.begin (9600); // Keyboard.begin () ketma -ket portini oching; // klaviatura kutubxonasini ishga tushiring startMillis = millis (); // hisoblagichni ishga tushiring} void loop () {// dastlabki 5 soniyada o'qishni barqarorlashtiring // keyin stabilizatsiyadagi o'zgarishni aniqlang. belgisiz uzun oqimMillis = millis (); // millisni joriy vaqt sifatida o'rnating int sensorValue = analogRead (A0); // sensorni o'qing, agar (currentMillis-startMillis <kalibrlash vaqti) {// biz kalibrlash vaqtida // bu kalibrlash vaqtida ekanmiz, uni sozlash uchun teshik teshigini oching va yoping. int elapsedtime = currentMillis - startMillis; Serial.println (o'tgan vaqt); Serial.println (sensorMin); Serial.println (sensorMax); if (sensorValue sensorMax) {sensorMax = sensorValue; o'rtacha = (sensorMin + sensorMax)/2; } kechikish (100); // kechiktirish} else {// agar kalibrlash amalga oshirilsa (sensorValue> o'rtacha + chegara) {// teshik teshigi ochiq yoki yopiqligini aniqlasa isClosed = false; if (lastState! = isClosed) {}} boshqa {isClosed = true; if (lastState! = isClosed) {Keyboard.print (""); // agar tuynuk ochiq bo'lsa kalit signalini yuborish}} lastState = isClosed; kechikish (100); }}

2 -qadam: qutini o'rnating

Qutini sozlash
Qutini sozlash
Qutini sozlash
Qutini sozlash
Qutini sozlash
Qutini sozlash
Qutini sozlash
Qutini sozlash
  • Fotosensorga mos keladigan eshik ko'zini teshik qiling (bu sizning teshik ochilgan yoki yopilganligini aniqlaydi va keyin veb -kameraning o'zgarishiga olib keladi).
  • Qutiga teshik oching, shunda siz eshikning ko'ziga mos tushasiz
  • Eshik ko'zining oldida, malina pi ni ekran bilan mahkamlang (men velkro ishlatardim)
  • Arduino simini ulang:

    • Fotosensorni arduino -ga ulang
    • USB kabelini Rpi va Arduino orasiga qo'ying. Arduino klaviatura kabi harakat qiladi va malina pi ga asosiy signallarni yuboradi.

3 -qadam: Virtual teshikni ishga tushiring

Image
Image
Virtual teshikni ishga tushiring
Virtual teshikni ishga tushiring

Hamma narsani qutiga solib qo'ysangiz, endi siz virtual teshikni ishga tushirishga tayyormiz.

  • Virtual teshikni devorga qo'ying
  • Rapsberry pi -ni quvvat manbaiga ulang
  • Endi eshik ko'zida joylashgan fotosensorni kalibrlash uchun 5 soniya kerak bo'ladi.

Virtual teshik teshik endi ishlashi kerak!

Xursand bo'ling!

4 -qadam:

Raspberry Pi tanlovi 2020
Raspberry Pi tanlovi 2020
Raspberry Pi tanlovi 2020
Raspberry Pi tanlovi 2020

Raspberry Pi 2020 tanlovida ikkinchi o'rinni egalladi

Tavsiya: