Mundarija:

Wi -Fi orqali boshqariladigan Telepresence robotini yarating: 11 qadam (rasmlar bilan)
Wi -Fi orqali boshqariladigan Telepresence robotini yarating: 11 qadam (rasmlar bilan)

Video: Wi -Fi orqali boshqariladigan Telepresence robotini yarating: 11 qadam (rasmlar bilan)

Video: Wi -Fi orqali boshqariladigan Telepresence robotini yarating: 11 qadam (rasmlar bilan)
Video: Смарт камера Xiaomi Kamera Mi kamera Wifi Camera 2024, Noyabr
Anonim
Image
Image

Bu loyiha Wifi yordamida dunyoning istalgan burchagidan boshqariladigan olis muhit bilan o'zaro aloqada bo'ladigan robotni yaratish haqida. Bu mening muhandislik loyihamning oxirgi yili va men elektronika, IoT va dasturlash haqida ko'p narsalarni o'rgandim. Ushbu loyiha harakatlanish nuqsoni bo'lgan odamlarga qaratilgan, chunki ular harakat qilishda qiynaladi, shuning uchun teleboshlovchi robot ularga oson yordam berishi mumkin.

Loyihani muvaffaqiyatli amalga oshirish uchun 2 ta tizim mavjud. Dvigatelning asosini boshqaradigan robot qo'lini va mobil ilovasini harakatlantirish uchun qo'lingizning harakatini boshqarish.

Quyida Telepresence V1 hujjati va taqdimoti keltirilgan, shunda siz chuqurroq tushunasiz.

Uni qurish vaqti keldi!

Ta'minotlar

Loyihani amalga oshirish uchun ko'plab vositalar va komponentlar kerak bo'ladi. Bu menga 1000 AED (270 $) atrofida edi, shuning uchun sizda byudjet borligiga ishonch hosil qiling. Bu erda sizga kerak bo'lgan komponentlar:

  1. MCU x 3 tuguni
  2. L298N shahar motorli haydovchi x 1
  3. 12V quvvat manbai x 1
  4. LM2596 pastga tushadigan kuchlanish regulyatori x 1
  5. MPU9250 IMU sensorlar x 2
  6. Servo motorlar (10-20 kg moment) x 4
  7. engil yog'och 1x1m
  8. 1M x 2 o'lchamli 8M tishli metall tayoqlar
  9. 3D printer (30x30 sm)
  10. yog'och kesuvchi va burg'ulashchi
  11. Elektr simlari, o'tish simlari va non paneli
  12. To'liq qo'l qisma
  13. 12V shahar dvigateli (25kg.sm) x 2
  14. 3 dyuymli g'ildirak g'ildiragi x 1
  15. 6 sm uzunlikdagi kauchuk g'ildirak, vintli x 2
  16. Lehim to'plami

1 -qadam: Bu qanday ishlaydi?

Dizayn
Dizayn

Bu tarkibiy qismlar bir -biri bilan qanday aloqa o'rnatayotganini tushunish uchun aloqa sxemasi. Biz PubNub deb nomlangan ma'lumotlar uzatish tarmog'idan IoT platformasi sifatida foydalanmoqdamiz, u real vaqtda xabarlarni atigi 0,5 soniyada yuboradi! Bu biz olishimiz mumkin bo'lgan eng tezkor javob va bu bizning loyihamizda muhimroqdir, chunki biz qo'limiz bilan robotning qo'lini real vaqtda boshqaramiz.

Hamma Nodemcu ma'lumot yuborish va qabul qilish uchun ishlatiladi. Bu erda ikkita individual tizim mavjud, bu erda Nodemcu qo'lda harakat sensori ma'lumotlarini PubNub -ga yuboradi va uni Nodemcu robot qo'lida oladi. tayanch harakati uchun mobil ilova joystikdan x, y koordinatasi uchun ma'lumotlarni yuboradi va uni Nodemcu dvigatelni haydovchi orqali boshqarishi mumkin. Hozircha hammasi shu.

2 -qadam: Dizayn

Yuqoridagi dizayn sizga strukturaning qanday ko'rinishi haqida tasavvur beradi. Siz yaxshiroq ko'rish uchun cad fayllarini yuklab olishingiz mumkin. Roverning asosini 3 g'ildirak qo'llab -quvvatlaydi, bu erda 2 dvigatelning orqa qismi, old tomonida bitta g'ildirakli g'ildirak. Robot qo'lining harakatlanishi tufayli men taglikdagi beqarorlikni payqadim, shuning uchun siz oldingizga ikkita g'ildirak g'ildiragini qo'shishingiz mumkin. Yog'ochning pastki va yuqori qismlari yong'oq bilan o'ralgan tishli tayoqlar bilan mustahkamlanadi. Qulf somunidan foydalanganingizga ishonch hosil qiling, chunki bu uni uzoq muddat mustahkam qilib qo'yadi.

Dizayn manba faylini yuklab oling - Telepresence Design

3 -qadam: 3D bosma qo'l va momentni hisoblash

Qo'l va momentni 3D bosib chiqarish
Qo'l va momentni 3D bosib chiqarish

Robotning qo'li - bu quti shaklidagi oddiy dizayn bo'lib, uni minimal hajmdagi filament bilan 3 o'lchamli bosib chiqarish mumkin. Uning uzunligi taxminan 40 sm, bu odam qo'liga teng. Robot qo'lining uzunligi servo dvigatellar tomonidan ko'tarilgan momentga asoslangan. Torkni yuqoridagi rasmda men ishlatgan servo dvigatelning texnik xususiyatlari bilan topishingiz mumkin, shunda siz dizaynni o'z ehtiyojlaringizga moslashtirasiz. Servo dvigatelning maksimal momentini ishlatishdan saqlaning, chunki bu uzoq muddatda dvigatelga zarar etkazadi.

Quyidagi 3D bosib chiqarish fayllarini yuklab oling, chop eting va oldinga siljishni davom ettiring.

4 -qadam: bazani tayyorlash va yig'ish

Baza ishlab chiqarish va yig'ish
Baza ishlab chiqarish va yig'ish
Baza ishlab chiqarish va yig'ish
Baza ishlab chiqarish va yig'ish
Baza ishlab chiqarish va yig'ish
Baza ishlab chiqarish va yig'ish

Ishlab chiqarish uchun siz quyidagi amallarni bajarishingiz mumkin:-

  1. O'rta nuqtada tishli metall tayoqni arra yordamida kesib oling
  2. 40x30 sm o'lchamdagi ikkita yog'och bo'lakni tayyorlash uchun yog'och kesgichdan foydalaning
  3. Yuqoridagi rasmda ko'rsatilganidek, yuqori va pastki poydevorda kerakli teshiklarni burang
  4. Pastki poydevorga doimiy dvigatel va g'ildirak g'ildiraklarini ulashni boshlang
  5. Yuqori poydevorda to'rtburchaklar teshik qilish uchun avval burg'ulash mashinasi bilan dumaloq teshik oching, so'ngra teshikdan o'tin kesgichni joylashtiring va to'rtburchaklar qilish uchun qirralarning bo'ylab kesib oling.

Agar siz nima uchun o'ng tepa teshik orqaga qo'yilganiga hayron bo'lsangiz, demak, men robot qo'lni markazning o'ng burchagiga qo'yamanmi, bilmasdim. Vazn muvozanati tufayli uni markazga joylashtirish yaxshiroq tanlov edi.

5 -qadam: Robotik qo'lni yig'ish

Robot qo'llarini yig'ish
Robot qo'llarini yig'ish

Robot qo'llarini yig'ish alohida e'tibor talab qiladi. Mexanik yig'ishdan tashqari, servo dvigatel yig'ilganda to'g'ri burchak ostida ekanligiga ishonch hosil qilishingiz kerak. Yuqoridagi sxemaga amal qilib, biror narsani yig'ishdan oldin barcha dvigatellarda servo dvigatel qaysi burchakka o'rnatilishi haqida tushuncha beradi. Bu qismni to'g'rilashga harakat qiling, aks holda siz uni qayta yig'asiz.

Arduino yoki Nodemcu yordamida aniq servo burchagini o'rnatish uchun quyidagi kod shablonidan foydalaning. Internetda bu haqda juda ko'p ma'lumotlar bor, shuning uchun men batafsil to'xtalmayman.

#qo'shing

Servo servo;

int pin =; // arduino -ga servo ma'lumot pin biriktirilgan pin raqamini qo'ying

bo'sh o'rnatish () {

servo.attach (pin);

}

void loop () {

int burchagi =; // o'rnatishingiz kerak bo'lgan burchak

servo.write (burchak);

}

6 -qadam: qo'lni boshqarish moslamasi davri

Qo'l nazorat qilish davri
Qo'l nazorat qilish davri
Qo'l nazorat qilish davri
Qo'l nazorat qilish davri

Qo'lni boshqarish moslamasini o'rnatish juda oddiy. Men uzun yengdan foydalanardim va datchiklarni, Nodemcu va non taxtasini tikuv bilan biriktirdim. Sensorning yo'nalishi yuqoridagi nazoratchi tasviri bilan bir xil yo'nalishda ekanligiga ishonch hosil qiling. Nihoyat, sxemaga rioya qiling va quyidagi kodni yuklab oling.

7 -qadam: Telepresensiya robotining davri

Telepresensiya robotining davri
Telepresensiya robotining davri
Telepresensiya robotining davri
Telepresensiya robotining davri
Telepresensiya robotining davri
Telepresensiya robotining davri

Elektr sxemasini xuddi shu tarzda bajaring. Qisqa tutashuvlarning oldini olish uchun siz foydalanayotgan quvvat manbai pinlarini o'zaro tekshiring. Konvertor chiqish voltajini 7V ga o'rnating, chunki bu barcha servo dvigatellarning o'rtacha kuchlanishi. Siz lehim qila oladigan yagona joy - bu doimiy shahar motorining terminallari, chunki u juda ko'p oqim sarflaydi, shuning uchun biroz qalinroq elektr simlari bilan mahkam bog'lab qo'yish kerak. O'chirish tugagandan so'ng, siz "arm_subscriber.ino" ni Nodemcu -ga yuklaysiz, u qo'l va "base.ino" bilan bog'lanib, Nodemcu bazasiga yuklanadi.

8 -qadam: Mobil ilova

Mobil ilova
Mobil ilova

Bu lokomotivni boshqarish uchun mobil. Joystikni qimirlatganingizda, u joystik doirasidagi X, Y koordinatalarini Pubnubga yuboradi va Nodemcu bazasida oladi. Bu X, Y koordinatasi burchakka aylantiriladi va uning yordamida robot qaysi tomonga ketishini topamiz. Harakat ikki dvigatelni yoqish/o'chirish va yo'nalishni o'zgartirish orqali amalga oshiriladi. Agar "Oldinga" buyrug'i bo'lsa, ikkala dvigatel ham to'liq tezlikda oldinga siljiydi, chapda esa teskari, o'ngda esa oldinga va hokazo.

Yuqoridagi funktsiyani joystik o'rniga tugmalar yordamida bajarish mumkin, lekin men motor tezligini boshqarish uchun joystikni tanlayman. Biroq, yoqish pinim Nodemcu bilan ishlamadi, shuning uchun men bu qismni qoldirdim. Sharh sifatida men base.ino -da tezlikni boshqarish kodini qo'shdim.

Siz.aia manba faylini olishingiz mumkin, uni quyida MIT ilovasi ixtirochisi yordamida tahrirlash mumkin. Siz keyingi bosqichda aytib beradigan ilovada asosiy konfiguratsiyani bajarishingiz kerak bo'ladi.

9 -qadam: Pubnub -da hisob yaratish va kalitlarni olish

Pubnub -da hisob yarating va kalitlarni oling
Pubnub -da hisob yarating va kalitlarni oling

Endi IoT platformasini sozlashning oxirgi bosqichini qilish vaqti keldi. Pubnub eng yaxshisidir, chunki ma'lumotlarni uzatish real vaqtda amalga oshiriladi va uzatish uchun atigi 0,5 soniya vaqt ketadi. Bundan tashqari, siz har oyda 1 million ma'lumot punktini yuborishingiz mumkin, bu mening shaxsiy sevimli platformam.

PubNub -ga o'ting va hisobingizni yarating. Keyin chap menyuda Ilovalar menyusiga o'ting va o'ngdagi "+Yangi dastur yaratish" tugmachasini bosing. Ilovangizni nomlaganingizdan so'ng, siz yuqoridagi nashriyot va obunachining kalitini ko'rasiz. Bu biz qurilmalarni ulash uchun foydalanadigan narsadir.

10 -qadam: Kalitlarni kodga qo'shing va yuklang

Kodga kalitlarni qo'shing va yuklang
Kodga kalitlarni qo'shing va yuklang
Kodga kalitlarni qo'shing va yuklang
Kodga kalitlarni qo'shing va yuklang

Qurilma bir-biri bilan aloqa o'rnatishi uchun bizga 4 ta narsa kerak:- pubkey, subkey, channel & wifi.

pubkey va subkey barcha Nodemcu va mobil ilovalarda bir xil bo'ladi. Bir -biri bilan aloqa qiladigan ikkita qurilma bir xil kanal nomiga ega bo'lishi kerak. Mobil ilova va tayanch aloqa qilayotgani uchun, xuddi shunday kanal nomi xuddi shunday bo'ladi: qo'mondon va robot qo'l. Nihoyat, har bir Nodemcu -ga Wi -Fi ma'lumotlarini qo'yish kerak, shunda u dastlab Wi -Fi -ga ulana oladi. Men kanal nomini qo'shganman, shuning uchun wifi va pub/sub kaliti - bu sizning hisobingizdan qo'shilishi kerak.

Eslatma:- Nodemcu faqat veb-sahifasiz oraliq sifatida kirish mumkin bo'lgan wifi bilan ulanishi mumkin. Hatto mening oxirgi taqdimotim uchun ham, mobil Wi -Fi tarmog'idan foydalanishim kerak edi, chunki universitet Wi -Fi uzilib qoldi.

11 -qadam: Xulosa

Xulosa
Xulosa

Agar siz shu erga etib kelgan bo'lsangiz, AJOYIB! Umid qilamanki, siz ushbu maqoladan qimmatli narsaga ega bo'ldingiz. Ushbu loyihada siz bajarishdan oldin aytmoqchi bo'lgan kichik cheklovlar mavjud. Mana quyida ba'zilari:-

Robotik qo'lning keskin harakati:

Robot qo'lining to'satdan harakati juda ko'p. Buning sababi, sensor ma'lumotining servo harakati sifatida uzatilishi uchun 0,5 soniya kechikish. Men hatto servo dvigatelning 2 tasini shikastladim, shuning uchun qo'lingizni juda tez qimirlatmang. Siz bu muammoni silliq harakatni yaratish uchun dastlabki harakat oralig'ini qo'shish orqali hal qilishingiz mumkin.

Asosiy harakat to'xtamaydi:-

Men robotni mobil ilova orqali bir yo'nalishda harakatlantirsam, barmoqlarimni ko'targanimda ham robot bir xil yo'nalishda harakat qilishni davom ettiradi. Bu zerikarli edi, chunki men har doim harakatni to'xtatish uchun quvvatni o'chirishim kerak edi. Men ilovaga to'xtatish kodini kiritdim, lekin u hali ham ishlamadi. Bu dasturning o'zida muammo bo'lishi mumkin. Ehtimol, siz buni hal qilishga urinib, menga xabar berishingiz mumkin.

Video tasmasi yo'q:-

Robotdan odamga uzatiladigan video tasmasiz, biz hech qachon foydalanuvchidan uzoqda joylashtira olmaymiz. Men buni dastlab qo'shishni xohlardim, lekin ko'proq vaqt va sarmoya kerak bo'ladi, shuning uchun uni qoldirdim.

Siz, bolalar, yuqoridagi muammoni hal qilib, bu loyihani davom ettirishingiz mumkin. Qachon qilasiz, menga xabar bering. Xayr

Boshqa loyihalar uchun portfel veb -saytiga tashrif buyuring

Robototexnika musobaqasi
Robototexnika musobaqasi
Robototexnika musobaqasi
Robototexnika musobaqasi

Robototexnika musobaqasida ikkinchi o'rinni egalladi

Tavsiya: