Taula de continguts:

Control del braç del robot amb TLV493D, joystick i Arduino: 3 passos
Control del braç del robot amb TLV493D, joystick i Arduino: 3 passos

Vídeo: Control del braç del robot amb TLV493D, joystick i Arduino: 3 passos

Vídeo: Control del braç del robot amb TLV493D, joystick i Arduino: 3 passos
Vídeo: сварочный робот-манипулятор, робот для захвата и размещения | конкурировать с ABB Fanuc Yaskawa Kuka и т. д. | как выбрать робота 2024, Desembre
Anonim
Control del braç del robot amb TLV493D, joystick i, Arduino
Control del braç del robot amb TLV493D, joystick i, Arduino
Control del braç del robot amb TLV493D, joystick i, Arduino
Control del braç del robot amb TLV493D, joystick i, Arduino
Control del braç del robot amb TLV493D, joystick i, Arduino
Control del braç del robot amb TLV493D, joystick i, Arduino

Un controlador alternatiu per al vostre robot amb un sensor TLV493D, un sensor magnètic amb 3 graus de llibertat (x, y, z) amb els quals podreu controlar els vostres nous projectes amb comunicació I2C als microcontroladors i a la placa electrònica que Bast Pro Mini M0 amb Microcontrolador SAMD21 a Arduino IDE.

L’objectiu és tenir un joystick alternatiu per controlar els vostres projectes, en aquest cas, un braç robot amb 3 graus de llibertat. He utilitzat un braç de robot MeArm, aquest és un projecte de codi obert i el podeu fer fàcil i el podeu trobar aquí. Podeu crear el vostre propi braç de controlador o una altra aplicació amb aquest coneixement que estic encantat de compartir amb vosaltres.

Tots els components electrònics tenen enllaços per adquirir a la botiga, fitxers a la impressora 3D i codi per a Arduino IDE.

TLV493D pot ser un joystick El sensor magnètic 3D TLV493D-A1B6 ofereix una detecció tridimensional precisa amb un consum d’energia extremadament baix en un petit paquet de 6 pins. Amb la seva detecció de camp magnètic en direcció x, y i z, el sensor mesura de manera fiable moviments tridimensionals, lineals i de rotació.

Les aplicacions inclouen joysticks, elements de control (electrodomèstics, botons multifunció) o comptadors elèctrics (antimanipulació) i qualsevol altra aplicació que requereixi mesures angulars precises o baixos consums d’energia. El sensor de temperatura integrat també es pot utilitzar per a verificacions de plausibilitat. Les funcions clau són la detecció magnètica 3D amb un consum d’energia molt baix durant les operacions.

El sensor té una sortida digital mitjançant una interfície I2C estàndard basada en 2 fils de fins a 1 MBit / seg i resolució de dades de 12 bits per a cadascun, direcció de mesura (mesura de camp lineal Bx, By i Bz fins a + -130mT) TLV493D-A1B6 3DMagnetic és un forabord independent.

Podeu connectar-lo fàcilment a qualsevol microcontrolador que trieu, que sigui compatible amb Arduino IDE i tingui un nivell lògic de 3,3 V. En aquest projecte, fem servir l'element electrònic de gats i un tauler de desenvolupament que explicaré més endavant.

electroniccats.com/store/tlv493d-croquette…

L’avantatge d’utilitzar un sensor TLV493D és que només s’utilitzen dos cables amb I2C per rebre la informació, de manera que és una molt bona opció quan tenim molt pocs pins disponibles a la targeta, també gràcies als avantatges d’I2C podem connectar-nos més sensors. Podeu trobar el dipòsit d’aquest projecte aquí. Per a aquest projecte, utilitzarem un joystick que podeu imprimir en una impressora 3D o imprimir-lo a la vostra botiga d’impressió 3D més propera.

Els fitxers. STL s’afegeixen al final del projecte. El seu muntatge és molt senzill, el podeu veure en vídeo

Construeix el teu propi robot En aquest cas, construeixo el robot Mearm v1 que podeu trobar aquest projecte a la pàgina de l'autor aquí

Es tracta d’un robot fàcil de fabricar i de controlar perquè té servomotors a 5 volts. Podeu construir o utilitzar qualsevol robot que vulgueu, aquest projecte se centrarà en el control amb el sensor TLV493D.

Subministraments:

  • x1 Bast Pro Mini M0 Comprar
  • x1 Croqueta TLV493D Comprar
  • x1 Kit MeArm v1
  • Cables Dupont x20
  • x1 Protoboard
  • x2 Polsador
  • Imant x1 5 mm de diàmetre x 1 mm de gruix

Pas 1: Connexió del sensor amb Bast Pro Mini M0

Connexió del sensor amb Bast Pro Mini M0
Connexió del sensor amb Bast Pro Mini M0

Per controlar el braç del robot, s’utilitza una placa de desenvolupament Electronic Cats, un Bast Pro Mini M0 amb un microcontrolador SAMD21E ARM Cortex-M0.

Aquest xip funciona a 48 MHz, amb memòria de programació de 256 KB, SRAM de 32 KB i funciona amb una tensió d’1,6 V a 3,6 V. Gràcies a les seves especificacions el podem utilitzar per a un consum baix amb un bon rendiment i també programar-lo amb CircuitPython o algun altre llenguatge que permeti microcontroladors.

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

Si esteu interessats en saber més sobre aquesta targeta, us deixo l’enllaç del seu dipòsit.

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

Per controlar el moviment dels servomotors, s’utilitza el sensor magnètic TLV493D que enviarà el senyal per situar el servomotor als graus corresponents.

Amb un únic sensor, podem moure dos servomotors; en aquest exemple, només utilitzarem un únic sensor i un polsador per controlar la pinça.

Una altra proposta que podeu fer és afegir un altre sensor TLV493D i moure el tercer servomotor i la pinça. Si ho feu, deixeu la vostra experiència als comentaris i us convido a compartir el projecte.

La imatge mostra el circuit armat en una protoborda.

  • El primer servomotor és per a la pinça i es connecta al pin 2
  • El segon servomotor és per a la base del robot i es connecta al pin 3
  • El tercer servomotor és per a l'espatlla del robot i es connecta al pin 4
  • El quart servomotor és per al colze del robot i es connecta al pin 5
  • El primer polsador és aturar qualsevol moviment del robot i es connecta al pin 8 al desplegable amb una resistència de 2,2 Kohms.
  • El segon polsador és per al moviment d’obertura i tancament de la pinça i està connectat al pin 9 en el desplegable amb una resistència de 2,2 Kohms.

A la imatge del circuit, el sensor TLV493D no apareix perquè no es va afegir a fritzing, sinó que es va afegir un connector de 4 pins per simular els connectors VCC, GND, SCL, SDA. A la imatge, es col·loquen en el mateix ordre.

  • El primer pin es connecta a 3,3 volts a la placa
  • El segon pin es connecta a GND
  • El tercer pin SCL es connecta al pin A5 del tauler
  • El quart pin SDA es connecta al pin A4 de la placa

Gràcies a l’avantatge del xip SAMD21 podem utilitzar qualsevol dels seus pins digitals com a sortides PWM, cosa que ens servirà per enviar l’amplada de pols correcta per moure el servomotor.

Una altra informació important que cal tenir en compte és la font d'alimentació externa dels servomotors, al circuit es pot veure un connector d'endoll que es connecta a una font de 5 volts a una font de 2Amp, per evitar sobrecarregar la placa i danyar-la.

Tampoc no oblideu unir el senyal GND comú de la targeta i la font externa, en cas contrari, tindríeu problemes per controlar els servomotors ja que no tindrien la mateixa referència.

Pas 2: Codificació de l'IDE Arduino a Bast Pro Mini M0

Codificació de l’IDE Arduino a Bast Pro Mini M0
Codificació de l’IDE Arduino a Bast Pro Mini M0
Codificació de l’IDE Arduino a Bast Pro Mini M0
Codificació de l’IDE Arduino a Bast Pro Mini M0
Codificació de l’IDE Arduino a Bast Pro Mini M0
Codificació de l’IDE Arduino a Bast Pro Mini M0

El primer serà instal·lar la targeta Bast Pro Mini M0 a l’IDE Arduino, els passos es poden trobar al dipòsit d’Electronic Cats i són importants per al seu funcionament.

github.com/ElectronicCats/Arduino_Boards_I…

Quan tingueu a punt l'IDE Arduino, cal instal·lar la biblioteca oficial del sensor TLV493D, entreu a https://github.com/Infineon/TLV493D-A1B6-3DMagnet … i aneu a Versions.

A la primera part del codi, les biblioteques utilitzades es declaren, en aquest cas, Servo.h per als servomotors i TLV493D.h per al sensor.

Quan s’utilitza la biblioteca Servo.h és important declarar el nombre de servomotors, tot i que el robot en té 4 en aquest moment només s’utilitzen 3.

Els pins estan declarats per als botons que aturaran qualsevol moviment del robot i l'obertura i tancament de la pinça. Es declaren algunes variables globals que serviran per conèixer l’estat de la pinça i si hi ha moviment.

A la segona part del codi, mostrarem al monitor sèrie el valor del grau en què es troben els motors. Un altre punt important és establir el límit dels graus als servomotors, per a això s’utilitza la funció map () que converteix el valor dels moviments del sensor TLV493D al rang de 0 a 180 graus del servomotor.

Per a l’última part del codi, s’estableixen les condicions per activar el moviment dels servomotors amb el polsador i saber en quin estat es troba la pinça per al següent moviment quan es prem el segon polsador. Com podeu veure a les imatges anteriors, el codi no és difícil d’implementar i entendre, al final del projecte podeu trobar el codi.

Esteu aprenent a utilitzar Circuit Python?

Si esteu interessats en aprendre a utilitzar aquest IDE, podeu trobar la targeta Bast Pro Mini M0 al següent enllaç per descarregar el carregador d’arrencada i començar a programar-lo amb Python.

Pas 3: peces 3D

Si esteu interessats en fer el projecte, podeu descarregar les peces a.stl i imprimir-les. Trobareu els fitxers de la base i el pal giratori.

Recomanat: