Мазмұны:

Raspberry Pi лазерлік қауіпсіздік жүйесі: 13 қадам (суреттермен)
Raspberry Pi лазерлік қауіпсіздік жүйесі: 13 қадам (суреттермен)

Бейне: Raspberry Pi лазерлік қауіпсіздік жүйесі: 13 қадам (суреттермен)

Бейне: Raspberry Pi лазерлік қауіпсіздік жүйесі: 13 қадам (суреттермен)
Бейне: Установка лазера на X-Carve - Opt Lasers 2024, Желтоқсан
Anonim
Image
Image
Кескін
Кескін

Менің нұсқаулықты тексергеніңізге рахмет. Нұсқаулықтың соңында сіз бейнеде көрсетілген электрондық поштаны ескерту функциясы бар таңқурай pi лазерлік tripwire жүйесін құрасыз.

Бұл нұсқаулықты аяқтау үшін сізге жалпы схемамен және дәнекерлеумен таныс болу керек, нан тақтасын қалай қолдану керектігін білу керек және пи терминалын пайдалану ыңғайлы болуы керек. Питон тәжірибесі бар болса пайдалы болады.

Бұл жоба үш негізгі жүйеден тұрады. Таңқурай пи, лазерлік сымдық схема және бақылаушы компьютер. Біздің мақсат - таңқурай pi көмегімен лазерлік сымның тізбегіндегі кернеудің өзгеруін анықтау, содан кейін бақылаушы компьютерге электрондық пошта мен бейне ағыны түрінде хабарлау.

Бастайық.

1 -қадам: Қажетті компоненттерді жинау

Бұл жобаны аяқтау үшін сізге келесі элементтер қажет болады.

  1. Кем дегенде бір операциялық Raspberry Pi. Бұл құрылыста мен B стиліндегі Pi үлгісін қолдандым. Егер сіз raspbian jessie -мен жұмыс жасасаңыз, бұл оқулық жақсы жұмыс істейтініне сенімдімін.
  2. Таңқурай пи үшін сыртқы қуат көзі. Мұның бәрі қосылғаннан кейін біз үлкен мөлшердегі токты аламыз. Мен бірінші құрылыста қиындық туғызатын қуат көзі деген ақаулық диагнозын қоюға көп уақыт жұмсадым. Сізде кем дегенде 2 амперді алатын қуатты қуат бар екеніне көз жеткізіңіз.
  3. Арзан лазерлік көрсеткіш. Мен жанармай құю бекетінен кассаның жанынан менікін таптым. Егер сіз дәл лазерді алғыңыз келсе, оны осы жерден таба аласыз. Жапсырмада толқын ұзындығы үшін 630-680 нм жазылған. Қандай лазерді алсаңыз да, конструкцияның басқа компоненттерін анықтайды. Сондықтан оның белгісі оның толқын ұзындығын анықтайтынына көз жеткізіңіз.
  4. USB стиліндегі веб -камера. Бұл веб -камерада камераны жақсы орналастыруға мүмкіндік беретін реттелетін аяқ бар. Мен веб -камерамен бірге келетін USB кабелі менің қосымшам үшін тым қысқа екенін білдім, сондықтан монопризде кеңейтімді таптым.
  5. Таңқурай пи үшін үзіліс жинағының бір түрі, осылайша сіз процессордағы түйреуіштерге оңай қол жеткізе аласыз.

    Кескін
    Кескін
    Кескін
    Кескін
  6. Нан тақтасы.
  7. Пісіру үтігі.
  8. Нанға арналған секіргіш сымдар.
  9. Тізбек компоненттері. Қажетті сапар сымдарының санына көбейтіңіз.

    • Бір жұмыс жетекшісі
    • 100 Ом бір резистор
    • Бір 1 к резистор
    • Бір 10 к резистор
    • Бір 200 к резистор кез келген үлкен резисторды жасайды. Мен оны 1M резистормен сынап көрдім және ол жақсы жұмыс істеді. FYI 10k тым кішкентай болды.
    • Бір PNP транзисторы PN: 2N4403-APCT-ND
    • Бір фотодиод (бұл сіздің лазерлік толқын ұзындығыңызға сәйкес келеді) PN: PDB-C142-ND

Мен электронды тақтаға кикад файлдарын тіркеймін, бірақ бұл нұсқаулықта тақтаның өндірісін қарастырмаймын.

Осы жоба барысында мен келесі қосымша құралдарды ыңғайлы деп таптым:

  1. Таңқурайға синергияны орнату. Егер сіз таныс болмасаңыз, бұл бағдарламалық қамтамасыз ету басқа компьютермен таңқурай пи тінтуірін және пернетақтасын басқаруға мүмкіндік береді. Егер сіз мен сияқты болсаңыз және басқа компьютерде ыңғайлы болсаңыз, бұл жақсы. Сонымен қатар, бұл әркімде болуы керек бағдарламалық жасақтама.
  2. USB хаб. Қолданғыңыз келетін әрбір веб -камера үшін сізге бір порт қажет болады.
  3. Егер бар болса, кернеу өлшегіші немесе осциллограф.
  4. MobaXterm көмегімен таңқурай пиін басқару және ssh арқылы файлдарды басқару. Бұл терезеде көтерілген кез келген адамға қажет нәрсе. Қолдануды реттеу үшін осы оқулықты қараңыз.

2 -қадам: Pi тұрыңыз және жүгіріңіз

  • Кескін
    Кескін

    Минималды компоненттері бар пи

  • Кез келген лазерді түсірмес бұрын, бағдарламалық жасақтаманың бірнеше қабатын құру қажет. Табысқа жету үшін таза парақтан бастаған дұрыс. Ол үшін Pi -ден қажет емес элементтерді ажыратыңыз. Бұл жалғанған құрылғыдан кедергі болу мүмкіндігін азайтады.

    Әрі қарай, терминалға келесіні енгізу арқылы сіздің Raspberry Pi соңғы бағдарламалық жасақтамамен жұмыс істеп тұрғанын тексеріңіз

    sudo apt-get жаңартуы

    Таңқурай пи жаңартылған кезде келесі қадамға уақыт келді

    3 -қадам: Лазерлік анықтау схемасын жасаңыз

    Ингредиенттерді тақтаға суреттегідей орналастырыңыз. Панельдің 5В шығысын немесе үстел үстіндегі қуат көзін қолданып, тақтаны қосыңыз. 1 -суретте 5в кернеуі суреттің төменгі сол жағындағы оң табақшаға, ал жер жоғарғы сол жаққа қосылған. Бұл схема транзисторды іске қосу үшін фотодиодты қосқыш ретінде пайдаланады. Транзистор фотодиодтағы кернеудің шамалы өзгерісін pi оқитын сандық сигналға түрлендіреді. Барлық келесі қадамдар үшін 100 Ом мен сигналдық светодиод арасындағы нүкте біз тізбекті pi көмегімен таңдайтын жерде болады.

    • Кескін
      Кескін

      1 -сурет: Электронды тақтаның макеті

    • Кескін
      Кескін

      2 -сурет: Айналым тақтасының орналасуы балама көрініс

    Егер сіз таза көрінгіңіз келсе, мен төменде көрсетілген тақтаға арналған kicad файлдарын тіркедім.

    • Кескін
      Кескін

      3 -сурет: Сенсорлық тақтаның үстіңгі көрінісі

    • Кескін
      Кескін

      4 -сурет: ISO сенсорлық тақтасы

    • 4 -қадам: Сыртқы қуат үшін лазерді өзгертіңіз

      Келесі қадамдарда сіз лазерлік көрсеткіш жинағын құрасыз.

      - Лазерлік көрсеткішті бөлшектеңіз. Бұл кезде батарея терминалдарының лазерлік эмитентке қатысты бағытына назар аударыңыз.- Келесі, батареяның серіппесі мен лазерден бір мезетте басу түймесін ағытып алыңыз. Енді лазерге қуат берілсе, ол автоматты түрде қосылады.- Енді оң және теріс сымдарды лазерге дәнекерлеңіз. Егер сіз бөлшектер тізімінен сол лазерді қолдансаңыз, дәнекерлеу нүктелерін көру үшін төмендегі суретті қолдануға болады. Егер олай болмаса, дәнекерлеу нүктелерін өзіңіз табуыңыз қажет болуы мүмкін. Батареяның бағытын оң немесе теріс сымға нұсқау ретінде пайдалануға болады. Соңғы дәнекерлеу нүктесін табу үшін сіз 5 вольтты қуат көзін қолдана аласыз және тізбекті екі сынақ сымымен тексере аласыз. Тиісті схеманы жасаған кезде сіз дәнекерлеу нүктесін таптыңыз, лазер жанады.

      • Кескін
        Кескін

        Қызғылт сары сым уақытша басу түймесін ауыстырады

      • Кескін
        Кескін

        Оң және теріс жолдарды көрсетеді

      - Соңғы қадам - лазерге арналған бағыттаушы тіреуді жасау, сондықтан оны лазерлік сыйымдылыққа бағыттау үшін оңай реттеуге болады. Мен лего бионикулярлық жиынтықтардың көпшілігі розеткалы қосылыстардағы арзан доптың тамаша көзі екенін білдім. Шарикті қосылыстың бір бөлігін супер желімнің көмегімен лазерлік көрсеткішке жабыстырыңыз. Енді сіз розетканы кез келген бетке орнатып, лазерді енгізе аласыз.

      • Кескін
        Кескін

        Доп түйісуі

      • Кескін
        Кескін

        Розетка қосылысы

      • Кескін
        Кескін

        Шар мен розетка жиналған

      • 5 -қадам: Лазерді қосыңыз және анықтау схемасын тексеріңіз

        Лазерді тақтаға қосыңыз. Позитивті 5В -ке қосу керек және теріс сымды жерге қосу керек. Егер лазер керемет қосылса, қосылмаса, мультиметрмен кернеудің керектігін тексеріңіз. Егер ол әлі де жұмыс істемесе, оны артқа жалғаған жағдайда сымдарды ауыстыруға тырысыңыз. Егер ол әлі де жұмыс істемесе, сіз дұрыс төсемдерге дәнекерлемеген боларсыз, соңғы қадамға оралыңыз.

        • Кескін
          Кескін

          Сау сәулемен жұмыс істейтін лазер

        Лазер сәулесін алғаннан кейін, анықтау схемасын тексеру уақыты келді. Лазерді фотодиодқа бағыттаңыз. Жарық диодты сәуленің белсенді екенін білдіретін сигналды өшіруі керек. Сәулені өткізіп жіберіңіз, светодиоды сапар сигналын қосуы керек.

        • Кескін
          Кескін

          Жарық үзілмеген және светодиод өшірілген

        • Кескін
          Кескін

          Кіруші сәулені сындырады, бұл светодиодты жарықтандырады

        • 6 -қадам: Веб -камераны қосыңыз және оның жұмысын тексеріңіз

          Веб -камераны USB портына қосыңыз. Бейнені трансляциялау үшін бізге mjpg-streamer утилитасын алу керек. Міне, мұны қалай жасау керектігі туралы керемет нұсқаулық. Mjpg-streamer дұрыс орнатылғаннан кейін. Терминалға келесі пәрменді енгізу арқылы бейнені ағынмен бастаңыз.

          cd /онда сіз mjpg-streamer /mjpg-streamer орнаттыңыз

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

          Бұл команда video8 көзін пайдаланып 8081 портында ағынды орнатады. Егер сізге бірнеше веб -камералар қажет болса, жоғарыдағы пәрменді қайта енгізіңіз, бірақ video0 -ді video1 -ге және 8081 -ге 8082 -ге өзгертіңіз. Мен осылайша 3 веб -камераға дейін ағын бердім және pi шамадан тыс жүктелмеді.

          Байланыстың жұмыс істейтінін басқа компьютерде браузер ашып, ip-address-of-pi: 8081 немесе pi-ге енгізу арқылы тексеріңіз, сіз localhost: 8081 енгізе аласыз. Егер сіз pi -дің IP -мекен -жайын білмесеңіз, терминалға келесіні енгізіңіз

          ifconfig

          Егер бәрі жұмыс істеп тұрса, сіз mpg-streamer негізгі бетін көруіңіз керек. Веб -камераның ағынын көру үшін ағын қойындысын нұқыңыз. Төменде интерфейстің скриншоты бар.

          • Кескін
            Кескін

            mjpg-streamer үлгісі шығысы

          Бұл оқулықты екінші рет жасау кезінде мен mjpg-streamer негізгі бетіне кіре алдым, бірақ ағынды көрмедім. Мұны түзету үшін мен бұл жазбаны оқыдым (сілтеме қазір үзілген), атап айтқанда YUYV пиксель форматы туралы бөлімді, егер сіз бос ағынмен кездессеңіз, онымен кеңесуіңіз керек.

          7 -қадам: үзіліс

          Жарайды, сондықтан дәл осы сәтте бізде таңқурай пиі іске қосылуы керек. Біздің лазер сыртқы қуат үшін өзгертілген. Біздің анықтау схемасы құрылды және сіз лазер сәулесі фотодиодқа тигенде светодиодтың сөнетінін, ал сәулені сындырған кезде светодиод қосылуы керектігін растадыңыз. Ақырында, сізде веб -камера қосылған және функционалды ағын болуы керек.

          Енді мұның бәрін біріктірудің уақыты келді. Бағдарламалық жасақтаманың көмегімен лазер сәулесінің сөнуін анықтаудан бастайық.

          Анықтау тізбегін суретте көрсетілгендей тақтаға жалғаңыз. Келесі қадамға дайындық үшін сенсорлық сигнал сымын 25 -істікшеге қосқаныңызға көз жеткізіңіз. Тартылатын резистор міндетті емес. Менде 10к төсеу болды, бірақ кез келген резистор жасауы керек.

          • Кескін
            Кескін

            PiCobler көмегімен тақтаның орналасуы

          • 8 -қадам: Лазерді бағдарламалық қамтамасыз ету арқылы бақылаңыз

            Лазерлік сигналды тыңдау және сол шығуды терминалға орналастыру үшін қысқа бағдарлама жазайық. Сіз кодты қосымша ретінде жүктей аласыз.

            Сізге бұл сценарийге тәуелділіктерді орнату қажет болуы мүмкін. Python және gpio модулі. Оларды орнату үшін енгізіңіз

            sudo apt-get python-rpi.gpio python3-rpi.gpio орнатыңыз

            Python сәтті орнатылғаннан кейін read_pin.py деп аталатын питон сценарийін жүктеп алып, іске қосыңыз.

            cd /каталог /chmod 777 read_pin.py файлын орналастырасыз

            Chmod пәрмені сценарийге рұқсат береді. Содан кейін жүгіру арқылы бәрі жақсы және қауіпті екенін тексеріңіз

            sudo python3 read_pin.py

            Егер бәрі жақсы болса, төменде көрсетілгендей консоль шығысын көру керек. Python сценарийінен шығу үшін енгізіңіз

            Ctrl-C

          • Кескін
            Кескін

            Дұрыс консоль шығысы (MobaXterm көмегімен көрсетілген)

          Қолыңызды лазер сәулесінің алдында серпіңіз, сонда сіз консольде сәуленің сынғанын ескертетін шығуды көресіз. Жүйені әр түрлі тәсілдермен іске қосу үшін сценариймен ойнауға болады.

          9 -қадам: Ағынды көрсету үшін веб -бет жасаңыз

          Енді біз веб -камераны қарау интерфейсін орнатуымыз керек. Бұл қадам үшін сізге apache веб -серверін орнату қажет. Оны орнатуға арналған көптеген оқулықтар бар. Бірақ мұнда ең аз конфигурациясы бар қысқа тізім.

          sudo apt-get apache2 орнатыңыз

          орнатқаннан кейін сіз өзіңіздің браузеріңізге таңқурай пи -де жаза аласыз

          жергілікті хост

          Apache -ден сәлемдесу бетін көруіңіз керек. Егер сіз бұл веб -серверді алғаш рет орнатып жатсаңыз, егер сіз қуат циклын жасасаңыз, сіздің маршрутизаторыңыз әрқашан сәйкес IP тағайындайтын болуы үшін, pi -ді тұрақты IP -адреске теңшегіңіз келеді. Егер сіз қауіпсіздік жүйесін басқа жерден көргіңіз келсе, маршрутизаторда портты қайта бағыттауды орнатуыңыз қажет. Біраз уақыт болды, бірақ менің ойымша, сізге веб -камерасы бар порттарды жіберу қажет болады. Бұл процедураларды қамтитын көптеген оқулықтар бар. Егер сіз маршрутизаторда порт жіберуді орнатуды таңдасаңыз, кез келген адам сіздің веб -камераңызды көре алатынын біліңіз.

          Қосылған файлдар сіздің веб -сайтыңызды орнату үшін қолдануға болатын веб -беттердің үлгісі болып табылады. Сіз html файлындағы файл кеңейтімін өзгертуіңіз керек, себебі олар оны жүктеуге рұқсат бермеді. Келесі файлдарды www қалтасына Apache конфигурация файлында шақырыңыз. Әдепкі орын -

          cd /var /www

          Егер сіз веб -сервер сіздің html файлдарыңызды іздейтін орынды өзгерткіңіз келсе, енгізу арқылы сайттар қосылған файлды өңдей аласыз.

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

          /Var/www/кез келген данасын өзіңіз қалаған орынға өзгертіңіз. Мен өз үйімді/home/pi/Desktop/www/қойдым

          Сізде веб -қалтада html файлдары болғаннан кейін браузерге localhost немесе басқа компьютерден pi -дің IP мекенжайын енгізіңіз. Сіз осындай нәрсені көруіңіз керек.

          • Кескін
            Кескін

            Жұмыс істеп тұрған файлдардың скриншоты

          ТӘТТІ!

          10 -қадам: Электрондық пошта ескертулерін орнатыңыз

          Жақсы істер болып жатыр! Алдын ала анықталған электрондық пошта мекенжайына pi -ден электрондық хабар жіберуге тырысу арқылы сәттілікке жол берейік. Тіркелген питон сценарийі сіз жібергіңіз келетін электрондық поштаны құрады, gmail сияқты электрондық пошта провайдеріне қосылады және электрондық поштаны провайдердің көмегімен жібереді. Бұған smtp python пакетін қолдану арқылы қол жеткізіледі. Сізге қауіпсіздік жүйесі үшін электрондық пошта мекенжайын жасауды ұсынамын, өйткені біз smtp пакеті жұмыс істеуі үшін сіздің Gmail есептік жазбаңыздың қауіпсіздігін төмендетуіміз керек.

          Сәтті тарату үшін сізге бірнеше жерде сценарийді өзгерту қажет болады. Ол туралы түсініктеме берілді және сізге ыңғайлы болу үшін терминалда көптеген шығыс шығарады.

          Сізге өзгерту қажет болатын нәрселер болады

          • your_ip = «192.168.0.177»
          • your_ip_optional_port = «: 8080»
          • port_to_camera = «: 8081»
          • Send_email_username = «сіздің электрондық поштаңыздың пайдаланушы аты»
          • Send_email_password = «сіздің құпия сөзіңіз»

          your_ip_optional_port, егер сіздің apache серверіңіз әдепкі 80 -ден басқа портта жұмыс жасамаса, бос болуы мүмкін. Менде 80 -де жұмыс істейтін сервер болды, сондықтан мен pi -ді 8080 -де жұмыс істейтін етіп қойдым. mjpeg стримері арқылы іске қосыңыз.

          Сценарийдің басында осы айнымалыларды өзгерткеннен кейін терминалды келесіге енгізу арқылы бағдарламаны іске қосыңыз.

          cd /сценарийді салатын қалта /

          sudo python3 send_mail.py

          Егер жұлдыздар дұрыс реттелген болса және барлық айнымалылар дұрыс болса, төмендегіге ұқсас электрондық поштаны алу керек.

          • Кескін
            Кескін

            Жұмыс істеп тұрған файлдардың скриншоты

          Бұл сценарий сәтсіздікке ұшырайтын көптеген жерлер бар. Егер ол бірінші рет жұмыс істемесе, ренжімеңіз. Сценарийдегі түзету нүктелерін пайдаланып, проблемалық аймақтарды тарылтыңыз, содан кейін бір уақытта бір мәселеге назар аударыңыз.

          11 -қадам: Лазер өшірілген кезде электрондық пошта сценарийін іске қосыңыз

          Енді пи электрондық поштаны жібере алатындықтан, оны автоматтандырайық, осылайша лазер өшірілген сайын бізге электрондық хат келеді. Read_pin.py файлының өзгертілген нұсқасы болып табылатын тіркелген файлды жүктеңіз, ол пошта сценарийін жаңартуға мүмкіндік береді. Негізгі қосымша желі келесі

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

          Бұл сызық поштаны жіберу сценарийін лазерлік сенсорлық сценариймен қатар іске қосады. Бұл жөн, себебі жіберу поштасының сценарийі бірнеше секундқа созылады және электрондық пошта жіберілгенге дейін лазерлік сенсорлық сценарийдің жұмысына кедергі келтіреді. Бұл бір камералық жүйе үшін проблема емес, бірақ егер сізде бірнеше камера болса, камера 2 электрондық пошта оқиғасын іске қосса да, 1 камерада лазерлік сапарды анықтағыңыз келеді. Sm_pid айнымалысы осы пәрменмен іске қосылатын процестің пидін қамтиды. Біз бұл идентификаторды тексереміз, егер электрондық пошта триггері қайта шақырылса, ол әлі де жіберілуде, сондықтан біз оқиғаны елемейміз. Егер ол болмаса, бұл жаңа оқиға болуы мүмкін және электрондық пошта жіберіледі.

          Тест бәрі жүгіру арқылы жұмыс істейді

          cd /файлды орналастыратын каталог /

          chmod 777 read_pin_with_mail.py

          sudo python3 read_pin_with_mail.py

          Лазер сәулесін сындырған кезде сізге веб -камерадан түсірілген суреті бар электрондық хат келуі керек.

          12 -қадам: Жүйені бастау үшін негізгі сценарий жасаңыз

          Бұл кезде жоба негізінен орындалады. Соңғы қадам - бұл соңғы сценариймен жүйені қосуды жеңілдету. Ол барлық кіші бағдарламаларды іске қосады және веб -камераны бір сценариймен орнатады. Қосылған файлды /etc/rc.local файлын өңдеу арқылы іске қосуға болады. Файлдың кеңейтілуін өзгерту керек және сценарийлерді басқа жерге қойсаңыз, дұрыс жолдарды қосу үшін сценарийді өңдеу қажет болуы мүмкін.

          13 -қадам: Қорытынды

          Ал, бұл сол. Сізге бұл нұсқаулық ұнады деп сенемін! Егер сізде сұрақтар туындаса немесе кез келген салада толығырақ ақпарат қажет болса, түсініктемелерде маған хабарлаңыз. Ойлауды жалғастырыңыз!

          • Кескін
            Кескін

    Ұсынылған: