» อิเล็กทรอนิกส์ » Arduino »หุ่นยนต์บน Arduino!

หุ่นยนต์บน Arduino!


ขอให้เป็นวันที่ดีสำหรับทุกคน! บทความนี้จะทุ่มเทให้กับคนรักของอิเล็กทรอนิกส์หุ่นยนต์เช่นเดียวกับคนที่มีลักษณะที่ไม่ได้มาตรฐานในสิ่งรอบ!

ดังนั้นตอนนี้ฉันจะพยายามอธิบายกระบวนการสร้างการชุมนุมอย่างชัดเจนที่สุด หุ่นยนต์ กับ อิเล็กทรอนิกส์ การบรรจุคือใน Arduino! ไปกันเถอะ!

สิ่งที่เราต้องการ:
ห่วงสามสาย (3 ชิ้น) ขอแนะนำให้ใช้เวลาจริงมากขึ้น

สายสามัญ

มิเตอร์

ตัวต้านทาน (220 โอห์ม)

ปุ่ม

ช่องใส่แบตเตอรี่

คณะกรรมการการสร้างต้นแบบ

แน่นอนตัวเอง arduinka

และยังมีบอร์ดขยายตัวอีกด้วย - คล้าย ๆ MultiservoShieldเพื่อควบคุมเซอร์โวจำนวนมาก

และอีกต่อไป นักออกแบบซึ่งจะเป็นพื้นฐานของหุ่นยนต์ของเราดังนั้นจึงแนะนำให้เลือก "แข็งแรง"

จากเครื่องมือที่คุณต้องการ:
ชุดไขควงกุญแจ ฯลฯ

เช่นเดียวกับหัวแร้งบัดกรีและฟลักซ์


เริ่มกันเลยดีกว่า!
ขั้นตอนที่ 1 การประดิษฐ์ของกรอบหลัก
ในการเริ่มต้นสะสม "ตัวอักษรสองตัว H" ดูเหมือนว่า:

แล้วการก่อสร้างที่เรา หุ่นยนต์ จะยืน มันไม่จำเป็นเท่าที่เห็นในภาพตามดุลยพินิจของคุณ .. มันกลับกลายเป็นเช่นนี้:

เราติดตั้ง "N" ของเราบนการสนับสนุน

จากด้านล่างเราขันน็อตให้แน่น

ในอีก "H" เราแก้ไขเซอร์โวตัวแรกซึ่งมีหน้าที่เปลี่ยนหัวของหุ่นยนต์ในอนาคตของเรา






มันกลับกลายเป็นดังนี้:

เกือบเฟรมพร้อมแล้ว! มันยังคงยึดโครงสร้างทั้งสองด้วยแผ่นโลหะและให้ความสูงของหุ่นยนต์!





ขั้นตอนที่ # 2: สร้างเฟรมสำหรับหูหุ่นยนต์ในอนาคต
ในการทำเช่นนี้เราจำเป็นต้องรวบรวมโครงสร้างที่คล้ายกันสองโครงสร้างและแก้ไขเซอร์โวบนโครงสร้างดังที่แสดงในภาพ:



จากนั้นใช้สลักเกลียวและถั่วเชื่อมต่อกับเฟรมหลัก มันจะเปิดออกดังต่อไปนี้:




มุมมองด้านบน:


ต้นแบบของหุ่นยนต์บางตัวเกือบพร้อมแล้ว! ไปข้างหน้า ..
ขั้นตอนที่ # 3 ทำให้ตาและหัวทั้งหมดของหุ่นยนต์ของเรา!
สำหรับเรื่องนี้ฉันใช้เครื่องเก่าจากอินเตอร์คอม โดยส่วนตัวแล้วเธอทำให้ฉันนึกถึงใบหน้า! ดูเพิ่มเติม ..

เราสร้างสองรูและยึดโยกสำหรับเซอร์โวกับท่อ


เราติดไฟ LED ที่ด้านข้างทันทีและประสานสายไฟเข้ากับพวกเขา


ฉันใช้บาง ๆ

นั่นคือสิ่งที่เกิดขึ้น!

ขั้นตอนที่ # 4 การทำหู
เราจะใช้แคปธรรมดาจากกล่องเล็ก ๆ
ติดเก้าอี้โยกให้บริการด้วย




ตอนนี้เราแก้ไขส่วนของหุ่นยนต์บนเซิร์ฟเวอร์อย่างกล้าหาญ
เช่นนี้


มุมมองด้านบน:



ด้านหลัง:


โดยหลักการแล้วคุณสามารถเพลิดเพลินกับหุ่นยนต์ได้ในตอนนี้ แต่เราจะทำให้งานซับซ้อนขึ้น .. เราจะเปลี่ยนสายตาและหูของหุ่นยนต์โดยใช้โพเทนชิโอมิเตอร์และอาร์ดูกก้าของเรา
ขั้นตอนที่ # 5 อุปกรณ์อิเล็กทรอนิกส์
เมื่อรวมอาร์ดิโนเข้ากับชุดป้องกันหลายชุดเราจะใส่ลูปสามสายจากแต่ละเซอร์โวเข้ากับพิน 9, 10, 11 (หูซ้าย, หูข้างขวา, Cent หากคุณวางหุ่นยนต์หันหน้าเข้าหาเรา)
จากนั้นบนเขียงหั่นขนมเราติดตั้งโพเทนชิออมิเตอร์, ปุ่ม, ตัวต้านทาน .. มันจะมีลักษณะเช่นนี้, น่าเกลียดแน่นอน, แต่สิ่งสำคัญใช้งานได้)







รายละเอียดเพิ่มเติม!
วิธีติดตั้งปุ่ม:


เมื่อสายไฟสีขาวเป็นไฟฟ้าสีแดงคืออินพุตดิจิตอลของไมโครคอนโทรลเลอร์หมายเลข 6 และตัวต้านทานไปที่กราวด์ (สายสีเหลือง)

วิธีการติดตั้งโพเทนชิออมิเตอร์:


สายสีแดง - กำลังไฟ, สีเหลือง - ดิน, สีขาว - อินพุตแบบอะนาล็อกของไมโครคอนโทรลเลอร์หมายเลข 0 (เราเชื่อมต่อโพเทนชิโอมิเตอร์แบบอื่นในลักษณะเดียวกัน, เพียงอินพุตแบบอะนาล็อกของคอนโทรลเลอร์หมายเลข 1)

นอกจากนี้เรายังติดตั้งตัวต้านทานสำหรับไฟ LED บนบอร์ด:

กระแสจะถูกส่งจาก 3 และ 5 พินของอาร์ดิโนและจะผ่านสายสีเหลืองและสีดำและผ่านตัวต้านทานไปยังพื้นดิน (คอนโทรลเลอร์ GND)

โดยพื้นฐานแล้วทุกอย่างเราทำด้วยอุปกรณ์อิเล็กทรอนิกส์! มันยังคงเป็นเพียงการดาวน์โหลดต่อไป ร่าง และเล่นกับหุ่นยนต์ !!

#include
#include
Multiservo myservo1;
Multiservo myservo2;
Multiservo myservo3;
int b, k1, p1, p2;
int A = 0;
int i = 0;
m2 ที่ไม่ได้ลงชื่อยาว = 0;
m1 แบบไม่ลงนามที่มีความยาว = 0;
int r1 = 70;
int r2 = 110;
int r3 = 70;
 int h1 = 0;
 int h = 0;
การตั้งค่าเป็นโมฆะ ()
{
  myservo1.attach (9); // หูข้างซ้าย
  myservo2.attach (10); // หูข้างขวา
  myservo3.attach (11); // ดวงตา
      pinMode (6, INPUT); ปุ่ม //
      pinMode (3, OUTPUT); // ดวงตาสว่างขึ้น PWM
      pinMode (5, OUTPUT);
}
 เป็นโมฆะห่วง ()
{
   
    ในขณะที่ (A == 0) // วนลูปควบคุมด้วยตนเอง
    {
        b = digitalRead (6);
        if (! b) k1 = 1;
        ถ้า (b == 1 && k1 == 1)
        {
              ล่าช้า (10);
              b = digitalRead (6);
              ถ้า (b == 1 && k1 == 1)
                {
                 A คือ 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 ();
        ถ้า (i> 250) h1 = 1;
      }
     
        if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = millis ();
        ถ้า (i == 0) h1 = 0;
      }
    }
  ในขณะที่ (A == 1) // รอบการทำงานของหุ่นยนต์อัตโนมัติ
   {
       digitalWrite (13.0);
       b = digitalRead (6);
        if (! b) k1 = 1;
        ถ้า (b == 1 && k1 == 1)
        {
            ล่าช้า (10);
            b = digitalRead (6);
            ถ้า (b == 1 && k1 == 1)
            {
                A คือ 0;
                k1 = 0;
            }
        }
      analogWrite (3, i);
      analogWrite (5, i);
      if (millis ()> = m1 + 70 && h1 == 0)
      {
        i = i + 4;
        m1 = millis ();
        ถ้า (i> 250) h1 = 1;
      }
      if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = millis ();
        ถ้า (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;
    ถ้า (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;
    ถ้า (r1 == 70) h = 0;
    m2 = millis ();
   }
   }
}


รหัสค่อนข้างใหญ่ แต่เชื่อฉันว่ามันคุ้มค่า!
สั้น ๆ โปรแกรมนี้ทำอะไร:
เรามีปุ่มที่รับผิดชอบ 2 สถานะของระบบ: เราสามารถควบคุมหุ่นยนต์ด้วยตนเองหรือดำเนินการเคลื่อนไหวที่ลงทะเบียนไว้ล่วงหน้าแล้ว เมื่อกดปุ่มสถานะจะเปลี่ยนสำหรับเราและในรหัสจะมีการเปลี่ยนแปลง 2 รอบซึ่งจะมีการลงทะเบียนคำสั่งที่เกี่ยวข้อง ดวงตาของหุ่นยนต์ของเราสว่างขึ้นเรื่อย ๆ สว่างขึ้นและสว่างขึ้นแล้วจางหายไป นั่นคือเหตุผลที่เราได้ทำการขนานนาม LEDs ไปยังพินที่รองรับ PWM - การปรับความกว้างพัลส์

รูปถ่ายของหุ่นยนต์:




เล็ก บันทึกวิดีโออย่างไรและสิ่งที่กำลังหมุนในที่สุด:

สรุปแล้วฉันอยากจะบอกว่าแน่นอนหุ่นยนต์ตัวนี้สามารถนำมาพิจารณาเป็นเวลานาน แต่นี่เป็นรสนิยมของทุกคน ทำมัน! คิดค้น! เติบโต! ขอให้โชคดีทุกคน!
7
6.7
5.7

เพิ่มความคิดเห็น

    • รอยยิ้มรอยยิ้มxaxaตกลงdontknowyahooNea
      นายรอยขีดข่วนคนโง่ใช่ใช่ใช่ก้าวร้าวลับ
      ขอโทษเต้นdance2dance3ให้อภัยช่วยเหลือเครื่องดื่ม
      หยุดเพื่อนดีgoodgoodนกหวีดหน้ามืดตามัวลิ้น
      ควันการตบมือเครย์ประกาศเป็นขี้ปากดอน t_mentionดาวน์โหลด
      ความร้อนโมโหlaugh1ภาคตะวันออกเฉียงเหนือประชุมmoskingเชิงลบ
      not_iข้าวโพดคั่วลงโทษอ่านทำให้ตกใจกลัวค้นหา
      ยั่วยุthank_youนี้to_clueumnikรุนแรงเห็นด้วย
      ไม่ดีbeeeblack_eyeblum3หน้าแดงโม้ความเบื่อ
      เซ็นเซอร์การหยอกล้อsecret2ขู่ชัยชนะYusun_bespectacled
      shokrespektฮ่า ๆprevedยินดีต้อนรับkrutoyya_za
      ya_dobryiผู้ช่วยne_huliganne_othodiFLUDห้ามใกล้

เราแนะนำให้คุณอ่าน:

มอบให้กับสมาร์ทโฟน ...