Sadržaj:

Jeftino upravljanje borbenim robotom Arduino: 10 koraka (sa slikama)
Jeftino upravljanje borbenim robotom Arduino: 10 koraka (sa slikama)

Video: Jeftino upravljanje borbenim robotom Arduino: 10 koraka (sa slikama)

Video: Jeftino upravljanje borbenim robotom Arduino: 10 koraka (sa slikama)
Video: Использование кнопки скорости шагового двигателя 28BYJ-48 с 8 проектами: Ultimate Video Tutorial, урок 107 2024, Prosinac
Anonim
Jeftina kontrola borbenih robota Arduino
Jeftina kontrola borbenih robota Arduino
Jeftina kontrola borbenih robota Arduino
Jeftina kontrola borbenih robota Arduino
Jeftina Arduino kontrola borbenih robota
Jeftina Arduino kontrola borbenih robota

Ponovni oživljavanje Battlebota u Sjedinjenim Državama i Robot Wars u Velikoj Britaniji ponovno je izazvalo moju ljubav prema borbenoj robotici. Tako sam našao lokalnu skupinu graditelja botova i zaronio.

Borimo se na britanskoj ljestvici težine mrava (ograničenje težine 150 grama) i brzo sam shvatio tradicionalni način izgradnje bota s RC opremom: skup RC odašiljač, glomazan ili skup prijemnik i ESC (elektronički regulatori brzine) koji su čarobne kutije koji može podnijeti mnogo više struje nego što je potrebno za robota ove veličine.

Koristeći Arduino u prošlosti, htio sam pokušati učiniti drugačije i postavio sam si cilj Arduino sustava koji može primiti borbeni pravni signal i kontrolirati dva pogonska motora za oko 5 USD (pola cijene jeftinog ESC -a)

Kako bih pomogao u postizanju ovog cilja, izmijenio sam ovaj RC automobil prema uputama, smanjivši težinu/cijenu prijamnika i generirajući 4 PWM signala za pokretanje jeftinog h-bridge čipa

Ova instrukcija će se usredotočiti na Arduino kontrolni sustav, ali dodat ću dodatne informacije kako bi pomogao novim ljudima da izgrade svog prvog bota

Odricanje:

Čak i u manjim borbama izgradnja/borba može biti opasna, poduzmite se na vlastitu odgovornost

Korak 1: Što vam treba

Materijali:

Za upravljački sustav:

  • 1x Arduino pro mini 5v (1,70 USD)
  • 1x modul nRF24L01 (1,14 USD)
  • 1x regulator od 3,3 V (0,32 USD)
  • 1x dvostruki modul h-mosta* (0,90 USD)

Za ostatak osnovnog klinastog bota:

  • 2x mikro zupčasti motori ** (jeftina verzija, pouzdana verzija)
  • 1x 2s litij -polimerna baterija
  • 1x punjač za ravnotežu
  • 1x vrećica za lipo punjenje
  • 1x prekidač
  • 1x konektor za bateriju
  • razna žica (koristio sam neke Arduino kratkospojnike koje sam ležao)
  • mali vijci
  • (po izboru) epoksid
  • (po izboru) Aluminij (iz limenke bezalkoholnih pića)
  • (izborno) dodatne LED diode

Za osnovni regulator:

  • 1x Arduino pro mini 5v
  • 1x modul nRF24L01
  • 1x regulator snage 3.3v
  • 1x Arduino-joystick

Alati:

  • Odvijač
  • Lemilica
  • Kliješta
  • 3D pisač (izborno, ali olakšava život)

*kada gledate module h-bridge, potražite modul sa sva 4 ulaza za signal jedan do drugog, to će vam kasnije olakšati priključivanje na Arduino

** pogledajte posljednji korak za nekoliko savjeta o odabiru brzina motora

Korak 2: Ispišite kućište

Ispišite šasiju
Ispišite šasiju

Prije nego počnete s upravljačkim sustavom, pogledajte dizajn bota koji će se izgraditi. Uvijek je najbolje dizajnirati robota iz oružja. Za početnike, predlažem da počnu s osnovnim klinom, oni su dizajnirani da budu robusni i odgurnu protivnike s puta što znači da je manja vjerojatnost da ćete biti uništeni u prvoj borbi, a i lakše ćete osjetiti vožnju dok ne radite ne morate brinuti o aktivnom oružju.

Dizajnirao sam klinasti bot: "Slightly Crude" koji je borbeno testiran i oklopljen i nenaoružan. To je dobar prvi bot, jednostavan za ispis i može se spojiti s 8 vijaka. Za drugačiji vrhunski dizajn provjerite na Thingiverseu

Ako ne posjedujete 3D pisač, isprobajte lokalnu biblioteku, prostor za hakere ili prostor za izradu

Dodavanje dodatnog oklopa jednostavno je izvesti s pisača, izbrusiti klin i limenku bezalkoholnog pića brusnim papirom, očistiti svu brusnu prašinu, nanijeti epoksid i na plastiku i na aluminij, držati zajedno sa stezaljkama ili gumicama za 12-24 sata

Trenutno nemam javni dizajn kotača jer sam koristio gumene gume iz obrazovnog kompleta za robotiku preko 3d ispisanih glavčina. U idućim tjednima dizajnirat ću čvorište koje će koristiti O-prstene za hvatanje. Kad kotači budu gotovi, ažurirat ću ovu stranicu i stranicu Thingiverse

Korak 3: Pripremite H-most

Pripremite H-most
Pripremite H-most

Različiti upravljački programi motora s H-mostom dolaze u različitim postavkama, ali modul povezan na početnom popisu dolazi s 2 priključna bloka kao izlazom. Ovi priključni blokovi su teški i glomazni pa ih je najbolje ukloniti.

Najlakši način za to je zagrijati oba jastučića istovremeno lemilicom i pažljivo iskliznuti blokove kliještima

Prije nego što nastavite, odlučite želite li moći zamijeniti motore u svom postavu. Ako je tako, Arduino kratkospojnički kabeli mogu se zalemiti u izlaz modula, a zatim se suprotni kabel može zalemiti na motor, pa ih je moguće ukloniti po potrebi.

Korak 4: Ožičenje modula

Ožičenje modula
Ožičenje modula
Ožičenje modula
Ožičenje modula
Ožičenje modula
Ožičenje modula

Ožičenje modula može se izvesti na 3 različita načina, zbog čega je korak projektiranja kritičan. Izbor oružja utjecat će na oblik robota i izbor ožičenja.

tri su izbora:

  1. Labave žice (male težine, ali lomljivije) (slika 1)
  2. Perfboard (teži od 1, ali robusniji s većim otiskom) (slika 2)
  3. Priložena prilagođena ploča (teža 3 od 1, ali robusna s malim prostorom) (slika 3)

bez obzira na odabrani izbor, stvarne veze su iste.

Dvaput izvršite sljedeće veze (jednom za kontroler i jednom za prijemnik)

nRF24L01 (slika numeriranja pinova 4 **):

  • Pin 1 -> GND
  • Pin 2 -> vanjski pin 3.3V modula
  • Pin 3 -> Arduino pin 9
  • Pin 4 -> Arduino pin 10
  • Pin 5 -> Arduino pin 13
  • Pin 6 -> Arduino pin 11
  • Pin 7 -> Arduino pin 12

3.3V modul:

  • Vin pin -> Vcc*
  • Izlazni pin -> pin 2 nRF (kao gore)
  • GND pin -> GND

Arduino:

  • Pinovi 9-13 -> spojite na nRF kao gore
  • Sirovi -> Vcc*
  • GND -> GND

Učinite jednom sljedeće spajanje kako biste razlikovali kontroler i prijemnik

Za kontroler:

Joystick:

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

Za prijemnik:

modul h-most:

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

To je najjednostavnije učiniti zamjenom pinova za Vcc i GND žicom, zatim okretanjem ploče naopako i lemljenjem pinova izravno u Arduino, to pojednostavljuje lemljenje i stvara siguran nosač za vozača motora

*da bi borbeni robot bio legalan, potrebno je dodati izolacijsku točku (prekidač ili uklonjivu vezu) između baterije i kruga. To znači da pozitivni dio baterije mora biti spojen na prekidač, a zatim prekidač spojen na Vcc

** slika s https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo što je sjajan resurs za modul nRF24L01

Korak 5: Postavljanje kontrolera

Postavljanje kontrolera
Postavljanje kontrolera

Kad se sve spoji, vrijeme je za neki kod.

Počevši od regulatora, potrebne su neke vrijednosti potenciometra kako bi se osiguralo da će točno povezani joystick raditi s odašiljačkim kodom.

Učitajte kôd "joystickTestVals2". Ovaj kôd se koristi za čitanje vrijednosti potenciometra i njihovo serijsko prikazivanje

Dok je kôd pokrenut i otvoren je serijski prozor, počnite gledajući vrijednost "UP", gurnite joystick u položaj za potpuno naprijed, vrijednost "UP" vjerojatno će skočiti između nekoliko velikih brojeva, odaberite najmanju od vrijednosti koje vidite, oduzmite 10 (to će osigurati da će potiskivanje štapa do kraja dati punu snagu) i zapisati ga kao "Up Max" dopustiti da se joystick vrati u središte. Sada odaberite najveću vrijednost koju vidite, dodajte joj 20 i zapišite je kao "UpRestMax". Ponovite postupak tako da pritisnete štapić prema dolje i obrnete zbrajanje/oduzimanje bilježeći vrijednosti kao "UpMin" i "UpRestMin"

Ponovite cijeli postupak za lijevo i desno, počevši tako što ćete palicu gurnuti udesno, snimiti "SideMax", a zatim "SideRestMax" dok se vraća i pritisnuti lijevo za snimanje "SideMin" i "SideRestMin"

Ove su vrijednosti iznimno važne, posebno sve vrijednosti koje sadrže riječ "Odmor". ove vrijednosti stvaraju "mrtvu zonu" u središtu štapa tako da se bot neće micati dok štap leži u sredini, pazite da kad je štap centriran vrijednosti padaju između "restMin" i "restMax" za obje osi

Korak 6: Kodiranje

Kodirati
Kodirati
Kodirati
Kodirati

Navedeni kôd čini sve za osnovni klin-bot s strukturom na mjestu da omogući i slanje pwm vrijednosti oružja.

Potrebne knjižnice:

  • Knjižnica nRF24L01 odavde: GitHub
  • Softverski PWM odavde: Google Code

Postavite kontroler:

otvorite kôd txMix i promijenite granične vrijednosti štapa na vrijednosti koje ste zapisali u posljednjem koraku. To će osigurati da kôd ispravno reagira na vašu joystick (slika 1)

Prilagodite cijev:

Kako ne biste ometali nikoga u svom događaju, morat ćete promijeniti radijsku cijev. Ovo je u stvari identifikator, a prijemnik će djelovati samo na signale iz ispravne cijevi, stoga svakako promijenite cijev u oba koda na istu stvar.

Na slici 2 su označene šesterokutne znamenke cijevi. Ovo su dvije znamenke koje je potrebno promijeniti kako bi se cijev prilagodila. Promijenite "E1" u bilo koju drugu dvocifrenu heksadecimalnu vrijednost i zapišite je kako biste je lako provjerili na protivničkim cijevima na događaju

Učitaj:

  • txMix na kontroleru
  • primati u prijemnički modul

Poništi kod:

txMix:

Kôd se u položaju upravljačke palice čita kao "UP" vrijednost i "side" vrijednost. ove se vrijednosti ograničavaju na temelju maksimalne vrijednosti kako bi se osiguralo da se puna snaga daje na maksimalnom položaju štapa.

Ove se vrijednosti zatim provjeravaju kako bi se osiguralo da se štap pomaknuo iz neutralnog položaja, ako nema poslanih nula.

Vrijednosti se tada pojedinačno miješaju u dvije varijable, jednu za brzinu lijevog motora i jednu za desnu brzinu motora. U ovim se varijablama negativna vrijednost koristi za označavanje da se motor kreće unatrag jer pojednostavljuje miješanje.

Vrijednosti lijevog i desnog broja okretaja zatim su podijeljene u četiri vrijednosti pwm, po jednu za svaku: motor desno naprijed, motor lijevo naprijed, motor desno natrag, motor lijevo unatrag.

Četiri pwm vrijednosti se zatim šalju prijemniku.

primiti:

Jednostavno prima signale od regulatora, provjerava da signal ne sadrži pwm vrijednosti za naprijed i natrag na jednom motoru, a zatim primjenjuje pwm.

Prijemnik također isključuje sefove za isključivanje motora kada se ne primi signal iz kontrolera

Korak 7: Spojite sve zajedno

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

Lemiti konektore na motore ili lemiti motore izravno na h-most. (Više volim konektore tako da jednostavno mogu promijeniti utikače ako sam motor nepravilno spojio)

Lemiti pozitivni vod iz konektora baterije na srednji pin prekidača i jedan od vanjskih pinova na prekidaču na Vcc spojenih modula.

Lemiti negativni vod iz konektora baterije na GND priključenih modula.

(Izborno) dodajte dodatne LED diode između Vcc i GND. Svi borbeni roboti zahtijevaju svjetlo koje je uključeno dok sustav ima napajanje, ovisno o komponentama koje ovaj sustav ima LED diode na Arduinu, modulu 3.3v i h-mostu, sve dok je barem jedan od njih vidljiv izvan bot ovo pravilo je ispunjeno. Dodatne LED diode mogu se koristiti za provjeru ispunjenosti ovog pravila i za prilagodbu izgleda

Blago sirovo jednostavno je spojiti, prvo pričvrstite nosače motora na mjesto, dodajte elektroniku, a zatim pričvrstite poklopac, mala količina čička pomoći će da prekidač držite na poklopcu

Kontroler je na vama za projektiranje i ispis. Za testiranje sam koristio priloženi kontroler koji je izmijenjen iz regulatora BB8 V3 Jamesa Brutona

Korak 8: Riječ o borbenim pravilima robota

Riječ o borbenim pravilima robota
Riječ o borbenim pravilima robota

Različite zemlje, države i skupine vode borbene događaje robota s različitim pravilima.

Ja sam stvorio ovaj sustav i napisao da ovo može biti što općenitije poštujući glavna pravila koja se odnose na RC sustave (prije svega sustav bi trebao biti 2,4 GHz digitalni i imati izolacijsku točku baterije). Za pokretanje ovog sustava i / ili dizajniranje vlastitog prvog bota najbolje je stupiti u kontakt sa svojom lokalnom grupom i nabaviti kopiju njihovih pravila.

Pravila koje vaša lokalna grupa vodi su apsolutna, nemojte mi vjerovati na riječ u ovoj uputi o pravilima vaše grupe.

Budući da je ovaj Arduino sustav nov u zajednici, najvjerojatnije će se od vas tražiti da ga testirate prije upotrebe na događaju. Više puta sam testirao ovaj sustav protiv standardne RC opreme i protiv njega samog bez ikakvih smetnji pa bi trebao proći bilo koji test, međutim, organizatori na vašem lokalnom događaju imaju zadnju riječ, poštujte njihovu odluku. Ako odbiju njegovu uporabu, pitajte postoji li zajmovski bot s kojim se možete boriti ili zatražite pojašnjenje zašto je odbijen i pokušajte riješiti problem za sljedeći događaj

Korak 9: Dodatne informacije o motorima

Dodatne informacije o motorima
Dodatne informacije o motorima

Motori s mikrozupčanikom koji se koriste u klasi mrava dolaze u velikom broju brzina i označeni su omjerom okretaja ili omjerom prijenosa. Ispod je gruba pretvorba.

Većina robota koristi motore između 75: 1 i 30: 1 (uz neke iznimke koristeći 10: 1). Botovi s velikim rotirajućim oružjem mogu imati koristi od sporijih motora 75: 1 jer manja brzina omogućuje veću kontrolu. Spretni klinovi, dizači i peraje najbolji su na 30: 1 u rukama iskusnog vozača. Preporučujem 50: 1 motore u klin za prvih nekoliko borbi samo da se naviknete na sustav i vožnju

  • 12V 2000 RPM (ili 6V 1000RPM) -> 30: 1
  • 6V 300 o / min -> 50: 1

Korak 10: Ažuriranja i poboljšanja

Prošlo je nekoliko godina otkako sam objavio ovu tablicu i naučio sam mnogo o ovom sustavu pa je vrijeme da ih ovdje ažuriram. Najvažniji je izbor komponenti, izvorne komponente radile su relativno dobro, ali ponekad bi zakazale tijekom borbe. Dva velika počinitelja su H-Bridge i modul nrf24l01, jer sam odabrao apsolutno najjeftinije dijelove koje sam mogao pronaći. To se može popraviti:

  • Nadogradnja 0.5A H-mosta na 1.5A H-most, poput ovog: 1.5A H-most
  • Nadogradnja modula nrf24l01 na potpuno SMD dizajn: Otvorite pametni NRF24l01

Uz nadogradnje novih komponenti, dizajnirao sam neke nove PCB -e koji pomažu kompaktirati RX i dodati više značajki TX -u

Predviđaju mi se i neke izmjene koda, pa budite uz njih

Preporučeni: