สารบัญ:
- ขั้นตอนที่ 1: การออกแบบและการประกอบ:
- ขั้นตอนที่ 2: รหัส:
- ขั้นตอนที่ 3: อิเล็กทรอนิกส์:
- ขั้นตอนที่ 4: อยู่ระหว่างการปรับปรุง:
- ขั้นตอนที่ 5: การปรับปรุงในอนาคต:
วีดีโอ: แขนกล Arduino: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
เนื่องจากเป็นโครงการแรกของฉันหลังจาก 15 บทช่วยสอนของชุดเริ่มต้น Arduino ของฉัน จุดประสงค์ที่แท้จริงของมันคือเพื่อให้ได้นักวิจารณ์ เคล็ดลับ คำแนะนำ แนวคิดจากทุกคนที่รู้จักมากกว่าฉัน
โครงงานนี้เกี่ยวกับแขนหุ่นยนต์ 4 dofs และกริป ด้วยงบประมาณที่ต่ำพอสมควร: โครงสร้างถูกตัดโดยเพื่อน เซอร์โว 4 ตัวราคา 30 ยูโร จอยสติ๊ก 2 ตัว 4 ยูโร สลักเกลียว ฯลฯ ในราคาไม่ถึง 10 ยูโร และส่วนที่เหลือทั้งหมด (Arduino, สายไฟ, เซอร์โวของกริป เป็นต้น) รวมอยู่ในชุดเริ่มต้นของฉันแล้ว รวมเป็นเงิน 40-45 ยูโร ซึ่งประมาณ 45-50 ดอลลาร์สหรัฐ (ราคาเท่า me-arm kit แต่เดี๋ยวก่อน มันเป็นเรื่องสนุกที่จะต้องทำด้วยตัวเอง และไม่ปฏิบัติตามคำแนะนำเหมือนเครื่องจักร)
เนื่องจากนี่เป็นโปรเจ็กต์แรกและสอนได้ของฉัน ฉันจึงเข้าร่วม "ผู้แต่งครั้งแรก" และการแข่งขันอื่นๆ อีกสองสามรายการ ดังนั้นหากคุณชอบ โปรดโหวต:)
ขั้นตอนที่ 1: การออกแบบและการประกอบ:
อันดับแรก ฉันต้องการโครงสร้าง: นี่เป็นส่วนที่ยาวที่สุด เนื่องจากฉันไม่ต้องการคัดลอกและวางโครงการจากคนอื่น ฉันจึงใช้โครงการเป็นข้อมูลอ้างอิงและฉัน (และเพื่อนร่วมชั้นที่มีทักษะอีกสองคนที่ช่วยฉันไว้จริงๆ) เริ่มปรับเปลี่ยนตามความต้องการของเรา (เซอร์โวต่าง ๆ ที่มีแรงบิด น้ำหนักและขนาดต่างกัน เป็นต้น) ฉันต้องสร้างมันสองสามครั้ง แต่ละอันฉันพบว่ามีบางอย่างผิดปกติ และเราต้องตัดบางชิ้นแล้วลองใหม่ ฉันได้แนบไฟล์.dxf แล้ว ในกรณีที่คุณต้องการใช้ จากนั้นฉันต้องซื้ออุปกรณ์อิเล็กทรอนิกส์:ชิ้นส่วนส่วนใหญ่เป็นแบบมาตรฐาน ส่วนที่ยากคือการเลือกเซอร์โว ฉันคำนวณแรงบิดที่ต้องการโดยใช้หลักง่ายๆ ต่อมาฉันลองคำนวณให้แม่นยำยิ่งขึ้น และพบว่าฉันอาจใช้เกินความสามารถไปเล็กน้อย เห็นได้ชัดว่า 6 กก./ซม. น่าจะเพียงพอสำหรับเซอร์โวตัวที่ 2 (จากฐาน) และของผมให้ 9-11 กก./ซม. สิ่งนี้ทำให้ฉันมีความปลอดภัยและมีโอกาสบรรทุกสัมภาระได้มากถึง 2 กก. (ซึ่งเป็นไปไม่ได้ แต่ฉันชอบที่สามารถทำได้ในทางเทคนิค) ฉันสามารถซื้อเซอร์โวหลายตัวได้ด้วย โดยลดแรงบิดลงในขณะที่เคลื่อนออกจากฐาน แต่การซื้อเซอร์โวที่เหมือนกันจากผู้ขายรายเดียวกันนั้นเป็นตัวเลือกที่ถูกที่สุด แหล่งจ่ายไฟ: Arduino ไม่เพียงพอสำหรับเซอร์โวอย่างแน่นอน เนื่องจากแต่ละ mg995 ดึงออกมา 350mA และไมโครเซอร์โว 9g ดึง 100mA รวมเป็น 350*4 +100 = 1500mA ดังนั้นฉันจึงกู้ที่ชาร์จ (6V 1.5A) และบัดกรีสายจัมเปอร์สองเส้นเข้ากับมัน (ถ้าคุณบางคนอาจต้องการคำแนะนำจริง ๆ แค่ถามในความคิดเห็นและฉันจะทำให้ดีที่สุดเพื่อสร้างทีละขั้นตอน คู่มือ)รายการวัสดุ:- โครงสร้าง- สกรู M5x7cm x5, สลักเกลียว m5 x15 (ฐาน)- สกรู M3x16mm x18*- สกรู M3x20mm x13*- สลักเกลียว M3 x40*- สกรู M3x8cm x3 - แคลมป์ (มิฉะนั้นจะตก)- 3 เดือย- Arduino (หรืออย่างอื่นที่จะควบคุม ต้องมีอย่างน้อย 5 PWM)- บางอย่างที่จะจ่ายไฟ 5-6V และอย่างน้อย 1.5A - จอยสติ๊กที่เหมือน ps2 3x- 4x TowerPro mg995 เซอร์โว- 1x TowerPro 9g microservo (สำหรับกริป))- สายจัมเปอร์จำนวนมาก - เขียงหั่นขนม*(ฉันใช้สลักเกลียวและสกรูเพื่อให้สามารถประกอบและถอดแยกชิ้นส่วนได้อย่างรวดเร็ว ไม่เช่นนั้น ให้เปลี่ยนเกือบทั้งหมดด้วยสกรูสำหรับงานไม้)
ขั้นตอนที่ 2: รหัส:
แนวคิดคือการควบคุมเซอร์โวทุกตัวด้วยหนึ่งในสองแกนของจอยสติ๊กแบบ ps2 จอยสติ๊กทุกตัวดูเหมือนจะมี “ค่าพัก” ที่แตกต่างกัน (ค่าระหว่าง 0-1023 เมื่อยังคงอยู่) สำหรับทั้งแกน y และ x นั่น เป็นปัญหา เนื่องจากความแตกต่างทั้งหมดแต่เล็ก (อันหนึ่งมีค่าศูนย์บน y ที่ 623) และฉันต้องการใช้ฟังก์ชันแผนที่เพื่อแปลงจาก 0-1023 เป็นองศา แต่ฟังก์ชันแผนที่คิดว่าค่าที่เหลือคือ 1023/2 ซึ่งนำให้เซอร์โวทุกตัวเคลื่อนที่ทันทีที่ฉันเปิด Arduino ไม่ดี ฉันจัดการเรื่องนี้ได้โดยค้นหาความแตกต่างระหว่างค่าที่อ่านและค่าที่เหลือแต่ละค่าด้วยตนเอง (ซึ่งฉันคำนวณแยกกันสำหรับจอยสติ๊กทุกตัว) จากนั้นไปที่ ทำให้โค้ดสั้นลงและฉลาดขึ้น ฉันทำให้เขาอ่านค่าที่เหลือในฟังก์ชันการตั้งค่าและบันทึกไว้ในตัวแปรบางตัว อัลกอริธึมใหม่อาศัยการแปลงการเพิ่มขึ้นเป็นองศา แต่ฉันต้องการองศาที่ต่ำมากสำหรับการเพิ่มของฉัน ดังนั้น ฉันต้องหารค่าคงที่: ฉันลองหลายค่า จนกระทั่งได้ 200 สุดท้าย (ฉันอาจเพิ่มโพเทนชิออมิเตอร์เพื่อเปลี่ยนค่านี้เป็นค่าที่ต้องการด้วยตนเอง) โค้ดที่เหลือนั้นค่อนข้างมาตรฐาน ฉันเดาว่า แม้ว่าการใส่การคำนวณการเพิ่มขึ้นในฟังก์ชันแยกต่างหากอาจจะดูสง่างามกว่า
ขั้นตอนที่ 3: อิเล็กทรอนิกส์:
การเดินสายไฟจะเหมือนกับที่แสดงในภาพหรือไฟล์ fritzing:servos ส่งสัญญาณไปยังหมุด: 5-6-9-10-11 และแกนจอยสติ๊กไปยังหมุดอะนาล็อก: A0-A1-A2-A3-A4 ปัญหาสำคัญที่ฉันพบ คือจอยสติ๊กจะต้องจัดหาโดย Arduino ไม่ใช่โดยเครื่องชาร์จที่ฉันใช้สำหรับเซอร์โว ไม่เช่นนั้นเซอร์โวจะเคลื่อนที่แบบสุ่มไปมาอย่างบ้าคลั่ง ฉันคิดว่าอาจเป็นเพราะถ้าฉันจัดหาที่ชาร์จให้กับ Arduino จะไม่สามารถบอกความแตกต่างที่อาจเกิดขึ้นได้อย่างแม่นยำเมื่อฉันย้ายพวกมัน แต่แล้วอีกครั้ง: ฉันยังใหม่กับอุปกรณ์อิเล็กทรอนิกส์ดังนั้นจึงเป็นเพียงการคาดเดา การเชื่อมต่อกราวด์ Arduino และกราวด์ของเครื่องชาร์จผ่านเขียงหั่นขนมช่วยป้องกันการเคลื่อนไหวแบบสุ่มและไม่คาดคิดด้วยเหตุผลที่คล้ายกันของการจ่ายจอยสติ๊กฉันคิดว่า
ขั้นตอนที่ 4: อยู่ระหว่างการปรับปรุง:
เนื่องจากจอยสติ๊กทุกตัวสามารถควบคุมเซอร์โวได้ 2 ตัว (1 ตัวต่อแกน) ฉันจึงต้องใช้เซอร์โว 3 ตัวเพื่อควบคุมทั้งแขน แต่โชคไม่ดีที่ฉันมีเพียง 2 นิ้วหัวแม่มือ ดังนั้นฉันคิดว่าแทนที่จะควบคุมเซอร์โวทุกตัว ฉันควบคุมได้เพียงตำแหน่ง xyz ของ กริปและเปิด-ปิดกริป รวมเป็น 4 แกน 2 จอยสติ๊ก และ 2 นิ้วหัวแม่มือ! ฉันพบว่าปัญหานั้นเป็นที่รู้จักกันดีในชื่อ Inverse Kinematics ฉันพบว่ามันทั้งหมดแต่ง่าย แนวคิดคือการเขียน (สมการไม่เชิงเส้น) เพื่อค้นหาสถานะของเอฟเฟกต์ทุกอัน (มุมสำหรับเซอร์โว) ที่กำหนดตำแหน่งสุดท้าย ฉันได้อัปโหลดกระดาษที่เขียนด้วยลายมือพร้อมสมการแล้ว และฉันกำลังพยายามหาโค้ดใหม่เพื่อใช้มัน มันไม่ควรยากเกินไป โดยพื้นฐานแล้ว ฉันต้องอ่านจอยสติ๊ก ใช้การอ่านเพื่อแก้ไขพิกัด xyz ของกริป จากนั้นให้สมการของฉัน คำนวณมุมเซอร์โวและเขียนมัน
ขั้นตอนที่ 5: การปรับปรุงในอนาคต:
ดังนั้น ฉันค่อนข้างพอใจกับผลลัพธ์ของมัน และเมื่อพิจารณาว่าฉันยังใหม่กับอุปกรณ์อิเล็กทรอนิกส์ที่ไม่ได้ทำอะไรเลย หรือตัวฉันเองเป็นชัยชนะครั้งใหญ่ อย่างที่ฉันพูดในตอนเริ่มต้น ความคิดใดๆ สำหรับการปรับปรุงในอนาคต ทั้งซอฟต์แวร์และ ฮาร์ดแวร์เป็นมากกว่ายินดีต้อนรับ! จนถึงตอนนี้ฉันคิดว่า:1. โพเทนชิออมิเตอร์เพื่อปรับเปลี่ยน "ความรู้สึก" ของจอยสติ๊ก2. รหัสใหม่เพื่อให้เขา "บันทึก" การเคลื่อนไหวบางอย่างและทำอีกครั้ง (อาจเร็วกว่าและสั้นกว่าที่มนุษย์ป้อน)3. อินพุตภาพ/ระยะทาง/เสียงบางประเภทและสามารถรับวัตถุโดยไม่ต้องใช้จอยสติ๊ก4 ความสามารถในการวาดรูปเรขาคณิต มีแนวคิดอื่นอีกไหม? โปรดแสดงความคิดเห็นพร้อมข้อเสนอแนะใด ๆ ขอบคุณ
แนะนำ:
หุ่นยนต์ DIY - แขนกล 6 แกนเพื่อการศึกษา: 6 ขั้นตอน (พร้อมรูปภาพ)
หุ่นยนต์ DIY | แขนกล 6 แกนเพื่อการศึกษา: เซลล์การศึกษา DIY-Robotics เป็นแพลตฟอร์มที่ประกอบด้วยแขนหุ่นยนต์ 6 แกน วงจรควบคุมอิเล็กทรอนิกส์ และซอฟต์แวร์การเขียนโปรแกรม แพลตฟอร์มนี้เป็นการแนะนำโลกของหุ่นยนต์อุตสาหกรรม ผ่านโครงการนี้ DIY-Robotics ขอ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
แขนกล Arduino อย่างง่าย: 5 ขั้นตอน
แขนหุ่นยนต์ Arduino อย่างง่าย: ที่นี่ฉันจะแสดงให้คุณเห็นถึงวิธีการสร้างแขนหุ่นยนต์ Arduino ขั้นพื้นฐานที่ควบคุมโดยโพเทนชิออมิเตอร์ โปรเจ็กต์นี้สมบูรณ์แบบสำหรับการเรียนรู้พื้นฐานของ Arduino หากคุณมีตัวเลือกมากมายในการสอนและไม่รู้ว่าจะ
แขนกล: เซ่น: 4 ขั้นตอน
Robotic Arm: Jensen: Jensen เป็นแขนหุ่นยนต์ที่สร้างขึ้นบนแพลตฟอร์ม Arduino โดยเน้นที่การวางแผนการเคลื่อนไหวที่ใช้งานง่าย โดยทำเป็นโครงการอิสระ 1 เครดิตภายใต้การให้คำปรึกษาจาก Charles B. Malloch, PhD มันสามารถทำซ้ำชุดของการเคลื่อนไหวที่ตั้งโปรแกรมโดยการเคลื่อนไหวด้วยตนเอง
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino