Upravljanje robotskom rukom s TLV493D, joystick i, Arduino: 3 koraka
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino: 3 koraka
Anonim
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino
Upravljanje robotskom rukom s TLV493D, joystick i, Arduino

Alternativni kontroler za vašeg robota sa senzorom TLV493D, magnetskim senzorom sa 3 stepena slobode (x, y, z) pomoću njih možete kontrolirati svoje nove projekte pomoću I2C komunikacije na vašim mikrokontrolerima i elektronskoj ploči koju Bast Pro Mini M0 ima SAMD21 mikrokontroler na Arduino IDE.

Cilj je imati alternativni joystick za upravljanje vašim projektima, u ovom slučaju, robotsku ruku sa 3 stupnja slobode. Koristio sam MeArm Robot Arm, ovo je projekt otvorenog koda i možete ga olakšati i možete ga pronaći ovdje. Možete napraviti vlastitu ručicu za upravljanje ili drugu aplikaciju sa ovim znanjem koju rado dijelim s vama.

Sve elektroničke komponente imaju veze za preuzimanje u trgovini, datoteke na 3D pisaču i kôd za Arduino IDE.

TLV493D može biti joystick 3D magnetski senzor TLV493D-A1B6 nudi precizno trodimenzionalno otkrivanje s izuzetno niskom potrošnjom energije u malom pakovanju sa 6 pinova. Sa detekcijom magnetnog polja u x, y i z smjeru, senzor pouzdano mjeri trodimenzionalna, linearna i rotacijska kretanja.

Aplikacije uključuju upravljačke palice, upravljačke elemente (bijela tehnika, višenamjenske tipke) ili električna brojila (zaštita od neovlaštenog rada), i bilo koju drugu aplikaciju koja zahtijeva precizna kutna mjerenja ili malu potrošnju energije. Integrirani temperaturni senzor se nadalje može koristiti za provjeru vjerodostojnosti. Ključne karakteristike su 3D magnetsko sensing sa vrlo niskom potrošnjom energije tokom rada.

Senzor ima digitalni izlaz preko 2-žičnog standardnog I2C sučelja do 1 MBit/s i 12-bitne rezolucije podataka za svaki, smjer mjerenja (Bx, By i Bz linearno mjerenje polja do +-130mT). TLV493D-A1B6 3DMagnetic je samostalni vanbrodski motor.

Možete ga lako povezati s bilo kojim mikrokontrolerom po vašem izboru koji je kompatibilan s Arduino IDE -om i ima logički nivo od 3,3 V. U ovom projektu koristimo proboj Electronic Cats i razvojnu ploču koju ću kasnije objasniti.

electroniccats.com/store/tlv493d-croquette…

Prednost korištenja senzora TLV493D je u tome što se za primanje informacija koriste samo dva kabela s I2C, pa je to vrlo dobra opcija kada imamo vrlo malo dostupnih pinova na kartici, također zahvaljujući prednostima I2C možemo povezati više senzori. Spremište za ovaj projekt možete pronaći ovdje. Za ovaj projekt koristit ćemo joystick koji možete odštampati na 3D štampaču ili odštampati u najbližoj prodavnici 3D štampe.

. STL datoteke dodaju se na kraju projekta. Njegova montaža je vrlo jednostavna, možete je vidjeti u videu

Izgradite vlastiti robot U ovom slučaju ja pravim robota Mearm v1 koji ovaj projekt možete pronaći na stranici autora ovdje

Ovo je jednostavan za izradu robota i kontroler jer ima servomotore na 5 volti. Možete izgraditi ili koristiti bilo kojeg robota po vašem izboru, ovaj će se projekt fokusirati na kontrolu pomoću senzora TLV493D.

Potrošni materijal:

  • x1 Bast Pro Mini M0 Kupi u
  • x1 Croquette TLV493D Kupi u
  • x1 Kit MeArm v1
  • x20 Dupont kablovi
  • x1 Protoboard
  • x2 Taster
  • x1 Magnet promjera 5 mm x debljine 1 mm

Korak 1: Spajanje senzora s Bast Pro Mini M0

Povezivanje senzora s Bast Pro Mini M0
Povezivanje senzora s Bast Pro Mini M0

Za kontrolu ruke robota koristi se razvojna ploča Electronic Cats, Bast Pro Mini M0 sa SAMD21E ARM Cortex-M0 mikrokontrolerom.

Ovaj čip radi na 48MHz, sa 256KB programske memorije, 32KB SRAM i radi na naponu od 1,6v do 3,6v. Zahvaljujući njegovim specifikacijama možemo ga koristiti za nisku potrošnju uz dobre performanse, a također ga programirati sa CircuitPythonom ili nekim drugim jezikom koji omogućava mikrokontrolere.

electroniccats.com/store/bast-pro-mini-m0/

Ako vas zanima više o ovoj kartici, ostavit ću vam vezu do njenog spremišta.

github.com/ElectronicCats/Bast-Pro-Mini-M0…

Za kontrolu kretanja servomotora koristi se magnetski senzor TLV493D koji šalje signal za pozicioniranje servomotora do odgovarajućih stupnjeva.

S jednim senzorom možemo pomicati dva servomotora, u ovom primjeru koristit ćemo samo jedan senzor i gumb za upravljanje hvataljkom.

Još jedan prijedlog koji možete napraviti je da dodate još jedan senzor TLV493D i pomaknete treći servo motor i hvataljku. Ako to učinite, ostavite svoje iskustvo u komentarima i pozivam vas da podijelite projekt.

Slika prikazuje oružano kolo na protoboru.

  • Prvi servomotor služi za hvatač i povezuje se sa iglom 2
  • Drugi servomotor je za bazu robota i spaja se na pin 3
  • Treći servomotor je za rame robota i spaja se na pin 4
  • Četvrti servomotor je za lakat robota i spaja se na pin 5
  • Prvo dugme mora zaustaviti bilo kakvo kretanje robota i povezuje se na pin 8 u povlačenju sa otporom od 2,2Kohms.
  • Drugi taster služi za otvaranje i zatvaranje hvataljke i povezan je sa iglom 9 u povlačenju sa otporom od 2,2Kohms.

Na slici kruga, senzor TLV493D se ne pojavljuje jer nije dodan u fritzing, već je dodan 4-pinski konektor za simulaciju njegovih VCC, GND, SCL, SDA konektora. Na slici su postavljeni istim redoslijedom.

  • Prvi pin se povezuje na 3,3 volta na ploči
  • Drugi pin se spaja na GND
  • Treći SCL pin se povezuje sa pinom A5 na ploči
  • Četvrti SDA pin se povezuje sa A4 pinom na ploči

Zahvaljujući prednosti SAMD21 čipa, možemo koristiti bilo koji od njegovih digitalnih pinova kao PWM izlaze, koji će nam poslužiti za slanje ispravne širine impulsa za pomicanje servomotora.

Još jedan važan podatak koji se mora uzeti u obzir je vanjsko napajanje servomotora, u krugu možete vidjeti utični konektor koji se spaja na 5 volti na izvoru od 2 Ampera, kako bi se izbjeglo preopterećenje ploče i njeno oštećenje.

Također ne zaboravite spojiti zajednički signalni GND kartice i vanjskog izvora, inače biste imali problema s upravljanjem servo motora jer oni ne bi imali istu referencu.

Korak 2: Kodiranje Arduino IDE -a na Bast Pro Mini M0

Kodiranje Arduino IDE -a na Bast Pro Mini M0
Kodiranje Arduino IDE -a na Bast Pro Mini M0
Kodiranje Arduino IDE -a na Bast Pro Mini M0
Kodiranje Arduino IDE -a na Bast Pro Mini M0
Kodiranje Arduino IDE -a na Bast Pro Mini M0
Kodiranje Arduino IDE -a na Bast Pro Mini M0

Prva stvar bit će instaliranje Bast Pro Mini M0 kartice u Arduino IDE, koraci se mogu pronaći u spremištu Electronic Cats i važni su za njen rad.

github.com/ElectronicCats/Arduino_Boards_I…

Kada budete spremni za Arduino IDE, potrebno je instalirati službenu biblioteku senzora TLV493D, uđite na https://github.com/Infineon/TLV493D-A1B6-3DMagnet… i idite na Izdanja.

U prvom dijelu koda korištene biblioteke su deklarirane, u ovom slučaju Servo.h za servomotore i TLV493D.h za senzor.

Prilikom korištenja biblioteke Servo.h važno je navesti broj servomotora, iako robot trenutno ima 4, a koriste se samo 3.

Igle su deklarisane za dugmad koja će zaustaviti svako kretanje robota i otvaranje i zatvaranje hvataljke. Deklarirane su neke globalne varijable koje će poslužiti za saznanje stanja hvataljke i ima li pomaka.

U drugom dijelu koda pokazat ćemo u serijskom monitoru vrijednost stupnja u kojem su motori. Druga važna točka je utvrđivanje granice stupnjeva u vašim servo motorima, za to se koristi funkcija map () koja pretvara vrijednost kretanja senzora TLV493D u raspon od 0 do 180 stupnjeva servomotora.

Za posljednji dio koda uspostavljeni su uvjeti za aktiviranje kretanja servomotora pritiskom na tipku i da se zna u kakvom je stanju hvataljka za sljedeće kretanje kada se pritisne drugo dugme. Kao što možete vidjeti na prethodnim slikama, kod nije teško implementirati i razumjeti, na kraju projekta možete pronaći kod.

Učite li koristiti Circuit Python?

Ako ste zainteresirani za učenje korištenja ovog IDE -a, na sljedećoj poveznici možete pronaći Bast Pro Mini M0 karticu za preuzimanje pokretačkog programa i početak programiranja s Pythonom.

Korak 3: 3D komadi

Ako ste zainteresirani za izradu projekta, možete preuzeti dijelove u.stl -u i ispisati ih. Naći ćete datoteke za bazu i okretni štap.