» Electrònica » Arduino »Robot a Arduino!

Robot a Arduino!


Bon dia a tots! Aquest article estarà dedicat als amants de l'electrònica, la robòtica, així com a persones que no tinguin una mirada no estàndard sobre les coses que l'envolten.

Així que ara intentaré descriure el procés de creació i muntatge de la forma més clara possible el robot amb e farciment, és a dir, a Arduino! Anem!

El que necessitem:
Llaç de tres fils (3 peces) És convenient prendre més autèntic.

Cables ordinaris

Potentiòmetres

Resistències (220 ohm)

Botó

Compartiment de la bateria

Panell

Bé, és clar, jo mateix arduinka

I també un tauler d’expansió a ell - alguna cosa així MultiservoShieldper controlar un gran nombre de servos

I més constructor, que serà la base del nostre robot, per la qual cosa és recomanable triar "fort"

De les eines que necessiteu:
Un joc de tornavisos, claus, etc.

A més d'una soldadura, soldadura i fluix


Bé, comencem!
Pas 1. Fabricació del marc principal
Per començar, recull les "dues lletres H" Sembla així:

A continuació, alguna construcció sobre la qual la nostra el robot aguantarà. No és del tot necessari com a la imatge, segons el vostre criteri. Ha resultat així:

Instal·lem la nostra "N" al suport

Des de baix apretem els cargols

A l’altra “H” arreglem el primer servo, que és l’encarregat de girar els caps del nostre futur robot






Resulta una cosa així com la següent:

Gairebé el marc està a punt! Queda fixar aquestes dues estructures amb plaques metàl·liques i donar al robot alçada!





Pas 2: fer un marc per a futures orelles de robot
Per fer-ho, hem de reunir dues estructures similars i fixar-les, com es mostra a la figura:



A continuació, utilitzant cargols i femelles, connecteu-vos al marc principal. Resulta el següent:




Vista superior:


Bé, un cert prototip del robot ja està a punt! Endavant ..
Pas 3. Fer ulls i tot el cap del nostre robot!
Per això, he utilitzat el telèfon antic de l'intercomunicador. Personalment, ella em recorda una cara! Veure més ..

Fem dos forats i fixem el balancí per al servo al tub


Immediatament enganxem els LED als costats i soldem els cables


He utilitzat primes:

Això és el que va passar!

Pas # 4 Creació de les orelles
Utilitzarem taps ordinaris de caixes petites
També fixeu els balancins per servir




Ara arreglem amb audàcia les parts del cos del robot als servidors
Així:


Vista superior:



Enrere:


En principi, podeu gaudir del robot ara, però us complicarem la tasca .. Girem els ulls i les orelles del robot mitjançant potenciòmetres i el nostre arduinka
Pas electrònic 5
Combinant l’arduino amb l’escut multiservei, inserim un bucle de tres fils de cada servo als passadors 9, 10, 11 (Oïda esquerra, Oïda dreta, Cent, si poseu el robot de cara a nosaltres)
A continuació, a la placa del pa instal·lem un potenciòmetre, un botó, resistències .. Es veurà així, lleig, per descomptat, però el principal funciona)







Més detalls!
Com instal·lar el botó:


Quan el cable blanc s’encén, Red és l’entrada digital del microcontrolador núm. 6 i la resistència es posa a terra (cable groc)

Com instal·lar un potenciòmetre:


Entrada de fil vermell - Potència, Groc-terra, Blanc - Entrada analògica del microcontrolador núm. 0 (connectem un altre potenciòmetre de la mateixa manera, només l'entrada analògica del controlador núm. 1)

També instal·lem resistències per a leds a la placa:

el corrent se subministrarà a partir de 3 i 5 pins del arduino, i passarà a través dels cables grocs i negres i a través de les resistències anirà a terra (GND del controlador)

Bé, bàsicament tot, acabem amb electrònica! Només resta per descarregar el següent esbós i juga amb el robot !!

#incloure
#incloure
Multiserveu myservo1;
Multiserveu myservo2;
Multiserveu myservo3;
int b, k1, p1, p2;
int A = 0;
int i = 0;
m2 no signats = 0;
llarg no signat m1 = 0;
int r1 = 70;
int r2 = 110;
int r3 = 70;
 int h1 = 0;
 int h = 0;
nul configuració ()
{
  myservo1.attach (9); // orella esquerra
  myservo2.attach (10); // orella dreta
  myservo3.attach (11); // ulls
      pinMode (6, INPUT); // botó
      pinMode (3, OUTPUT); // llums d’ulls PWM
      pinMode (5, OUTPUT);
}
 bucle void ()
{
   
    while (A == 0) // bucle de control manual del robot
    {
        b = digitalRead (6);
        si (! b) k1 = 1;
        if (b == 1 && k1 == 1)
        {
              retard (10);
              b = digitalRead (6);
              if (b == 1 && k1 == 1)
                {
                 A és 1;
                 k1 = 0;
                }
        }
      p1 = int (analogRead (A0) / 6);
      p2 = int (analogRead (A1) / 6);
      myservo1.write (p1);
      myservo2.write (p1);
      myservo3.write (p2);
      analogWrite (3, i);
      analogWrite (5, i);
      if (millis ()> = m1 + 70 && h1 == 0)
      {
        i = i + 4;
        m1 = millis ();
        si (i> 250) h1 = 1;
      }
     
        if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = millis ();
        si (i == 0) h1 = 0;
      }
    }
  mentre que (A == 1) // cicle de treball autònom del robot
   {
       digitalWrite (13.0);
       b = digitalRead (6);
        si (! b) k1 = 1;
        if (b == 1 && k1 == 1)
        {
            retard (10);
            b = digitalRead (6);
            if (b == 1 && k1 == 1)
            {
                A és 0;
                k1 = 0;
            }
        }
      analogWrite (3, i);
      analogWrite (5, i);
      if (millis ()> = m1 + 70 && h1 == 0)
      {
        i = i + 4;
        m1 = millis ();
        si (i> 250) h1 = 1;
      }
      if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = millis ();
        si (i == 0) h1 = 0;
      }
   if (millis ()> = m2 + 15 && h == 0)
   {
    myservo1.write (r1);
    myservo2.write (r2);
    myservo3.write (r3);
    r1 = r1 + 1;
    r2 = r2-1;
    r3 = r3 + 1;
    si (r1 == 110) h = 1;
    m2 = millis ();
   }
   if (millis ()> = m2 + 15 && h == 1)
   {
    myservo1.write (r1); // 110
    myservo2.write (r2); // 70
    myservo3.write (r3); // 110
    r1 = r1-1;
    r2 = r2 + 1;
    r3 = r3-1;
    si (r1 == 70) h = 0;
    m2 = millis ();
   }
   }
}


El codi és bastant gran, però creieu-me que val la pena!
Breument, què fa aquest programa:
Tenim un botó responsable de 2 estats del sistema: o controlem el robot manualment, o bé realitza moviments ja registrats per endavant. Quan es prem un botó, els estats canvien per a nosaltres, i al codi es canvien 2 cicles entre ells, en els quals es registren les ordres corresponents. Els ulls del nostre robot s’il·luminen gradualment, es tornen més brillants i s’esvaeixen. és per això que hem batejat els LED als pins que suporten la modulació de l'amplada de pols PWM.

Fotos del robot:




Petita enregistrament de vídeo, com i què acaba convertint-se:

En conclusió, vull dir que, per descomptat, aquest robot es pot portar a la ment durant molt de temps, però aquest és el gust de totes les persones. Feu-ho! Inventa! Evoluciona! Molta sort a tots!
7
6.7
5.7

Afegeix un comentari

    • somriuresomriuxaxad'acordno ho séyahoonea
      capratllarximplesísí-síagressiusecret
      ho sentoballarballar2ballar3perdóajudarbegudes
      pararamicsbébondatxiuletswoonllengua
      fumaraplaudintcranideclararderisiudon-t_mentiondescarregar
      calorirritariure1mdareuniómosquitnegatiu
      no_icrispetescastigarllegirporespantosbuscar
      burlargràcies_youaixòto_clueumnikagutd'acord
      dolentbeeeblack_eyeblum3ruborpresumirl'avorriment
      censuradaplaersecret2amenaçarvictòriatusun_bespectacled
      xocrespectlolpreveurebenvingudaKrutoyja_za
      ja_dobryiajudantne_huliganne_othodifludprohibicióa prop

Us aconsellem que llegiu:

Doneu-lo al telèfon intel·ligent ...