Obsah:

Levné ovládání bojového robota Arduino: 10 kroků (s obrázky)
Levné ovládání bojového robota Arduino: 10 kroků (s obrázky)

Video: Levné ovládání bojového robota Arduino: 10 kroků (s obrázky)

Video: Levné ovládání bojového robota Arduino: 10 kroků (s obrázky)
Video: Lesson 1: What is Arduino? Types of Arduino Boards and SunFounder Kit | SunFounder Robojax 2024, Listopad
Anonim
Levné ovládání bojového robota Arduino
Levné ovládání bojového robota Arduino
Levné ovládání bojového robota Arduino
Levné ovládání bojového robota Arduino
Levné ovládání bojového robota Arduino
Levné ovládání bojového robota Arduino

Oživení Battlebotů ve Státech a Robot Wars ve Velké Británii obnovilo moji lásku k bojové robotice. Našel jsem tedy místní skupinu stavitelů bot a ponořil se přímo dovnitř.

Bojujeme na britské váhové váze mravence (hmotnostní limit 150 gramů) a rychle jsem si uvědomil tradiční způsob, jak vybudovat RC vybavení zahrnující robota: drahý RC vysílač, objemný nebo drahý přijímač a ESC (elektronické regulátory rychlosti), což jsou kouzelné boxy který zvládne mnohem více proudu, než je nutné pro robota této velikosti.

Když jsem v minulosti používal Arduino, chtěl jsem zkusit dělat věci jinak a stanovit si cíl systému Arduino, který dokáže přijímat bojový právní signál a ovládat dva hnací motory za přibližně 5 USD (polovina nákladů na levné ESC)

Abych pomohl dosáhnout tohoto cíle, remixoval jsem tento instruktážní RC vůz, snížil hmotnost/náklady na přijímač a generoval 4 signály PWM pro provoz levného čipu h-bridge

Tento instruktáž se zaměří na řídicí systém Arduino, ale přidám další informace, které pomohou novým lidem vybudovat jejich prvního robota

Prohlášení:

I v malém měřítku může být budování/boj robotů nebezpečný, provádějte na vlastní nebezpečí

Krok 1: Co potřebujete

Materiály:

Pro řídicí systém:

  • 1x Arduino pro mini 5v (1,70 USD)
  • 1x modul nRF24L01 (1,14 USD)
  • 1x modul regulátoru 3,3 V (0,32 USD)
  • 1x dvojitý modul h-bridge* (0,90 USD)

Pro zbytek základního klínového robota:

  • 2x mikro převodový motor ** (levná verze, spolehlivá verze)
  • 1x 2s lithium polymerová baterie
  • 1x balanční nabíječka
  • 1x lipo nabíjecí vak
  • 1x přepínač
  • 1x konektor baterie
  • různé dráty (použil jsem propojovací vodiče Arduino, kolem kterých jsem ležel)
  • malé šrouby
  • (volitelně) epoxid
  • (volitelně) hliník (z plechovky nealkoholických nápojů)
  • (volitelně) přídavné LED diody

Základní ovladač:

  • 1x Arduino pro mini 5v
  • 1x modul nRF24L01
  • 1x modul regulátoru 3,3 V
  • 1x Arduino-joystick

Nástroje:

  • Šroubovák
  • Páječka
  • Kleště
  • 3D tiskárna (volitelná, ale usnadňuje život)

*při pohledu na moduly h-bridge hledejte modul se všemi 4 vstupy signálu vedle sebe, což usnadní pozdější připojení k Arduinu

** podívejte se na poslední krok, kde najdete několik tipů pro výběr otáček motoru

Krok 2: Tisk podvozku

Tisk podvozku
Tisk podvozku

Než začnete s řídicím systémem, podívejte se na design robota, který má být postaven. Vždy je nejlepší navrhnout robota ze zbraně. Pro začátečníka doporučuji začít se základním klínem, jsou navrženy tak, aby byly robustní a vytlačily protivníky z cesty, což znamená, že je méně pravděpodobné, že budete zničeni ve svém prvním boji, a navíc je snazší získat pocit z řízení, když O aktivní zbraň se nemusím starat.

Navrhl jsem klínový bot: „Mírně surový“, který byl testován v bitvě, obrněný i neozbrojený. Je to dobrý první robot, snadno se tiskne a dá se složit dohromady pomocí 8 šroubů. Podívejte se na Thingiverse, kde najdete jiný špičkový design

Pokud nevlastníte 3D tiskárnu, vyzkoušejte místní knihovnu, hackerspace nebo tvůrčí prostor

Přidání dalšího brnění lze z tiskárny snadno provést, obrousit klín i nealkoholický nápoj z hliníku brusným papírem, setřít veškerý brusný prach, nanést epoxid na plast i hliník, držet pohromadě pomocí svorek nebo gumiček po dobu 12-24 hodin

V současné době nemám veřejný design kol, protože jsem používal gumové pneumatiky ze vzdělávací robotické soupravy přes 3D tištěné náboje. V nadcházejících týdnech budu navrhovat náboj, který bude používat O-kroužky pro přilnavost. Jakmile budou kola hotová, aktualizuji tuto stránku a stránku Thingiverse

Krok 3: Připravte H-můstek

Připravte H-můstek
Připravte H-můstek

Různé ovladače motorů h-bridge se dodávají v různých sestavách, ale modul propojený v počátečním seznamu je dodáván se 2 svorkovnicemi jako výstupem. Tyto svorkovnice jsou těžké a objemné, proto je nejlepší je odstranit.

Nejjednodušší způsob, jak to udělat, je ohřát obě podložky současně pomocí páječky a opatrně kmitat bloky pomocí kleští

Než budete pokračovat, rozhodněte se, zda chcete vyměnit motory ve vašem nastavení. Pokud ano, lze na výstup modulu připájet propojovací kabely Arduino, pak lze k motoru připájet opačný kabel, který je podle potřeby vyjímá.

Krok 4: Zapojení modulů

Zapojení modulů
Zapojení modulů
Zapojení modulů
Zapojení modulů
Zapojení modulů
Zapojení modulů

Zapojení modulů lze provést 3 různými způsoby, a proto je krok návrhu rozhodující. Volba zbraně ovlivní tvar robota a volbu kabeláže.

3 možnosti jsou:

  1. Uvolněné dráty (lehké, ale křehčí) (obrázek 1)
  2. Perfboard (těžší než 1, ale robustnější s větší stopou) (obrázek 2)
  3. Vlastní deska s plošnými spoji (těžší než 1, ale robustní s malou stopou) připojený design desky (obrázek 3)

bez ohledu na provedenou volbu jsou skutečná připojení stejná.

Následující připojení proveďte dvakrát (jednou pro ovladač a jednou pro přijímač)

nRF24L01 (obrázek číslování pinů 4 **):

  • Pin 1 -> GND
  • Pin 2 -> výstupní pin modulu 3,3 V.
  • Pin 3 -> Arduino pin 9
  • Pin 4 -> Arduino pin 10
  • Pin 5 -> Pin Arduino 13
  • Pin 6 -> Arduino pin 11
  • Pin 7 -> Arduino pin 12

Modul 3,3 V:

  • Vin pin -> Vcc*
  • Výstupní pin -> pin 2 nRF (jak je uvedeno výše)
  • Pin GND -> GND

Arduino:

  • Piny 9-13 -> připojte se k nRF, jak je uvedeno výše
  • Surový -> Vcc*
  • GND -> GND

Proveďte následující připojení jednou k rozlišení mezi ovladačem a přijímačem

Pro správce:

Joystick:

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

Pro přijímač:

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

Nejjednodušší je to provést výměnou pinů pro Vcc a GND drátem, poté převrácením desky vzhůru nohama a připájením pinů přímo do Arduina, to zjednoduší pájení a vytvoří jistou montáž pro ovladač motoru

*aby byl bojový robot legální, musí být mezi baterii a obvod přidán izolační bod (vypínač nebo odnímatelný článek). To znamená, že kladný pól baterie musí být připojen k přepínači, pak přepínač připojen k Vcc

** obrázek z https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo což je skvělý zdroj pro modul nRF24L01

Krok 5: Nastavení ovladače

Nastavení ovladače
Nastavení ovladače

Jakmile je vše připojeno, je čas na nějaký kód.

Počínaje ovladačem jsou potřebné některé hodnoty potenciometru, aby bylo zajištěno, že přesný připojený joystick bude fungovat s vysílacím kódem.

Načtěte kód „joystickTestVals2“. Tento kód slouží ke čtení hodnot potenciometru a jejich zobrazení přes sériové číslo

Po spuštění kódu a otevřeném sériovém okně se podívejte na hodnotu „UP“, zatlačte joystick do polohy zcela vpřed, hodnota „UP“pravděpodobně přeskočí mezi několik velkých čísel, vyberte nejmenší z hodnot, které vidíte, odečtěte od toho 10 (tím zajistíte, že úplné zatlačení páčky poskytne plný výkon) a zapište si to jako „Up Max“, aby joystick vyskočil zpět do středu. Nyní vyberte největší hodnotu, kterou vidíte, přidejte k ní 20 a zapište ji jako „UpRestMax“. Opakujte postup zatlačením páčky dolů a obrácením sčítání/odčítání hodnot jako „UpMin“a „UpRestMin“

Opakujte celý proces znovu doleva a doprava, počínaje zatlačením páčky doprava, záznamem „SideMax“, poté „SideRestMax“, jak se vrací zpět, a zatlačením doleva zaznamenejte „SideMin“a „SideRestMin“

Tyto hodnoty jsou velmi důležité, zejména všechny hodnoty obsahující slovo „Odpočinek“. tyto hodnoty vytvářejí „mrtvou zónu“uprostřed hůlky, takže se robot nebude hýbat, když hůl leží ve středu, ujistěte se, že když je tyč vycentrovaná, hodnoty spadají mezi „restMin“a „restMax“pro obě osy

Krok 6: Kód

Kód
Kód
Kód
Kód

Uvedený kód dělá vše pro základní klínový robot se strukturou, která umožňuje odeslání hodnoty pwm zbraně.

Potřebné knihovny:

  • Knihovna nRF24L01 odtud: GitHub
  • Software PWM odtud: Google Code

Nastavení ovladače:

otevřete kód txMix a změňte mezní hodnoty stick na hodnoty, které jste si zapsali v posledním kroku. Tím zajistíte, že kód správně reaguje na váš joystick (obrázek 1)

Přizpůsobit potrubí:

Abyste zajistili, že na vaší akci nezasahujete do nikoho jiného, budete muset vyměnit rádiové potrubí. Toto je ve skutečnosti identifikátor a přijímač bude působit pouze na signály ze správného potrubí, takže nezapomeňte změnit potrubí v obou kódech na stejnou věc.

Na obrázku jsou zvýrazněny 2 hexadecimální číslice potrubí. Toto jsou dvě číslice, které je třeba změnit, aby bylo možné upravit potrubí. Změňte „E1“na jakoukoli jinou 2místnou hexadecimální hodnotu a zapište si ji, abyste ji mohli na akci snadno zkontrolovat proti soupeřovu potrubí

Nahrát:

  • txMix k ovladači
  • přijímat do modulu přijímače

Spusťte kód:

txMix:

Kód se čte v poloze joysticku jako hodnota „NAHORU“a „vedlejší“hodnota. tyto hodnoty jsou omezeny na základě maximální poskytnuté hodnoty, aby byl zajištěn plný výkon při maximálním držení tyče.

Tyto hodnoty jsou poté zkontrolovány, aby se zajistilo, že se páčka přesunula z neutrální polohy, pokud nemá nuly, jsou odeslány nuly.

Hodnoty jsou pak jednotlivě smíchány do dvou proměnných, jedné pro levé otáčky motoru a jedné pro pravé otáčky motoru. V těchto proměnných se záporná hodnota používá k indikaci, že motor jede dozadu, protože zjednodušuje míchání.

Hodnoty rychlosti vlevo a vpravo jsou poté rozděleny do čtyř hodnot pwm, pro každou jednu: motor vpřed vpravo, motor vlevo vpřed, motor vpravo dozadu, motor vlevo dozadu.

Čtyři hodnoty pwm jsou poté odeslány do přijímače.

dostávat:

Jednoduše přijímá signály z ovladače, kontroluje, zda signál neobsahuje hodnoty pwm pro dopředný a zpětný pohyb na jednom motoru, a poté použije pwm.

Přijímač také nedokáže vypnout trezory motorů, když signál není přijat z ovladače

Krok 7: Přišroubujte to všechno dohromady

Šroubování to všechno dohromady
Šroubování to všechno dohromady
Šroubování to všechno dohromady
Šroubování to všechno dohromady
Šroubování to všechno dohromady
Šroubování to všechno dohromady

Pájejte konektory k motorům nebo pájejte motory přímo na h-můstek. (Dávám přednost konektorům, abych mohl jednoduše vyměnit zástrčky, pokud jsem špatně připojil motory)

Pájejte kladný vodič z konektoru baterie na střední kolík spínače a jeden z vnějších kolíků na spínači na Vcc připojených modulů.

Zapájejte záporný vodič z konektoru baterie na GND připojených modulů.

(Volitelně) přidejte další diody LED mezi Vcc a GND. Všechny bojové roboty vyžadují světlo, které je zapnuté, zatímco je systém napájen, v závislosti na komponentách, které má tento systém LED na Arduinu, modulu 3,3 V a h-můstku, dokud je alespoň jeden z nich viditelný zvenčí bot toto pravidlo je splněno. Další LED diody lze použít k ověření, zda je toto pravidlo splněno, a k přizpůsobení vzhledu

Mírně hrubý se snadno spojuje, nejprve přišroubujte držáky motoru na místo, přidejte elektroniku, poté přišroubujte víko na místo, malé množství suchého zipu pomůže držet spínač na víku

Ovladač můžete navrhovat a tisknout vy. Pro testování používám připojený ovladač, který byl upraven z ovladače BB8 V3 Jamese Brutona

Krok 8: Slovo o bojových pravidlech robotů

Slovo o bojových pravidlech robotů
Slovo o bojových pravidlech robotů

Různé země, státy a skupiny pořádají robotické bojové akce s různými pravidly.

Vytvořil jsem tento systém a napsal jsem, že by mohl být co nejobecnější a zároveň dodržovat hlavní pravidla, která se týkají RC systémů (systém by měl být především 2,4 GHz digitální a měl by mít bod izolace baterie). Chcete -li spustit tento systém nebo navrhnout vlastního prvního robota, je nejlepší kontaktovat místní skupinu a získat kopii jejích pravidel.

Pravidla, která vaše místní skupina provozuje, jsou absolutní, neberte moje slovo v tomto pokynu nad pravidly vaší skupiny.

Protože je tento systém Arduino v komunitě novinkou, budete s největší pravděpodobností požádáni o jeho otestování před použitím na akci. Tento systém jsem opakovaně bitevně testoval proti standardnímu RC vybavení a proti sobě bez jakýchkoli problémů s rušením, takže by měl projít jakýmkoli testem, ale poslední slovo mají pořadatelé na vaší místní akci, respektujte jejich rozhodnutí. Pokud odmítnou jeho použití, zeptejte se, zda existuje půjčovací robot, se kterým můžete bojovat, nebo požádejte o vysvětlení, proč byl odmítnut, a pokuste se problém vyřešit pro další událost

Krok 9: Další informace o motorech

Další informace o motorech
Další informace o motorech

Mikropřevodové motory používané ve třídě mravenců přicházejí s velkým množstvím rychlostí a jsou označeny buď otáčkami, nebo převodovým poměrem. Níže je hrubý převod.

Většina robotů používá motory mezi 75: 1 a 30: 1 (s některými výjimkami při použití 10: 1). Roboti s velkými rotujícími zbraněmi mohou těžit z pomalejších motorů 75: 1, protože nižší rychlost umožňuje větší kontrolu. Čisté klíny, zvedače a ploutve jsou nejlepší na 30: 1 v rukou zkušeného řidiče. Prvních pár soubojů doporučuji motory 50: 1 v klínu, jen aby si zvykli na systém a řízení

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

Krok 10: Aktualizace a vylepšení

Je to už pár let, co jsem zveřejnil tento článek, a o tomto systému jsem se toho hodně naučil, takže je načase je zde aktualizovat. Nejdůležitější je výběr komponent, původní komponenty fungovaly relativně dobře, ale někdy během boje selhaly. Dva velcí pachatelé jsou H-Bridge a modul nrf24l01, protože jsem vybral absolutně nejlevnější díly, které jsem našel. Ty lze opravit:

  • Upgradování 0,5A H-můstku na 1,5A H-můstek, jako je tento: 1,5A H-můstek
  • Upgradování modulu nrf24l01 na plně SMD design: Otevřete smart NRF24l01

Spolu s novými upgrady součástí jsem navrhl několik nových desek plošných spojů, které pomáhají kompaktovat RX a přidávat do TX další funkce

Chystají se také některé změny kódu, takže si na ně počkejte

Doporučuje: