สารบัญ:

หุ่นยนต์งูพิมพ์ 3 มิติ: 7 ขั้นตอน (พร้อมรูปภาพ)
หุ่นยนต์งูพิมพ์ 3 มิติ: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: หุ่นยนต์งูพิมพ์ 3 มิติ: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: หุ่นยนต์งูพิมพ์ 3 มิติ: 7 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: ลองเป็นไททั่น #ตลก #ไททัน #attackontitan #eren 2024, พฤศจิกายน
Anonim
Image
Image
อะไหล่
อะไหล่

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

ขั้นตอนที่ 1: อะไหล่

อะไหล่
อะไหล่
อะไหล่
อะไหล่

นี่คือสิ่งที่เราต้องการ:

  • 8 ไมโครเซอร์โวมอเตอร์
  • ชิ้นส่วนที่พิมพ์ 3 มิติบางส่วน
  • สกรู
  • 3, 7V li-po แบตเตอรี่
  • บางส่วนเพื่อสร้าง PCB (atmega328 SMD, ตัวเก็บประจุ 100nF, ตัวเก็บประจุ470μF, ตัวต้านทาน 1, 2k, หมุดทองบางส่วน) การทำ PCB สำหรับโครงการนี้เป็นสิ่งสำคัญมาก เพราะเมื่อคุณเชื่อมต่อทุกอย่างบนเขียงหั่นขนม งูของคุณจะไม่สามารถขยับได้

ขั้นตอนที่ 2: โมเดล 3 มิติ

โมเดล 3 มิติ
โมเดล 3 มิติ

ด้านบนคุณสามารถเห็นภาพของงูตัวนี้ ไฟล์ (.stl) คุณสามารถดาวน์โหลดได้ ที่นี่ หรือในสิ่งของฉัน ข้อมูลบางอย่างเกี่ยวกับการตั้งค่าสำหรับการพิมพ์:

สำหรับการพิมพ์เซ็กเมนต์และส่วนหัว ฉันแนะนำให้เพิ่ม raft. Supports ไม่จำเป็นสำหรับออบเจกต์ทั้งหมด Infill ไม่ได้สำคัญขนาดนั้น เพราะทุกรุ่นบางมาก และแทบจะมีแค่ปริมณฑล แต่ผมใช้ 20%

คุณต้องการ:

8x snake_segment

1x หัวงู

1x snake_back

ขั้นตอนที่ 3: PCB

PCB
PCB

ด้านล่างนี้คุณจะพบไฟล์ eagle (.sch และ.brd) เพียงดาวน์โหลดไฟล์เหล่านี้โดยเปิดใน eagle ไปที่มุมมองบอร์ด คลิก ctrl + p แล้วพิมพ์ หากคุณไม่ทราบวิธีสร้าง PCB คุณสามารถอ่านได้ที่นี่:

www.instructables.com/id/PCB-making-guide/

บนสคีมาเขียนว่าไมโครคอนโทรลเลอร์คือ atmega8 แต่มันคือ atmega328 มันมีพินเอาต์เหมือนกัน แต่ไม่มี atmega328 ในอีเกิล

ขั้นตอนที่ 4: การประกอบ

การประกอบ
การประกอบ

หลังจากพิมพ์ชิ้นส่วนทั้งหมดแล้ว คุณสามารถประกอบเข้าด้วยกันได้ วางเซอร์โวเป็นส่วนใดส่วนหนึ่ง ขันให้เข้ากับเซกเมนต์ด้วยสกรู M2 จากนั้นขันสกรูส่วนถัดไปเข้ากับแขนเซอร์โว หากคุณไม่ทราบวิธีประกอบคุณสามารถดูวิดีโอได้

ขั้นตอนที่ 5: การเชื่อมต่อ

การเชื่อมต่อ
การเชื่อมต่อ

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

www.arduino.cc/en/Tutorial/ArduinoToBreadboard

คุณต้องมีโปรแกรมเมอร์หรือ Arduino ตัวอื่นเพื่อเบิร์น หลังจากเบิร์นแล้ว คุณสามารถตั้งโปรแกรมได้โดยใช้ตัวแปลง USB-UART หรือโปรแกรมเดียวกับที่คุณใช้สำหรับเบิร์น bootloader

หลังจากอัปโหลดโปรแกรม คุณสามารถเชื่อมต่อเซอร์โวกับบอร์ดได้ เซอร์โวสุดท้าย (ที่ปลายงู) คือเซอร์โว 1 และเซอร์โว 8 ที่ใกล้ที่สุดกับหัวงู

ไม่มีตัวกันโคลงใด ๆ บนบอร์ดดังนั้นแรงดันไฟฟ้าสูงสุดที่คุณสามารถเชื่อมต่อได้คือ 5V

Atmega เช่นเดียวกับเซอร์โวมอเตอร์จะทำงานกับ 3, 7V Li-Po และฉันขอแนะนำให้ใช้สำหรับโครงการนี้เพราะมันเล็กมากและทรงพลังมาก คุณสามารถหาได้ในของเล่น RC เก่า (ฉันพบของฉันในเฮลิคอปเตอร์ RC เก่า)

ฉันเพิ่มพิน RX และ TX ลงในบอร์ดสำหรับการเขียนโปรแกรม แต่ยังสำหรับการขยายในอนาคต คุณสามารถเชื่อมต่อกับเซ็นเซอร์ที่นี่หรือเช่น โมดูลบลูทูธ

ขั้นตอนที่ 6: โปรแกรม

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

หากคุณต้องการ คุณสามารถเปลี่ยนการหน่วงเวลาได้เมื่อสิ้นสุดการวนซ้ำ นี้ล่าช้าควบคุมความเร็วของงู ดังนั้น ถ้าคุณให้ค่าน้อยกว่า มันจะเคลื่อนที่เร็วขึ้น ค่าสูง = เคลื่อนที่ช้าลง ผมให้ 6 เพราะนี่คือความเร็วสูงสุดที่งูไม่พลิกคว่ำ แต่คุณสามารถทดลองกับสิ่งนี้ได้

คุณยังสามารถเปลี่ยนค่าสูงสุดและต่ำสุดเพื่อทำให้การเคลื่อนไหวใหญ่ขึ้น

#รวม

ซอฟต์แวร์เซอร์โวเซอร์โว1,เซอร์โว2,เซอร์โว3,เซอร์โว4,เซอร์โว5,เซอร์โว6,เซอร์โว7,เซอร์โว8;

int b_pos, c_pos, d_pos, e_pos; คำสั่งสตริง; ความแตกต่าง int = 30; มุม int1 = 90; มุม int2 = 150;

int ser1 = 30;

int ser2 = 70; int ser3 = 110; int ser4 = 150;

int ขั้นต่ำ = 40;

int สูงสุด = 170;

bool increment_ser1 = จริง;

บูล increment_ser2 = จริง; บูล increment_ser3 = จริง; บูล increment_ser4 = จริง;

บูล increment_ser5 = จริง;

int ser5 = 90;

บูล increment_ser6 = จริง;

int ser6 = 90;

การตั้งค่าเป็นโมฆะ () {

Serial.begin(9600); servo1.attach(3); servo2.attach(5); servo3.attach(6); servo4.attach(9); servo5.attach(10); servo6.attach(11); servo7.attach(12); servo8.attach(13);

servo1.write(90);

servo2.write (130); servo3.write (90); servo4.write(100); servo5.write(90); servo6.write (90); servo7.write(90); servo8.write (90);

}

วงเป็นโมฆะ () {

ซึ่งไปข้างหน้า(); ซอฟต์แวร์เซอร์โว::รีเฟรช (); }

โมฆะไปข้างหน้า (){

ถ้า(increment_ser1){

ser1++; }อื่น{ ser1--; }

ถ้า (ser1 สูงสุด){

increment_ser1 = เท็จ; }

servo1.write(ser1);

ถ้า(increment_ser2){

ser2++; }อื่น{ ser2--; }

ถ้า (ser2 สูงสุด){

increment_ser2 = เท็จ; }

servo3.write(ser2);

ถ้า(increment_ser3){

ser3++; }อื่น{ ser3--; }

ถ้า (สูงสุด ser3) {

increment_ser3 = เท็จ; }

servo5.write(ser3);

ถ้า(increment_ser4){

ser4++; }อื่น{ ser4--; }

ถ้า (สูงสุด ser4) {

increment_ser4 = เท็จ; }

servo7.write(ser4);

ล่าช้า(6);

}

ขั้นตอนที่ 7: บทสรุป

บทสรุป
บทสรุป
บทสรุป
บทสรุป

ฉันคิดว่าหุ่นยนต์ตัวนี้ดูดีมาก ฉันอยากทำหุ่นยนต์งู แต่สุดท้ายฉันทำบางอย่างที่คล้ายกับหนอน แต่ใช้งานได้ดีมาก หากคุณมีคำถามใด ๆ แสดงความคิดเห็นหรือเขียนถึงฉัน: [email protected]

คุณสามารถอ่านเกี่ยวกับหุ่นยนต์ตัวนี้ได้จากเว็บไซต์ของฉัน (เป็นภาษาโปแลนด์):

nikodembartnik.pl/post.php?id=3

หุ่นยนต์ตัวนี้ได้รับรางวัลชนะเลิศจากงาน Robots Festival ใน Chorzów ในประเภทฟรีสไตล์

Robotics Contest 2016
Robotics Contest 2016
Robotics Contest 2016
Robotics Contest 2016

รางวัลรองชนะเลิศการประกวดหุ่นยนต์ประจำปี 2559

แนะนำ: