Sadržaj:

Jeftina Arduino borbena kontrola robota: 10 koraka (sa slikama)
Jeftina Arduino borbena kontrola robota: 10 koraka (sa slikama)

Video: Jeftina Arduino borbena kontrola robota: 10 koraka (sa slikama)

Video: Jeftina Arduino borbena kontrola robota: 10 koraka (sa slikama)
Video: Настройка 3D-принтера с помощью MKS sGen L v1.0 Часть 3 2024, Novembar
Anonim
Jeftina Arduino borbena kontrola robota
Jeftina Arduino borbena kontrola robota
Jeftina Arduino borbena kontrola robota
Jeftina Arduino borbena kontrola robota
Jeftina Arduino borbena kontrola robota
Jeftina Arduino borbena kontrola robota

Ponovno pojavljivanje Battlebota u Sjedinjenim Državama i Robot Wars u Velikoj Britaniji ponovo je izazvalo moju ljubav prema borbenoj robotici. Tako sam našao lokalnu grupu graditelja botova i zaronio.

Borimo se na skali težine mrava u Velikoj Britaniji (ograničenje težine 150 grama) i brzo sam shvatio tradicionalni način izgradnje bota koji uključuje RC opremu: skup RC predajnik, glomazan ili skup prijemnik i ESC -ove (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 nešto drugačije i postavio sam si cilj Arduino sistema koji može primiti borbeni pravni signal i kontrolirati dva pogonska motora za oko 5 USD (pola cijene jeftinog ESC -a)

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

Ovo uputstvo će se fokusirati na Arduino kontrolni sistem, ali ću dodati dodatne informacije kako bih pomogao novim ljudima da izgrade svog prvog bota

Odricanje odgovornosti:

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

Korak 1: Šta vam treba

Materijali:

Za sistem upravljanja:

  • 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 h-bridge modul* (0,90 USD)

Za ostatak osnovnog klinastog bota:

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

Za osnovni kontroler:

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

Alati:

  • Šrafciger
  • Lemilica
  • Kliješta
  • 3D štampač (opcionalno, 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: Odštampajte šasiju

Odštampajte šasiju
Odštampajte šasiju

Prije nego počnete s upravljačkim sistemom, 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 guraju protivnike s puta, što znači da je manja vjerovatnoća da ćete biti uništeni u prvoj borbi, a i lakše ćete osjetiti vožnju 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. Provjerite na Thingiverseu za drugačiji vrhunski dizajn

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

Dodavanje dodatnog oklopa lako je izvesti sa štampača, izbrusiti klin i limenku bezalkoholnih pića aluminijumom brusnim papirom, očistiti svu brusnu prašinu, nanijeti epoksid i na plastiku i na aluminij, držati zajedno sa stezaljkama ili gumicama tokom 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 narednim sedmicama dizajnirat ću čvorište koje će koristiti O-prstene za hvatanje. Kad točkovi 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četnoj listi 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 da to učinite je da zagrijete oba jastučića istovremeno lemilicom i pažljivo istisnete blokove kliještima

Prije nego što nastavite, odlučite želite li moći zamijeniti motore u postavkama. Ako je tako, Arduino kratkospojnički kabeli mogu se zalemiti u izlaz modula, tada se suprotni kabel može zalemiti na motor, čineći ih uklonjivim 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žen dizajn prilagođene ploče (teže od 1, ali robusne s malim prostorom) (slika 3)

bez obzira na odabrani izbor, stvarne veze su iste.

Učinite sljedeće veze dva puta (jednom za kontroler i jednom za prijemnik)

nRF24L01 (slika numeracije pinova 4 **):

  • Pin 1 -> GND
  • Pin 2 -> izlaz 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:

  • Igle 9-13 -> spojite na nRF kao što je gore navedeno
  • Sirovi -> Vcc*
  • GND -> GND

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

Za kontroler:

Joystick:

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

Za prijemnik:

h-bridge modul:

  • 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 zamijeniti iglice za Vcc i GND žicom, zatim okrenuti ploču naopako i lemiti igle 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 strujnog kruga. To znači da pozitivni dio baterije mora biti spojen na prekidač, a zatim prekidač spojen na Vcc

** slika sa https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo što je odličan resurs za modul nRF24L01

Korak 5: Postavljanje kontrolera

Podešavanje kontrolera
Podešavanje kontrolera

Kad se sve poveže, vrijeme je za neki kod.

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

Učitajte kod "joystickTestVals2". Ovaj kôd se koristi za očitavanje 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" će vjerojatno skočiti između nekoliko velikih brojeva, odaberite najmanju od vrijednosti koje vidite, oduzmite 10 (ovo će osigurati da će guranje 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 što ćete pritisnuti štapić prema dolje i obrnuti zbrajanje/oduzimanje bilježeći vrijednosti kao "UpMin" i "UpRestMin"

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

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

Korak 6: Kodirajte

Kod
Kod
Kod
Kod

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

Potrebne biblioteke:

  • nRF24L01 Biblioteka 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. Ovo će osigurati da kôd pravilno reagira na vašu joystick (slika 1)

Prilagodite cijev:

Kako biste bili sigurni da ne ometate 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 da biste prilagodili cijev. Promijenite "E1" u bilo koju drugu dvocifrenu heksadecimalnu vrijednost i zapišite je kako biste je lako provjerili u odnosu na protivničke cijevi na događaju

Otpremi:

  • txMix na kontroleru
  • prijem na prijemnički modul

Poništi kod:

txMix:

Kôd se u položaju džojstika čita kao "UP" vrijednost i "side" vrijednost. ove se vrijednosti ograničavaju na osnovu maksimalne vrijednosti koja je osigurana kako bi se osiguralo da će se puna snaga dati 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 zatim 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 lijeve i desne brzine se zatim razdvajaju u četiri vrijednosti pwm, po jednu za svaku: motor desno naprijed, motor lijevo naprijed, motor desno unatrag, motor lijevo unatrag.

Četiri pwm vrijednosti se zatim šalju prijemniku.

primiti:

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

Prijemnik takođe otvara sefove za isključivanje motora kada se signal ne primi 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 direktno na h-most. (Više volim konektore kako bih mogao jednostavno promijeniti utikače ako sam motor nepravilno spojio)

Lemite pozitivni provodnik iz konektora za bateriju na srednji pin prekidača i jedan od spoljnih pinova na prekidaču na Vcc priključenih modula.

Lemite negativni provodnik iz konektora baterije na GND priključenih modula.

(Opcionalno) dodajte dodatne LED diode između Vcc i GND. Svi borbeni roboti zahtijevaju svjetlo koje je uključeno dok sistem ima napajanje, ovisno o komponentama koje ovaj sistem ima LED diode na Arduinu, modulu od 3.3 V 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 prilagođavanje izgleda

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

Kontroler je vaš za dizajniranje i štampanje. Za testiranje sam koristio priloženi kontroler koji je izmijenjen iz BB8 V3 kontrolera 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 grupe vode borbene događaje robota s različitim pravilima.

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

Pravila koja vaša lokalna grupa vodi su apsolutna, ne vjerujte mi na riječ u ovoj uputi o pravilima vaše grupe.

Kako je ovaj Arduino sistem nov u zajednici, najvjerojatnije će se od vas tražiti da ga testirate prije upotrebe na događaju. Nekoliko puta sam testirao ovaj sistem 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 upotrebu, pitajte postoji li kreditni 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 konverzija.

Većina robota koristi motore između 75: 1 i 30: 1 (uz neke izuzetke koristeći 10: 1). Botovi s velikim rotirajućim oružjem mogu imati koristi od sporijih motora 75: 1 jer manja brzina omogućava veću kontrolu. Spretni klinovi, dizači i peraje najbolji su u omjeru 30: 1 u rukama iskusnog vozača. Preporučujem 50: 1 motore u klin za prvih nekoliko borbi samo da se naviknete na sistem 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 sistemu pa je vrijeme da ih ovdje ažuriram. Najvažniji je izbor komponenti, originalne komponente su radile relativno dobro, ali ponekad bi zakazale tokom 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 nrf24l01 modula na potpuno SMD dizajn: Otvorite pametni NRF24l01

Uz nadogradnje novih komponenti, dizajnirao sam neke nove PCB -e koji pomažu kompaktiranju RX -a i dodavanju više funkcija TX -u

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

Preporučuje se: