Orodha ya maudhui:
- Hatua ya 1: BOM
- Hatua ya 2: Sehemu kuu za Vipengele
- Hatua ya 3: WIRING
- Hatua ya 4: KUANDAA RASPBERRY O.S
- Hatua ya 5: JINSI YA KUDHIBITI TANKI YETU YA WIFI NA NODE.JS NA WEBSOCKET.IO
- Hatua ya 6: Kuongeza uwezo wa kutangaza video
- Hatua ya 7: PROGRAMU YA TANKI
- Hatua ya 8: ANZA UDHIBITI KIASILI NA USHINDI WA KUTUMIA
Video: Tangi ya Raspberry na Kiolesura cha Wavuti na Utiririshaji wa Video: Hatua 8 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Tutaona jinsi nimegundua Tangi ndogo ya WiFi, inayoweza kudhibiti Udhibiti wa Wavuti na Utiririshaji wa Video.
Hii imekusudiwa kuwa mafunzo ambayo yanahitaji ujuzi wa kimsingi wa programu za elektroniki na programu. Kwa sababu hii nimechagua Kitanda cha chasisi ya Tank (badala ya kuchapisha kwa kutumia printa ya 3D, inaweza kuwa sasisho la baadaye) na jumla ya vifaa 6 pamoja na betri. Kwa upande wa programu unaweza kufuata hatua kwa hatua mchakato wa usanidi na programu huhifadhiwa kwa kiwango cha chini, ujuzi wa kimsingi wa mambo ya Raspberry unaweza kusaidia.
Nimekadiria saa 12 za kazi kutoka 0 hadi tayari kukimbia tanki. Jumla ya gharama ya 70 € kwa vifaa vyote.
Hatua ya 1: BOM
1 - DIY RC Robot Chassis Tank - 32 (€)
www.banggood.com/DIY-RC-Robot-Chassis-Tan …….
1 - Dual Channel L298N DC Bodi ya Dereva wa Magari - 1, 39 (€)
www.banggood.com/Dual-Channel-L298N-DC-Mo …….
1 - Raspberry Pi Zero W Starter Kit - 26 (€)
amzn.eu/1ugAaMP
Kadi ya SD ya 1 - 16 - 5, 50 (€)
www.gearbest.com/memory-cards/pp_337819.h…
1 - Raspberry Pi 5MP Moduli ya Kamera ya Wavuti ya Model Zero - 8 (€)
www.gearbest.com/raspberry-pi/pp_612249.h…
1 - Benki ya Nguvu 5V
1 - 9v betri
Kontakt Cable Dupont Kiunganishi cha Mkate
Panya, kibodi, Monitor au TV kwa usanidi wa Raspberry (hiari, ili kufanya usanidi wa kwanza uwe rahisi)
Hatua ya 2: Sehemu kuu za Vipengele
Magari
JGA25-370 DC gearmotor
Pikipiki hii ina shimoni la pato lenye umbo la D.
Ufafanuzi
· Uendeshaji voltage: kati ya 6 V na 18 V
· Voltage ya jina: 12 V
· Kasi ya kukimbia bure saa 12 V: 399 RPM
· Mzunguko wa bure wa saa 12 V: 50 mA
· Duka la sasa saa 12V: 1200 mA
· Jumba la duka saa 12V: 2.2 kg.cm
· Uwiano wa gia: 1:21
Ukubwa wa kipunguzi: 19 mm
· Uzito: 84 g
Dual Channel L298N DC Bodi ya Dereva wa Magari
Dual H-daraja dereva wa gari, anaweza kuendesha motors mbili za DC au waya wa waya wa awamu mbili za stepper. Kujengwa katika TSD, kulinda kutoka duka la magari.
Ufafanuzi
· Voltage ya usambazaji wa Moduli: DC 2V-10V
· Voltage ya kuingiza ishara: DC 1.8-7V
· Sasa kazi moja: 1.5A
· Kilele cha sasa hadi 2.5A
· Sasa chini ya kusubiri (chini ya 0.1uA)
· Mzunguko wa kawaida wa kujengwa, kituo cha pembejeo wazi, motor haifanyi kazi vibaya
· Ukubwa: 24.7 x 21 x 7mm
Hatua ya 3: WIRING
Hii itakuwa wiring ya mwisho, lakini Subiri, kabla hatujahitaji kufunga zingine
programu na ni wazo nzuri kuijaribu na wiring rahisi, ikiwa tayari ambayo inarudi hapa.
Tunahitaji chanzo cha nguvu mbili tofauti, moja kwa motor na moja ya Raspberry.
Dereva wa dereva Dual Channel L298N DC Bodi ya Dereva wa Magari (voltage ya pembejeo kubwa DC 2V-10V) inaendeshwa kwa kutumia betri ya 9V na Raspberry Pi hutumia mkusanyiko wa viwango vya 5V USB.
Pini ya GND ya dereva wa gari itaunganishwa na minus ya betri na Raspberry Pi (GND). Pini za GPIO za Raspberry Pi zimeunganishwa na dereva wa gari kama meza.
Hatua ya 4: KUANDAA RASPBERRY O. S
Hii ni usanidi wa kawaida wa mfumo wa ushirika wa Raspbian, unaweza kupata
mafunzo mengi ya kina kutafuta wavuti, kimsingi hatua ni:
1. Pakua iso RASPBIAN STRETCH NA DESKTOP kutoka
2. Umbiza Kadi ya SD ya GB 16, nimetumia Mpangilio wa SD
3. Choma faili ya IMG, nimetumia Win32DiskImager
Sasa rasipberry yako iko tayari kuanza, unganisha kwenye chanzo cha nguvu cha USB (5V, 2A) na uandae kwa usanidi wa kwanza wa buti. Unaweza kuifanya kwa njia mbili, ukitumia vifaa vya nje kama panya, kibodi na ufuatiliaji au kutumia PC yako na unganisho la kijijini kwa Raspberry. Kuna mafunzo mengi juu ya hii, moja ni:
Hatua ya 5: JINSI YA KUDHIBITI TANKI YETU YA WIFI NA NODE. JS NA WEBSOCKET. IO
Sasa tuna usanikishaji mpya wa Raspberry PC yetu ndogo tayari kuendesha kazi yetu, kwa hivyo… tunatumia nini kutoa amri kwa tangi?
Python ni lugha rahisi sana kutumia ambayo hutumiwa kwa kawaida kuendesha mchanga wa mradi wa Rapsberry inaweza kutumiwa kwa urahisi pia kuingiliana na pini za kuingiza na pato za Rapsberry (GPIO)
Lakini, lengo langu lilikuwa ni kuunganisha wi-fi yangu kutoka kwa kifaa chochote (PC, simu ya rununu, kompyuta kibao…) kwa kutumia kivinjari cha wavuti cha kawaida na pia kutiririsha video kutoka kwake. Kwa hivyo, sahau chatu kwa sasa, na acha tuendelee NODE. JS na SOCKET. IO.
NODE.js
Node. Kwa kuwa ninatumia Raspberry Pi Zero (ARMv6 CPU) hatuwezi kutumia mchakato wa usanikishaji wa moja kwa moja (uliokusudiwa kwa ARMv7 CPU) na tunahitaji kuifanya kwa mikono:
Pakua Nodejs hapa, (nimetumia toleo la 7.7.2 kwa ARMv6, angalia matoleo mengine hapa
pi @ raspberry: ~ $ wget
nodejs.org/dist/v7.7.2/node-v7.7.2-linux-…
Mara baada ya kumaliza, toa faili iliyoshinikizwa:
pi @ raspberry: ~ $ tar -xzf node-v7.7.2-linux-armv6l.tar.gz
Nakili na usakinishe faili ndani ya / mtumiaji / mtaa
pi @ raspberry: ~ $ sudo cp -R node-v7.7.2-linux-armv6l / * / usr / local /
Ongeza mahali tunapoweka nodejs kwa njia, hariri faili ya ". Profile":
pi @ raspberry: ~ $ nano ~ /.profile
Ongeza laini ifuatayo mwishoni mwa faili, hifadhi na uondoke
NJIA = $ PATH: / usr / local / bin
Ondoa faili iliyopakuliwa:.
pi @ raspberry: ~ $ rm ~ / node-v7.7.2-linux-armv6l.tar.gz
pi @ raspberry: ~ $ rm -r ~ / node-v7.7.2-linux-armv6l
Andika amri zifuatazo kuangalia usakinishaji wa nodejs:
pi @ raspberry: ~ $ node -v
pi @ raspberry: ~ $ npm -v
Unapaswa kusoma v7.7.2 na v4.1.2 kama jibu.
Ikiwa kila kitu kilienda sawa, tengeneza folda mpya ya kupangisha faili zako za nodejs:
pi @ raspberry: ~ $ mkdir nodehome
Sogeza ndani ya folda mpya:
pi @ raspberry: ~ $ cd nodehome
Sakinisha moduli ya ziada inayohitajika kusimamia GPIO kwa njia ya msingi, ON na OFF:
pi @ raspberry: ~ $ npm kufunga onoff
Sasa ni wakati wa kujaribu mradi wetu wa kwanza "Blink.js", matokeo yatakuwa … mwangaza wa LED
pi @ raspberry: ~ $ nano blink.js
Bandika nambari ifuatayo, hifadhi na utoke:
var Gpio = zinahitaji ('onoff'). Gpio; // ni pamoja na onoff
var LED = Gpio mpya (3, 'nje'); // tumia GPIO 3
var blinkInterval = setInterval (blinkLED, 250);
// blink LED kila 250ms
kazi blinkLED () {// kazi kuanza kupepesa
kama
(LED.readSync () === 0) {// angalia hali ya pini, ikiwa hali ni 0 (au imezimwa)
Kuandika. Sync (1);
// weka hali ya pini iwe 1 (washa LED)
} mwingine {
KuandikaSync ya LED (0);
// weka hali ya siri kuwa 0 (zima LED)
}
}
kazi endBlink () {// kazi ya kuacha kupepesa
waziInterval (blinkInterval); // Acha vipindi vya kupepesa
KuandikaSync ya LED (0); // Zima LED
Usafirishaji wa LED (); // Unexport GPIO ili upate rasilimali bure
}
setTimeout (endBlink, 5000); // acha kupepesa baada ya sekunde 5
Washa LED, Resistor (200ohms) kama inavyoonyeshwa kwenye schema na uendeshe mradi:
pi @ raspberry: ~ $ node blink.js
Node iko tayari.
SOCKET. IO
WebSocket ni itifaki ya mawasiliano ya kompyuta, kulingana na unganisho la TCP, hutoa programu kuunda seva na mteja. Mteja huunganisha kwenye seva na hutoa na kupokea ujumbe kwenda na kutoka kwa seva. Utekelezaji wa WebSocket kwa Node.js inaitwa Socket.io (https://socket.io/).
Sakinisha socket.io:
pi @ raspberry: ~ $ npm kufunga socket.io - save
Sogea ndani ya nyumba ya nodejs, iliyoundwa mapema:
pi @ raspberry: ~ $ cd nodehome
Na uunda folda mpya "ya umma":
pi @ raspberry: ~ $ mkdir hadharani
Unda sampuli mpya ya wavuti, iite "webserver.js"
pi @ raspberry: ~ $ nano webserver.js
Bandika nambari ifuatayo, hifadhi na utoke:
var http = zinahitaji ('http'). kuundaServer (handler); // zinahitaji seva ya http, na unda seva na kishikaji cha kazi ()
var fs = kuhitaji ('fs'); // zinahitaji moduli ya mfumo wa faili
sikiliza (8080); // sikiliza bandari 8080
kidhibiti kazi (req, res) {// tengeneza seva
fs.readFile (_ jina la utani + '/ umma /index.html', kazi (makosa, data) {// soma
index index.html katika folda ya umma
ikiwa (makosa) {
res.writeHead (404, {'Aina ya Yaliyomo': 'text / html'}); // onyesha 404 kwa kosa
rudisha res.end ( 404 Sio
Kupatikana );
}
res.writeHead (200, {'Aina ya Yaliyomo': 'text / html'}); // kuandika HTML
andika tena (data); // kuandika data
kutoka index.html
kurudi res.end ();
});
}
Seva hii ya mtandao itasikiliza bandari yako ya Raspberry 8080 na itapeana faili ya mteja yeyote wa wavuti anayeiunganisha. Sasa tunahitaji kuunda kitu cha kukaribisha na kutoa kwa wateja wetu: Songa ndani ya folda ya "umma": pi @ raspberry: ~ $ cd umma
Unda faili mpya ya html "index.html":
pi @ raspberry: ~ $ nano index.html
Bandika nambari kutoka kwenye "HelloWorld.txt" iliyoambatishwa, weka na uondoke.
Sogeza ndani ya folda ya nodejs "nodehome":
pi @ raspberry: ~ $ cd nodehome
Anzisha seva ya wavuti ya
pi @ raspberry: ~ $ node webserver.js
Fungua wavuti kwenye kivinjari ukitumia https:// Raspberry_IP: 8080 / (badilisha Raspberry_IP na IP yako)
Hatua ya 6: Kuongeza uwezo wa kutangaza video
Kuna njia tofauti za kutekeleza utiririshaji wa video kwenye Raspberry, rahisi
njia ambayo nimepata hadi sasa, kwamba kama utendaji mzuri na inaweza kuunganishwa katika kiolesura cha wavuti ni msingi wa mradi kutoka Miguel Mota:
miguelmota.com/blog/raspberry-pi-camera-bo…
Asante Miguel! Kutoka kwa blogi yake hizi ni hatua:
Sakinisha vifaa vya libjpeg8 na cmake:
pi @ raspberry: ~ $ sudo apt-get kufunga libjpeg8
pi @ raspberry: ~ $ sudo apt-get kufunga libjpeg8-dev
pi @ raspberry: ~ $ sudo apt-get kufunga cmake
Pakua mjpg-streamer na programu-jalizi ya raspicam:
pi @ raspberry: ~ $ git clone
github.com/jacksonliam/mjpg-streamer.git ~ / mjpg-streamer
Badilisha saraka:
pi @ raspberry: ~ $ cd ~ / mjpg-streamer / mjpg-streamer-majaribio
Kutunga:
pi @ raspberry: ~ $ safisha yote
Badilisha nafasi ya zamani ya mjpg:
pi @ raspberry: ~ $ sudo rm -rf / opt / mjpg-streamer
pi @ raspberry: ~ $ sudo mv ~ / mjpg-streamer / mjpg-streamer-majaribio
/ opt / mjpg-mtiririshaji
pi @ raspberry: ~ $ sudo rm -rf ~ / mjpg-streamer
Unda faili mpya ya "start_stream.sh", nakili na ubandike kutoka faili ya "start_stream.txt" iliyoambatishwa.
Fanya iweze kutekelezwa (tengeneza hati za ganda):
pi @ raspberry: ~ $ chmod + x start_stream.sh
Anza Kutiririsha seva:
pi @ raspberry: ~ $./start_stream.sh
Fungua wavuti kwenye kivinjari ukitumia https:// Raspberry_IP: 9000 (badilisha Raspberry_IP na IP yako)
Hatua ya 7: PROGRAMU YA TANKI
Kila kitu kiko tayari, sasa lazima tuunde ukurasa wetu wa wavuti kudhibiti tank (index.html) na seva yetu ya wavuti kusikiliza amri zetu (webserver.js). Kwa hivyo, badilisha faili zilizoonekana hadi sasa (mifano tu ya kujaribu mfumo) na webserver.txt na index.txt.
Hatua ya 8: ANZA UDHIBITI KIASILI NA USHINDI WA KUTUMIA
Kuanza huduma fungua windows mbili za terminal na utumie amri hizi:
node nodehome / webserver.js
./nodehome/start_stream.sh
Fungua wavuti kwenye kivinjari ukitumia https:// Raspberry_IP: 8080 (badilisha Raspberry_IP na IP yako)
Ilipendekeza:
Chagua Kiolesura cha SD cha ESP32: Hatua 12 (na Picha)
Chagua Kiolesura cha SD cha ESP32: Mafundisho haya yanaonyesha kitu juu ya kuchagua kiolesura cha SD kwa mradi wako wa ESP32
Kitanda cha Mkondo wa Raspberry Pi - Sehemu ya 2 (Utiririshaji wa Video wa Pi): Hatua 6
Kitanda cha Mkondo wa Raspberry Pi - Sehemu ya 2 (Utiririshaji wa Video wa Pi): Sawa, sikufikiria picha hizi zinahitajika, lakini wavuti inapenda picha. Hizi ni safu ya amri na hatua kwako. Kuna tovuti zingine ambazo zinaweza kushughulikia upendeleo wowote.Hii ndiyo iliyonifanyia kazi. Hii inachanganya yote
Taa nyepesi ya $ 5 yenye Kiolesura cha Wavuti cha Smartphone: Hatua 4
Taa nyepesi ya $ 5 yenye Kiolesura cha Wavuti cha Smartphone: Hi! Naitwa Raphael. Hii ni ya kwanza kufundishwa! Nia yangu kuu ya kuunda taa hii ni kusaidia maisha ya watu wasiojiweza. Siku moja, hatutakuwa na swichi kwenye kuta au kuziba ngumu, lakini badala simu zetu mahiri kudhibiti
Kudhibiti RC Gari Kupitia Kiolesura cha Wavuti: Hatua 6 (na Picha)
Kudhibiti RC Gari Kupitia Kiolesura cha Wavuti: Hii marafiki, Katika mafunzo haya nitakufundisha kutengeneza RC Gari kupitia kiolesura cha wavuti. Tutaidhibiti bila waya kupitia seva yetu wenyewe. Kutumia njia ambayo nitakuonyesha, hatutahitaji kutumia mpokeaji wa RC. Kuwa mwenyeji wa wavuti
Pata Video za Bure na Michezo ya Kiwango cha Wavuti kwenye Wavuti yoyote: Hatua 24
Pata Video za Bure na Michezo ya Kiwango cha Wavuti kwenye Wavuti yoyote. katika hii inayoweza kufundishwa nitakuonyesha jinsi ya kupata video na michezo ya kufurahisha kutoka kwa tovuti yoyote kwenye mtafiti wa mtandao