![Вэб интерфэйс ба видео дамжуулалттай бөөрөлзгөнө сав: 8 алхам (зурагтай) Вэб интерфэйс ба видео дамжуулалттай бөөрөлзгөнө сав: 8 алхам (зурагтай)](https://i.howwhatproduce.com/images/002/image-5623-26-j.webp)
Агуулгын хүснэгт:
- Алхам 1: Монголбанк
- Алхам 2: Үндсэн бүрэлдэхүүн хэсгүүдийн үзүүлэлтүүд
- Алхам 3: ЦАХИЛГААН
- Алхам 4: RASPBERRY БЭЛТГЭХ O.S
- Алхам 5: WIFI ТАНК -аа NODE.JS, WEBSOCKET.IO ХЭРХЭН ХЭРХЭН ХЭРЭХ вэ?
- Алхам 6: ВИДЕО ҮЗЭХ ЧАДВАР НЭМЭХ
- Алхам 7: ТАНК ХӨТӨЛБӨР
- Алхам 8: ХЯНАЛТЫН ХӨРӨНГӨӨ, СТРЕМИНГИЙН СЕРВЕРИЙГ ЭХЛЭХ
2025 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2025-01-23 15:00
![Вэб интерфэйс, видео дамжуулалттай бөөрөлзгөнө сав Вэб интерфэйс, видео дамжуулалттай бөөрөлзгөнө сав](https://i.howwhatproduce.com/images/002/image-5623-27-j.webp)
Алсаас вэб хяналт, видео дамжуулах чадвартай бяцхан WiFi савыг хэрхэн олж авснаа бид харах болно.
Энэ нь цахим болон програм хангамжийн анхан шатны мэдлэг шаарддаг зааварчилгаанд зориулагдсан болно. Энэ шалтгааны улмаас би танк явах эд ангиудыг (3D принтер ашиглан хэвлэхийн оронд дараа нь шинэчлэх боломжтой) болон батерейг багтаасан нийт 6 бүрэлдэхүүн хэсгийг сонгосон. Програм хангамжийн хувьд та суулгах процессыг алхам алхамаар дагаж мөрдөж, програмчлалыг хамгийн бага хэмжээнд байлгадаг бөгөөд Raspberry -ийн талаархи үндсэн мэдлэг нь тусалж чадна.
Би 0 -ээс бэлэн танк хүртэл 12 цаг ажилласан гэж тооцоолсон. Бүх бүрэлдэхүүн хэсгүүдийн нийт зардал 70 евро.
Алхам 1: Монголбанк
![Монголбанк Монголбанк](https://i.howwhatproduce.com/images/002/image-5623-28-j.webp)
![Монголбанк Монголбанк](https://i.howwhatproduce.com/images/002/image-5623-29-j.webp)
![Монголбанк Монголбанк](https://i.howwhatproduce.com/images/002/image-5623-30-j.webp)
![Монголбанк Монголбанк](https://i.howwhatproduce.com/images/002/image-5623-31-j.webp)
1 - DIY RC робот явах эд анги танк - 32 (€)
www.banggood.com/DIY-RC-Robot-Chassis-Tan…
1 - Хос суваг L298N DC моторт драйверын самбар - 1, 39 (€)
www.banggood.com/Dual-Channel-L298N-DC-Mo…
1 - Raspberry Pi Zero W Starter Kit - 26 (€)
amzn.eu/1ugAaMP
1 - 16 GB SD карт - 5, 50 (€)
www.gearbest.com/memory-cards/pp_337819.h…
1 - Raspberry Pi 5MP Камерын Модуль Вэбкамер Model Zero - 8 (€)
www.gearbest.com/raspberry-pi/pp_612249.h…
1 - Power Bank 5V
1 - 9в батерей
Холимог талхны кабель Dupont холбогч
Бөөрөлзгөнө тохируулах хулгана, гар, дэлгэц эсвэл ТВ (заавал биш, зөвхөн эхний тохиргоог хялбар болгох)
Алхам 2: Үндсэн бүрэлдэхүүн хэсгүүдийн үзүүлэлтүүд
Мотор
JGA25-370 тогтмол гүйдлийн хөдөлгүүр
Энэхүү мотор нь D хэлбэрийн гаралтын голтой.
Үзүүлэлтүүд
· Ажиллах хүчдэл: 6 В -оос 18 В хүртэл
· Нэрлэсэн хүчдэл: 12 В.
· Чөлөөт гүйдлийн хурд 12 В: 399 эрг / мин
· 12 В: 50 мА хүчдэлтэй чөлөөт гүйдэл
· Тасалгааны гүйдэл 12V: 1200 мА
· 12V хүчдэлийн зогсолтын эргэлт: 2.2 кг.см
· Арааны харьцаа: 1:21
· Редукторын хэмжээ: 19 мм
· Жин: 84 гр
Хос суваг L298N DC моторт драйверын самбар
H-гүүрний хос мотор жолооч, хоёр тогтмол гүйдлийн мотор эсвэл 4 утастай хоёр фазын шатлалт мотор жолооддог. Баригдсан TSD, моторын лангуунаас хамгаалах.
Үзүүлэлтүүд
· Модулийн тэжээлийн хүчдэл: DC 2V-10V
· Дохионы оролтын хүчдэл: DC 1.8-7V
· Нэг ажлын гүйдэл: 1.5А
· 2.5А хүртэл оргил гүйдэл
· Бага зогсолтын гүйдэл (0.1uA -аас бага)
· Баригдсан нийтлэг дамжуулах хэлхээ, оролтын терминал хоосон, мотор эвдрэхгүй
· Хэмжээ: 24.7 x 21 x 7 мм
Алхам 3: ЦАХИЛГААН
![УТАС УТАС](https://i.howwhatproduce.com/images/002/image-5623-32-j.webp)
![УТАС УТАС](https://i.howwhatproduce.com/images/002/image-5623-33-j.webp)
Энэ нь эцсийн утас байх болно, гэхдээ заримыг нь суулгахаас өмнө ХҮЛЭЭНЭ
програм хангамж, үүнийг бэлэн болсны дараа энгийн утсаар туршиж үзэх нь зүйтэй юм.
Бидэнд хоёр өөр тэжээлийн эх үүсвэр хэрэгтэй болно, нэг нь мотор, нөгөө нь бөөрөлзгөнө.
Хөдөлгүүрийн хос суваг L298N DC моторт драйверын самбар (хамгийн их оролтын хүчдэл DC 2V-10V) нь 9В батерейгаар тэжээгддэг бөгөөд Raspberry Pi нь 5V USB аккумляторын стандартыг ашигладаг.
Мотор драйверын GND зүү нь зайны хасах ба Raspberry Pi (GND) -тай холбогдоно. Raspberry Pi -ийн GPIO тээглүүр нь мотор драйвертай хүснэгт хэлбэрээр холбогддог.
Алхам 4: RASPBERRY БЭЛТГЭХ O. S
Энэ бол Raspbian үйлдлийн системийн стандарт суулгалт бөгөөд та олж болно
вэб дээр хайлт хийх олон нарийвчилсан зааварчилгаа, үндсэн алхамууд нь:
1. https://www.raspberrypi.org/downloads/raspbian/ дээрээс iso RASPBIAN STRETCH -ийг Десктоптой татаж аваарай.
2. 16 GB хэмжээтэй SD картыг форматлаарай, би SD форматлагчийг ашигласан
3.. IMG файлыг шарна уу, би Win32DiskImager ашигласан
Одоо таны бөөрөлзгөнө ачаалж, USB тэжээлийн эх үүсвэрт (5V, 2A) холбож, анхны ачаалах тохиргоог хийхэд бэлэн боллоо. Та үүнийг хоёр аргаар хийж болно: хулгана, гар, дэлгэц гэх мэт гадаад төхөөрөмж эсвэл компьютер, Raspberry -ийн алсын холболт. Энэ талаар маш олон заавар байдаг, нэг нь:
Алхам 5: WIFI ТАНК -аа NODE. JS, WEBSOCKET. IO ХЭРХЭН ХЭРХЭН ХЭРЭХ вэ?
![WIFI ТАНК -аа NODE. JS, WEBSOCKET. IO ХЭРХЭН ХЭРХЭН ХЯНАХ ВЭ? WIFI ТАНК -аа NODE. JS, WEBSOCKET. IO ХЭРХЭН ХЭРХЭН ХЯНАХ ВЭ?](https://i.howwhatproduce.com/images/002/image-5623-34-j.webp)
Одоо бид Raspberry бичил компьютерынхаа шинэ суулгацыг ажиллуулахад бэлэн болсон байгаа тул … танканд тушаал өгөхдөө бид юу ашигладаг вэ?
Python бол Rapsberry төслийг ажиллуулахад ихэвчлэн ашигладаг хэлийг ашиглахад маш хялбар бөгөөд Rapsberry оролт, гаралтын тээглүүр (GPIO) -тэй харьцахад хялбар байдаг
Гэхдээ миний зорилго бол танкны wi-fi-г ямар ч төхөөрөмжөөс (компьютер, гар утас, таблет …) ердийн вэб хөтөч ашиглан холбох, үүнээс видео дамжуулах явдал байв. Тиймээс Python -г одоохондоо мартаж, NODE. JS болон SOCKET. IO руу шилжихийг зөвшөөрнө үү.
NODE.js
Node.js (https://github.com/nodejs/node/wiki) нь js хэл дээр суурилсан нээлттэй эхийн серверийн хүрээний ажил юм. Би Raspberry Pi Zero (ARMv6 CPU) ашиглаж байгаа тул бид автоматаар суулгах процессыг (ARMv7 CPU -д зориулагдсан) ашиглаж чадахгүй тул үүнийг гараар хийх шаардлагатай байна.
Nodejs -ийг орон нутгаас татаж аваарай (би ARMv6 -ийн 7.7.2 хувилбарыг ашигласан, бусад хувилбаруудыг эндээс үзээрэй
pi@бөөрөлзгөнө: ~ $ wget
nodejs.org/dist/v7.7.2/node-v7.7.2-linux-…
Үүнийг хийсний дараа шахсан файлыг задална уу.
pi@бөөрөлзгөнө: ~ $ tar -xzf node-v7.7.2-linux-armv6l.tar.gz
Файлуудыг /user /local руу хуулж суулгана уу
pi@бөөрөлзгөнө: ~ $ sudo cp -R node-v7.7.2-linux-armv6l/*/usr/local/
Бид nodejs суулгасан байршлаа зам руу нэмж, ".profile" файлыг засна уу.
pi@бөөрөлзгөнө: ~ $ нано ~/.профайл
Файлын төгсгөлд дараах мөрийг нэмж хадгалаад гарна уу
PATH = $ PATH:/usr/local/bin
Татаж авсан файлыг устгана уу.
pi@бөөрөлзгөнө: ~ $ rm ~/node-v7.7.2-linux-armv6l.tar.gz
pi@бөөрөлзгөнө: ~ $ rm -r ~/node-v7.7.2-linux-armv6l
Nodejs суулгалтыг шалгахын тулд дараах тушаалуудыг бичнэ үү.
pi@бөөрөлзгөнө: ~ $ зангилаа -v
pi@бөөрөлзгөнө: ~ $ npm -v
Та v7.7.2 ба v4.1.2 -ийг хариу болгон унших ёстой.
Хэрэв бүх зүйл сайн болсон бол nodejs файлуудаа байршуулах шинэ хавтас үүсгэнэ үү.
pi@бөөрөлзгөнө: ~ $ mkdir nodehome
Шинэ фолдер дотор зөөх:
pi@бөөрөлзгөнө: ~ $ cd nodehome
GPIO -г асаах, унтраах ажлыг үндсэн хэлбэрээр удирдахад шаардлагатай нэмэлт модулийг суулгана уу.
pi@бөөрөлзгөнө: ~ $ npm onoff суулгах
Бидний анхны "Blink.js" төслийг туршиж үзэх цаг боллоо, үр дүн нь LED анивчих болно
pi@бөөрөлзгөнө: ~ $ нано blink.js
Дараах кодыг буулгаад хадгалаад гарна уу.
var Gpio = шаардлагатай ('унтраах'). Gpio; // унтраах орно
var LED = шинэ Gpio (3, 'out'); // GPIO 3 ашиглах
var blinkInterval = setInterval (blinkLED, 250);
// 250 м тутамд LED анивчих
функц blinkLED () {// функц анивчиж эхлэх
хэрэв
(LED.readSync () === 0) {// төлөв 0 (эсвэл унтраалттай) байвал зүү төлөвийг шалгана уу
LED.writeSync (1);
// зүү төлөвийг 1 болгож тохируулах (LED асаах)
} өөр {
LED.writeSync (0);
// зүү төлөвийг 0 болгож тохируулах (LED унтраах)
}
}
endBlink () {// функц нь анивчихыг зогсоох
clearInterval (blinkInterval); // анивчих интервалыг зогсоох
LED.writeSync (0); // LED унтраах
LED.unexport (); // GPIO -г үнэгүй эх үүсвэр рүү экспортлох
}
setTimeout (endBlink, 5000); // 5 секундын дараа анивчихаа боль
Схемд үзүүлсэн шиг LED, резистор (200 Ом) утсыг холбож, төслийг ажиллуулна уу.
pi@бөөрөлзгөнө: ~ $ node blink.js
Зангилаа бэлэн боллоо.
SOCKET. IO
WebSocket бол TCP холболт дээр суурилсан компьютерын харилцаа холбооны протокол бөгөөд програмчдад сервер, үйлчлүүлэгч үүсгэх боломжийг олгодог. Үйлчлүүлэгч нь сервертэй холбогдож, сервер рүү мессеж илгээж, хүлээн авдаг. Node.js -д зориулсан WebSocket хэрэгжилтийг Socket.io (https://socket.io/) гэж нэрлэдэг.
Socket.io суулгах:
pi@бөөрөлзгөнө: ~ $ npm socket.io -г суулгаарай
Голчлон бүтээгдсэн nodejs гэр рүү шилжих:
pi@бөөрөлзгөнө: ~ $ cd nodehome
Мөн "нийтийн" гэсэн шинэ хавтас үүсгэнэ үү:
pi@бөөрөлзгөнө: ~ $ mkdir олон нийтийн
Шинэ дээжийн вэб сервер үүсгээд түүнийгээ "webserver.js" гэж нэрлэнэ үү.
pi@бөөрөлзгөнө: ~ $ нано вэб сервер.js
Дараах кодыг буулгаад хадгалаад гарна уу.
var http = шаарддаг ('http'). createServer (зохицуулагч); // http сервер шаардлагатай бөгөөд функц зохицуулагч ашиглан сервер үүсгэнэ ()
var fs = шаарддаг ('fs'); // файлын системийн модулийг шаарддаг
http. сонсох (8080); // 8080 портыг сонсоорой
функц зохицуулагч (req, res) {// сервер үүсгэх
fs.readFile (_ dirname + '/public/index.html', функц (алдаа, өгөгдөл) {// унших
public index.html файлыг нийтийн хавтсанд байрлуулна
хэрэв (алдаа) {
res.writeHead (404, {'Агуулгын төрөл': 'текст/html'}); // 404 алдааг харуулна
буцах res.end ( 404 Үгүй
Олсон );
}
res.writeHead (200, {'Агуулгын төрөл': 'текст/html'}); // HTML бичих
res.write (өгөгдөл); // өгөгдөл бичих
index.html дээрээс
буцах res.end ();
});
}
Энэ вэб сервер нь таны Raspberry 8080 портыг сонсож, түүнийг холбосон ямар ч вэб клиентэд файл өгөх болно. Одоо бид үйлчлүүлэгчиддээ зориулан зохион байгуулж өгөх зүйл бий болгох хэрэгтэй байна: "public" фолдер дотор зөөх: pi@raspberry: ~ $ cd public
Шинэ "index.html" html файл үүсгэх:
pi@бөөрөлзгөнө: ~ $ нано индекс.html
Хавсаргасан "HelloWorld.txt" дээрх кодыг оруулаад хадгалаад гарна уу.
Nodejs фолдер доторх "nodehome" руу шилжих:
pi@бөөрөлзгөнө: ~ $ cd nodehome
HTTP вэб серверийг эхлүүлэх:
pi@бөөрөлзгөнө: ~ $ node webserver.js
Вэбсайтыг https:// Raspberry_IP: 8080/ашиглан хөтөч дээр нээнэ үү (Raspberry_IP -ийг IP хаягаараа солино уу)
Алхам 6: ВИДЕО ҮЗЭХ ЧАДВАР НЭМЭХ
Бөөрөлзгөнө дээр видео дамжуулалтыг хэрэгжүүлэх өөр өөр арга байдаг
Мигель Мотагийн төсөл дээр суурилсан гайхалтай гүйцэтгэлийг вэб интерфэйсд нэгтгэх боломжтой гэдгийг би өнөөг хүртэл олж мэдсэн.
miguelmota.com/blog/raspberry-pi-camera-bo…
Баярлалаа Мигель! Түүний блогоос эдгээр алхмууд нь:
Libjpeg8 ба cmake бүрэлдэхүүн хэсгүүдийг суулгана уу:
pi@бөөрөлзгөнө: ~ $ sudo apt-get libjpeg8 суулгаарай
pi@бөөрөлзгөнө: ~ $ sudo apt-get libjpeg8-dev суулгаарай
pi@бөөрөлзгөнө: ~ $ sudo apt-get install cmake
Raspicam залгаас ашиглан mjpg-дамжуулагчийг татаж авах:
pi@бөөрөлзгөнө: ~ $ git клон
github.com/jacksonliam/mjpg-streamer.git ~/mjpg-дамжуулагч
Лавлахыг өөрчлөх:
pi@бөөрөлзгөнө: ~ $ cd ~/mjpg-цацагч/mjpg-дамжуулагч-туршилтын
Эмхэтгэх:
pi@бөөрөлзгөнө: ~ $ бүгдийг цэвэрлэ
Хуучин-j.webp
pi@бөөрөлзгөнө: ~ $ sudo rm -rf /opt /-j.webp
pi@бөөрөлзгөнө: ~ $ sudo mv ~/mjpg-цацагч/mjpg-цацагч-туршилтын
/opt/mjpg-дамжуулагч
pi@бөөрөлзгөнө: ~ $ sudo rm -rf ~/mjpg -дамжуулагч
Шинэ "start_stream.sh" файл үүсгээд хавсаргасан "start_stream.txt" файлаас хуулж буулгана уу.
Үүнийг гүйцэтгэх боломжтой болгох (бүрхүүлийн скрипт үүсгэх):
pi@бөөрөлзгөнө: ~ $ chmod +x start_stream.sh
Дамжуулах серверийг эхлүүлэх:
pi@бөөрөлзгөнө: ~ $./start_stream.sh
Вэбсайтыг https:// Raspberry_IP: 9000 ашиглан хөтөч дээр нээнэ үү (Raspberry_IP -ийг IP хаягаараа солино уу)
Алхам 7: ТАНК ХӨТӨЛБӨР
Бүх зүйл бэлэн болсон, одоо бид танкийг хянах вэб хуудсаа (index.html), вэб серверээ ашиглан бидний тушаалыг сонсох ёстой (webserver.js). Тиймээс, одоог хүртэл харсан файлуудыг (системийг шалгахын тулд зөвхөн жишээ) хавсаргасан webserver.txt болон index.txt -ээр солих хэрэгтэй.
Алхам 8: ХЯНАЛТЫН ХӨРӨНГӨӨ, СТРЕМИНГИЙН СЕРВЕРИЙГ ЭХЛЭХ
![ХЯНАЛТЫН ХӨРӨНГӨӨ, СТРЕМИНГИЙН ҮЙЛЧИЛГЭЭГ ЭХЛЭХ ХЯНАЛТЫН ХӨРӨНГӨӨ, СТРЕМИНГИЙН ҮЙЛЧИЛГЭЭГ ЭХЛЭХ](https://i.howwhatproduce.com/images/002/image-5623-35-j.webp)
Үйлчилгээг эхлүүлэхийн тулд хоёр терминал цонхыг нээгээд эдгээр тушаалуудыг ажиллуулна уу.
зангилаа nodehome/webserver.js
./nodehome/start_stream.sh
Вэбсайтыг https:// Raspberry_IP: 8080 ашиглан хөтөч дээр нээнэ үү (Raspberry_IP -ийг IP хаягаараа солино уу)
Зөвлөмж болгож буй:
Хичээл: ESP32-CAM-ийг видео дамжуулах вэб сервер дээр хэрхэн ашиглах вэ: 3 алхам
![Хичээл: ESP32-CAM-ийг видео дамжуулах вэб сервер дээр хэрхэн ашиглах вэ: 3 алхам Хичээл: ESP32-CAM-ийг видео дамжуулах вэб сервер дээр хэрхэн ашиглах вэ: 3 алхам](https://i.howwhatproduce.com/images/009/image-25013-j.webp)
Хичээл: Видео дамжуулах вэб сервер дээр ESP32-CAM-ийг хэрхэн ашиглах вэ: Тодорхойлолт: ESP32-CAM бол гэрийн ухаалаг төхөөрөмж, аж үйлдвэр гэх мэт төрөл бүрийн IoT төслүүдэд ашиглах зориулалттай маш жижиг хэлбэрийн хүчин зүйл бүхий ESP32 утасгүй IoT алсын хараатай хөгжлийн самбар юм. утасгүй хяналт, утасгүй хяналт, QR утасгүй таних
MIDI алхам интерфэйс: 12 алхам (зурагтай)
![MIDI алхам интерфэйс: 12 алхам (зурагтай) MIDI алхам интерфэйс: 12 алхам (зурагтай)](https://i.howwhatproduce.com/images/001/image-2435-70-j.webp)
MIDI Step Interface: Испани хувилбар энд байна. Энэхүү зааварчилгаанд бид " Саймон хэлэв " мөн MIDI интерфейс болгон ашигладаг. Энэ хоёр горимыг хөлөөрөө тоглох болно
Вэб интерфэйс ба DDNS бүхий ESP8266 автоматжуулалт: 8 алхам
![Вэб интерфэйс ба DDNS бүхий ESP8266 автоматжуулалт: 8 алхам Вэб интерфэйс ба DDNS бүхий ESP8266 автоматжуулалт: 8 алхам](https://i.howwhatproduce.com/images/003/image-6053-49-j.webp)
Вэб интерфэйс ба DDNS -тэй ESP8266 автоматжуулалт: Өнөөдрийн нийтлэлд бид DDNS (Динамик домэйн нэрийн систем) функцийг ашиглан орон сууцны зориулалттай автоматжуулалтыг үзүүлэх болно. Та ESP8266 дээр NodeMCU дээр байрлуулах програмаа хэрхэн тохируулахыг ойлгох болно. Түүнчлэн, бид хэрхэн яаж хийхийг харах болно
Raspberry Pi вэб интерфэйс: 5 алхам
![Raspberry Pi вэб интерфэйс: 5 алхам Raspberry Pi вэб интерфэйс: 5 алхам](https://i.howwhatproduce.com/images/003/image-6793-28-j.webp)
Raspberry Pi вэб интерфэйс: Эдгээр нь arduino -д зориулагдсан идэвхтэй бага буухиа самбарыг удирдахын тулд бөөрөлзгөнө pi -ийн gpio зүүг солих зориулалттай миний боловсруулсан вэб интерфэйсийг суулгах заавар юм. Энэ нь өөр хуудас руу орох линк дээр дарах боломжийг олгодог энгийн хуудсаар үйлчилдэг
Вэб дээр суурилсан хяналтын самбар бүхий вэб холболттой SMART LED анимэйшн цаг, синхрончлогдсон цагийн сервер: 11 алхам (зурагтай)
![Вэб дээр суурилсан хяналтын самбар бүхий вэб холболттой SMART LED анимэйшн цаг, синхрончлогдсон цагийн сервер: 11 алхам (зурагтай) Вэб дээр суурилсан хяналтын самбар бүхий вэб холболттой SMART LED анимэйшн цаг, синхрончлогдсон цагийн сервер: 11 алхам (зурагтай)](https://i.howwhatproduce.com/images/001/image-1346-36-j.webp)
Вэб дээр суурилсан Хяналтын самбар бүхий вэб холболттой SMART LED анимэйшн цаг, синхрончлогдсон цаг: Энэ цагийн түүх 30 гаруй жилийн түүхтэй. Аав маань энэ санааг анх 10 -хан настай байхад, LED хувьсгалаас нэлээд өмнө анх санаачилж байсан юм. Үнэн