Sisukord:

Raspberry Pi laseri turvasüsteem: 13 sammu (koos piltidega)
Raspberry Pi laseri turvasüsteem: 13 sammu (koos piltidega)

Video: Raspberry Pi laseri turvasüsteem: 13 sammu (koos piltidega)

Video: Raspberry Pi laseri turvasüsteem: 13 sammu (koos piltidega)
Video: ПРИВОЗ. ОДЕССА МАМА. Рецепт САЛО. ОБЗОР НОЖЕЙ 2024, Juuli
Anonim
Image
Image
Pilt
Pilt

Tänan, et uurisite minu juhendit. Selle juhendi lõpuks konstrueerite videol näidatud e -posti hoiatusfunktsiooniga vaarika pi laser tripwire süsteemi.

Selle juhendi lõpuleviimiseks peate olema tuttav üldise vooluringi ja jootmisega, teadma, kuidas kasutada leivaplaati ja olema mugav kasutada pi -l olevat terminali. Kasuks tuleb ka pythoniga töötamise kogemus.

See projekt koosneb kolmest põhisüsteemist. Vaarika pi, laser -tripwire -ahel ja vaatlusarvuti. Meie eesmärk on kasutada vaarika pi abil laserkiirguse ahela pinge muutust ja seejärel teavitada jälgivat arvutit e -posti ja videovoo kujul.

Alustagem.

Samm: ümardage nõutavad komponendid üles

Selle projekti lõpuleviimiseks vajate järgmisi elemente.

  1. Vähemalt üks toimiv Raspberry Pi. Selles konstruktsioonis kasutasin mudeli B stiilis Pi jooksvat raspbiani vilinat. Olen kindel, et see õpetus töötab suurepäraselt, kui töötate raspbian jessiega.
  2. Väline toiteallikas vaarika pi jaoks. Me võtame märkimisväärse koguse voolutugevust, kui see kõik on ühendatud. Kulutasin palju aega, kui diagnoosisin oma esimese ehituse ajal oma probleemide allikaks rumala toiteallika. Veenduge, et teil on tugev võimsus, mis suudab toita vähemalt 2 amprit.
  3. Odav laserpointer. Leidsin oma oma bensiinijaamast kassast. Kui soovite täpset laserit, leiate selle siit. Märgis ütleb lainepikkuse kohta 630-680 nm. Ükskõik, millise laseriga saate, määrab mõned teised ehitise komponendid. Nii et veenduge, et selle silt tuvastaks selle lainepikkuse.
  4. USB -stiilis veebikaamera. Sellel veebikaameral on reguleeritav jalg, mis võimaldab teil kaamera kenasti paigutada. Leidsin, et veebikaameraga kaasas olnud USB -kaabel oli minu rakenduse jaoks liiga lühike, nii et leidsin ühehinnaga laienduse.
  5. Mingi purunemiskomplekt vaarika pi jaoks, et saaksite hõlpsalt juurde pääseda protsessori tihvtidele.

    Pilt
    Pilt
    Pilt
    Pilt
  6. Leivalaud.
  7. Jootekolb.
  8. Leivaplaadi džemprijuhtmed.
  9. Vooluahela komponendid. Korrutage soovitud katkestusjuhtmete arvuga.

    • Üks töötav juhtis
    • Üks 100 oomi takisti
    • Üks 1k takisti
    • Üks 10k takisti
    • Üks 200k takisti Tõesti sobib iga suur takisti. Testisin seda 1M takistiga ja see töötas hästi. FYI 10k oli liiga väike.
    • Üks PNP transistor PN: 2N4403-APCT-ND
    • Üks fotodiood (sobitage see teie lainepikkusega) PN: PDB-C142-ND

Lisan trükkplaadi kicad -failid, kuid ei hakka selles juhendis plaadi tootmist üle vaatama.

Selle projekti käigus leidsin, et käepärased on järgmised valikulised tööriistad:

  1. Sünergia paigaldamine vaarika pi. Kui te pole tuttav, võimaldab see tarkvara juhtida vaarika pi hiirt ja klaviatuuri teise arvutiga. See on tore, kui olete nagu mina ja teil on mugavam teises arvutis olla. Samuti on see tarkvara, mis peaks kõigil olema.
  2. USB -jaotur. Iga veebikaamera jaoks, mida soovite kasutada, vajate ühte porti.
  3. Pinge mõõtja või ostsilloskoop, kui see on olemas.
  4. MobaXterm'i kasutamine vaarika pi juhtimiseks ja failide töötlemiseks ssh kaudu. See on kohustuslik kõigile, kes on akendel kasvatatud. Vaadake seda õpetust selle kasutamiseks häälestamiseks.

2. samm: pange Pi üles ja käivitage

  • Pilt
    Pilt

    Pi minimaalsete komponentidega

  • Enne laserite tulistamist tuleb konstrueerida mitu tarkvara kihti. Parima edu saavutamiseks on hea tava alustada puhta lehega. Selleks ühendage mittevajalikud esemed Pi -st lahti. See vähendab ühendatud seadme häirete tõenäosust.

    Seejärel veenduge, et teie Raspberry Pi töötab ja töötab uusima tarkvaraga, sisestades terminali järgmise

    sudo apt-get update

    Kui vaarika pi on ajakohane, on aeg järgmiseks sammuks

    3. samm: looge laserdetektor

    Asetage komponendid leivalauale, nagu näidatud. Toidake leivaplaati, kasutades pi 5V väljundit või töölaua toiteallikat. Joonisel 1 on 5v toide ühendatud pildi vasakus alanurgas asuva positiivse leivaplaadi rööpaga ja maapind vasakul ülaosas. See vooluahel kasutab fotodioodi lülitina transistori käivitamiseks. Transistor teisendab fotodioodi väikese pinge muutuse mõnevõrra digitaalseks signaaliks, mida pi suudab lugeda. Kõigi järgnevate toimingute puhul on punkt 100 oomi ja signaalijuhtme vahel seal, kus proovime ahelat koos pi -ga.

    • Pilt
      Pilt

      Joonis 1: Leivaplaadi skeemi ülaosa

    • Pilt
      Pilt

      Joonis 2: lülitusplaadi skeemi alternatiivvaade

    Kui soovite puhtamat välimust, lisasin allpool näidatud tahvli kicad -failid.

    • Pilt
      Pilt

      Joonis 3: Anduriplaadi pealtvaade

    • Pilt
      Pilt

      Joonis 4: anduriplaat ISO

    • Samm: muutke välise toite laserit

      Järgmistes etappides koostate laserpointeri komplekti.

      - Võtke laserosuti lahti. Seda tehes pange tähele aku klemmide suunda laserkiirguri suhtes.- Seejärel lahutage aku ühendusvedru ja hetkeline vajutusnupp laserist.- Jootke juhtmetükk klemmide vahele, kus nupp oli. Nüüd, kui laserile toide antakse, lülitub see automaatselt sisse.- Nüüd jootke positiivsed ja negatiivsed juhtmed laserile. Kui kasutate sama laserit osade loendist, saate jootepunktide nägemiseks kasutada allolevat pilti. Kui te seda ei tee, peate võib -olla ise jootepunktid leidma. Aku orientatsiooni saate kasutada vihjena positiivsele või negatiivsele juhtmele. Viimase jootepunkti leidmiseks võite kasutada 5 V toiteallikat ja mõõta vooluahelat kahe testjuhtmega. Kui olete õige vooluringi loonud, olete leidnud jootepunkti ja laser süttib.

      • Pilt
        Pilt

        Oranž traat asendab hetkelist vajutusnuppu

      • Pilt
        Pilt

        Positiivsete ja negatiivsete juhtide kuvamine

      - Viimane samm on teha laserile suunaga kinnituspost, nii et seda saab hõlpsasti reguleerida nii, et see oleks suunatud laserpistikule. Olen avastanud, et enamik lego bionicle komplekte on suurepärane allikas odavate kuulide jaoks pistikupesades. Liimige üks kuulliigendi tükk superliimi abil laserpointerile. Nüüd saate pistikupesa ühendada mis tahes pinnaga ja laseriga sisse klõpsata.

      • Pilt
        Pilt

        Kuulliigend

      • Pilt
        Pilt

        Pistikühendus

      • Pilt
        Pilt

        Pall ja pistikupesa kokku pandud

      • Samm: lülitage laser sisse ja katsetage tuvastusahelat

        Ühendage laser leivaplaadiga. Positiivne tuleb ühendada 5v ja maandada negatiivne juhe. Kui laser lülitub suurepäraselt sisse, kui ei, siis kontrollige multimeetriga, kas teil on õige pinge. Kui see ikka ei tööta, proovige juhtmeid vahetada, kui ühendate selle tagurpidi. Kui see ikkagi ei tööta, ei pruugi te olla õigetele padjadele jootnud, minge tagasi viimase sammu juurde.

        • Pilt
          Pilt

          Terve laseriga töötav laser

        Kui olete laserkiire saanud, on aeg tuvastusahelat testida. Suunake laser fotodioodile. LED peaks välja lülitama signaali, et valgusvihk on aktiivne. Lehvitage käega läbi tala ja valgusdiood peaks sisse lülitama, andes märku reisist.

        • Pilt
          Pilt

          Tala pole katki ja LED on välja lülitatud

        • Pilt
          Pilt

          Sissetungija katkestab valgusvihu, põhjustades valgusdioodi süttimise

        • Samm: ühendage veebikaamera ja kontrollige selle funktsionaalsust

          Ühendage oma veebikaamera USB -pordiga. Video voogesitamiseks peame hankima utiliidi mjpg-streamer. Siin on suurepärane õpetus selle kohta, kuidas seda teha. Kui olete mjpg-streameri õigesti installinud. Alustage video voogesitust, sisestades terminali järgmise käsu.

          cd /kuhu installisite mjpg-streamer /mjpg-streamer

          ./mjpg_streamer -i "./input_uvc.so -y/dev/video0" -o "./output_http.so -w./www -p 8081"

          See käsk seadistab voo porti 8081, kasutades video0 allikat. Kui soovite mitut veebikaamerat, sisestage ülaltoodud käsk uuesti, kuid muutke video0 väärtuseks video1 ja 8081 väärtuseks 8082. Olen sel viisil voogesitanud kuni 3 veebikaamerat ja pi ei olnud ülekoormatud.

          Kontrollige, kas ühendus töötab, avades teises arvutis brauseri ja sisestage ip-address-of-pi: 8081 või sisestage pi-le lihtsalt localhost: 8081. Kui te ei tea oma ip -d, sisestage terminali järgmine

          ifconfig

          Kui kõik töötab, peaksite nägema mpg-streameri kodulehte. Veebikaamera voo nägemiseks klõpsake vahekaardi oja. Allpool on liidese ekraanipilt.

          • Pilt
            Pilt

            mjpg-striimeri näidisväljund

          Teist korda seda õpetust tehes oli mul juurdepääs mjpg-streameri kodulehele, kuid ma ei näinud voogu. Selle parandamiseks lugesin seda postitust (link on nüüd katki), eriti YUYV pikslivormingut puudutavat osa. Kui teil tekib tühi voog, peaksite ka sellega tutvuma.

          7. samm: vaheaeg

          Okei, nii et siinkohal peaks meil vaarika pi üles saama. Meie laserit on muudetud väliseks toiteks. Meie tuvastusahel on konstrueeritud ja olete kinnitanud, et kui laserkiir tabab fotodioodi, kustub LED ja kui valgusvihk katkestatakse, peaks LED sisse lülituma. Lõpuks peaksite oma veebikaamera ühendama ja funktsionaalselt voogesitama.

          Nüüd on aeg see kõik kokku panna. Alustame lihtsast, proovides tuvastada laserkiire komistamist tarkvara abil.

          Ühendage tuvastusahel leivaplaadiga, nagu näidatud. Järgmise sammu ettevalmistamisel ühendage kindlasti anduri signaalijuhe tihvtiga 25. Tõmbetakistus ei ole valikuline. Mul oli 10k ümber, kuid mis tahes takisti peaks seda tegema.

          • Pilt
            Pilt

            Leivalaua paigutus PiCobleriga

          • 8. samm: jälgige laserit tarkvara abil

            Kirjutame lühikese programmi lasersignaali kuulamiseks ja postitame selle väljundi terminali. Saate koodi manusena alla laadida.

            Tõenäoliselt peate installima selle skripti sõltuvused. Python ja gpio moodul. Nende installimiseks sisestage

            sudo apt-get install python-rpi.gpio python3-rpi.gpio

            Kui olete pythoni edukalt installinud, laadige alla lisatud pythoni skript read_pin.py ja käivitage

            cd /kataloog, kuhu paned faili /chmod 777 read_pin.py

            Käsk chmod annab skriptile käivitamiseks loa. Seejärel proovige joostes, et kõik on korras ja räpane

            sudo python3 read_pin.py

            Kui kõik läheb hästi, peaksite nägema konsooli väljundit, nagu allpool näidatud. Pythoni skriptist väljumiseks sisestage

            Ctrl-C

          • Pilt
            Pilt

            Õige konsooli väljund (näidatud MobaXterm abil)

          Hoidke kätt laserkiire ees ja konsoolil peaksite nägema väljundit, mis hoiatab teid, et valgusvihk on katki. Mängige julgelt skriptiga, et oma süsteem saaks toimida erineval viisil.

          Samm: looge oma voo kuvamiseks veebileht

          Nüüd peame seadistama veebikaamera vaatamise liidese. Selle sammu jaoks peate installima apache veebiserveri. Selle seadistamiseks on palju õpetusi. Kuid siin on lühike nimekiri minimaalse konfiguratsiooniga.

          sudo apt-get install apache2

          pärast installimist peaksite saama brauserisse kirjutada vaarika pi

          localhost

          Te peaksite nägema apache tervituslehte. Kui see on teie esimene kord veebiserveri seadistamisel, siis soovite tõenäoliselt konfigureerida oma pi -le staatilise IP -aadressi, nii et teie ruuter määrab alati õige ip -i, kui teete toitetsükli. Kui soovite oma turvasüsteemi vaadata mujalt, peate seadistama ruuteri pordi suunamise. Sellest on juba mõnda aega möödas, kuid arvan, et peate edastama ka kõik sadamad, millel on veebikaamera. Seal on palju õpetusi, mis hõlmavad neid protseduure. Pidage meeles, et igaüks näeb teie veebikaamerat, kui otsustate oma ruuteril pordi edastamise seadistada.

          Manustatud failid on näidisveebilehed, mida saate kasutada oma veebisaidi seadistamiseks. Peate muutma html -faili faililaiendit, kuna nad ei luba mul seda üles laadida. Seejärel asetage failid oma www -kausta, mis on välja kutsutud apache konfiguratsioonifaili. Vaikimisi asukoht on

          cd /var /www

          Kui soovite muuta asukohta, kust veebiserver teie html -faile otsib, saate oma saitidel lubatud faili muuta, sisestades

          sudo nano/etc/apache2/sites-enabled/000-default

          Muutke iga/var/www/eksemplar soovitud asukohta. Panin oma/home/pi/Desktop/www/

          Kui olete html -failid veebikaustas, sisestage brauseris localhost või teise arvuti pi -ip -aadress. Midagi sellist peaksite nägema.

          • Pilt
            Pilt

            Toimivate manustatud failide ekraanipilt

          KOMMUSTIK!

          10. toiming: seadistage e -posti märguanded

          Häid asju juhtub! Laseme oma õnnele vajutada, proovides saata pi -lt e -posti märguande eelmääratud e -posti aadressile. Manustatud pythoni skript loob teie e -kirja, mida soovite saata, luua ühenduse e -posti pakkujaga, näiteks gmailiga, ja saata e -kiri e -posti pakkuja abil. See saavutatakse pythoni smtp paketi abil. Soovitan teil luua näiv e -posti aadress just teie turvasüsteemi jaoks, kuna peame smtp -paketi toimimiseks teie gmaili konto turvalisust vähendama.

          Edastamise edukaks muutmiseks peate skripti mitmes kohas muutma. See on tugevalt kommenteeritud ja toodab teie mugavuse huvides terminalis palju väljundeid.

          Asjad, mida peate muutma, on

          • sinu_ip = "192.168.0.177"
          • your_ip_optional_port = ": 8080"
          • port_to_camera = ": 8081"
          • send_email_username = "teie e -posti kasutajanimi"
          • send_email_password = "teie parool"

          teie_ip_optional_port on tõenäoliselt tühi, välja arvatud juhul, kui teie apache -server töötab muul pordil kui vaikimisi 80. Mul oli juba server 80 -ga, nii et seadsin oma pi käivitama 8080. Port_to_camera on port, mille määrate oma kaamerale käivitage mjpeg -striimeri abil.

          Kui olete neid muutujaid skripti alguses muutnud, käivitage programm, sisestades terminali järgmise.

          cd /kaust kuhu skripti panid /

          sudo python3 send_mail.py

          Kui tähed on õigesti joondatud ja kõik muutujad on õiged, peaksite saama allolevale sarnase meili.

          • Pilt
            Pilt

            Toimivate manustatud failide ekraanipilt

          Paljudes kohtades võib see skript ebaõnnestuda. Ärge pettuge, kui see esimest korda ei tööta. Kasutage skripti silumispunkte probleempiirkondade kitsendamiseks ja seejärel keskenduge ühele probleemile korraga.

          Samm: käivitage e -posti skript, kui laser käivitub

          Nüüd, kui pi saab e -kirju saata, automatiseerime selle nii, et iga kord, kui laser käivitatakse, saame meili. Laadige alla lisatud fail, mis on read_pin.py muudetud versioon, mis sisaldab uut funktsiooni postiskripti kasutamiseks. Peamine täiendav rida on järgmine

          sm_pid = os.spawnlp (os. P_NOWAIT, "/usr/bin/python3", "python3", "/home/pi/Desktop/security/send_mail.py")

          See rida käivitab saatmise skripti paralleelselt lasersensoriga. See on soovitav, sest meilisõnumi skripti täitmiseks kulub mõni sekund ja see takistaks lasersensori skripti töötamist kuni e -kirja saatmiseni. See ei ole ühe kaamerasüsteemi jaoks probleem, kuid kui teil oleks mitu kaamerat, tahaksite tuvastada laserkaamera 1 kaameras isegi siis, kui kaamera 2 on käivitanud meilisündmuse. Muutuja sm_pid sisaldab selle käsuga käivitatud protsessi pid. Me kontrollime seda ID -d, kui e -posti päästikut kutsutakse uuesti, kui see on olemas, e -kiri ikka saadab, nii et me ignoreerime sündmust. Kui seda pole, on see tõenäoliselt uus sündmus ja saadetakse e -kiri.

          Jooksmisega kontrollige, kas kõik töötab

          cd /kataloog kuhu sa faili paned /

          chmod 777 read_pin_with_mail.py

          sudo python3 read_pin_with_mail.py

          Laserkiire purustamisel peaksite saama e -kirja veebikaamerast tehtud hetktõmmisega.

          12. samm: looge süsteemi käivitamiseks peaskript

          Sel hetkel on projekt enamasti tehtud. Viimane samm on lihtsustada süsteemi käivitamist ühe viimase skriptiga. See käivitab kõik alamprogrammid ja seadistab veebikaamera ühe skriptiga. Manustatud faili saab käivitamisel käivitada, muutes oma /etc/rc.local faili. Peate muutma faililaiendit ja võib -olla peate skripti muutma, et lisada õiged teed, kui asetate skriptid teise kohta.

          13. samm: järeldus

          No see ongi. Loodan, et teile meeldis see õpetlik! Andke mulle kommentaarides teada, kui teil on küsimusi või vajate üksikasjalikumat teavet mõnes valdkonnas. Jätka nokitsemist!

          • Pilt
            Pilt

    Soovitan: