» Elektronik » Arduino »Roboter auf Arduino!

Roboter auf Arduino!


Guten Tag an alle! Dieser Artikel richtet sich an Liebhaber von Elektronik, Robotik sowie an Menschen mit einem nicht standardmäßigen Blick auf die umliegenden Dinge!

Jetzt werde ich versuchen, den Prozess der Schöpfung und Montage so klar wie möglich zu beschreiben der Roboter mit e Füllung, nämlich auf Arduino! Lass uns gehen!

Was wir brauchen:
Dreileiterschleife (3 Stück). Es ist ratsam, authentischer zu nehmen.

Gewöhnliche Drähte

Potentiometer

Widerstände (220 Ohm)

Knopf

Batteriefach

Steckbrett

Na klar, ich selbst Arduinka

Und auch ein Erweiterungsboard dazu - so etwas wie MultiservoShieldeine große Anzahl von Servos zu steuern

Und noch mehr Konstruktor, die die Basis unseres Roboters sein wird, daher ist es ratsam, "stark" zu wählen.

Von den Tools, die Sie benötigen:
Ein Satz Schraubendreher, Schlüssel usw.

Sowie ein Lötkolben, Lötmittel und Flussmittel


Nun, fangen wir an!
Schritt 1. Herstellung des Hauptrahmens
Sammeln Sie zunächst die "zwei Buchstaben H". Es sieht folgendermaßen aus:

Dann einige Bauarbeiten, an denen unsere der Roboter wird stehen. Es ist überhaupt nicht notwendig wie auf dem Bild - nach Ihrem Ermessen. Es stellte sich so heraus:

Wir installieren unser "N" auf dem Support

Von unten ziehen wir die Schrauben fest

Auf dem anderen "H" reparieren wir das erste Servo, das für das Drehen der Köpfe unseres zukünftigen Roboters verantwortlich ist






Es stellt sich ungefähr so ​​heraus:

Fast der Rahmen ist fertig! Es bleibt, diese beiden Strukturen mit Metallplatten zu befestigen und dem Roboter Höhe zu geben!





Schritt 2: Erstellen eines Rahmens für zukünftige Roboterohren
Dazu müssen wir zwei ähnliche Strukturen zusammenbauen und die Servos darauf befestigen, wie in der Abbildung gezeigt:



Verbinden Sie dann mit Schrauben und Muttern den Hauptrahmen. Es wird sich Folgendes herausstellen:




Blick von oben:


Nun, ein bestimmter Prototyp des Roboters ist fast fertig! Mach weiter ..
Schritt 3. Augen machen und den ganzen Kopf unseres Roboters!
Dafür habe ich das alte Mobilteil von der Gegensprechanlage benutzt. Persönlich erinnert sie mich an ein Gesicht! Sehen Sie mehr ..

Wir machen zwei Löcher und befestigen die Wippe für das Servo am Rohr


Wir kleben sofort die LEDs an die Seiten und löten die Drähte an sie


Ich habe dünne verwendet:

Das ist passiert!

Schritt 4 Ohren machen
Wir werden gewöhnliche Kappen aus kleinen Kisten verwenden
Befestigen Sie auch die Schaukelstühle für serv




Jetzt reparieren wir mutig die Körperteile des Roboters auf den Servern
So:


Blick von oben:



Zurück:


Im Prinzip können Sie den Roboter jetzt genießen, aber wir werden die Aufgabe komplizieren. Wir werden die Augen und Ohren des Roboters mit Potentiometern und unserer Arduinka drehen
Schritt 5 Elektronik
Wenn wir das Arduino mit dem Multiservice-Schild kombinieren, führen wir von jedem Servo eine Dreileiterschleife zu den Stiften 9, 10, 11 (linkes Ohr, rechtes Ohr, Cent, wenn Sie den Roboter uns zugewandt haben).
Dann installieren wir auf dem Steckbrett ein Potentiometer, einen Knopf, Widerstände. Es wird so aussehen, natürlich hässlich, aber die Hauptsache funktioniert.







Ausführlicher!
So installieren Sie die Schaltfläche:


Wenn das weiße Kabel mit Strom versorgt wird, ist Rot der digitale Eingang des Mikrocontrollers Nr. 6, und der Widerstand geht nach Masse (gelbes Kabel).

So installieren Sie ein Potentiometer:


Roter Draht - Strom, Gelb - Erde, Weiß - Analogeingang des Mikrocontrollers Nr. 0 (wir schließen ein anderes Potentiometer auf die gleiche Weise an, nur Analogeingang des Controllers Nr. 1)

Wir installieren auch Widerstände für LEDs auf der Platine:

Der Strom wird von 3 und 5 Pins des Arduino geliefert und fließt durch die gelben und schwarzen Drähte und durch die Widerstände nach Masse (GND des Controllers).

Nun, im Grunde alles, wir sind mit der Elektronik fertig! Es bleibt nur der nächste Download Skizze und mit dem Roboter spielen !!

#include
#include
Multiservo myservo1;
Multiservo myservo2;
Multiservo myservo3;
int b, k1, p1, p2;
int A = 0;
int i = 0;
vorzeichenlose lange m2 = 0;
vorzeichenloses langes m1 = 0;
int r1 = 70;
int r2 = 110;
int r3 = 70;
 int h1 = 0;
 int h = 0;
void setup ()
{
  myservo1.attach (9); // linkes Ohr
  myservo2.attach (10); // rechtes Ohr
  myservo3.attach (11); // Augen
      pinMode (6, INPUT); // Schaltfläche
      PinMode (3, OUTPUT); // Augen leuchten PWM
      PinMode (5, OUTPUT);
}}
 void loop ()
{
   
    while (A == 0) // manueller Regelkreis des Roboters
    {
        b = digitalRead (6);
        wenn (! b) k1 = 1;
        if (b == 1 && k1 == 1)
        {
              Verzögerung (10);
              b = digitalRead (6);
              if (b == 1 && k1 == 1)
                {
                 A ist 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 ();
        wenn (i> 250) h1 = 1;
      }}
     
        if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = Millis ();
        wenn (i == 0) h1 = 0;
      }}
    }}
  while (A == 1) // autonomer Arbeitszyklus des Roboters
   {
       digitalWrite (13.0);
       b = digitalRead (6);
        wenn (! b) k1 = 1;
        if (b == 1 && k1 == 1)
        {
            Verzögerung (10);
            b = digitalRead (6);
            if (b == 1 && k1 == 1)
            {
                A ist 0;
                k1 = 0;
            }}
        }}
      analogWrite (3, i);
      analogWrite (5, i);
      if (millis ()> = m1 + 70 && h1 == 0)
      {
        i = i + 4;
        m1 = Millis ();
        wenn (i> 250) h1 = 1;
      }}
      if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = Millis ();
        wenn (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;
    wenn (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;
    wenn (r1 == 70) h = 0;
    m2 = Millis ();
   }}
   }}
}}


Der Code ist ziemlich groß, aber glauben Sie mir, es lohnt sich!
Kurz gesagt, was macht dieses Programm:
Wir haben eine Schaltfläche, die für zwei Zustände des Systems verantwortlich ist: Entweder steuern wir den Roboter manuell oder er führt Bewegungen aus, die bereits im Voraus registriert wurden. Wenn eine Taste gedrückt wird, ändern sich die Zustände für uns, und im Code ändern sich 2 Zyklen untereinander, in denen die entsprechenden Befehle registriert sind. Die Augen unseres Roboters leuchten allmählich auf, werden immer heller und verblassen dann. Aus diesem Grund haben wir die LEDs auf die Pins synchronisiert, die die PWM-Pulsweitenmodulation unterstützen.

Fotos des Roboters:




Klein Videoaufnahme, wie und was sich schließlich dreht:

Abschließend möchte ich sagen, dass dieser Roboter natürlich noch lange in Erinnerung bleiben kann, aber das ist der Geschmack eines jeden Menschen. Mach es! Erfinde! Entwickle dich! Viel Glück an alle!
7
6.7
5.7

Kommentar hinzufügen

    • lächelnlächeltxaxaokweiß nichtYahoonea
      ChefKratzerDummkopfjaja-jaaggressivGeheimnis
      Entschuldigungtanzendance2Tanz3VerzeihungHilfeGetränke
      hör aufFreundegutgut gutpfeifenOhnmachtZunge
      RauchklatschenCrayerklärenspöttischdon-t_mentionherunterladen
      Hitzeärgerlichlach1mdaTreffenMoskingnegativ
      not_iPopcornbestrafenlesenerschreckenAngstSuche
      verspottendankedasto_clueumnikakutstimme zu
      schlechtbeeeblack_eyeblum3errötenprahlenLangeweile
      zensiertAngenehmheitsecret2drohenSiegyusun_bespectacled
      shokrespektlolvorgezogenWillkommenKrutoyya_za
      ya_dobryiHelferne_huliganne_othodiFludVerbotschließen

Wir empfehlen Ihnen zu lesen:

Gib es für das Smartphone ...