Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Construire un robot quadrupède Arduino intelligent : guide étape par étape

Composants et fournitures

Arduino Mega 2560 1
Moteur servo SG90 12
Capteur ultrason HC-SR04 SparkFun 1
LED 5 mm rouge 4
LED 5 mm verte 4
LED bleue 4
Connecteur mâle 40 positions 1 rangée (0,1") 2
PCB personnalisé 1

Outils et machines nécessaires

Fer à souder (générique)

Applications et services en ligne

Arduino IDE

À propos de ce projet

Robot quadrupède basé sur Arduino ! Quadrupède signifie robot à quatre pattes, ressemblant à une araignée. Apprenons comment l'araignée marche et reproduisons-le avec Arduino.

Fournitures

Étape 1 : Composants requis

Étape 2 : Maintenir le centre de gravité

Construire un robot quadrupède Arduino intelligent : guide étape par étape

Le centre de gravité (CG) est le facteur principal lors de la marche. Il doit rester au centre du corps pour l'équilibre ; s'il sort de certaines limites, l'équilibre est perdu et le robot tombe.

Si chaque patte est à 45°, le CG est parfaitement centré. Mais si on bouge une patte, le CG se déplace de ce côté, risquant la chute.

Pour éviter cela, les pattes aux extrémités sont maintenues à un angle supérieur à 45° selon la taille du robot, formant un triangle où le CG reste à l'intérieur, libérant la quatrième patte pour bouger tout en gardant le CG dans le triangle.

Étape 3 : Procédure de marche

Construire un robot quadrupède Arduino intelligent : guide étape par étape

Étape 4 : Plans du quadrupède

LEGS.pdf BODY.pdf

Étape 5 : Construction du corps

Construire un robot quadrupède Arduino intelligent : guide étape par étape
Construire un robot quadrupède Arduino intelligent : guide étape par étape

Construire le corps selon les plans PDF.

Étape 6 : Connexions du circuit

Construire un robot quadrupède Arduino intelligent : guide étape par étape

Créez votre propre shield selon vos besoins. L'Arduino Mega a 15 broches PWM : 12 pour les servos, 3 pour la LED RGB, 2 pour le capteur ultrason.

Étape 7 : Initialisation des servos

Construire un robot quadrupède Arduino intelligent : guide étape par étape
#include <Servo.h> 
Servo servo[4][3]; 
const int servo_pin[4][3] = { {10,11,2}, {3,4,5}, {6,7,8}, {9, 12, 13} }; 
void setup() { 
  for (int i = 0; i < 4; i++) { 
    for (int j = 0; j < 3; j++) { 
      servo[i][j].attach(servo_pin[i][j]); delay(20); 
    } 
  } 
} 
void loop(void) { 
  for (int i = 0; i < 4; i++) { 
    for (int j = 0; j < 3; j++) { 
      servo[i][j].write(90); delay(20); 
    } 
  } 
}

Étape 8 : Étape finale

Construire un robot quadrupède Arduino intelligent : guide étape par étape
Construire un robot quadrupède Arduino intelligent : guide étape par étape

Code principal

spider (Arduino)

/* Includes */ 
#include <Servo.h> 
#include <FlexiTimer2.h> 
#define ledred 46 #define ledblue 44 #define ledgreen 45
/* Servos */ 
Servo servo[4][3]; 
const int servo_pin[4][3] = { {2, 3, 4}, {20, 6, 7}, {8, 9, 17}, {16, 12, 13} };
/* Dimensions robot */ 
const float length_a = 55; const float length_b = 77.5; const float length_c = 27.5; 
const float length_side = 71; const float z_absolute = -28;
/* Constantes mouvement */ 
const float z_default = -50, z_up = -30, z_boot = z_absolute; 
const float x_default = 62, x_offset = 0; 
const float y_start = 0, y_step = 40; const float y_default = x_default;
/* Variables mouvement */ 
volatile float site_now[4][3]; volatile float site_expect[4][3]; 
float temp_speed[4][3]; float move_speed; float speed_multiple = 1; 
const float spot_turn_speed = 4; const float leg_move_speed = 8; 
const float body_move_speed = 3; const float stand_seat_speed = 1; 
volatile int rest_counter; const float KEEP = 255; const float pi = 3.1415926;
/* Constantes rotation */ 
const float temp_a = sqrt(pow(2 * x_default + length_side, 2) + pow(y_step, 2)); 
const float temp_b = 2 * (y_start + y_step) + length_side; 
const float temp_c = sqrt(pow(2 * x_default + length_side, 2) + pow(2 * y_start + y_step + length_side, 2)); 
const float temp_alpha = acos((pow(temp_a, 2) + pow(temp_b, 2) - pow(temp_c, 2)) / 2 / temp_a / temp_b); 
const float turn_x1 = (temp_a - length_side) / 2; 
const float turn_y1 = y_start + y_step / 2; 
const float turn_x0 = turn_x1 - temp_b * cos(temp_alpha); 
const float turn_y0 = temp_b * sin(temp_alpha) - turn_y1 - length_side;

// setup, loop, fonctions mouvement (stand, step_forward, step_back, turn_left, turn_right, hand_wave, hand_shake, body_dance)
// service servos (timer 50Hz), conversion cartésien/polaire, mapping polaire/servo
// Code complet disponible dans la source originale

spider_fix.ino (Arduino) - Position initiale pattes

// Position initiale des pattes - RegisHsu 2015-09-09
#include <Servo.h> 
Servo servo[4][3]; 
const int servo_pin[4][3] = { {10,11,2}, {3,4,5}, {6,7,8}, {9, 12, 13} }; 
void setup() { 
  for (int i = 0; i < 4; i++) { 
    for (int j = 0; j < 3; j++) { 
      servo[i][j].attach(servo_pin[i][j]); delay(20); 
    } 
  } 
} 
void loop(void) { 
  for (int i = 0; i < 4; i++) { 
    for (int j = 0; j < 3; j++) { 
      servo[i][j].write(90); delay(20); 
    } 
  } 
}

Pièces personnalisées et boîtiers

Construire un robot quadrupède Arduino intelligent : guide étape par étape

Schémas

Construire un robot quadrupède Arduino intelligent : guide étape par étape

Processus de fabrication

  1. Construisez votre propre LUMAZOID : Visualiseur musical DIY Arduino
  2. Panneau de contrôle Arduino Nano pour Flight Simulator 2020 – Affichage LCD et CDI
  3. Contrôler une LED par Bluetooth avec Arduino et MIT App Inventor
  4. Minuteur de lavage des mains Arduino : un outil DIY simple pour lutter contre le COVID‑19
  5. Mélangeur de couleurs RVB Arduino – Projet DIY débutant
  6. Maîtriser une matrice LED 8×8 avec Arduino Uno : Guide pas à pas
  7. Dispositif de Traitement Radionique EMR DIY avec Arduino Nano
  8. Projecteurs RGB LED extérieurs DMX – Abordables et haute performance
  9. Jeu de Roulette LED DIY – Construisez une Borne d'Arcade Solo avec Arduino Nano