- “Kustības” instalēšana un konfigurēšana video plūsmas iegūšanai:
- Kolbas iestatīšana Raspberry Pi, lai kontrolētu robotu, izmantojot vietni:
- HTML kods tīmekļa vietnei:
- Novērošanas robots
- Ķēdes shēma un iestatīšana:
- Kā darboties:
Šajā DIY sesijā mēs būvējam ar tīmekli kontrolētu novērošanas robotu automašīnu, izmantojot aveņu pi un tīmekļa kameru. Tas varētu būt noderīgs un lēts drošības un spiegu rīks, kuram ir daudz konfigurējamu iespēju un kuru var izveidot dažu stundu laikā. Šajā IoT projektā, lai izveidotu šo robotizēto automašīnu, mēs galvenokārt izmantojam Raspberry Pi, USB tīmekļa kameru un divus līdzstrāvas motorus ar Robot šasiju.
Tam virsū ir uzstādīta tīmekļa kamera, caur kuru mēs iegūsim tiešraides video plūsmu, un interesanta šeit ir tā, ka mēs varam kontrolēt un pārvietot šo robotu no tīmekļa pārlūkprogrammas, izmantojot internetu. Tā kā to var kontrolēt, izmantojot vietni, tas nozīmē, ka to var kontrolēt arī, izmantojot tīmekļa vietni mobilajā ierīcē. Mēs izveidojām tīmekļa lapu HTML formātā, kurā ir saites pa kreisi, pa labi, uz priekšu, atpakaļ, noklikšķinot uz kuras mēs varam pārvietot robotu jebkurā virzienā. Šeit mēs izmantojām “Motion”, lai iegūtu tiešraides video plūsmu no USB kameras, un “Flask” komandu nosūtīšanai no tīmekļa lapas uz Raspberry Pi, izmantojot pitonupārvietot robotu, kas ir detalizēti paskaidrots šīs apmācības nākamajā daļā. Raspberry Pi dēlī mums ir instalēta Raspbian Jessie OS. Jūs varat pārbaudīt šo rakstu, lai instalētu Raspbian OS un sāktu darbu ar Raspberry Pi.
“Kustības” instalēšana un konfigurēšana video plūsmas iegūšanai:
Motion (Surveillance Software) ir bezmaksas, atvērtā koda kustības detektora videonovērošanas programmatūra, kas izstrādāta Linux. Tas nosaka kustību un sāk tās video ierakstīšanu. Ar jūsu Raspberry Pi instalēto 'Motion' jūs varat maģiski pārvērst savu Raspberry Pi par drošības kameru. To izmanto, lai iegūtu tiešraides video plūsmu, veidotu timelapse videoklipus un regulāri uzņemtu momentuzņēmumus. Tas ieraksta un saglabā videoklipu ikreiz, kad skata zonā konstatē kustību vai jebkādus traucējumus. Tiešraides video plūsmu var skatīties tīmekļa pārlūkprogrammā, kopā ar portu ievadot Pi IP adresi.
Mēs esam izveidojuši detalizētu apmācību par kustības izmantošanu ar Raspberry Pi un USB kameru. Šeit mēs īsi paskaidrojam tā instalēšanu Raspberry pi, lai mūsu robots varētu nosūtīt tiešraides video straumēšanu uz vietni.
Lai sāktu iegūt pirmo video plūsmu tīklā, jums ir jāizpilda tikai dažas komandas. Pirms tam pareizi pārbaudiet, vai jūsu Raspberry Pi ir savienots ar internetu, izmantojot LAN vai Wi-Fi, un pēc tam veiciet tālāk norādītās darbības.
1. solis: Vispirms palaidiet zemāk esošo komandu, lai atjauninātu Raspbian OS Raspberry Pi:
sudo apt-get atjauninājums
2. solis: Pēc tam instalējiet kustības bibliotēku, izmantojot komandu zemāk:
sudo apt-get install kustība
3. solis: Tagad iestatiet Motion dēmonu uz jā, rediģējot failu: / etc / default / motion tā, lai tas vienmēr darbotos. Rediģējiet šo failu, izmantojot 'nano' redaktoru ar 'sudo', kā norādīts zemāk:
sudo nano / etc / default / motion
Pēc tam saglabājiet failu, nospiežot taustiņu kombināciju CTRL + X, pēc tam taustiņu 'Y' un Enter.
4. solis: Tagad mums jāiestata atļauja mērķa direktorijai (/ var / lib / motion /), kurā Motion saglabā visus video ierakstus un attēlu failus. Mums ir jāiestata “Motion” kā šī direktorija īpašnieks, izsniedzot komandu zemāk:
sudo chown kustība: kustība / var / lib / motion /
Šī atļauja ir nepieciešama, pretējā gadījumā, pārbaudot Motion service Status, tiek parādīta kļūda.
Pakalpojuma statusu var pārbaudīt, izmantojot šo komandu: sudo service motion status
5. solis: Tagad mēs esam gandrīz gatavi, tikai mums ir jāmaina viena konfigurācijas opcija kustības konfigurācijas failā (/etc/motion/motion.conf ), kas ir izslēgta stream_localhost. Mums ir jāizslēdz šī vietējā resursdatora straumēšana, pretējā gadījumā mēs nevarēsim piekļūt video plūsmai mūsu tīklā, un tā būs pieejama tikai no pašas Raspberry Pi. Lai to izdarītu, rediģējiet kustības konfigurācijas failu ar 'nano' redaktoru un izslēdziet to, kā parādīts zemāk:
sudo nano /etc/motion/motion.conf
Tagad mēs esam paveikuši un gatavi saņemt tiešraides plūsmu no USB tīmekļa kameras, kas savienota ar Pi. Vienkārši sāciet (vai restartējiet) Motion pakalpojumu, izmantojot zemāk esošo komandu, un pārlūkprogrammā atveriet Raspberry Pi IP ar 8081 portu (piemēram, 192.168.43.199:8081). Šajā projektā mēs esam ieguluši šo IP mūsu HTML kodā img src tagā.
sudo /etc/init.d/motion restart
Un jūs redzēsiet tiešraides plūsmu no savas tīmekļa kameras. Šeit mēs izmantojām zemu izmaksu USB tīmekļa kameru, kas darbojās nevainojami ar mūsu Raspberry Pi, taču labākai izšķirtspējai varat turpināt izmantot labas kvalitātes kameru. Kā tas parādīsies pārlūkprogrammā, plūsmas skatīšanai varat izmantot jebkuru ierīci, kas atbalsta tīmekļa pārlūkprogrammu, piemēram, mobilo, planšetdatoru utt.
Ja nepieciešams, mēģiniet pārstartēt Raspberry Pi kā problēmu novēršanas soli:
sudo atsāknēšana
Tas viss ir par Motion izmantošanu mūsu uzraudzības robotam, izņemot to, ka tam ir vairākas konfigurācijas iespējas, kuras mēs jau esam apsprieduši mūsu iepriekšējā apmācībā.
Piezīme: Ja jūs esat Raspberry Pi modelis zem 3. versijas, jums, iespējams, būs nepieciešams Wi-Fi dongle, lai bez vadiem savienotu aveņu Pi ar maršrutētāju.
Kolbas iestatīšana Raspberry Pi, lai kontrolētu robotu, izmantojot vietni:
Šeit mēs esam izveidojuši tīmekļa serveri, izmantojot kolbu, kas nodrošina veidu, kā nosūtīt komandas no tīmekļa lapas uz Raspberry Pi, lai vadītu robotu tīklā. Kolba ļauj mums palaist mūsu pitona skriptus, izmantojot tīmekļa lapu, un mēs varam nosūtīt un saņemt datus no Raspberry Pi uz tīmekļa pārlūkprogrammu un otrādi. Kolba ir Python mikrorāmis. Šis rīks ir balstīts uz Unicode, kam ir iebūvēts izstrādes serveris un atkļūdotājs, integrēts vienību testēšanas atbalsts, atbalsts drošām sīkdatnēm un tas ir viegli lietojams. Šīs lietas padara to noderīgu vaļaspriekam.
Instalējiet kolbas atbalsta paketi Raspberry Pi, izmantojot norādīto komandu:
$ pip instalēt kolbu
Tad mēs varam izmantot kolbu, vienkārši importējot to savā programmā, tāpat kā šim projektam esam importējuši šādas kolbas paketes:
no kolbas importēšanas Kolba no kolbas importēšanas Kolba, render_template, pieprasījums
Jūs varat uzzināt vairāk par programmēšanu, izmantojot kolbu šeit, pārbaudiet arī mūsu iepriekšējos projektus, kur mēs esam izmantojuši kolbu, lai nosūtītu ziņojumu no tīmekļa vietnes Raspberry Pi un svara vērtību nosūtītu uz Raspberry Pi viedajā konteinerā.
HTML kods tīmekļa vietnei:
Mēs esam izveidojuši tīmekļa lapu, izmantojot HTML valodu, lai parādītu vadības saites (pa kreisi, pa labi, uz priekšu, atpakaļ), lai pārvietotu robotu no tīmekļa pārlūkprogrammas. Mēs esam izmantojuši jQuery skriptu, lai izsauktu funkcijas mūsu Python programmā. Python kodā ir piecas funkcijas, lai pārvietotu robotu pa kreisi, pa labi, uz priekšu, atpakaļ un to apturētu. Beigās ir norādīts pilnīgs Python kods. Šīs funkcijas tiks izpildītas, tīmekļa lapā noklikšķinot uz Vadības saites, un motori pārvietosies atkarībā no noklikšķinātās saites. Šeit mēs esam uzrakstījuši kodu tā, lai robots pārvietotos noteiktā virzienā, noklikšķinot un turot saiti, un tiklīdz mēs atlaidīsim peles pogu, robots apstāsies. Zemāk ir HTML kods vietnei, ieskaitot jQuery:
Šeit jūs varat redzēt, kā mēs esam ieguluši IP adresi, kurā tiek straumēts video, tīmekļa lapā, izmantojot tagu img src . Mainiet IP adresi atbilstoši savam Raspberry Pi, bet saglabājiet portu nemainīgu.
Lietotājam nepieciešams nokopēt iepriekš norādīto HTML kodu kādā teksta redaktorā (notepad) un saglabāt failu ar paplašinājumu.HTML (robot.html). Pēc tam ievietojiet šo HTML failu mapē / templates, ņemot vērā jūsu python skripta atrašanās vietu. Nozīmē, ka jums jāizveido mape ar nosaukumu veidnes, kur esat ievietojis Python Code failu šim Raspberry Surveillance Robot, pēc tam ievietojiet rob.html failu šajā veidņu mapē. Šis solis ir svarīgs, pretējā gadījumā mūsu projekts nedarbosies. Varat tieši atvērt failu robot.html, veicot dubultklikšķi uz tā, lai redzētu, kā izskatīsies jūsu vadības saites. Turpmāk pārbaudiet visu procesu demonstrācijas video beigās. Pēc tam, kad esam paveikuši programmēšanu un visu, mēs varam vienkārši palaist Python kodu Raspberry Pi un tīmekļa pārlūkprogrammā atvērt IP_address_of_your_Pi: 5010 (piemēram,
Jūs varat pārbaudīt savas Raspberry Pi IP adresi, izmantojot komandu ifconfig :
ifconfig
Ķēdes shēma un iestatīšana:
Pēc Live Video plūsmas un HTML koda pārbaudes mums ir jāveido robots, izmantojot ar rokām vai gatavu robotu šasiju, riteņus un uzgriežņu skrūves. Tad novietojiet pār to Power bank, lai darbinātu Raspberry pi, un pēc tam novietojiet Raspberry Pi un tīmekļa kameru virs strāvas bankas un salabojiet iestatījumus, izmantojot Cello lenti vai gumijas sloksnes, pievienojiet USB kameru ar Raspberry Pi.
Šajā IoT projektā mums nav jāveic daudz savienojumu, mums jāpievieno tikai daži vadi motora draivera IC L293D un līdzstrāvas motoriem. Savienojumi ir parādīti zemāk esošajā shēmā. Šeit mēs izmantojām vispārējas nozīmes PCB L293D IC montāžai, lai samazinātu vietu, bet jūs varat arī izmantot nelielu maizes plati līdzstrāvas motoru savienošanai ar L293D.
Kā darboties:
Darbība ar šo uzraudzības robotu ir ļoti vienkārša. Izveidojiet pitona failu (.py paplašinājumu) un iekopējiet tajā zemāk esošo kodu, pēc tam saglabājiet to savā Raspberry Pi. Pēc tam ievietojiet HTML failu veidņu mapē, kā paskaidrots iepriekš. Neaizmirstiet mainīt IP adresi HTML failā.
Pēc tam palaidiet Python kodu, ievadot komandu zemāk:
python name_of_file.py
Pēc tam atveriet savu Raspberry Pi IP adresi ar 5010 portu, piemēram, http://192.168.43.199:5010 (atkal nomainiet IP adresi ar savu adresi). Tagad jūs redzēsiet tīmekļa lapu ar četrām robotu vadības saitēm un tiešraides straumēšanas video. Lietotājs var vadīt robotu, noklikšķinot un turot saites. Ja lietotājs noklikšķinās un turēs saites, robots pārvietosies atbilstoši noklikšķinātajai saitei un kad lietotājs atlaidīs saiti, tad robots automātiski apstāsies.
Pilns Python kods ir norādīts zemāk, kur mēs esam uzrakstījuši dažādas funkcijas, lai kontrolētu robotu, noklikšķinot uz saitēm tīmekļa lapā. Jūs varat tos viegli saprast vai, ja esat iesācējs, pārbaudiet mūsu iepriekšējās Raspberry Pi apmācības. Apmeklējiet arī mūsu robotikas sadaļu, lai iegūtu interesantākus un viegli uzbūvējamus robotus.