Mundarija:

ESP8266 WIFI AP boshqariladigan to'rtta robot: 15 qadam (rasmlar bilan)
ESP8266 WIFI AP boshqariladigan to'rtta robot: 15 qadam (rasmlar bilan)

Video: ESP8266 WIFI AP boshqariladigan to'rtta robot: 15 qadam (rasmlar bilan)

Video: ESP8266 WIFI AP boshqariladigan to'rtta robot: 15 qadam (rasmlar bilan)
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Iyul
Anonim
Image
Image

Bu servo drayverli SG90 servo yordamida 12 ta DOF yoki to'rt oyoqli (to'rtburchaklar) robotni tayyorlash bo'yicha qo'llanma va uni smartfon brauzeri orqali WIFI veb -serveri yordamida boshqarish mumkin.

Loyihaning umumiy qiymati taxminan 55 AQSh dollarini tashkil qiladi (elektron qismlar va plastmassa robotli ramkalar uchun)

1 -qadam: ramkani tayyorlang

Elektron qismlar (Wemos D1 Mini)
Elektron qismlar (Wemos D1 Mini)

Barcha 3D ob'ektlarni bepul yuklab olish mumkin: www.myminifactory.com yoki www.thingiverse.com

Oyoq, son va son kabi moddiy yordam yordamida chop eting

Bosilgan qismlar ro'yxati:

1x korpus

1x qopqoq

1x batareya ushlagichi

4x kestirib (A va B turi)

4x Thight (A va B turi)

4x oyoq (A va B turi)

4x qalqon

12x vint + 12x2 mm vint

2 -qadam: Robot ramkasini yig'ish

yuqoridagi videoni bosqichma -bosqich bajarib, ramkani yig'ing, vida 2 mm o'lchamdagi teshik uchun

3 -qadam: elektron qismlar (Wemos D1 Mini)

Image
Image

Bozorda ko'plab NodeMCU variantlari mavjud va ular asosan bir xil funktsiyaga ega, bu loyiha uchun men Wemos D1 Mini ni tanlayman.

Bu qism to'rtburchaklar uchun kirish nuqtasi sifatida veb -server bo'lib xizmat qiladi.

Sizga kerak bo'lgan narsa - bu Quadruped AP -ga ulanish va robotingizning barcha harakatlarini boshqarish, va ehtimol kelajakdagi loyihada u sizga kerak bo'lgan barcha sensorlar asboblar panelini ko'rsatadi …

Bu D1 mini-bu ESP-8266EX asosidagi WIFI mini-platasi. va u 11 ta raqamli kirish/chiqish piniga ega, barcha pimlarda uzilish/pwm/I2C/bitta simli qo'llab-quvvatlanadi (D0 dan tashqari) 1 analogli kirish (3,3V maksimal kirish) va mikro USB ulanishi

Ishni qanday boshlash kerak:

  1. Arduino 1.6.7 uchun Arduino veb -saytidan o'rnating.
  2. Arduino -ni ishga tushiring va "Sozlamalar" oynasini oching.
  3. Qo'shimcha taxtalar menejeri URL -lari maydoniga. Siz bir nechta URL manzillarini vergul bilan ajratib qo'shishingiz mumkin.
  4. Tools → Board: xxx → Boards Manager -ni oching va ESP8266 hamjamiyati tomonidan esp8266 -ni o'rnating (va o'rnatgandan so'ng asboblar> Kengash menyusidan ESP8266 kartangizni tanlashni unutmang).

Batafsil ma'lumot uchun yuqoridagi videoni ko'rishingiz mumkin

Aliexpress -da qidirish uchun shu erni bosing

Ushbu loyiha uchun sizga bu pinni ulash kifoya:

  1. NodeMCU RX pin Arduino Nano TX piniga ulanadi
  2. NodeMCU TX pin Arduino Nano RX piniga ulanadi
  3. NodeMCU G pin 5-qadam DC-DC mini-ga ulanadi (-) Chiqish pimi chiqib ketadi
  4. NodeMCU5V pimi 5V DC-DC mini-ga ulanadi (+) Chiqish pimi chiqib ketadi

PS: Ushbu taxtani dasturlash uchun siz arduino va DC-DC ga ulangan barcha pimlarni uzib qo'yishingiz kerak, aks holda xato bo'ladi …

4 -qadam: elektron qismlar (Arduino Nano)

Elektron qismlar (Arduino Nano)
Elektron qismlar (Arduino Nano)

NodeMCU bilan bir xil, arduino taxtasi uchun siz Arduino Pro Mini, Arduino Nano yoki boshqa mos keladigan har qanday taxtadan foydalanishingiz mumkin.

Lekin bu loyiha uchun men Arduino Nano ni tanlayman, chunki men ishlatadigan ko'p pin kerak emas, u kichik va uni dasturlash uchun FTDI kerak emas.

Aliexpress -da qidirish uchun shu erni bosing

Ushbu loyiha uchun men faqat foydalanaman:

  1. Arduino nano RX pin NodeMCU TX piniga ulanadi
  2. Arduino nano TX pin NodeMCU RX piniga ulanadi
  3. Ardiono nano A4 pimi PCA9685 SDA piniga ulanadi
  4. Arduino nano A5 pinli PCA9685 SCL piniga ulanadi
  5. Arduino nano GND pimi DC-DC mini 5v Stepdown (-) chiqish piniga ulanadi
  6. Arduino nano 5V pinli DC-DC mini 5v Stepdown (+) chiqish piniga ulanadi

batafsilroq bilish uchun yuqoridagi sxemaga qarang

PS: Ushbu taxtani dasturlash uchun siz NodeMCU va DC-DC-ga ulangan barcha pinlarni uzib qo'yishingiz kerak, aks holda sizda xato bo'ladi …

5 -qadam: Elektron qismlar (Tower Pro 9g Micro Servo)

Elektron qismlar (Tower Pro 9g Micro Servo)
Elektron qismlar (Tower Pro 9g Micro Servo)

Bu eng mashhur mini servo. Og'irligi atigi 9 gramm va sizga 1,5 kg/sm moment beradi. Uning o'lchamlari bo'yicha juda kuchli. Nurli robotlar uchun javob beradi.

PS: Bu servo faqat 180 graduslik burchakni aylantira oladi

Asosiy xususiyatlar:

• Shaffof tana

• engil

• Kamroq shovqin xususiyatlari:

• Olchamlari: 22,6 x 21,8 x 11,4 mm

• Ulanish simining uzunligi: 150 mm

• Ishlash tezligi (yuklamasdan 4,8 V): 0,12 sek / 60 daraja

• To'xtash momenti (4,8 V): 1,98 kg/sm

• Harorat diapazoni: 30 dan 60 ° C gacha (-22 dan 140 ℉ gacha)

• O'lik tarmoqli kengligi: 4 usec

• Ishlash kuchlanishi: 3,5 - 8,4 volt

Aliexpress -da SG90 servosini qidirish uchun shu erni bosing

6 -qadam: Elektron qismlar (16 -kanalli 12 -bitli PWM/Servo drayveri - I2C interfeysi - Arduino uchun PCA9685)

Elektron qismlar (16 -kanalli 12 -bitli PWM/Servo drayveri - I2C interfeysi - Arduino uchun PCA9685)
Elektron qismlar (16 -kanalli 12 -bitli PWM/Servo drayveri - I2C interfeysi - Arduino uchun PCA9685)

Robot piyodasi qilishni xohlaysizmi? lekin faqat mikrokontrollerdan foydalanish cheklangan miqdordagi PWM chiqishiga ega va siz o'zingizni ishdan bo'shatib qo'yasiz! Adafruit 16-kanalli 12-bitli PWM/Servo drayveri-I2C interfeysi bilan emas. Bu pwm va servo drayverlarning uzilishi bilan siz ikkita pim bilan 16 ta erkin ishlaydigan PWM chiqishini boshqarishingiz mumkin! 16 dan ortiq PWM chiqishlarini ishlatish kerakmi? Muammo yo'q. 992 ta PWM -ning ajoyib chiqishi uchun 62 ta go'zallikni birlashtiring.

Bu karta/chip 0x60-0x80 oralig'ida I2C 7-bitli manzilni ishlatadi, o'tish moslamalari bilan tanlanishi mumkin Quvvat kiritish uchun terminal bloki (yoki yon tomonidagi 0,1 dyuymli yoriqlardan foydalanishingiz mumkin) Terminal blokidagi teskari polaritli himoya Yashil quvvat yaxshi LED 3 pinli ulagichlar 4 kishidan iborat bo'lib, siz bir vaqtning o'zida 16 ta servo ulashingiz mumkin (Servo vilkalari 0,1 dyuymdan bir oz kengroq, shuning uchun siz 0,1 "sarlavhali" zanjirga mos keladigan "dizaynda 4-ni yonma-yon joylashtirishingiz mumkin. V+ liniyasidagi kondansatör (agar kerak bo'lsa), barcha chiqish liniyalarida 220 ohmli qarshilik rezistorlari ularni himoya qilish uchun, va LEDlarni haydovchini arzimas holga keltirish uchun, 6 manzil uchun pinli i2c bilan boshqariladigan PWM drayverini tanlang. TLC5940 oilasidan farqli o'laroq, siz unga doimiy ravishda mikrokontroleringizni bog'lab turuvchi signalni yuborishingiz shart emas, u mutlaqo bepul ishlaydi, u 5V ga mos keladi, demak siz uni 3,3Vli mikrokontrolderdan boshqarishingiz va 6V ga qadar xavfsiz boshqarishingiz mumkin. oq yoki ko'k L ni boshqarishni xohlasangiz yaxshi bo'ladi 3.4+ oldinga kuchlanishli ED) 6 ta manzilni tanlash uchun bitta i2c avtobusiga 62 ta simni ulashingiz mumkin, jami 992 ta chiqish - bu juda ko'p servo yoki LEDlar sozlanishi chastotali PWM taxminan 1,6 KHz 12 -bitgacha Har bir chiqish uchun piksellar sonini-servolar uchun, ya'ni 60 gigagertsli yangilanish tezligida taxminan 4us piksellar sonini sozlanishi-tortishish yoki ochish drenajini sozlash Chiqish moslamasi, barcha chiqishlarni tezda o'chiradi.

Aliexpress -da qidirish uchun shu erni bosing

Ushbu loyihada bizga barcha oyoqlar uchun 12 CH kerak (har oyog'iga 3CH), bu PCA9685 pinini Arduino Nano -ga ulang:

  1. PCA9685 VCC DC-DC mini 5v Stepdown (+) Chiqish pinini chiqarib oling
  2. PCA9685 GND DC-DC mini 5v Stepdown (-) Chiqish pinini chiqarib oling
  3. PCA9685 Servo (PWM) quvvati V+ dan UBECgacha (+) Chiqish pinini chiqarish
  4. PCA9685 Servo (PWM) quvvati GND dan UBEC (-) Chiqish pimi chiqib ketdi
  5. PCA9685 SDA - arduino nano A4 pinli
  6. PCA9685 SCL pimi arduino nano A5 piniga
  7. PCA9685 CH0 oldingi o'ngga, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  8. PCA9685 CH1 oldingi o'ng oyog'iga, iltimos, kabel rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  9. PCA9685 CH2 oldingi o'ng kestirib, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  10. PCA9685 CH4 orqa o'ngga, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  11. PCA9685 CH5 o'ng oyoqqa, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  12. PCA9685 CH6 orqa o'ng kestirib, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  13. PCA9685 CH8 oldingi chap tomonga, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  14. PCA9685 CH9 old chap oyog'iga, iltimos, kabel rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  15. PCA9685 CH10 oldingi chap kestirib, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  16. PCA9685 CH12 orqa chapga, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  17. PCA9685 CH13 orqa chap oyoqqa, iltimos, kabel rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)
  18. PCA9685 CH14 orqa chap kestirib, simi rangini PCA9685 rozetkasi rangiga moslang (sariq, qizil, jigarrang/qora)

PS: Ba'zi PCA9685 -da rang kodli soket yo'q, shuning uchun SG90 servodan sariq kabel PWM ma'lumot piniga, qizil kabel V+ piniga, qora/jigarrang GND piniga o'tishiga ishonch hosil qiling

7 -qadam: PWM - Servo pinli ulanish

PWM - Servo pinli ulanish
PWM - Servo pinli ulanish
PWM - Servo pinli ulanish
PWM - Servo pinli ulanish

PCA9685 va servo o'rtasida pinli xaritani ko'rish uchun yuqoridagi rasmni bosing va kattalashtiring

PS: Siz bu loyihada faqat 16 CH dan 12CHdan foydalanasiz, shuning uchun sizda 4CH qoladi, masalan, radar servo qo'yish yoki unga nerf blaster quroli qo'yish kabi … Arduino va NodeMCU ga qo'shimcha kodni qo'yish kifoya

8 -qadam: Elektron qismlar (UBEC)

Elektron qismlar (UBEC)
Elektron qismlar (UBEC)

3A-UBEC-bu 2-6 hujayrali lityum batareya to'plami (yoki 5-18 hujayrali NiMh /NiCd batareyasi) bilan ta'minlangan kommutatorli DC-DC regulyatori va u sizning qabul qilgichingiz, girro va servolaringiz uchun barqaror xavfsiz voltaj chiqaradi. Bu RC vertolyoti uchun juda mos keladi. UBEC chiziqli rejimi bilan taqqoslaganda, UBEC kommutatsiya rejimining umumiy samaradorligi yuqori.

Ushbu loyihada biz uni barcha servolarni quvvatlantirish uchun ishlatamiz, u filtrga ega, shuning uchun u dvigatelning ishlamay qolishi mumkin bo'lgan shovqinni kamaytiradi va robotning yukini ko'tarish uchun etarli bo'lgan yuqori Amperga ega.

Aliexpress -da qidirish uchun shu erni bosing

Pin aloqasi:

  1. UBEC (+) RED Chiqish pimi PCA9685 Servo (PWM) quvvatiga V+
  2. UBEC (-) QORA Chiqish pimi PCA9685 Servo (PWM) quvvatiga GND
  3. UBEC (+) RED Batareya (+) piniga kirish
  4. UBEC (-) O'chirish piniga Qora kirish

9-qadam: elektron qismlar (DC-DC Mini Stepdown)

Elektron qismlar (DC-DC Mini Stepdown)
Elektron qismlar (DC-DC Mini Stepdown)
Elektron qismlar (DC-DC Mini Stepdown)
Elektron qismlar (DC-DC Mini Stepdown)

UBEC bilan deyarli bir xil funktsiyaga ega, lekin bu oddiy DC-DC pastga tushirish moduli. U V (+) chiqishini 1V dan 17V gacha sozlashimiz mumkin bo'lgan va filtrlashsiz potensio o'lchagichga ega.

Aliexpress -da qidirish uchun shu erni bosing

PS: esda tutingki, uni ishlatishdan oldin V voltaj o'lchagich yordamida V (+) ni 5V ga sozlang

Pin aloqasi:

  1. Batareyaga mini -qadam (+) IN
  2. Kommutator piniga mini qadam (-) IN
  3. NodeMCU (5V), Arduino nano (5V) va PCA9685 (VCC) piniga parallel ravishda mini qadam (+) OUT
  4. NodeMCU (G), Arduino nano (GND) va PCA9685 (GND) piniga parallel ravishda mini qadam (-) OUT

10 -qadam: Boshqa elektron qism

Boshqa elektron qismlar
Boshqa elektron qismlar
Boshqa elektron qismlar
Boshqa elektron qismlar
Boshqa elektron qismlar
Boshqa elektron qismlar

Sizga kerak bo'lgan narsa (taxminan 20 kabel yoki undan kam) ayol va ayol o'tish kabeli (Aliexpress jumper sim qidiruvi)

O'z -o'zidan qulflash tugmasi yoki siz boshqa turdagi kalitlardan foydalanishingiz mumkin (Aliexpress o'zini qulflash kalitini qidirish)

va batareyadan tortib to UBEC/DC-DC ga o'tish uchun bir juft JST ulagichi (Aliexpress JST ulagichini qidirish)

11 -qadam: quvvat manbai

Quvvat manbai
Quvvat manbai
Quvvat manbai
Quvvat manbai

Siz foydalanishingiz mumkin bo'lgan juda ko'p quvvat manbai, men uchun qayta zaryadlanuvchi lipo 3S batareyasini ishlatishni afzal ko'raman. U 11, 1 voltli oqim va 500 mA / soat yoki undan ortiq quvvatga ega (unchalik katta emas, shuning uchun u engilroq bo'lishi mumkin).

Ammo 3S lipo -dan foydalanish uchun zaryadlovchi kerak va bu arzon emas, shuning uchun siz AAA batareyasi kabi boshqa quvvat manbalaridan foydalanishingiz mumkin, siz 6 AAA batareyali ketma -ket 9V quvvat manbasini ishlab chiqarishingiz mumkin va menimcha, bu robot uchun etarli quvvat.

Aliexpress -da Lipo 3S batareyasini qidirish uchun shu erni bosing

Lipo zaryadlovchini qidirish uchun shu erni bosing

Aliexpress -da 6xAAA batareya ushlagichini qidirish uchun shu erni bosing

12 -qadam: simlar diagrammasi

Tel diagrammasi
Tel diagrammasi

Loyihaning barcha simlarini ko'rish uchun yuqoridagi rasmni bosing va kattalashtiring

PS: sizga qisman lehim kerak va quvvat tugmasi, UBEC va DC-DC pastga tushishi uchun uni yopish uchun rezina bosh qisqichini qo'ying.

13 -qadam: Kodlash va dastlabki pozitsiya

Kodlash va dastlabki pozitsiya
Kodlash va dastlabki pozitsiya

Arduino nanosini mini USB-dan USB portiga ulang (lekin barcha pinlarni D1 mini va DC-DC-ga ulashni unutmang) va "spider_driver_open_v3_ESP8266_Rev280918.ino" -ni oching va Arduino nano-ga ulang, lekin qilmang. Arduino nano uchun arduino taxtasini va to'g'ri portni tanlashni unutmang.

Keyingi-Wemos D1 mini-ni kompyuterga USB-dan USB-ga ulash (shuningdek, barcha pinlarni DC-DC va Arduino nanosiga ulanishni unutmang). "QuadrupetV2_310319_fix_connection_issue.ino" -ni oching va taxtaga o'rnating, lekin bundan oldin to'g'ri taxtani afzal ko'rsating va to'g'ri portni tanlang (batafsilroq 3 -bosqichga qayting).

Tugatgandan so'ng, siz barcha pinlarni arduino nano, w1 Demo mini va DC-DC tushirish orasiga o'rnatishingiz va to'g'ri pozitsiyani sozlash uchun robotni yoqishingiz mumkin.

Boshlang'ich pozitsiyasi (yuqoridagi rasmga qarang) yuqoridagi rasmga iloji boricha yaqinroq qilib, hamma oyog'ini to'g'rilab qo'ying.

Robotni ishga tushirgandan so'ng, agar oyog'ining holati yuqoridagi rasm bilan bir xil bo'lmasa, sizga kerak bo'ladi:

  1. Servo shoxini burab, servo shoxini servodan ajratib oling.
  2. oyog'ini boshlang'ich pozitsiyasi bilan etarlicha yaqin bo'lguncha aylantiring
  3. servo shoxini qayta ulang va uni qayta ishlang
  4. buni o'tkazib yuborilgan barcha o'yinlar uchun qiling

PS:

  1. QuadrupetV2_310419_fix_connection_issue.ino allaqachon ulanmagan (Wi-Fi) va veb-sahifani ko'rsatib bo'lmaydigan muammo kabi hal qilingan, chunki eski dasturni 31-3-2019gacha o'chirib qo'yganlar uchun uni yuqoridan yana yuklab oling.
  2. qo'shimcha kutubxonani o'rnatish kerak (uni kutubxona papkasiga nusxalash)

    • github.com/wimleers/flexitimer2
    • github.com/adafruit/Adafruit-PWM-Servo-Dri…
    • github.com/kroimon/Arduino-SerialCommand

14 -qadam: Robotni boshqarish

Robotni boshqarish
Robotni boshqarish

Chunki bu robot WIFI kirish nuqtasiga aylangan, shuning uchun sizga kerak bo'lgan narsa:

  1. Robotni quvvatlantirish
  2. Smartfoningizda Wi -Fi sozlamalarini oching
  3. "12345678" parol bilan SpiderRobo kirish nuqtasiga ulaning.
  4. Smartfoningizda veb -brauzerni oching va https://192.168.4.1 yozing

Endi sizning robotingiz sizning buyrug'ingizni bajarishga tayyor …

15 -qadam: Veb -sahifani ochish yoki APga ulanish muammosi bo'lganlar uchun

Men bu masalani hal qildim, iltimos, uni yuqoridagi 13-QADAMDAN KO'CHIRING (iltimos @ 31-4-2019)

ba'zi Wemos D1 mini-klonlarida ESP yomon yoki nuqsonli bo'lib qoladi:- APga ulanish qiyin

- Sahifa ochilmadi

- Yuklash tugamadi

Qo'shimcha ma'lumot olish uchun yuqoridagi videomga qarang …

Tavsiya: