Sisällysluettelo:
- Vaihe 1: Pyydä tarvittavat komponentit ylös
- Vaihe 2: Ota Pi ylös ja käynnissä
- Vaihe 3: Luo laserin tunnistuspiiri
- Vaihe 4: Muokkaa ulkoisen virtalähteen laseria
- Vaihe 5: Käynnistä laser ja testaa tunnistuspiiri
- Vaihe 6: Liitä verkkokamera ja testaa sen toiminta
- Vaihe 7: Väliaika
- Vaihe 8: Valvo laseria ohjelmistolla
- Vaihe 9: Luo verkkosivu, joka näyttää streamisi
- Vaihe 10: Määritä sähköposti -ilmoitukset
- Vaihe 11: Käynnistä sähköpostikomentosarja, kun laser laukeaa
- Vaihe 12: Luo pääskripti järjestelmän käynnistämiseksi
- Vaihe 13: Johtopäätös
Video: Raspberry Pi -laser -turvajärjestelmä: 13 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Kiitos, että tarkistit ohjeeni. Tämän ohjeen loppuun mennessä rakennat vadelman pi laser -tripwire -järjestelmän, jossa on sähköpostihälytystoiminto, joka näkyy videossa.
Tämän ohjeen suorittamiseksi sinun on tunnettava yleiset piirit ja juottaminen, osattava leipälevyä ja oltava mukava käyttää pi: n päätelaitetta. Kokemus pythonista auttaa myös.
Tämä projekti koostuu kolmesta pääjärjestelmästä. Vadelma pi, laserlaukaisupiiri ja tarkkailutietokone. Tavoitteenamme on käyttää vadelma pi: tä havaitsemaan jännitteen muutos laserlaukaisupiirissä ja varoittaa sitten tarkkailevaa tietokonetta sähköpostin ja videovirran muodossa.
Aloitetaanpa.
Vaihe 1: Pyydä tarvittavat komponentit ylös
Tämän projektin loppuun saattamiseksi tarvitset seuraavat asiat.
- Ainakin yksi toimiva Raspberry Pi. Tässä rakennuksessa käytin B -mallin Pi -tyyppistä raspbian -hengityksen vinkumista. Olen varma, että tämä opetusohjelma toimii hienosti, jos käytät raspbian jessieä.
- Ulkoinen virtalähde vadelmapi: lle. Otamme huomattavan määrän ampeeria, kun kaikki tämä on kytketty. Vietin paljon aikaa diagnosoidakseni surkean virtalähteen ongelmani lähteeksi ensimmäisen rakennuksen aikana. Varmista, että sinulla on voimakas teho, joka pystyy tuottamaan vähintään 2 ampeeria.
- Halpa laserosoitin. Löysin omani huoltoaseman kassakoneen vierestä. Jos haluat tarkan laserin, löydät sen täältä. Etiketissä lukee 630-680 nm aallonpituudella. Kumpi tahansa laser saat, se määrittää joitain muita rakenteen komponentteja. Varmista siis, että sen etiketti tunnistaa sen aallonpituuden.
- USB -tyylinen verkkokamera. Tässä verkkokamerassa on säädettävä jalka, jonka avulla voit sijoittaa kameran kauniisti. Huomasin, että verkkokameran mukana tullut USB -kaapeli oli liian lyhyt sovellukselleni, joten löysin laajennuksen monoprice -hinnasta.
-
Jonkinlainen purkaussarja vadelmapi: lle, jotta voit päästä helposti käsiksi suorittimen nastoihin.
- Leipälauta.
- Juotosrauta.
- Hyppyjohdot leipälevylle.
-
Piirikomponentit. Kerro haluamallasi laukaisujohdolla.
- Yksi toimiva led
- Yksi 100 ohmin vastus
- Yksi 1k vastus
- Yksi 10k vastus
- Yksi 200k vastus Todella kaikki suuret vastukset tekevät. Testasin sitä 1M vastuksella ja se toimi hyvin. FYI 10k oli liian pieni.
- Yksi PNP-transistori PN: 2N4403-APCT-ND
- Yksi fotodiodi (vastaa tätä laser-aallonpituudellesi) PN: PDB-C142-ND
Liitän piirilevyn kicad -tiedostot, mutta en mene läpi tämän ohjeen piirilevyn valmistuksen.
Tämän projektin aikana seuraavat valinnaiset työkalut olivat käteviä:
- Synergian asentaminen vadelmapi: lle. Jos et ole tuttu, tämän ohjelmiston avulla voit hallita vadelmapi: n hiirtä ja näppäimistöä toisella tietokoneella. Tämä on mukavaa, jos olet kuin minä ja viihdyt paremmin eri tietokoneella. Tämä on myös ohjelmisto, joka kaikilla pitäisi olla.
- USB -keskus. Jokaista verkkokameraa, jota haluat käyttää, tarvitset yhden portin.
- Jännitemittari tai oskilloskooppi, jos sinulla on se.
- MobaXtermin käyttäminen vadelman pi hallintaan ja tiedostojen käsittelyyn ssh: n kautta. Se on pakollinen jokaiselle, joka on nostettu ikkunoihin. Katso tämä opetusohjelma saadaksesi sen käyttöön.
Vaihe 2: Ota Pi ylös ja käynnissä
Pi, jossa on minimaalisesti komponentteja
Ennen kuin voimme ampua lasereita, on rakennettava useita ohjelmistokerroksia. Parhaat mahdollisuudet menestyä on hyvä aloittaa puhtaalta pöydältä. Irrota kaikki tarpeettomat kohteet Pi: stä. Tämä vähentää häiriöiden mahdollisuutta liitetystä laitteesta.
Varmista seuraavaksi, että Raspberry Pi on käynnissä uusimmalla ohjelmistolla kirjoittamalla seuraava päätelaitteeseen
sudo apt-get päivitys
Kun vadelma pi on ajan tasalla, on seuraavan askeleen aika
Vaihe 3: Luo laserin tunnistuspiiri
Aseta osat leipälevylle kuvan osoittamalla tavalla. Kytke leipälauta virtalähteeksi pi: n 5 V: n ulostulolla tai pöytätason virtalähteellä. Kuvassa 1 5v -syöttö on kytketty positiiviseen leipälevyn kiskoon kuvan vasemmassa alakulmassa ja maahan vasempaan yläkulmaan. Tämä piiri käyttää fotodiodia kytkimenä transistorin laukaisemiseen. Transistori muuntaa fotodiodin pienen jännitteen muutoksen hieman digitaaliseksi signaaliksi, jonka pi voi lukea. Kaikissa seuraavissa vaiheissa piste 100ohmin ja signaalin ledin välillä on se, jossa otamme piirin pi: llä.
-
Kuva 1: Piirilevyn asettelun yläosa
-
Kuva 2: Vaihtoehtoinen piirilevyn asettelu
Jos haluat puhtaamman ilmeen, liitin kicad -tiedostot alla olevalle levylle.
-
Kuva 3: Anturikortin ylhäältä katsottuna
-
Kuva 4: Anturikortti ISO
-
Oranssi lanka korvaa hetkellisen painikkeen
-
Näytetään positiiviset ja negatiiviset johdot
-
Pallonivel
-
Pistokeliitos
-
Pallo ja hylsy koottu
-
Toimiva laser terveellä säteellä
-
Valo ei ole rikki ja led on pois päältä
-
Tunkeutuja murtaa säteen aiheuttaen ledin syttymisen
-
mjpg-streamer-näytteen ulostulo
-
Leipälevyn asettelu PiCoblerin avulla
-
Oikea konsolilähtö (näkyy MobaXtermillä)
-
Kuvakaappaus liitteenä olevista tiedostoista toiminnassa
- sinun_ip = "192.168.0.177"
- your_ip_optional_port = ": 8080"
- port_to_camera = ": 8081"
- send_email_username = "sähköpostiosoitteesi"
- send_email_password = "salasanasi"
-
Kuvakaappaus liitteenä olevista tiedostoista toiminnassa
Vaihe 4: Muokkaa ulkoisen virtalähteen laseria
Seuraavissa vaiheissa rakennat laserosoittimen.
- Pura laserosoitin. Huomioi tällöin akun napojen suunta lasersäteilijään nähden.- Irrota seuraavaksi akkuliitäntäjousi ja hetkellinen painike laserista.- Juotos lankapala napojen välille, joissa painike oli. Nyt kun laserille syötetään virtaa, se kytkeytyy automaattisesti päälle.- Juotetaan nyt positiiviset ja negatiiviset johdot laseriin. Jos käytät samaa laseria osaluettelosta, voit nähdä juotoskohdat alla olevan kuvan avulla. Jos et ole, sinun on ehkä löydettävä juotoskohdat itse. Voit käyttää akun suuntausta vihjeenä positiiviselle tai negatiiviselle johdolle. Voit löytää viimeisen juotospisteen käyttämällä 5 voltin virtalähdettä ja mittaamaan piirin kahdella mittausjohdolla. Kun olet luonut oikean piirin, olet löytänyt juotoskohdan ja laser syttyy.
- Viimeinen vaihe on tehdä laserille suunnattu asennuspylväs, jotta sitä voidaan helposti säätää kohdistamaan lasersäiliöön. Olen huomannut, että useimmat lego bionicle -sarjat ovat erinomainen lähde halvalle pallolle hylsyliitoksissa. Liimaa yksi kuulanivelen osa laserosoitimeen superliimalla. Nyt voit asentaa hylsyn liitoksen mille tahansa pinnalle ja napsauttaa laserin sisään.
Vaihe 5: Käynnistä laser ja testaa tunnistuspiiri
Liitä laser leipälevyyn. Positiivinen on kytkettävä 5 volttiin ja maadoitettava negatiivinen johto. Jos laser käynnistyy hyvin, jos ei, tarkista, että jännite on oikea yleismittarilla. Jos se ei vieläkään toimi, vaihda johdot, jos kytket sen taaksepäin. Jos se ei edelleenkään toimi, et ehkä ole juottanut oikeille tyynyille, palaa viimeiseen vaiheeseen.
Kun olet saanut lasersäteen, on aika testata tunnistuspiiri. Suuntaa laser valodiodiin. LED -valon pitäisi sammua, kun merkkivalo on aktiivinen. Heiluttele kättäsi säteen läpi ja LED -valon pitäisi syttyä ja ilmoittaa laukaisusta.
Vaihe 6: Liitä verkkokamera ja testaa sen toiminta
Liitä verkkokamera USB -porttiin. Jotta voimme suoratoistaa videota, meidän on hankittava apuohjelma mjpg-streamer. Tässä on hyvä opetusohjelma siitä, miten se tehdään. Kun olet asentanut mjpg-streamer oikein. Aloita videon suoratoisto kirjoittamalla seuraava komento päätelaitteeseen.
cd /johon olet asentanut mjpg-streamer /mjpg-streamer
./mjpg_streamer -i "./input_uvc.so -y/dev/video0" -o "./output_http.so -w./www -p 8081"
Tämä komento asettaa virran porttiin 8081 käyttäen video0 -lähdettä. Jos haluat useita verkkokameroita, kirjoita yllä oleva komento uudelleen, mutta vaihda video0 video 1: ksi ja 8081 arvoon 8082. Olen suoratoistanut jopa 3 verkkokameraa tällä tavalla, eikä pi ollut ylikuormitettu.
Testaa, että yhteys toimii avaamalla selaimen toisella tietokoneella ja kirjoittamalla ip-address-of-pi: 8081 tai kirjoittamalla pi-kohtaan vain localhost: 8081. Jos et tiedä pi: n ip: tä, kirjoita seuraava päätelaitteeseen
ifconfig
Jos kaikki toimii, sinun pitäisi nähdä mpg-streamerin kotisivu. Napsauta stream -välilehteä nähdäksesi verkkokamerasi. Alla on kuvakaappaus käyttöliittymästä.
Kun tein tämän opetusohjelman toisen kerran, pääsin käyttämään mjpg-streamerin kotisivua, mutta en nähnyt streamia. Korjatakseni tämän luin tämän viestin (linkki nyt rikki), erityisesti YUYV -pikselimuotoa käsittelevän osan. Jos kohtaat tyhjän virran, sinun on myös tutustuttava siihen.
Vaihe 7: Väliaika
Okei, joten tässä vaiheessa meidän pitäisi saada vadelmapiimamme käyttöön. Laserimme on muokattu ulkoista virtalähdettä varten. Tunnistuspiirimme on rakennettu ja olet vahvistanut, että kun lasersäde osuu fotodiodiin, led sammuu ja kun säde katkaistaan, ledin pitäisi syttyä. Lopuksi sinun pitäisi olla verkkokamera kytketty ja toiminnallisesti suoratoistaa.
Nyt on aika koota kaikki yhteen. Aloitetaan yksinkertaisesti yrittämällä havaita lasersäteen laukaisu ohjelmistolla.
Liitä tunnistuspiiri leipälevyyn kuvan mukaisesti. Varmista, että liität anturin signaalijohdon nastaan 25 valmistautuessasi seuraavaan vaiheeseen. Vedettävä vastus ei ole valinnainen. Minulla oli 10k makaa noin, mutta kaikki vastus pitäisi tehdä.
Vaihe 8: Valvo laseria ohjelmistolla
Kirjoitetaan lyhyt ohjelma kuunnella lasersignaalia ja lähettää se terminaaliin. Voit ladata koodin liitteenä.
Sinun on todennäköisesti asennettava tämän komentosarjan riippuvuudet. Python ja gpio -moduuli. Asenna nämä kirjoittamalla
sudo apt-get install python-rpi.gpio python3-rpi.gpio
Kun olet asentanut pythonin onnistuneesti, lataa liitteenä oleva python -komentosarja nimeltä read_pin.py ja suorita
cd /hakemisto, johon laitat tiedoston /chmod 777 read_pin.py
Chmod -komento antaa komentosarjalle luvan toimia. Testaa sitten, että kaikki on kunnossa ja jännä juoksemalla
sudo python3 read_pin.py
Jos kaikki menee hyvin, sinun pitäisi nähdä konsolin lähtö kuten alla. Poistu python -komentosarjasta kirjoittamalla
Ctrl-C
Heiluta kättäsi lasersäteen edessä ja konsolissa pitäisi näkyä jokin ulostulo, joka varoittaa säteen rikkoutumisesta. Voit vapaasti leikkiä käsikirjoituksella saadaksesi järjestelmän toimimaan eri tavoin.
Vaihe 9: Luo verkkosivu, joka näyttää streamisi
Nyt meidän on luotava verkkokameran katselurajapinta. Tässä vaiheessa sinun on asennettava apache -verkkopalvelin. Siellä on paljon opetusohjelmia yhden perustamisesta. Mutta tässä on lyhyt luettelo minimaalisella kokoonpanolla.
sudo apt-get install apache2
asennuksen jälkeen sinun pitäisi pystyä kirjoittamaan selaimeesi vadelma pi
paikallinen isäntä
Sinun pitäisi nähdä apachen tervetulosivu. Jos tämä on ensimmäinen kerta, kun asennat verkkopalvelinta, haluat todennäköisesti määrittää pi: si staattisen ip -osoitteen, jotta reitittimesi määrittää aina oikean IP -osoitteen, jos teet käynnistyksen. Jos haluat tarkastella turvajärjestelmääsi toisesta paikasta, sinun on määritettävä portinsiirto reitittimellesi. Siitä on jo jonkin aikaa, mutta uskon myös, että sinun on välitettävä myös kaikki portit, joissa on verkkokamera. Siellä on paljon opetusohjelmia, jotka kattavat nämä menettelyt. Huomaa, että kuka tahansa voi nähdä verkkokamerasi, jos päätät määrittää portin uudelleenohjauksen reitittimellesi.
Liitetiedostot ovat esimerkkisivuja, joiden avulla voit määrittää verkkosivustosi. Sinun on muutettava html -tiedoston tiedostopääte, koska he eivät sallineet minun ladata sitä. Aseta seuraavaksi tiedostot www -kansioosi, jotka on kutsuttu apache -määritystiedostoosi. Oletussijainti on
cd /var /www
Jos haluat muuttaa sijaintia, josta verkkopalvelin etsii html -tiedostojasi, voit muokata sivustosi käytössä olevaa tiedostoa kirjoittamalla
sudo nano/etc/apache2/sites-enabled/000-default
Muuta/var/www/-esiintymä haluamaasi paikkaan. Laitoin omani/home/pi/Desktop/www/
Kun olet saanut html -tiedostot verkkokansioon, kirjoita localhost selaimeen tai pi -tietokoneen IP -osoite toiselta tietokoneelta. Sinun pitäisi nähdä jotain tällaista.
SWEEEEET!
Vaihe 10: Määritä sähköposti -ilmoitukset
Hyviä asioita tapahtuu! Painetaan onneamme yrittämällä lähettää sähköpostihälytys pi: ltä ennalta määritettyyn sähköpostiosoitteeseen. Liitteenä oleva python -skripti rakentaa sähköpostisi, jonka haluat lähettää, muodostaa yhteyden sähköpostipalveluntarjoajaan, kuten gmail, ja lähettää sähköpostin sähköpostipalvelun avulla. Tämä saavutetaan käyttämällä pythonin smtp -pakettia. Ehdotan, että teet tyhjän sähköpostiosoitteen juuri sinua varten, koska meidän on vähennettävä Gmail -tilisi suojausta, jotta smtp -paketti toimisi.
Sinun on muokattava komentosarjaa useissa paikoissa, jotta lähetys onnistuu. Se on voimakkaasti kommentoitu ja tuottaa paljon ulostuloja terminaalissa avuksesi.
Asioita, joita sinun on muutettava, tulee olemaan
sinun_ip_optional_port on todennäköisesti tyhjä, ellei apache -palvelimesi toimi muussa portissa kuin oletus 80. Minulla oli jo palvelin 80: llä, joten asetin pi: n toimimaan 8080. Port_to_camera on portti, johon määrität kamerasi käytä mjpeg -suoratoistoa.
Kun olet muuttanut nämä muuttujat komentosarjan alussa, suorita ohjelma kirjoittamalla seuraava päätelaitteeseen.
cd /kansio, johon kirjoitat komentosarjan /
sudo python3 send_mail.py
Jos tähdet on kohdistettu oikein ja kaikki muuttujat ovat oikein, saat samanlaisen sähköpostin kuin alla.
On monia paikkoja, joissa tämä skripti voi epäonnistua. Älä turhaudu, jos se ei toimi ensimmäisellä kerralla. Käytä skriptin virheenkorjauspisteitä kaventamaan ongelma -alueita ja keskittymään sitten yhteen ongelmaan kerrallaan.
Vaihe 11: Käynnistä sähköpostikomentosarja, kun laser laukeaa
Nyt kun pi pystyy lähettämään sähköposteja, automatisoidaan se niin, että saamme sähköpostin joka kerta, kun laser laukeaa. Lataa liitteenä oleva tiedosto, joka on read_pin.py -tiedoston muokattu versio, joka sisältää uuden toiminnon sähköpostin komentosarjan käyttämiseksi. Tärkein lisärivi on seuraava
sm_pid = os.spawnlp (os. P_NOWAIT, "/usr/bin/python3", "python3", "/home/pi/Desktop/security/send_mail.py")
Tämä rivi käynnistää sähköpostin lähetysskriptin rinnakkain lasertunnistusskriptin kanssa. Tämä on toivottavaa, koska sähköpostiviestin lähettäminen kestää muutaman sekunnin, ja se estäisi lasersensoriskriptin suorittamisen ennen sähköpostin lähettämistä. Tämä ei ole ongelma yksittäiselle kamerajärjestelmälle, mutta jos sinulla olisi useita kameroita, haluat havaita laserlaukaisun kamerassa 1, vaikka kamera 2 on käynnistänyt sähköpostitapahtuman. Muuttuja sm_pid sisältää tämän komennon käynnistämän prosessin pid. Tarkistamme tämän tunnuksen, jos sähköpostiliipaisinta kutsutaan uudelleen, jos se on olemassa, sähköposti lähettää edelleen, joten ohitamme tapahtuman. Jos sitä ei ole, tämä on todennäköisesti uusi tapahtuma ja sähköposti lähetetään.
Testaa, että kaikki toimii juoksemalla
cd /hakemisto johon laitat tiedoston /
chmod 777 read_pin_with_mail.py
sudo python3 read_pin_with_mail.py
Kun murtat lasersäteen, saat sähköpostin, jossa on verkkokamerasta otettu kuva.
Vaihe 12: Luo pääskripti järjestelmän käynnistämiseksi
Tässä vaiheessa projekti on pääosin valmis. Viimeinen askel on yksinkertaistaa järjestelmän käynnistämistä viimeisellä komentosarjalla. Se käynnistää kaikki aliohjelmat ja määrittää verkkokameran yhdellä komentosarjalla. Liitetiedosto voidaan käynnistää käynnistyksen aikana muokkaamalla /etc/rc.local -tiedostoa. Sinun on muutettava tiedostopääte ja ehkä muokattava komentosarjaa sisältämään oikeat polut, jos sijoitat skriptit eri paikkaan.
Vaihe 13: Johtopäätös
No siinäpä se. Toivottavasti pidit tästä opettavaisesta! Kerro minulle kommenteissa, jos sinulla on kysyttävää tai tarvitset yksityiskohtaisempia tietoja joillakin alueilla. Jatka tinkimistä!
Suositeltava:
Smart Home by Raspberry Pi: 5 vaihetta (kuvilla)
Smart Home by Raspberry Pi: Siellä on jo useita tuotteita, jotka tekevät asunnostasi älykkäämmän, mutta suurin osa niistä on omia ratkaisuja. Mutta miksi tarvitset Internet -yhteyden vaihtaaksesi valon älypuhelimellasi? Se oli yksi syy minulle rakentaa oma Smar
Puinen LED -pelinäyttö Powered by Raspberry Pi Zero: 11 vaihetta (kuvilla)
Puinen LED -pelinäyttö Powered by Raspberry Pi Zero: Tämä projekti toteuttaa 20x10 pikselin WS2812 -pohjaisen LED -näytön, jonka koko on 78x35 cm ja joka voidaan helposti asentaa olohuoneeseen retro -pelejä pelaamaan. Tämän matriisin ensimmäinen versio rakennettiin vuonna 2016 ja monet muut ihmiset rakensivat sen uudelleen. Tämä esimerkki
Borderlands Raspberry Pi: 9 vaihetta (kuvilla)
Borderlands Raspberry Pi: Joten olin eräänä päivänä pelikaupassa ja näin tämän Borderlandsin rekvisiitan raivausosastolla hintaan 20 dollaria, enkä voinut vastustaa sen ostamista. Noin viikon kuluttua ajattelin itselleni: "Voisin suolen kokonaan ja ahdistaa piin sisälle". Silloin seikkailuni alkoi
Raspberry Pi NFS ja Samba -tiedostopalvelin: 11 vaihetta (kuvilla)
Raspberry Pi NFS ja Samba File Server: Tämä projekti on viimeinen tulosvaihe, joka yhdistää kaksi aiemmin tehtyä ja lähetettyä piiriä. *** 1. Raspberry Pi CPU CPU Indicator-Julkaistu 20. marraskuuta 2020https: //www.instructables.com/Raspberry-Pi-CPU-Tem…2. Vadelma Pi
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite