Satura rādītājs:

Lēta Arduino kaujas robotu vadība: 10 soļi (ar attēliem)
Lēta Arduino kaujas robotu vadība: 10 soļi (ar attēliem)

Video: Lēta Arduino kaujas robotu vadība: 10 soļi (ar attēliem)

Video: Lēta Arduino kaujas robotu vadība: 10 soļi (ar attēliem)
Video: Thorium: An energy solution - THORIUM REMIX 2011 2024, Jūlijs
Anonim
Lēta Arduino kaujas robotu vadība
Lēta Arduino kaujas robotu vadība
Lēta Arduino kaujas robotu vadība
Lēta Arduino kaujas robotu vadība
Lēta Arduino kaujas robotu vadība
Lēta Arduino kaujas robotu vadība

Battlebotu atjaunošanās štatos un Robotu kari Apvienotajā Karalistē atkal uzjundīja manu mīlestību pret kaujas robotiku. Tāpēc es atradu vietējo botu veidotāju grupu un ienirt tieši tajā.

Mēs cīnāmies Apvienotās Karalistes skudru svara skalā (150 gramu svara ierobežojums), un es ātri sapratu tradicionālo veidu, kā izveidot robotu, kas ietver RC pārnesumu: dārgu RC raidītāju, apjomīgu vai dārgu uztvērēju un ESC (elektroniskos ātruma regulatorus), kas ir burvju kastes kas spēj apstrādāt daudz vairāk strāvas, nekā nepieciešams šāda izmēra robotam.

Agrāk izmantojot Arduino, es gribēju izmēģināt lietas citādi un izvirzīt sev mērķi izveidot Arduino sistēmu, kas var saņemt juridisku kaujas signālu un kontrolēt divus piedziņas motorus par aptuveni USD 5 (puse no lētas ESC izmaksām).

Lai palīdzētu sasniegt šo mērķi, es atkārtoti sajaucu šo RC automašīnu, samazinot uztvērēja svaru/izmaksas un ģenerējot 4 PWM signālus, lai palaistu lētu h-tilta mikroshēmu

Šī pamācība koncentrēsies uz Arduino vadības sistēmu, bet es pievienošu papildu informāciju, lai palīdzētu jauniem cilvēkiem izveidot savu pirmo robotu

Atruna:

Pat neliela mēroga kaujas robotu būvēšana/cīņa var būt bīstama, uzņemieties to uz savu risku

1. darbība. Kas jums nepieciešams

Materiāli:

Kontroles sistēmai:

  • 1x Arduino pro mini 5v (USD 1,70)
  • 1x nRF24L01 modulis (1,14 ASV dolāri)
  • 1x 3.3v regulatora modulis (0,32 ASV dolāri)
  • 1x divkāršs h-tilta modulis* (0,90 ASV dolāri)

Pārējiem pamata ķīļbotiem:

  • 2x mikro pārnesumu motori ** (lēta versija, uzticama versija)
  • 1x 2s litija polimēru akumulators
  • 1x līdzsvara lādētājs
  • 1x lipo uzlādes maisiņš
  • 1x slēdzis
  • 1x akumulatora savienotājs
  • dažādi vadi (es izmantoju dažus Arduino džemperu vadus, kas man bija gulējuši)
  • mazas skrūves
  • (pēc izvēles) epoksīda
  • (pēc izvēles) Alumīnijs (no bezalkoholisko dzērienu tvertnes)
  • (pēc izvēles) papildu gaismas diodes

Pamata kontrolierim:

  • 1x Arduino pro mini 5v
  • 1x nRF24L01 modulis
  • 1x 3.3v regulatora modulis
  • 1x Arduino kursorsvira

Rīki:

  • Skrūvgriezis
  • Lodāmurs
  • Knaibles
  • 3D printeris (pēc izvēles, bet tas atvieglo dzīvi)

*skatoties uz h-tilta moduļiem, meklējiet moduli ar visām 4 signāla ieejām blakus, tas vēlāk atvieglos pievienošanu Arduino

** pārbaudiet pēdējo soli, lai iegūtu dažus padomus par motora apgriezienu skaita izvēli

2. darbība: izdrukājiet šasiju

Izdrukājiet šasiju
Izdrukājiet šasiju

Pirms sākat izmantot vadības sistēmu, apskatiet izveidotā robota dizainu. Vienmēr vislabāk ir izstrādāt robotu no ieroča. Iesācējam iesaku sākt ar pamata ķīli, jo tie ir veidoti tā, lai būtu izturīgi un izstumtu pretiniekus no ceļa, kas nozīmē, ka pirmajā cīņā jūs mazāk iznīcināsit, kā arī vieglāk izjust braukšanas sajūtu. nav jāuztraucas par aktīvu ieroci.

Esmu izstrādājis ķīļbotu: "Nedaudz neapstrādāts", kas ir pārbaudīts gan bruņotā, gan neapbruņotā. Tas ir labs pirmais robots, viegli drukājams un to var salikt kopā ar 8 skrūvēm. Pārbaudiet to vietnē Thingiverse, lai atrastu citu labāko dizainu

Ja jums nepieder 3D printeris, izmēģiniet vietējo bibliotēku, hakeru telpu vai veidotāja telpu

Pievienojot papildu bruņas, to ir viegli izdarīt svaigi no printera, noslīpējiet gan ķīli, gan bezalkoholisko dzērienu bundžu ar alumīnija slānis ar smilšpapīru, notīriet visus slīpēšanas putekļus, uzklājiet epoksīdu gan plastmasai, gan alumīnijam, turiet kopā ar skavām vai gumijas lentēm uz 12-24 stundām

Pašlaik man nav publiska riteņu dizaina, jo 3D drukātajos rumbos esmu izmantojis gumijas riepas no izglītojoša robotikas komplekta. Tuvākajās nedēļās es būšu izstrādājis centrmezglu, kura satveršanai tiks izmantoti O-gredzeni. Kad riteņi būs pabeigti, es atjaunināšu šo lapu un Thingiverse lapu

3. darbība: sagatavojiet H tiltu

Sagatavojiet H tiltu
Sagatavojiet H tiltu

Dažādiem h-tilta motoru vadītājiem ir dažādi iestatījumi, bet sākotnējā sarakstā iekļautajam modulim kā izeja ir 2 spaiļu bloki. Šie spaiļu bloki ir smagi un apjomīgi, tāpēc vislabāk tos noņemt.

Vienkāršākais veids, kā to izdarīt, ir vienlaikus sasildīt abus spilventiņus ar lodāmuru un uzmanīgi izgriezt blokus ar knaibles.

Pirms turpināt, izlemiet, vai vēlaties iestatījumos nomainīt motorus. Ja tā, Arduino džemperu kabeļus var pielodēt moduļa izejā, tad pretējo kabeli var pielodēt pie motora, padarot tos pēc vajadzības noņemamus.

4. solis: moduļu savienošana

Moduļu vadu savienošana
Moduļu vadu savienošana
Moduļu vadu savienošana
Moduļu vadu savienošana
Moduļu vadu savienošana
Moduļu vadu savienošana

Moduļu savienošanu var veikt 3 dažādos veidos, tāpēc projektēšanas solis ir kritisks. Ieroču izvēle ietekmēs robota formu un elektroinstalācijas izvēli.

3 izvēles ir:

  1. Vaļīgi vadi (viegls, bet trauslāks) (1. attēls)
  2. Perfboard (smagāks par 1, bet izturīgāks ar lielāku nospiedumu) (2. attēls)
  3. Pielāgota shēmas plates (smagāka par 1, bet izturīga ar nelielu nospiedumu) plāksnes dizains (3. attēls)

neatkarīgi no izdarītās izvēles faktiskie savienojumi ir vienādi.

Divreiz veiciet šādus savienojumus (vienu reizi kontrolierim un vienu reizi uztvērējam)

nRF24L01 (tapas numerācijas 4. attēls **):

  • 1. tapa -> GND
  • 2. tapa -> 3.3V moduļa izejas tapa
  • 3. tapa -> Arduino tapa 9
  • 4. tapa -> Arduino tapa 10
  • 5. tapa -> Arduino tapa 13
  • 6. tapa -> Arduino tapa 11
  • 7. tapa -> Arduino tapa 12

3.3v modulis:

  • Vin pin -> Vcc*
  • Izejas tapa -> 2. tapa nRF (kā iepriekš)
  • GND tapa -> GND

Arduino:

  • Tapas 9-13 -> izveidojiet savienojumu ar nRF, kā norādīts iepriekš
  • Neapstrādāts -> Vcc*
  • GND -> GND

Vienreiz veiciet šādus savienojumus, lai atšķirtu kontrolieri un uztvērēju

Kontrolierim:

Kursorsvira:

  • +5v -> Arduino 5v
  • vrx -> Arduino tapa A2
  • vry -> Arduino tapa A3
  • GND -> GND

Uztvērējam:

h-tilta modulis:

  • Vcc -> Vcc*
  • B -IB -> Arduino tapa 2
  • B -IA -> Arduino tapa 3
  • A -IB -> Arduino tapa 4
  • A -IA -> Arduino tapa 5
  • GND -> GND

To ir visvieglāk izdarīt, nomainot Vcc un GND tapas ar stiepli, pēc tam apgriežot dēli otrādi un lodējot tapas tieši Arduino, tas vienkāršo lodēšanu un rada drošu stiprinājumu motora vadītājam

*lai kaujas robots būtu likumīgs, starp akumulatoru un ķēdi jāpievieno izolācijas punkts (slēdzis vai noņemama saite). Tas nozīmē, ka akumulatora pozitīvais ir jāpievieno slēdzim, pēc tam slēdzis jāpievieno Vcc

** attēls no https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo, kas ir lielisks resurss modulim nRF24L01

5. darbība: kontroliera iestatīšana

Kontroliera iestatīšana
Kontroliera iestatīšana

Kad viss ir savienots, ir pienācis laiks noteiktam kodam.

Sākot ar kontrolieri, ir nepieciešamas dažas potenciometra vērtības, lai nodrošinātu, ka precīzais pieslēgtais kursorsvira darbosies ar raidīšanas kodu.

Ievietojiet kodu "joystickTestVals2". Šo kodu izmanto, lai nolasītu potenciometra vērtības un parādītu tās sērijveidā

Kad kods darbojas un sērijveida logs ir atvērts, skatoties uz "UP" vērtību, nospiediet kursorsviru pilnībā uz priekšu, vērtība "UP", visticamāk, pārlēks starp dažiem lieliem skaitļiem, izvēlieties mazāko no redzamajām vērtībām, atņemiet no tā 10 (tas nodrošinās, ka, nospiežot nūju līdz galam, tiks nodrošināta pilna jauda) un pierakstiet to kā "Up Max", lai kursorsviru varētu atspert atpakaļ centrā. Tagad izvēlieties lielāko redzamo vērtību, pievienojiet tai 20 un pierakstiet to kā "UpRestMax". Atkārtojiet procesu, nospiežot nūju uz leju un apgriežot pievienošanas/atņemšanas ierakstīšanas vērtības kā "UpMin" un "UpRestMin"

Atkārtojiet visu procesu vēlreiz kreisajā un labajā pusē, vispirms spiežot nūju pa labi, ierakstot “SideMax”, pēc tam “SideRestMax”, kad tas atspērās, un spiežot pa kreisi, lai ierakstītu “SideMin” un “SideRestMin”

Šīs vērtības ir ārkārtīgi svarīgas, jo īpaši visas vērtības, kurās ir vārds "Atpūta". šīs vērtības nūjas centrā izveido "mirušo zonu" tā, lai bots nekustētos, kad nūja atrodas centrā, pārliecinieties, ka tad, kad nūja ir centrēta, vērtības ir starp "restMin" un "restMax" abām asīm

6. darbība: kods

Kods
Kods
Kods
Kods

Norādītais kods dara visu pamata ķīļbotam ar struktūru, kas ļauj nosūtīt arī ieroča pwm vērtību.

Nepieciešamās bibliotēkas:

  • nRF24L01 Bibliotēka no šejienes: GitHub
  • Programmatūras PWM no šejienes: Google kods

Iestatiet savu kontrolieri:

atveriet txMix kodu un mainiet nūju robežvērtības uz vērtībām, kuras pierakstījāt pēdējā solī. Tas nodrošinās, ka kods pareizi reaģē uz kursorsviru (1. attēls)

Pielāgot cauruli:

Lai jūsu pasākumā netraucētu nevienam citam, jums būs jāmaina radio caurule. Faktiski tas ir identifikators, un uztvērējs darbosies tikai pēc signāliem no pareizās caurules, tāpēc noteikti nomainiet caurules abos kodos uz vienu un to pašu.

2. attēlā ir iezīmēti caurules sešstūra cipari. Šie ir divi cipari, kas jāmaina, lai pielāgotu cauruli. Mainiet "E1" uz jebkuru citu 2 ciparu heksadecimālu vērtību un pierakstiet to, lai notikumā varētu viegli pārbaudīt pretinieku caurules

Augšupielādēt:

  • txMix ar kontrolieri
  • saņemt uztvērēja modulī

Koda nolaišana:

txMix:

Kods kursorsviru pozīcijā tiek lasīts kā "UP" un "side" vērtība. šīs vērtības tiek ierobežotas, pamatojoties uz sniegto maksimālo vērtību, lai nodrošinātu pilnu jaudu maksimālajā nūjas stāvoklī.

Pēc tam šīs vērtības tiek pārbaudītas, lai pārliecinātos, ka nūja ir izkļuvusi no neitrālās pozīcijas, ja tai nav nosūtītas nulles.

Pēc tam vērtības tiek individuāli sajauktas divos mainīgajos lielumos - viens motora kreisajam ātrumam un otrs labajam motora apgriezienu skaitam. Šajos mainīgajos lielumos tiek izmantota negatīva vērtība, lai norādītu, ka motors brauc atpakaļ, jo tas vienkāršo sajaukšanos.

Kreisās un labās puses ātruma vērtības tiek sadalītas četrās vērtībās pwm, pa vienai katrai: motors pa labi uz priekšu, motors pa kreisi uz priekšu, motors pa labi atpakaļ, motors pa kreisi atpakaļ.

Pēc tam četras pwm vērtības tiek nosūtītas uztvērējam.

saņemt:

Vienkārši saņem signālus no kontroliera, pārbauda, vai signāls nesatur pwm vērtības uz priekšu un atpakaļ vienam motoram un pēc tam piemēro pwm.

Uztvērējs neizdodas arī izslēgt motorus, ja signāls netiek saņemts no kontroliera

7. solis: pieskrūvējiet to visu Togheter

Bolting It All Togheter
Bolting It All Togheter
Bolting It All Togheter
Bolting It All Togheter
Bolting It All Togheter
Bolting It All Togheter

Lodēt savienotājus pie motoriem vai pielodēt motorus tieši pie h tilta. (Es dodu priekšroku savienotājiem, lai varētu vienkārši nomainīt kontaktdakšas, ja esmu nepareizi pievienojis motorus)

Lodējiet pozitīvo vadu no akumulatora savienotāja līdz slēdža vidējai tapai un vienu no slēdža ārējām tapām pie pievienoto moduļu Vcc.

Lodējiet negatīvo vadu no akumulatora savienotāja līdz pievienoto moduļu GND.

(Pēc izvēles) pievienojiet papildu gaismas diodes starp Vcc un GND. Visiem kaujas robotiem nepieciešama gaisma, kas ir ieslēgta, kamēr sistēmai ir jauda, atkarībā no komponentiem šai sistēmai ir gaismas diodes uz Arduino, 3.3v moduļa un h-tilta, ja vien vismaz viens no tiem ir redzams no ārpuses bot šis noteikums ir izpildīts. Lai pārliecinātos, ka šis noteikums ir izpildīts, un lai pielāgotu izskatu, var izmantot papildu gaismas diodes

Nedaudz neapstrādātu ir vienkārši pieskrūvēt, vispirms pieskrūvējiet motora stiprinājumus, pievienojiet elektroniku, pēc tam pieskrūvējiet vāku vietā, neliels velcro stiprinājums palīdzēs turēt slēdzi pie vāka

Kontrolieris ir jūsu dizains un drukāšana. Pārbaudei es izmantoju pievienoto kontrolieri, kas ir pārveidots no Džeimsa Brutona BB8 V3 kontroliera

8. solis: vārds par robotu apkarošanas noteikumiem

Vārds par robotu apkarošanas noteikumiem
Vārds par robotu apkarošanas noteikumiem

Dažādas valstis, valstis un grupas vada robotu kaujas pasākumus ar atšķirīgiem noteikumiem.

Es esmu izveidojis šo sistēmu un uzrakstījis šo tekstu, lai tas būtu pēc iespējas vispārīgāks, vienlaikus ievērojot galvenos noteikumus, kas attiecas uz RC sistēmām (jo īpaši sistēmai jābūt 2,4 GHz digitālai un ar akumulatora izolācijas punktu). Lai palaistu šo sistēmu un / vai izveidotu savu pirmo robotu, vislabāk ir sazināties ar vietējo grupu un iegūt viņu noteikumu kopiju.

Vietējās grupas vadītie noteikumi ir absolūti, neņemiet manu vārdu šajā pamācībā pār jūsu grupas noteikumiem.

Tā kā šī Arduino sistēma sabiedrībai ir jauna, jums, visticamāk, tiks lūgts to pārbaudīt pirms tās izmantošanas pasākumā. Esmu atkārtoti pārbaudījis šo sistēmu pret standarta RC aprīkojumu un pret sevi bez jebkādiem traucējumiem, tāpēc tai vajadzētu izturēt jebkuru pārbaudi, tomēr jūsu vietējā pasākuma organizatoriem ir pēdējais vārds, respektējiet savu lēmumu. Ja viņi noraida tā izmantošanu, jautājiet, vai ir kāds aizdevuma robots, ar kuru varat cīnīties, vai lūdziet paskaidrojumu, kāpēc tas tika noraidīts, un mēģiniet novērst problēmu nākamajam notikumam

9. darbība. Papildu informācija par motoriem

Papildu informācija par motoriem
Papildu informācija par motoriem

Mikro pārnesumu motoriem, kas tiek izmantoti skudru klasē, ir liels ātrumu diapazons, un tie ir marķēti, izmantojot apgriezienus minūtē vai pārnesumu attiecību. Zemāk ir aptuvens reklāmguvums.

Lielākā daļa robotu izmanto motorus starp 75: 1 un 30: 1 (ar dažiem izņēmumiem, izmantojot 10: 1). Botiem ar lieliem griešanās ieročiem var būt noderīgi lēnāki 75: 1 motori, jo lēnāks ātrums ļauj vairāk kontrolēt. Veiklie ķīļi, pacēlāji un pleznas vislabāk ir 30: 1 prasmīga autovadītāja rokās. Iesaku 50: 1 motorus ķīlī pirmajās cīņās, lai tikai pierastu pie sistēmas un braukšanas

  • 12V 2000 apgr./min (vai 6V 1000 apgr./min) -> 30: 1
  • 6V 300 apgr./min -> 50: 1

10. darbība. Atjauninājumi un uzlabojumi

Ir pagājuši pāris gadi, kopš es ievietoju šo "ible", un es esmu daudz uzzinājis par šo sistēmu, tāpēc ir pienācis laiks tos atjaunināt šeit. Vissvarīgākais ir komponentu izvēle, sākotnējās sastāvdaļas strādāja salīdzinoši labi, bet dažreiz tās neizdodas cīņas laikā. 2 lielie likumpārkāpēji ir H-Bridge un nrf24l01 modulis, jo es izvēlējos absolūti lētākās daļas, kuras es varētu atrast. Tos var labot ar:

  • 0,5A H tilta modernizācija par 1,5A H tiltu, piemēram, šis: 1,5A H tilts
  • Moduļa nrf24l01 jaunināšana uz pilnībā SMD dizainu: atveriet viedo NRF24l01

Līdz ar jauno komponentu jauninājumiem esmu izstrādājis dažas jaunas PCB, kas palīdz kompaktēt RX un pievienot papildu funkcijas TX

Man arī gaidāmas dažas koda izmaiņas, tāpēc sekojiet tām

Ieteicams: