Innholdsfortegnelse:
- Trinn 1: Det du trenger
- Trinn 2: Skriv ut et chassis
- Trinn 3: Forbered H-broen
- Trinn 4: Koble til modulene
- Trinn 5: Sette opp kontrolleren
- Trinn 6: Kode
- Trinn 7: Bolting It All Togheter
- Trinn 8: Et ord om robotbekjempelsesregler
- Trinn 9: Tilleggsinformasjon om motorer
- Trinn 10: Oppdateringer og forbedringer
Video: Billig Arduino Combat Robot Control: 10 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Oppblomstring av Battlebots i USA og Robot Wars i Storbritannia gjorde at jeg elsket kamproboter igjen. Så jeg fant en lokal gruppe botbyggere og dykket rett inn.
Vi kjemper i den britiske maurvekten (150 gram vektgrense), og jeg skjønte raskt den tradisjonelle måten å bygge et bot involvert RC -utstyr på: en dyr RC -sender, en omfangsrik eller dyr mottaker og ESC (elektroniske hastighetskontrollere) som er magiske bokser som kan håndtere mye mer strøm enn det som er nødvendig for en bot av denne størrelsen.
Etter å ha brukt Arduino tidligere, ønsket jeg å prøve å gjøre ting annerledes og sette meg et mål om et Arduino -system som kan motta et lovlig kampsignal og kontrollere to drivmotorer for rundt USD $ 5 (halvparten av prisen på en billig ESC)
For å hjelpe til med å nå dette målet, remikset jeg denne RC-bilen, og reduserte vekten/kostnaden til mottakeren og genererte 4 PWM-signaler for å kjøre en billig h-bridge-chip
Denne instruksen vil fokusere på Arduino -kontrollsystemet, men jeg legger til tilleggsinformasjon for å hjelpe nye mennesker med å bygge sin første bot
Ansvarsfraskrivelse:
Selv i liten skala kan kampbygging/kamp være farlig, på egen risiko
Trinn 1: Det du trenger
Materialer:
For kontrollsystemet:
- 1x Arduino pro mini 5v (USD 1,70)
- 1x nRF24L01 -modul ($ 1,14)
- 1x 3.3v regulatormodul ($ 0.32)
- 1x dobbel h-bromodul* ($ 0,90)
For resten av en grunnleggende kilebot:
- 2x mikrogirmotorer ** (billig versjon, pålitelig versjon)
- 1x 2s litiumpolymerbatteri
- 1x balanselader
- 1x lipo ladesekk
- 1x bryter
- 1x batterikontakt
- diverse ledninger (jeg brukte noen Arduino -jumperledninger jeg hadde liggende)
- små skruer
- (valgfritt) epoksy
- (valgfritt) Aluminium (fra en brusboks)
- (valgfritt) ekstra lysdioder
For en grunnleggende kontroller:
- 1x Arduino pro mini 5v
- 1x nRF24L01 -modul
- 1x 3.3v regulatormodul
- 1x Arduino-joystick
Verktøy:
- Skrutrekker
- Loddejern
- Tang
- 3D -skriver (valgfritt, men det gjør livet lettere)
*Når du ser på h-bridge-moduler, se etter en modul med alle 4 signalinngangene ved siden av hverandre, dette vil gjøre det lettere å koble til Arduino senere
** sjekk det siste trinnet for noen tips om å velge motorhastigheter
Trinn 2: Skriv ut et chassis
Se på utformingen av boten som skal bygges før du begynner på kontrollsystemet. Det er alltid best å designe en bot fra våpenet ut. For en nybegynner foreslår jeg at du starter med en enkel kile, de er designet for å være robuste og skyve motstanderne ut av veien, noe som betyr at du er mindre sannsynlig å bli ødelagt i din første kamp, pluss at det er lettere å få en følelse av å kjøre bil når du don du trenger ikke bekymre deg for et aktivt våpen.
Jeg har designet en kilebot: "Litt rå" som har blitt testet både pansret og ubevæpnet. Det er en god første bot, lett å skrive ut og kan settes sammen med 8 skruer. Sjekk den ut på Thingiverse for en annen toppdesign
Hvis du ikke eier en 3d -skriver, kan du prøve et lokalt bibliotek, hackerspace eller makerplass
Å legge til ekstra rustning er enkelt å gjøre frisk av skriveren, sand både kilen og brusdunken aluminium med et sandpapir, børst av eventuelt slipestøv, påfør epoxy på både plast og aluminium, hold sammen med klemmer eller gummibånd i 12-24 timer
Jeg har for øyeblikket ikke en offentlig hjuldesign, ettersom jeg har brukt gummidekk fra et pedagogisk robotsett over 3D -trykte nav. I de kommende ukene skal jeg designe et nav som vil bruke O-ringer for grep. Når hjulene er ferdige, oppdaterer jeg denne siden og Thingiverse -siden
Trinn 3: Forbered H-broen
Ulike h-bridge motordrivere kommer i forskjellige oppsett, men modulen som er koblet til den første listen kommer med 2 rekkeklemmer som utgang. Disse rekkeklemmer er tunge og klumpete, så det er best å fjerne dem.
Den enkleste måten å gjøre dette på er å varme opp begge putene samtidig med et loddejern og vri blokkene forsiktig ut med en tang
Før du går videre, bestem deg for om du vil bytte ut motorene i oppsettet ditt. I så fall kan Arduino -jumperkabler loddes inn i modulens utgang, så kan den motsatte kabelen loddes til motoren, slik at de kan fjernes etter behov.
Trinn 4: Koble til modulene
Kabling av modulene kan gjøres på 3 forskjellige måter, og derfor er designtrinnet kritisk. Våpenvalg vil påvirke botens form og valg av ledninger.
de 3 valgene er:
- Løse ledninger (lett, men mer skjøre) (bilde 1)
- Perfboard (tyngre enn 1, men mer robust med større fotavtrykk) (bilde 2)
- Egendefinert kretskort (tyngre enn 1, men robust med et lite fotavtrykk) kortdesign vedlagt (bilde 3)
uavhengig av valget som er gjort, er de faktiske tilkoblingene de samme.
Gjør følgende tilkoblinger to ganger (én gang for kontrolleren og én gang for mottakeren)
nRF24L01 (pinnummereringsbilde 4 **):
- Pin 1 -> GND
- Pin 2 -> ut pin på 3.3v modul
- 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*
- Out pin -> pin 2 nRF (som ovenfor)
- GND pin -> GND
Arduino:
- Pins 9-13 -> koble til nRF som ovenfor
- Rå -> Vcc*
- GND -> GND
Gjør følgende tilkoblinger én gang for å skille mellom kontroller og mottaker
For kontrolleren:
Styrespak:
- +5v -> Arduino 5v
- vrx -> Arduino pin A2
- vry -> Arduino pin A3
- GND -> GND
For mottakeren:
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
Dette gjøres enklest ved å bytte ut pinnene til Vcc og GND med wire, deretter snu brettet opp ned og lodde pinnene direkte inn i Arduino, dette forenkler loddetinnet og skaper et sikkert feste for motorføreren
*For at en kamprobot skal være lovlig, må det legges til et isolasjonspunkt (bryter eller flyttbar lenke) mellom batteriet og kretsen. Dette betyr at batteriets positive må være koblet til en bryter, deretter må bryteren kobles til Vcc
** bilde fra https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo som er en flott ressurs for nRF24L01-modulen
Trinn 5: Sette opp kontrolleren
Når alt er koblet til, er det tid for litt kode.
Fra og med kontrolleren er det nødvendig med noen potensiometerverdier for å sikre at den nøyaktige joysticken som er tilkoblet fungerer med sendekoden.
Last inn "joystickTestVals2" -koden. Denne koden brukes til å lese potensiometerverdiene og vise dem i serie
Med koden i gang og et serielt vindu åpent start ved å se på "OPP" -verdien, skyv styrespaken til posisjonen helt fremover, "OPP" -verdien vil sannsynligvis hoppe mellom noen få store tall, velg den minste av verdiene du ser, trekker du 10 fra den (dette vil sikre at du trykker helt på pinnen for å gi full effekt) og skriver den ned som "Up Max" slik at styrespaken kan springe tilbake i midten. Velg nå den største verdien du ser, legg til 20 til den og skriv den ned som "UpRestMax". Gjenta prosessen ved å skyve pinnen nedover og reversere addisjonen/subtraheringen av verdiene som "UpMin" og "UpRestMin"
Gjenta hele prosessen igjen for venstre og høyre, start med å skyve pinnen til høyre, ta opp "SideMax" og deretter "SideRestMax" mens den springer tilbake og skyv til venstre for å spille inn "SideMin" og "SideRestMin"
Disse verdiene er super viktige, spesielt alle verdiene som inneholder ordet "Rest". disse verdiene skaper "død sone" i midten av pinnen slik at boten ikke beveger seg når pinnen hviler i midten, sørg for at når pinnen er sentrert faller verdiene mellom "restMin" og "restMax" for begge akser
Trinn 6: Kode
Den oppgitte koden gjør alt for en grunnleggende kilebot med en struktur på plass for at en pwm-verdi for våpen også skal kunne sendes.
Nødvendige biblioteker:
- nRF24L01 Bibliotek herfra: GitHub
- Programvare PWM herfra: Google Code
Sett opp kontrolleren din:
åpne txMix -koden og endre pinnegrenseverdiene til verdiene du skrev ned i det siste trinnet. Dette vil sikre at koden reagerer riktig på joysticken (Bilde 1)
Tilpass rør:
For å sikre at du ikke forstyrrer noen andre på arrangementet ditt, må du bytte radiorør. Dette er faktisk en identifikator, og mottakeren vil bare handle på signaler fra det riktige røret, så sørg for å endre røret i begge koder til det samme.
På bildet er 2 sekskant i røret uthevet. Dette er de to sifrene som må endres for å tilpasse røret. Endre "E1" til en annen tosifret hex -verdi og skriv den ned, slik at du enkelt kan kontrollere den mot motstanders rør på et arrangement
Laste opp:
- txMix til kontrolleren
- motta til mottakermodulen
Slipp av koden:
txMix:
Koden leser i joystick -posisjonen som en "UP" -verdi og en "side" -verdi. disse verdiene blir begrenset basert på maksimalverdien som er gitt for å sikre at full effekt vil bli gitt ved den maksimale pinnestillingen.
Disse verdiene kontrolleres deretter for å sikre at pinnen har beveget seg ut av nøytral posisjon, hvis den ikke har nuller, blir sendt.
Verdiene blandes deretter individuelt i to variabler, en for venstre motorhastighet og en for høyre motorhastighet. I disse variablene brukes en negativ verdi for å indikere at motoren kjører bakover da det forenkler blandingen.
Verdiene for venstre og høyre hastighet skilles deretter inn i fire verdier pwm -verdier, en for hver: motor høyre fremover, motor venstre fremover, motor høyre bakover, motor venstre bakover.
De fire pwm -verdiene sendes deretter til mottakeren.
motta:
Mottar ganske enkelt signaler fra kontrolleren, sjekker at signalet ikke inneholder pwm -verdier for forover og bakover på en enkelt motor, og bruker deretter pwm.
Mottakeren feiler også safer for å slå av motoren når det ikke mottas et signal fra kontrolleren
Trinn 7: Bolting It All Togheter
Loddekontakter til motorene eller lodd motorene direkte til h-broen. (Jeg foretrekker kontakter slik at jeg bare kan bytte plugger hvis jeg har koblet motorene feil)
Lodd den positive ledningen fra batterikontakten til den midtre pinnen på bryteren og en av de ytre pinnene på bryteren til Vcc på de tilkoblede modulene.
Lodd den negative ledningen fra batterikontakten til GND for de tilkoblede modulene.
(Valgfritt) legg til flere LED mellom Vcc og GND. Alle kamproboter krever et lys som er på mens systemet har strøm, avhengig av komponentene dette systemet har lysdioder på Arduino, 3.3v-modulen og h-broen, så lenge minst en av disse er synlig utenfra bot denne regelen er oppfylt. Ytterligere lysdioder kan brukes for å være sikker på at denne regelen er oppfylt og for å tilpasse utseendet
Litt råolje er enkel å skru sammen, bolt motorfester på plass først, legg til elektronikken, skru deretter lokket på plass, en liten mengde borrelås vil hjelpe til å holde bryteren mot lokket
Kontrolleren er din til å designe og skrive ut. For testing har jeg brukt den vedlagte kontrolleren som er endret fra James Brutons BB8 V3 -kontroller
Trinn 8: Et ord om robotbekjempelsesregler
Ulike land, stater og grupper driver robotkamparrangementer med forskjellige regler.
Jeg har laget dette systemet og skrevet dette for å være så generell som mulig mens jeg treffer de viktigste reglene som gjelder for RC -systemer (spesielt systemet bør være 2,4 GHz digitalt og ha et batteriisolasjonspunkt). For å kjøre dette systemet og eller designe din egen første bot er det best å komme i kontakt med din lokale gruppe og få en kopi av reglene deres.
Reglene din lokale gruppe kjører er absolutte, ikke ta mitt ord i denne instruksen over reglene for gruppen din.
Siden dette Arduino -systemet er nytt for samfunnet, vil du mest sannsynlig bli bedt om å få det testet før du bruker det på et arrangement. Jeg har kjempetestet dette systemet gjentatte ganger mot standard RC -utstyr og mot seg selv uten forstyrrelsesproblemer, så det bør bestå noen test, men arrangørene på ditt lokale arrangement har det siste ordet, respekter deres beslutning. Hvis de avviser bruken, spør om det er en lånebot du kan kjempe med, eller be om en avklaring på hvorfor den ble avvist, og prøv å fikse problemet for neste arrangement
Trinn 9: Tilleggsinformasjon om motorer
Mikrogirmotorene som brukes i maureklassen kommer i et stort utvalg hastigheter og er enten merket med RPM eller girforhold. Nedenfor er en grov konvertering.
De fleste roboter bruker motorer mellom 75: 1 og 30: 1 (med noen unntak ved bruk av 10: 1). Roboter med store spinnende våpen kan dra fordel av tregere 75: 1 -motorer ettersom den lavere hastigheten gir mer kontroll. Smidige kiler, løftere og svømmeføtter er best på 30: 1 i hendene på en dyktig sjåfør. Jeg anbefaler 50: 1 motorer i en kile for de første kampene bare for å bli vant til systemet og kjøringen
- 12V 2000 o / min (eller 6V 1000 o / min) -> 30: 1
- 6V 300RPM -> 50: 1
Trinn 10: Oppdateringer og forbedringer
Det har vært et par år siden jeg postet denne 'ible, og jeg har lært mye om dette systemet, så det er på tide å oppdatere dem her. Det viktigste er komponentvalget, de originale komponentene fungerte relativt bra, men noen ganger mislyktes under kamp. De to store gjerningsmennene er H-Bridge og nrf24l01-modulen, på grunn av at jeg valgte de absolutt billigste delene jeg kunne finne. Disse kan fikses ved å:
- Oppgraderer 0,5A H-broen til en 1,5A H-bro, som denne: 1,5A H-broen
- Oppgradering av nrf24l01 -modulen til et fullt SMD -design: Åpne smart NRF24l01
Sammen med de nye komponentoppgraderingene har jeg designet noen nye PCB -er som hjelper til med å komprimere RX og legge til flere funksjoner i TX
Jeg har også noen kodeendringer som kommer, så følg med for dem
Anbefalt:
Combat Drones Quadcopters Aka a Real Dogfight Experience: 8 trinn (med bilder)
Combat Drones Quadcopters Aka a Real Dogfight Experience: Velkommen til min " ible " #37Vi må innrømme at de nåværende kampdronene på markedet er litt rotete. Det er veldig vanskelig å forstå hvem som vinner og hvem som taper. Når den ene dronen kommer ned, følger den andre opp (krasjer i hverandre
Tensegrity eller Double 5R Parallel Robot, 5 Axis (DOF) Billig, Tøff, Bevegelseskontroll: 3 trinn (med bilder)
Tensegrity eller Double 5R Parallel Robot, 5 Axis (DOF) Billig, Tøff, Bevegelseskontroll: Jeg håper du vil synes dette er den STORE ideen for dagen din! Dette er en oppføring i Instructables Robotics -konkurransen som avsluttes 2. desember 2019. Prosjektet har kommet til den siste dommerunden, og jeg har ikke hatt tid til å gjøre oppdateringene jeg ønsket! Jeg har
Hvordan bygge ProtoBot - en 100% åpen kildekode, super -billig, pedagogisk robot: 29 trinn (med bilder)
Hvordan bygge ProtoBot - en 100% åpen kildekode, super -billig, pedagogisk robot: ProtoBot er en 100% åpen kildekode, tilgjengelig, super billig og lett å bygge robot. Alt er åpen kildekode-maskinvare, programvare, veiledninger og læreplaner-noe som betyr at alle kan få tilgang til alt de trenger for å bygge og bruke roboten. Det er en
Fun Micro: bit Robot - LETT og billig !: 17 trinn (med bilder)
Fun Micro: bit Robot - LETT og billig !: BBC micro: bits er flotte! De er enkle å programmere, de er fullpakket med funksjoner som Bluetooth og et akselerometer, og de er rimelige. Ville det ikke vært flott å kunne bygge en robotbil som koster ved siden av ingenting? Dette prosjektet er inspirert av
Billig forbedring av trykte bilder: 4 trinn (med bilder)
Billig forbedring av trykte bilder: De billige skriverne gjør jobben hans veldig bra, men de trykte bildene er veldig følsomme: enhver dråpe vann ødelegger dem. "Fotopapiret" for å skrive ut bilder er veldig dyrt. Det vanlige papiret gir vanlige resultater. Jeg brukte vanlig 75 g A4 -papir for dette