Taula de continguts:
- Pas 1: Visió general del projecte
- Pas 2: esquemes
- Pas 3: diagrama del controlador PS2
- Pas 4: Configuració de la connexió dels mòduls Zio
- Pas 5: connecteu el robot de servomotor a Zio 16 Servo Controller
- Pas 6: connecteu el vostre 16 Servo a DC / DC Booster i configureu-lo a 6,0V
- Pas 7: Connecteu Zuino M Uno al controlador servo Zio 16
- Pas 8: Connectar Uno al receptor PS2
- Pas 9: Codi del braç robòtic
- Pas 10: executeu el vostre codi
- Pas 11: explicació del codi
Vídeo: Braç robòtic amb mòduls Zio Part 2: 11 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
Al tutorial d’avui utilitzarem els 4 servos i un controlador sense fils PS2 per controlar el braç robotitzat.
Aquesta entrada al bloc forma part de la Sèrie de Robòtica Zio.
Introducció
Al nostre bloc anterior, vam publicar un tutorial de la primera part sobre com controlar un braç robòtic mitjançant mòduls Zio. La primera part es concentra principalment a controlar automàticament l’artilla del braç robòtic per obrir-la i tancar-la.
Al tutorial d’avui, l’anirem incorporant un controlador sense fils PS2 per controlar el braç robòtic. Per a aquest projecte, farem servir 4 servos.
Pas 1: Visió general del projecte
Nivell de dificultat:
Zio Padawan
Recursos útils:
Hauríeu de tenir una comprensió bàsica de com instal·lar les plaques de desenvolupament Zio. En aquest tutorial, suposem que la vostra placa de desenvolupament ja està configurada i està preparada per configurar-la. Si encara no heu configurat el tauler, consulteu el nostre tutorial de Zio Qwiic Start Guide següent per començar:
Zio Zuino M Guia d'inici Qwiic de l'ONU
Pas 2: esquemes
Aquí teniu els esquemes de cablejat del projecte Robot Arm Part 2, així com el diagrama del controlador PS2 necessari per entendre la vostra part de codificació.
Pas 3: diagrama del controlador PS2
Pas 4: Configuració de la connexió dels mòduls Zio
A continuació es mostra la connexió dels nostres mòduls Zio que es configuraran amb el braç robòtic. Connectar tots els mòduls junts és bastant fàcil i no trigarà més de 10 minuts a configurar-se.
Pas 5: connecteu el robot de servomotor a Zio 16 Servo Controller
Pas 6: connecteu el vostre 16 Servo a DC / DC Booster i configureu-lo a 6,0V
Utilitzem un Booster DC / DC per augmentar i ajustar el voltatge de subministrament de la bateria a 6,0.
Utilitzeu el potenciòmetre del DC Booster per ajustar el voltatge fins obtenir 6,0. Premeu el botó In / Out fins que la pantalla mostri 6.0. Primer heu de subministrar energia (bateria de 3,7 V) al vostre amplificador de CC / CC per ajustar el voltatge.
Pas 7: Connecteu Zuino M Uno al controlador servo Zio 16
Qwiic connecteu Zuino M Uno al controlador Zio Servo amb cable qwiic.
Pas 8: Connectar Uno al receptor PS2
Aquí teniu un diagrama de pin de les connexions. Necessiteu 5 cables de pont masculí a femení per a aquesta part.
Pas 9: Codi del braç robòtic
Utilitzarem la biblioteca Arduino de PS2 per codificar el nostre controlador sense fils PS2 perquè funcioni amb el nostre braç robòtic. Podeu trobar i descarregar el codi font d’aquest projecte Robotic Arm Part 2 a la nostra pàgina de Github.
Descarregueu i instal·leu les biblioteques següents i deseu-les a la carpeta local de biblioteques Arduino IDE:
- Adafruit PWM Servo Driver Library
- Biblioteca Arduino de PS2
Per instal·lar les biblioteques, obriu el vostre IDE Arduino, aneu a la pestanya Esbós, seleccioneu Inclou biblioteca -> Afegeix biblioteca Zip. Seleccioneu les biblioteques anteriors que voleu incloure al vostre IDE.
Arduino té una guia pràctica sobre com instal·lar biblioteques al vostre IDE Arduino. Consulteu-les aquí.
Pas 10: executeu el vostre codi
Obriu Arduino IDE. A Fitxers> Exemples> PS2_Arduino_Library, seleccioneu PS2X_Servo
Nota: Abans de poder controlar el braç robotitzat amb el controlador PS2, comproveu els passos següents: Enceneu el controlador PS2. Comproveu que el LED de mode s’encengui. Si no ho fa, premeu el botó Mode del controlador. Després de fer l’anterior, cal prémer el botó de restabliment del Zuino M Uno perquè pugui llegir la configuració del controlador. Cal moure L1 i el joystick per moure el braç robotitzat.
- El joystick esquerre controla la flexió del braç cap amunt o cap avall
- El joystick dret controla la garra per obrir-la o tancar-la i girar la garra cap a l'esquerra o cap a la dreta.
Pas 11: explicació del codi
L’ús de la biblioteca PS2X Arduino és senzill, només requereix una inicialització, una configuració i després una ordre de lectura.
Per establir la connexió del controlador PS2 amb el Uno, a continuació es mostren els pins que heu de definir al codi:
/ ************************************************** *************** * establir pins connectats al controlador PS2: * - 1e columna: original * - 2e colmun: Stef? * substitueix els números dels pins pels que fas servir ******************************************* ********************** / # define PS2_DAT 13 // 14 #define PS2_CMD 11 // 15 # define PS2_SEL 10 // 16 # define PS2_CLK 12 // 17
Hem substituït els pins pels que fem servir per connectar-nos al nostre Uno tal com s’indica al diagrama de pins anterior.
/ ************************************************** **************** seleccioneu els modes del controlador PS2: * - pressions = lectura analògica dels botons automàtics * - rumble = motor rumb * comentari 1 de les línies per a cada selecció de mode ** *************************************************** ************ / // # define pressions true # define pressions false // # define rumble true # define rumble false
Aquí hem definit el mode PS2 per a pressions i estrèpit com a fals. Vam comentar els que no fem servir.
Només utilitzarem l’ordre Joystick del controlador i L1 per controlar el moviment del nostre braç robòtic.
void loop () {/ * Heu de llegir Gamepad per obtenir nous valors i establir valors de vibració ps2x.read_gamepad (motor petit encès / apagat, força del motor més gran de 0-255) si no activeu el rumble, utilitzeu ps2x.read_gamepad (); sense valors Hauríeu de trucar-ho almenys un cop al segon * / if (error == 1) // saltar bucle si no es troba cap controlador; else {// DualShock Controller ps2x.read_gamepad (fals, vibrador); // llegiu el controlador i configureu el motor gran perquè giri a la velocitat de 'vibració' si (ps2x. Button (PSB_START)) // serà TRUE sempre que es prem el botó Serial.println ("Es manté l'inici"); if (ps2x. Button (PSB_SELECT)) Serial.println ("La selecció està en espera"); vibrar = ps2x. Analog (PSAB_CROSS); // això establirà la velocitat de vibració del motor gran en funció de la intensitat amb la qual premeu el botó blau (X) si (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// imprimeix els valors del pal si algú és TRUE RY_Value = ps2x. Analog (PSS_RY); RX_Value = ps2x. Analog (PSS_RX); LY_Value = ps2x. Analog (PSS_LY); LX_Value = ps2x. Analog (PSS_LX); Serial.print ("Valors Stick:"); Serial.print (RX_Value); Serial.print (""); Serial.print (RY_Value); Serial.print (""); Serial.print (LY_Value); Serial.print (""); Serial.println (LX_Value);
El codi següent és on codifiquem els nostres servos que controlen el nostre braç robòtic que incloem a la funció de trucada a ps2x.button (PSB_L1) || botó ps2x. (PSB_R1).
Heu de prémer el botó L1 o R1 juntament amb el joystick per controlar el braç robotitzat.
El joystick esquerre controla els servos 2 i 3 de la part del braç: controla la flexió cap amunt i cap avall del braç respectivament, mentre que el joystick dret controla els servos 0 i 1 de l’arpa del braç robòtic per obrir-lo o tancar-lo i girar-lo a l’esquerra o a la dreta.
SERVO 0, 1 - Arpa SERVO 2, 3 - Braç
Podeu fer canvis als valors d’aquesta secció per controlar el grau de l’angle del braç robotitzat:
pulselen0 = mapa (valor_RY, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = mapa (RX_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = mapa (LY_Value, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = mapa (LX_Value, 0, 255, SERVOMIN3, SERVOMAX3);
Recomanat:
Control del braç robòtic amb Zio mitjançant el controlador PS2: 4 passos
Controlar el braç robòtic amb Zio mitjançant el controlador PS2: aquesta entrada al bloc forma part de la sèrie Zio Robotics. En aquest tutorial, afegirem una altra part al nostre braç robòtic. Els tutorials anteriors no inclouen una base per al
Braç robòtic amb mòduls Zio Part 3: 4 passos
Braç robòtic amb mòduls Zio Part 3: Aquesta entrada al bloc forma part de la Sèrie Zio Robotics. Introducció Al nostre bloc anterior, vam publicar tutorial de les parts 1 i 2 sobre com controlar un braç robotitzat mitjançant mòduls Zio. La primera part es concentra principalment a controlar automàticament la vostra ungla de robòtica
Presentació d'I2C amb mòduls Zio i Qwiic: 6 passos
Presentació de I2C With Zio Modules i Qwiic: Robin Sharma va dir: "Les petites millores diàries al llarg del temps porten a resultats impressionants". És possible que estigueu pensant: "Aw, una altra publicació d'I2C?". Bé, segur que hi ha milers d’informació pel que fa a I2C. Però estigueu atents, això no és només un I2C més
Controlar un braç robòtic amb mòduls Zio Part 1: 8 passos
Controlar un braç robòtic amb mòduls Zio Part 1: aquesta entrada al bloc forma part de la sèrie Zio Robotics. Introducció En aquest tutorial, construirem un projecte on utilitzarem els mòduls Zio per controlar el braç robotitzat. Aquest projecte us ensenyarà a fer que la vostra arpa del braç robòtic s’obri i es tanqui. Aquest n
Comunicació sense fils mitjançant mòduls RF de 433 MHz i microcontroladors Pic. Part 2: 4 passos (amb imatges)
Comunicació sense fils mitjançant mòduls RF de 433 MHz i microcontroladors Pic. Part 2: a la primera part d’aquest instructiu, vaig demostrar com programar un PIC12F1822 amb el compilador MPLAB IDE i XC8, per enviar una cadena senzilla sense fils mitjançant mòduls TX / RX 433 MHz barats. El mòdul receptor es va connectar mitjançant un USB a UART TTL. anunci per cable