Агуулгын хүснэгт:
- Хангамж
- Алхам 1: ESP32 камерыг програмчлах
- Алхам 2: Робот бүтээх
- Алхам 3: Хөөе! Секунд хүлээнэ үү! Надад яагаад Arduino Nano хэрэгтэй байна вэ?
- Алхам 4: USB тоглоомын залгуурыг холбоно уу (заавал биш)
- Алхам 5: УНАЯ
- Алхам 6: Вэб серверийн HTML/Javascript кодыг хэрхэн өөрчлөх тухай дэлгэрэнгүй мэдээлэл
Видео: ESP32 камерын робот - FPV: 6 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
ESP32 Камерын модуль нь хямд, хүчирхэг PLC юм. Тэр ч байтугай нүүр царай таних онцлогтой!
Та самбар дээрх вэб интерфейсээр дамжуулан жолоодож буй First Person Viewpoint роботыг бүтээцгээе!
Энэ төсөл нь OV2640 камертай Geekcreit ESP32 модулийг ашигладаг. Энэ нь AIThinker модуль дээр суурилсан болно.
ESP32 камерын олон янзын клонууд байдаг. Зарим нь ажилладаг, зарим нь ажилладаггүй. Миний хийсэн модулийг ашиглахыг танд зөвлөж байна, ингэснээр танд амжилтанд хүрэх сайхан боломж байна.
Робот дараах байдлаар ажилладаг.
ESP32 нь вэбийн URL хаягийг таны сүлжээнд дамжуулдаг бөгөөд энэ нь камерын зарим функцийг ажиллуулах зарим хайрцгийг агуулсан шууд видеог дамжуулдаг. Энэ нь мөн роботын чиглүүлэгч команд болох вэб хуудас руу илгээсэн түлхүүрүүдийг дардаг. Та USB джойст бамбайг бүтээхийг хүсч болох бөгөөд ингэснээр та роботыг гарын командыг бичихээс илүүтэйгээр джойстикоор жолоодож чадна.
ESP32 товчлуур дарах үед тэдгээр байтуудыг Arduino Nano руу дамжуулдаг бөгөөд дараа нь моторыг хөдөлгөж роботыг хөдөлгөдөг.
Энэ төсөл нь дунд зэргийн өндөр бэрхшээлтэй байдаг. Та бүхэн яараарай.
Эхэлцгээе!
Хангамж
- OV2640 камертай ESP -32 камерын модуль - Би Geekcreit бүтээгдэхүүнийг санал болгож байна
- Дохионы хүчийг нэмэгдүүлэхийн тулд ESP-32-ийн гаднах антенн
- Ардуино Нано
- Joystick модульд зориулсан Arduino Leonardo (бидэнд Леонардогийн өгсөн USB гар эмуляц хэрэгтэй)
- Ерөнхий Joystick модуль
- L293D Quad H-гүүрний чип
- ESP32-ийг тэжээхийн тулд 5V гаралттай DC-DC Buck Coverter
- ESP32 програмчлахад зориулагдсан FTDI цуваа адаптер
- Хоёр ротортой мотортой ерөнхий робот явах эд анги - ямар ч явах эд анги ажиллах болно. 3 -аас 6В хүртэл мотор ашиглахыг зөвлөж байна
- ESP32 болон моторыг тэжээх 2 x 7.4V 1300mAh LiPo батерей (эсвэл үүнтэй төстэй)
- 1 x 9V батерей нь Arduino Nano -ийг тэжээдэг
Алхам 1: ESP32 камерыг програмчлах
Талхны самбар ашиглан ESP32 камераа FTDI адаптертай дараах байдлаар холбоно уу.
FTDI ESP32
3.3V ----------- 3.3V
GND ----------- GND
TX ----------- U0R
Rx ----------- U0T
Нэмж хэлэхэд, IO0 зүү ("нүд-өө-тэг") -ийг GND-тэй холбоно уу. ESP32 -ийг програмчлалын горимд оруулахын тулд та үүнийг хийх хэрэгтэй.
Esp32CameraWebRobotforInstructable.zip файлыг задлах.
Энэ төсөлд 4 файл байна:
esp32CameraWebRobotforInstructable.ino бол Arduino -ийн ноорог юм.
ap_httpd.cpp бол вэб серверийг удирдах код бөгөөд вэб хуудасны камерын онцлогийг тохируулах, вэб хуудаснаас товчлуур дарахыг хүлээн авахтай холбоотой код юм.
camera_index.h нь вэб програмын HTML/JavaScript кодыг байтын массив хэлбэрээр агуулдаг. Вэб програмыг өөрчлөх нь энэ төслийн хамрах хүрээнээс хол байна. Би дараа нь HTML/JavaScript -ийг хэрхэн өөрчлөх талаар линк оруулах болно.
camera_pins.h бол ESP32 камерын зүү тохируулгатай холбоотой толгой файл юм.
ESP32-ийг програмчлалын горимд оруулахын тулд та IO0 ("eye-oh-zero") -ийг Ground-тай холбох ёстой.
Arduino IDE -г ажиллуулаад Tools/Board/Board Board Manager руу очно уу. Esp32 хайж, esp32 номын санг суулгана уу.
Төслийг Arduino IDE дээрээ нээнэ үү.
Дээрх зураг дээр тодруулсан мөрөнд өөрийн чиглүүлэгчийн сүлжээний ID болон нууц үгээ оруулна уу. Төслийг хадгална уу.
Tools цэс рүү ороод дээрх зурагт үзүүлсэн шиг сонголтоо хийгээрэй.
Удирдах зөвлөл: ESP32 Wrover
Байршуулах хурд: 115200
Хуваах схем: "Агуу APP (3MB OTA байхгүй)"
мөн таны FTDI адаптер холбогдсон портыг сонгоно уу.
"Байршуулах" товчийг дарна уу.
Одоо заримдаа ESP32 -ийг байршуулж эхлэхгүй байна. Байршуулах явцад консол дээр… ---… тэмдэгтүүд гарч эхэлмэгц ESP32-ийн арын хэсэгт байрлах RESET товчийг дарахад бэлэн байгаарай. Үүний дараа байршуулж эхэлнэ.
Консол дээр 'RST дарна уу' гэж харах үед байршуулалт дууссан болно.
IO0 -ийг Ground -аас салга. FTDI адаптер ба ESP32 хоорондох 3.3V шугамыг салга.
ESP32 камер сайн ажиллахын тулд маш их гүйдэл шаарддаг. 5V 2A тэжээлийн адаптерийг ESP32 дээрх 5V ба GND зүү рүү холбоно уу.
Цуваа мониторыг нээж, дамжуулах хурдыг 115200 болгож, дараа нь ESP32 -ийг дахин ачаалахыг үзээрэй. Эцэст нь та серверийн URL хаягийг харах болно.
Хөтөч рүү очоод URL -г оруулна уу. Вэбсайт ачаалагдах үед 'Эхлэх дамжуулах' товчийг дарахад шууд видео дамжуулалт эхлэх ёстой. Хэрэв та 'Floodlight' хайрцгийг дарвал самбар дээрх флэш LED асах ёстой. Болгоомжтой! ГЭРЭЛТЭЙ!
Алхам 2: Робот бүтээх
Танд хоёр дугуйтай робот явах эд анги хэрэгтэй болно. Хэн ч хийх болно. Явах эд ангиудыг үйлдвэрлэгчийн зааврын дагуу угсарна.
Дараа нь схемийн дагуу роботыг холбоно уу.
L293D нь моторыг хянахад ашиглагддаг. Чип дээрх хагас зүү нь ESP32-ийн эсрэг байна гэдгийг анхаарна уу.
Ихэвчлэн Arduino дээр хоёр хөдөлгүүрийг удирдахын тулд 6 зүү хэрэгтэй байдаг.
Энэ роботод зөвхөн 4 зүү хэрэгтэй бөгөөд одоо хүртэл бүрэн ажиллаж байна.
1 ба 9 -р зүү нь Arduino -ийн 5V эх үүсвэрт холбогдсон тул тэдгээр нь үргэлж өндөр байдаг. Роботыг ингэж холбосон нь моторыг удирдахын тулд бидэнд Arduino дээр хоёр цөөхөн зүү хэрэгтэй болно гэсэн үг юм.
Урагш чиглэсэн чиглэлд INPUT тээглүүрийг LOW гэж тохируулж, хөдөлгүүрийн импульсийн долгионы модуляцыг 0 -ээс 255 -ийн хооронд 0, OFF гэсэн утгатай, 255 -ийн хамгийн дээд хурдыг илэрхийлнэ.
Урвуу чиглэлд INPUT тээглүүрийг HIGH болгож, ХОУХ -ны утгуудыг буцаана. 0 нь хамгийн дээд хурдыг, 255 нь унтраасан гэсэн үг юм.
ArduinoMotorControl ноорогыг задалж Arduino Nano дээр байршуулна уу.
Алхам 3: Хөөе! Секунд хүлээнэ үү! Надад яагаад Arduino Nano хэрэгтэй байна вэ?
Та "Хөөе! ESP32 камер дээр дор хаяж 4 IO зүү байгаа. Би яагаад моторыг удирдахын тулд ашиглаж болохгүй гэж?" Гэж бодож байгаа байх.
Үнэн бол ESP32 дээр дараах байдлаар зүү байна.
IO0 - ESP32 програмчлалын горимд оруулах шаардлагатай
IO2 - боломжтой
IO4 - LED гэрэл
IO12, IO13, IO14, IO15, IO16 - нэмэлт GPIO тээглүүр.
Хэрэв та PWM командын тусламжтайгаар тээглүүрийг хянахын тулд ESP32 дээр үндсэн ноорог ачаалж байвал тэдгээр нь ажиллах болно.
Гэсэн хэдий ч, та зураг зурахдаа CAMERA номын санг идэвхжүүлсний дараа эдгээр тээглүүр байхгүй болно.
Нано ашиглан хөдөлгүүрийг PWM -ээр удирдаж, ESP32 -ээс командыг нэг утас (ESP32 U0T Arduino Rx0 руу) болон GND -ээр дамжуулах нь хамгийн хялбар арга юм. Маш энгийн.
Алхам 4: USB тоглоомын залгуурыг холбоно уу (заавал биш)
Та вэбсайт руу товчлуур дарж дараах байдлаар робот жолоодох боломжтой.
8 - урагш
9 - Баруун урагш
7 - Зүүн урагш
4 - Зүүн тийш эргүүлэх
5 - Зогс
1 - Урвуу зүүн
2 - урвуу
3 - Баруун тийш урвуу.
USB джойстикийн ноорог нь джойстикийн оролтыг товчлуур дээр дарж вэб интерфэйс рүү илгээж, робот жолоодохын тулд Arduino руу дамжуулдаг.
Joystick -ийг Arduino LEONARDO -той дараах байдлаар холбоно уу.
Леонардо Жойстик
5V ---------- VCC
GND ---------- GND
A0 ---------- VRx
A1 ---------- VRy
UsbJoyStick ноорогыг нээгээд самбар дээр Arduino Leonardo -г сонгоод Леонардо руу байршуулна уу.
Хэрэв та үүнийг туршиж үзэхийг хүсч байвал компьютер дээрээ текст засварлагч нээгээд цонхон дээрх хулганаа дараад joystick -ийг хөдөлгөж эхлээрэй. Та 1 -ээс 9 хүртэлх утгыг цонхонд харуулах ёстой
Алхам 5: УНАЯ
Цаг хугацаа өнгөрч, бүх зүйл зөв байгаа эсэхийг шалгахын тулд утсан дээрээ очиж үзээрэй.
Дараа нь батерейгаа дараах байдлаар холбоно уу.
1. ESP32 камерыг асаах. Вэб серверийг эхлүүлэхэд хэдэн секунд шаардагдана.
2. Arduino Nano -г асаагаарай.
3. Моторыг асаах.
Хөтөчөө ажиллуулаад ESP32 -ийн URL руу очно уу.
Дамжуулалтыг эхлүүлэх товчийг дарна уу.
Хөтчийн дэлгэцийн аль нэг хэсэгт хулганаа дарна уу, ингэснээр дэлгэц одоо анхаарлаа төвлөрүүлэх болно.
Роботыг джойстик (эсвэл гар) ашиглан жолоодож эхэл.
Анхдагч хүрээний хэмжээ нь амьд видеог WiFi -ээр нэлээд хариу өгөхөд тохиромжтой гэдгийг би олж мэдсэн. Гэсэн хэдий ч та хүрээ хэмжээг нэмэгдүүлэх тусам илүү том зураг дамжуулахыг оролдож байгаа тул урсгал илүү тасархай болно.
Энэ бол танд видео дамжуулах, WiFi ашиглан робот жолоодох ажлыг эхлүүлэх боломжийг олгодог хүнд хэцүү төсөл юм. Танд хөгжилтэй санагдсан гэж найдаж байна!
ОДОО ОЧИЖ ЯМАР ГАЙХАМШИГТАЙ БОЛГООЧ!
2020 оны 1 -р сарын шинэчлэлт - Сүүлийн зургууд нь роботын эцсийн хувилбар бөгөөд хатуу гагнаж, явах эд анги руу найдвартай суурилуулсан болно.
Урд талд суурилуулсан гурван унтраалга дараах байдалтай байна.
Зүүн - Моторын батерей
Төв - Arduino батерей
Баруун талд - ESP32 камерын зай
Би бага оврын трансформатортой нэг том батерей ашиглаж болно (би ESP32-т ашигладаг-энэ нь урд талын зургийн баруун доод талд байгаа), гэхдээ хялбар болгох үүднээс би 3 зайг л хадгалж байна.
Робот одоо Access Point дээр байна
Энэ роботыг гэрийнхээ гадаа үзүүлэх нь надад хэцүү санагдаж байна, учир нь манай сургуулийн аж ахуйн нэгжийн сүлжээ роботын вэб серверийг түүнтэй холбохыг зөвшөөрдөггүй. Үүний шийдэл болгон би ESP32 вэб серверийн Хандалтын цэгийн онцлогийг ашиглах талаар судалгаа хийсэн. Энэ нь бага зэрэг ажил шаарддаг боловч ESP32 нэвтрүүлгийг өөрийн IP хаягаар хийхийн тулд үндсэн роботын зураг дээр бага зэрэг өөрчлөлт оруулах шаардлагатай болдог. Энэ нь тусгай зориулалтын өндөр хурдны wifi зангилаа шиг хүчирхэг биш юм (хэрвээ та хэт хурдан хөдөлвөл заримдаа залгагддаг), гэхдээ энэ нь маш сайн ажилладаг бөгөөд одоо би роботыг сүлжээнд холбохгүйгээр хүссэн газраа үзүүлэх боломжтой боллоо! Роботыг ажиллуулсны дараа өөрөө Access Point болгон хөрвүүлээд үзээрэй!
Алхам 6: Вэб серверийн HTML/Javascript кодыг хэрхэн өөрчлөх тухай дэлгэрэнгүй мэдээлэл
Энэ шаардлагагүй, гэхдээ надад хэд хэдэн хүсэлт ирсэн.
Би энэ Google Doc -д CyberChef -ийг ашиглан HTML/Javascript болон camera_index.h файл дахь байтын массивын дүрслэлийг хэрхэн нааш цааш нь хөрвүүлэх талаар дэлгэрэнгүй мэдээлэл өгсөн.
Зөвлөмж болгож буй:
ESP32 CAM -ийг ашиглаж эхлэх нь Wifi сүлжээгээр ESP CAM ашиглан видео дамжуулах - ESP32 аюулгүй байдлын камерын төсөл: 8 алхам
ESP32 CAM -ийг ашиглаж эхлэх нь Wifi сүлжээгээр ESP CAM ашиглан видео дамжуулах | ESP32 Аюулгүй байдлын камерын төсөл: Өнөөдөр бид энэхүү шинэ ESP32 CAM хавтанг хэрхэн ашиглах, үүнийг хэрхэн кодлох, хамгаалалтын камер болгон ашиглах, wifi -ээр дамжуулж буй видеог авах талаар сурах болно
Тэнцвэржүүлэх робот / 3 дугуйт робот / STEM робот: 8 алхам
Тэнцвэржүүлэх робот / 3 дугуйт робот / STEM робот: Бид сургуулиудад болон сургуулийн дараах боловсролын хөтөлбөрт зориулан тэнцвэржүүлэгч, 3 дугуйт роботыг бүтээсэн. Энэхүү робот нь Arduino Uno, захиалгат бамбай (барилгын бүх дэлгэрэнгүй мэдээллийг өгсөн болно), Li Ion батерейны багц дээр суурилсан (бүх бүтэц
Машины камерын камерын холболт: 9 алхам (зурагтай)
Автомашины зурвасын камерын холболт: Видео бичлэг хийх зорилгоор машиныхаа арын хэсэгт видео камер суурилуулах хямд (ХЯМД), үр ашигтай (АЖИЛЛАГААН) арга. Намайг бүртгэхийн тулд! Би горилла штатив, мини штатив туршиж үзсэн. Миний найз буурцагны уут санал болгов. Үүнийг бид хаанаас ч олж чадаагүй) гэхдээ …. T
Pc Sync Jack-ийг Nikon Sc-28 Ttl кабельд нэмнэ үү (Камерын гэрэл, камерын анивчихыг идэвхжүүлэхийн тулд Авто тохиргоог ашиглана уу): 4 алхам
Pc Sync Jack-ийг Nikon Sc-28 Ttl кабельд нэмнэ үү (Камерын гэрэл, камерын анивчсан гэрэл асаахын тулд Авто тохиргоог ашиглана уу !!): энэ зааварчилгааны дагуу би эдгээр 3pin TTL холболтуудын нэгийг хэрхэн яаж устгахыг зааж өгөх болно. Nikon SC-28 камертай TTL кабелийн хажуу талыг стандарт PC синхрончлогчоор солино. Энэ нь танд зориулалтын флаш ашиглах боломжийг олгоно
Панорама камерын робот толгой (панограф): 13 алхам (зурагтай)
Камер Панорама роботын толгой (панограф): Ганц товчлуур дээр дарж панорамик дүр зургийг авахыг хүсч байсан уу? Энэхүү зааварчилгаа нь камераа суурилуулах робот толгойг хэрхэн бүтээхийг зааж өгөх бөгөөд энэ нь эргээд tripod дээр бэхлэгдэх болно. Робот толгой нь хоёр тэнхлэгт шилжих болно