สถาบันงบประมาณเทศบาล
การศึกษาเพิ่มเติม "สถานี ช่างหนุ่ม»
เมืองคาเมนสค์ ชัคตินสกี
เวทีระดับเทศบาลของการแข่งขันระดับภูมิภาค
“นักออกแบบหนุ่มแห่งดอนสำหรับสหัสวรรษที่สาม”
หมวด "หุ่นยนต์"
« แขนหุ่นยนต์ Arduino"
ครูการศึกษาเพิ่มเติม
MBU ทำ "SYUT"
วัสดุและเครื่องมือ 6
ส่วนประกอบทางกลของหุ่นยนต์ 7
9. การเติมหุ่นยนต์ด้วยระบบอิเล็กทรอนิกส์
บทนำ 3
การวิจัยและการวิเคราะห์ 4
ขั้นตอนของหน่วยการผลิตและการประกอบหุ่นยนต์ 6
บทสรุปที่ 11
แหล่งที่มาของข้อมูล 12
ภาคผนวก 13
การแนะนำ
หุ่นยนต์หุ่นยนต์เป็นเครื่องจักรสามมิติที่มีสามมิติซึ่งสอดคล้องกับพื้นที่ของสิ่งมีชีวิต ในความหมายกว้างๆ ผู้บงการสามารถนิยามได้ว่าเป็น ระบบทางเทคนิคสามารถทดแทนบุคคลหรือช่วยเหลือเขาในการปฏิบัติงานได้ งานต่างๆ.
ปัจจุบันการพัฒนาหุ่นยนต์ไม่ก้าวหน้า แต่ดำเนินไปล่วงหน้า ในช่วง 10 ปีแรกของศตวรรษที่ 21 เพียงแห่งเดียว มีหุ่นยนต์มากกว่า 1 ล้านตัวถูกประดิษฐ์และใช้งาน แต่สิ่งที่น่าสนใจที่สุดคือการพัฒนาในพื้นที่นี้สามารถดำเนินการได้ไม่เพียงแต่โดยทีมงานขององค์กรขนาดใหญ่ กลุ่มนักวิทยาศาสตร์ และวิศวกรมืออาชีพเท่านั้น แต่ยังรวมถึงเด็กนักเรียนทั่วไปทั่วโลกด้วย
คอมเพล็กซ์หลายแห่งได้รับการพัฒนาเพื่อศึกษาวิทยาการหุ่นยนต์ที่โรงเรียน ที่มีชื่อเสียงที่สุดคือ:
อาร์ดูโน่.
โรโบติส ไบโอลอยด์;
เลโก้มายด์สตอร์ม;
ตัวสร้าง Arduino เป็นที่สนใจอย่างมากสำหรับผู้สร้างหุ่นยนต์ บอร์ด Arduino เป็นชุดออกแบบวิทยุ เรียบง่ายมาก แต่ใช้งานได้เพียงพอสำหรับการเขียนโปรแกรมที่รวดเร็วมากในภาษา Viring (จริงๆ แล้วเป็น C++) และนำแนวคิดทางเทคนิคมาสู่ความเป็นจริง
แต่ดังที่ภาคปฏิบัติแสดงให้เห็น งานของผู้เชี่ยวชาญรุ่นเยาว์ของคนรุ่นใหม่กำลังได้รับความสำคัญเชิงปฏิบัติเพิ่มมากขึ้น
การสอนการเขียนโปรแกรมสำหรับเด็กจะมีความเกี่ยวข้องเสมอ เนื่องจากการพัฒนาหุ่นยนต์อย่างรวดเร็วนั้นสัมพันธ์กับการพัฒนาเป็นอันดับแรก เทคโนโลยีสารสนเทศและช่องทางการสื่อสาร
เป้าหมายของโครงการนี้คือการสร้างตัวสร้างวิทยุเพื่อการศึกษาโดยใช้แขนหุ่นยนต์ เพื่อสอนเด็กๆ ให้เขียนโปรแกรมในสภาพแวดล้อม Arduino ได้อย่างสนุกสนาน เพื่อเปิดโอกาสให้เด็กๆ ได้ทำความคุ้นเคยกับกิจกรรมการออกแบบด้านวิทยาการหุ่นยนต์ให้มากที่สุด
วัตถุประสงค์ของโครงการ:
พัฒนาและสร้างแขนสอน-นักบงการด้วย ต้นทุนขั้นต่ำกองทุนที่ไม่ด้อยกว่าอะนาล็อกต่างประเทศ
ใช้เซอร์โวเป็นกลไกหุ่นยนต์
ควบคุมกลไกหุ่นยนต์โดยใช้ชุดวิทยุ Arduino UNO R 3
พัฒนาโปรแกรมในสภาพแวดล้อมการเขียนโปรแกรม Arduino เพื่อควบคุมเซอร์โวตามสัดส่วน
เพื่อให้บรรลุเป้าหมายและวัตถุประสงค์ของโครงการของเรา จำเป็นต้องศึกษาประเภทของเครื่องมือจัดการที่มีอยู่ เอกสารทางเทคนิคในหัวข้อนี้ และฮาร์ดแวร์ Arduino และแพลตฟอร์มคอมพิวเตอร์
การวิจัยและการวิเคราะห์
ศึกษา.
หุ่นยนต์อุตสาหกรรม - ออกแบบมาเพื่อใช้งานมอเตอร์และฟังก์ชั่นการควบคุม กระบวนการผลิต, เช่น. อุปกรณ์อัตโนมัติประกอบด้วยหุ่นยนต์และอุปกรณ์ควบคุมที่ตั้งโปรแกรมใหม่ได้ ซึ่งสร้างการควบคุมที่กำหนดการเคลื่อนไหวที่จำเป็นของส่วนบริหารของหุ่นยนต์ ใช้เพื่อเคลื่อนย้ายรายการการผลิตและดำเนินการทางเทคโนโลยีต่างๆ
เกี่ยวกับ คอนสตรัคเตอร์ที่เฟื่องฟู - หุ่นยนต์ติดตั้งแขนหุ่นยนต์ที่บีบอัดและคลายออก ด้วยความช่วยเหลือคุณสามารถเล่นหมากรุกได้โดยการควบคุมจากระยะไกล คุณยังสามารถใช้มือหุ่นยนต์เพื่อแจกนามบัตรได้ การเคลื่อนไหวได้แก่: ข้อมือ 120°, ข้อศอก 300°, การหมุนพื้นฐาน 270°, การหมุนพื้นฐาน 180° ของเล่นนี้ดีและมีประโยชน์มาก แต่ราคาประมาณ 17,200 รูเบิล
ต้องขอบคุณโปรเจ็กต์ “uArm” ที่ทำให้ทุกคนสามารถประกอบมินิโรบ็อตเดสก์ท็อปของตัวเองได้ “ uArm” เป็นหุ่นยนต์ 4 แกนซึ่งเป็นหุ่นยนต์อุตสาหกรรมรุ่นจิ๋ว “ ABB PalletPack IRB460” หุ่นยนต์นั้นติดตั้งไมโครโปรเซสเซอร์ Atmel และชุดเซอร์โวมอเตอร์ ราคารวมของชิ้นส่วนที่จำเป็นคือ 12,959 รูเบิล โครงการ uArm ต้องใช้ทักษะการเขียนโปรแกรมขั้นพื้นฐานและประสบการณ์ในการสร้าง Legos เป็นอย่างน้อย มินิโรบ็อตสามารถตั้งโปรแกรมได้หลายฟังก์ชั่น ตั้งแต่การเล่นไปจนถึง เครื่องดนตรีก่อนที่จะโหลดโปรแกรมที่ซับซ้อนบางตัว ขณะนี้แอปพลิเคชันกำลังได้รับการพัฒนาสำหรับ iOS และ Android ซึ่งจะช่วยให้คุณควบคุม "uArm" จากสมาร์ทโฟนได้
ผู้ควบคุม "uArm"
อุปกรณ์ควบคุมที่มีอยู่ส่วนใหญ่เกี่ยวข้องกับการวางมอเตอร์โดยตรงในข้อต่อ นี่เป็นการออกแบบที่เรียบง่ายกว่า แต่ปรากฎว่าเครื่องยนต์จะต้องยกไม่เพียง แต่น้ำหนักบรรทุกเท่านั้น แต่ยังรวมถึงเครื่องยนต์อื่น ๆ ด้วย
การวิเคราะห์.
เราใช้พื้นฐานของผู้ควบคุมที่นำเสนอบนเว็บไซต์ Kickstarter ซึ่งเรียกว่า "uArm" ข้อดีของการออกแบบนี้คือ แท่นสำหรับวางกริปเปอร์จะอยู่ขนานกันเสมอ พื้นผิวการทำงาน- เครื่องยนต์หนักตั้งอยู่ที่ฐาน แรงถูกส่งผ่านแท่ง เป็นผลให้หุ่นยนต์มีเซอร์โวสามตัว (อิสระสามระดับ) ซึ่งช่วยให้สามารถเคลื่อนย้ายเครื่องมือไปตามแกนทั้งสามแกนได้ 90 องศา
พวกเขาตัดสินใจติดตั้งตลับลูกปืนในส่วนที่เคลื่อนไหวของหุ่นยนต์ การออกแบบหุ่นยนต์นี้มีข้อได้เปรียบเหนือกว่าหลายรุ่นที่มีจำหน่ายอยู่ในปัจจุบัน: โดยรวมแล้ว หุ่นยนต์ใช้ตลับลูกปืน 11 ตัว: 10 ชิ้นสำหรับเพลา 3 มม. และอีก 1 ชิ้นสำหรับเพลา 30 มม.
ลักษณะของแขนหุ่นยนต์:
ความสูง: 300มม.
โซนทำงาน(โดยกางแขนออกจนสุด): รอบฐาน 140 มม. ถึง 300 มม
ความสามารถในการรับน้ำหนักสูงสุดที่ความยาวแขน: 200 กรัม
การบริโภคปัจจุบันไม่เกิน: 1A
ประกอบง่าย. ให้ความสนใจอย่างมากเพื่อให้แน่ใจว่ามีลำดับการประกอบของหุ่นยนต์ซึ่งจะสะดวกอย่างยิ่งในการขันชิ้นส่วนทั้งหมด นี่เป็นเรื่องยากโดยเฉพาะอย่างยิ่งสำหรับชุดขับเคลื่อนเซอร์โวอันทรงพลังในฐาน
การควบคุมดำเนินการโดยใช้ตัวต้านทานแบบปรับค่าได้, การควบคุมตามสัดส่วน คุณสามารถออกแบบการควบคุมแบบคัดลอกได้ เช่นเดียวกับที่นักวิทยาศาสตร์นิวเคลียร์และฮีโร่ในหุ่นยนต์ตัวใหญ่จากภาพยนตร์เรื่อง "Avatar" สามารถควบคุมได้ด้วยเมาส์ และใช้ตัวอย่างโค้ดคุณสามารถสร้างอัลกอริธึมการเคลื่อนไหวของคุณเองได้
การเปิดกว้างของโครงการ ใครๆ ก็สามารถสร้างเครื่องมือของตัวเองได้ (ถ้วยดูดหรือคลิปหนีบดินสอ) และโหลดโปรแกรม (ภาพร่าง) ที่จำเป็นในการทำงานให้เสร็จสิ้นลงในคอนโทรลเลอร์
ขั้นตอนการผลิตส่วนประกอบและการประกอบหุ่นยนต์
วัสดุและเครื่องมือ
ในการสร้างแขนหุ่นยนต์นั้น มีการใช้แผงคอมโพสิตที่มีความหนา 3 มม. และ 5 มม. เป็นวัสดุที่ประกอบด้วยแผ่นอะลูมิเนียม 2 แผ่น หนา 0.21 มม. เชื่อมต่อกันด้วยชั้นเทอร์โมพลาสติกโพลีเมอร์ มีความแข็งแกร่งดี น้ำหนักเบา และแปรรูปได้ง่าย ภาพถ่ายที่ดาวน์โหลดของโปรแกรมจัดการบนอินเทอร์เน็ตได้รับการประมวลผลโดยโปรแกรมคอมพิวเตอร์ Inkscape (โปรแกรมแก้ไขกราฟิกแบบเวกเตอร์) ภาพวาดของแขนหุ่นยนต์ถูกวาดในโปรแกรม AutoCAD (ระบบการออกแบบและเขียนแบบสามมิติที่ใช้คอมพิวเตอร์ช่วย)
ชิ้นส่วนสำเร็จรูปสำหรับหุ่นยนต์
ชิ้นส่วนฐานหุ่นยนต์ที่เสร็จแล้ว
เนื้อหาทางกลของหุ่นยนต์
เซอร์โว MG-995 ถูกใช้เป็นฐานของหุ่นยนต์ เหล่านี้เป็นเซอร์โวดิจิตอลที่มีเกียร์โลหะและลูกปืน โดยให้แรง 4.8 กก./ซม. ตำแหน่งที่แม่นยำและความเร็วที่ยอมรับได้ เซอร์โวไดรฟ์หนึ่งตัวมีน้ำหนัก 55.0 กรัม โดยมีขนาด 40.7 x 19.7 x 42.9 มม. แรงดันไฟฟ้าจ่ายตั้งแต่ 4.8 ถึง 7.2 โวลต์
เซอร์โว MG-90S ถูกใช้เพื่อจับและหมุนมือ สิ่งเหล่านี้ยังเป็นเซอร์โวดิจิตอลที่มีเฟืองโลหะและลูกปืนบนเพลาเอาท์พุต โดยให้แรง 1.8 กก./ซม. และการควบคุมตำแหน่งที่แม่นยำ เซอร์โวไดรฟ์หนึ่งตัวมีน้ำหนัก 13.4 กรัม โดยมีขนาด 22.8 x 12.2 x 28.5 มม. แรงดันไฟฟ้าจ่ายตั้งแต่ 4.8 ถึง 6.0 โวลต์
เซอร์โวไดรฟ์ MG-995 เซอร์โวไดรฟ์ MG90S
ตลับลูกปืนขนาด 30x55x13 ใช้เพื่ออำนวยความสะดวกในการหมุนฐานแขน - หุ่นยนต์ที่มีภาระ
การติดตั้งแบริ่ง. การประกอบอุปกรณ์แบบหมุน
ฐานของแขน - ชุดประกอบหุ่นยนต์
ชิ้นส่วนสำหรับประกอบกริปเปอร์ การประกอบกริปเปอร์
การเติมอิเล็กทรอนิกส์ของหุ่นยนต์
มีโครงการโอเพ่นซอร์สชื่อ Arduino พื้นฐานของโครงการนี้คือโมดูลฮาร์ดแวร์พื้นฐานและโปรแกรมที่คุณสามารถเขียนโค้ดสำหรับคอนโทรลเลอร์ในภาษาพิเศษ และช่วยให้คุณสามารถเชื่อมต่อและตั้งโปรแกรมโมดูลนี้ได้
ในการทำงานร่วมกับหุ่นยนต์ เราใช้บอร์ด Arduino UNO R 3 และบอร์ดขยายที่รองรับสำหรับเชื่อมต่อเซอร์โว มีการติดตั้งตัวกันโคลง 5 โวลต์เพื่อจ่ายไฟให้กับเซอร์โว หน้าสัมผัส PLS สำหรับเชื่อมต่อเซอร์โว และขั้วต่อสำหรับเชื่อมต่อตัวต้านทานแบบแปรผัน จ่ายไฟจากบล็อก 9V, 3A
บอร์ดควบคุม Arduinoอูโน่ อาร์ 3.
แผนภาพส่วนขยายสำหรับบอร์ดควบคุม Arduinoอูโน่ อาร์ 3 ได้รับการพัฒนาโดยคำนึงถึงงานที่ได้รับมอบหมาย
แผนผังของบอร์ดขยายสำหรับคอนโทรลเลอร์
บอร์ดขยายสำหรับคอนโทรลเลอร์
เราเชื่อมต่อบอร์ด Arduino UNO R 3 โดยใช้สายเคเบิล USB A-B เข้ากับคอมพิวเตอร์ ตั้งค่าที่จำเป็นในสภาพแวดล้อมการเขียนโปรแกรม และสร้างโปรแกรม (ร่าง) สำหรับการทำงานของเซอร์โวโดยใช้ไลบรารี Arduino เรารวบรวม (ตรวจสอบ) ร่างภาพ จากนั้นโหลดลงในคอนโทรลเลอร์ ข้อมูลโดยละเอียดเกี่ยวกับการทำงานในสภาพแวดล้อม Arduino สามารถพบได้บนเว็บไซต์ http://edurobots.ru/category/uroki/ (Arduino สำหรับผู้เริ่มต้น บทเรียน)
หน้าต่างโปรแกรมพร้อมภาพร่าง
บทสรุป
หุ่นยนต์รุ่นนี้มีความโดดเด่นด้วยต้นทุนต่ำเมื่อเปรียบเทียบกับชุดก่อสร้าง Duckrobot ธรรมดาซึ่งมีการเคลื่อนไหว 2 ครั้งและราคา 1,102 รูเบิลหรือชุดก่อสร้าง Lego "สถานีตำรวจ" ซึ่งมีราคา 8,429 รูเบิล ตัวสร้างของเราทำการเคลื่อนไหว 5 ครั้งและราคา 2,384 รูเบิล
ส่วนประกอบและวัสดุ | ปริมาณ | |||
เซอร์โวไดรฟ์ MG-995 | ||||
เซอร์โวไดรฟ์ MG90S | ||||
แบริ่ง 30x55x13 | ||||
แบริ่ง 3x8x3 | ||||
M3x27 ขาตั้งทองเหลืองตัวเมีย-ตัวเมีย | ||||
สกรู M3x10 แบบมีประตู ภายใต้ความสูง/น้ำหนัก | ||||
แผ่นคอมโพสิต ขนาด 0.6 ตร.ม | ||||
บอร์ดควบคุม Arduino UNO R3 | ||||
ตัวต้านทานปรับค่าได้ 100 คอม | ||||
ต้นทุนต่ำมีส่วนช่วยในการพัฒนาตัวสร้างทางเทคนิคสำหรับแขนหุ่นยนต์ซึ่งตัวอย่างที่แสดงให้เห็นอย่างชัดเจนถึงหลักการทำงานของหุ่นยนต์และการปฏิบัติงานที่ได้รับมอบหมายอย่างสนุกสนาน
หลักการทำงานในสภาพแวดล้อมการเขียนโปรแกรม Arduino ได้พิสูจน์ตัวเองแล้วในการทดสอบ วิธีการจัดการและสอนการเขียนโปรแกรมอย่างสนุกสนานนี้ไม่เพียงแต่เป็นไปได้ แต่ยังมีประสิทธิภาพอีกด้วย
ไฟล์เริ่มต้นพร้อมภาพร่างที่นำมาจากเว็บไซต์ Arduino อย่างเป็นทางการและแก้ไขจุดบกพร่องในสภาพแวดล้อมการเขียนโปรแกรม ช่วยให้มั่นใจว่าถูกต้องและ การดำเนินงานที่เชื่อถือได้ผู้ปลุกปั่น.
ในอนาคตฉันต้องการละทิ้งเซอร์โวราคาแพงและใช้สเต็ปเปอร์มอเตอร์ดังนั้นมันจะเคลื่อนที่ได้ค่อนข้างแม่นยำและราบรื่น
หุ่นยนต์ถูกควบคุมโดยใช้เครื่องคัดลอกผ่านช่องสัญญาณวิทยุ Bluetooth
แหล่งข้อมูล
Gololobov N.V. เกี่ยวกับโครงการ Arduino สำหรับเด็กนักเรียน มอสโก 2554.
Kurt E.D. ความรู้เบื้องต้นเกี่ยวกับไมโครคอนโทรลเลอร์พร้อมการแปลเป็นภาษารัสเซียโดย T. Volkov 2555.
คู่มือการใช้งาน Belov A.V. สำหรับนักพัฒนาอุปกรณ์บนไมโครคอนโทรลเลอร์ AVR วิทยาศาสตร์และเทคโนโลยี, เซนต์ปีเตอร์สเบิร์ก, 2551
http://www.customelectronics.ru/robo-ruka-sborka-mehaniki/ หุ่นยนต์ที่ติดตั้งซอฟต์แวร์รวบรวมข้อมูล
http://robocraft.ru/blog/electronics/660.html หุ่นยนต์ผ่าน Bluetooth
http://robocraft.ru/blog/mechanics/583.html ลิงก์ไปยังบทความและวิดีโอ
http://edurobots.ru/category/uroki/ Arduino สำหรับผู้เริ่มต้น
แอปพลิเคชัน
การวาดฐานหุ่นยนต์
การวาดบูมและด้ามจับของหุ่นยนต์
เรากำลังสร้างหุ่นยนต์ควบคุมโดยใช้เรนจ์ไฟนเดอร์และใช้งานแบ็คไลท์
เราจะตัดฐานจากอะคริลิก เราใช้เซอร์โวไดรฟ์เป็นมอเตอร์
คำอธิบายทั่วไปของโครงการหุ่นยนต์ควบคุมหุ่นยนต์
โครงการนี้ใช้เซอร์โวมอเตอร์ 6 ตัว สำหรับชิ้นส่วนเครื่องจักรกล ใช้อะคริลิกหนา 2 มม. ฐานจากดิสโก้บอลมีประโยชน์เหมือนขาตั้งกล้อง (มีมอเตอร์ตัวใดตัวหนึ่งติดอยู่ด้านใน) นอกจากนี้ยังใช้เซ็นเซอร์วัดระยะอัลตราโซนิกและไฟ LED 10 มม.
บอร์ดจ่ายไฟ Arduino ใช้เพื่อควบคุมหุ่นยนต์ แหล่งพลังงานนั้นคือแหล่งจ่ายไฟของคอมพิวเตอร์
โครงการนี้ให้คำอธิบายที่ครอบคลุมเกี่ยวกับการพัฒนาแขนหุ่นยนต์ ประเด็นเรื่องแหล่งจ่ายไฟของการออกแบบที่พัฒนาขึ้นจะพิจารณาแยกกัน
ส่วนประกอบหลักสำหรับโปรเจ็กต์ตัวจัดการ
มาเริ่มการพัฒนากันดีกว่า คุณจะต้องการ:
- เซอร์โวมอเตอร์ 6 ตัว (ฉันใช้ 2 รุ่น mg946, 2 mg995, 2 futuba s3003 (mg995/mg946 มีคุณสมบัติที่ดีกว่า futuba s3003 แต่รุ่นหลังราคาถูกกว่ามาก);
- อะคริลิคหนา 2 มม. (และชิ้นเล็กหนา 4 มม.)
- เซ็นเซอร์วัดระยะอัลตราโซนิก hc-sr04;
- ไฟ LED 10 มม. (สี - ขึ้นอยู่กับดุลยพินิจของคุณ);
- ขาตั้งกล้อง (ใช้เป็นฐาน);
- ด้ามจับอลูมิเนียม (ราคาประมาณ 10-15 ดอลลาร์)
สำหรับการขับรถ:
- บอร์ด Arduino Uno (ใช้ในโครงการ คณะกรรมการโฮมเมดซึ่งคล้ายกับ Arduino โดยสิ้นเชิง);
- บอร์ดจ่ายไฟ (คุณจะต้องทำเองเราจะกลับมาที่ปัญหานี้ในภายหลังต้องได้รับการดูแลเป็นพิเศษ)
- แหล่งจ่ายไฟ (ในกรณีนี้จะใช้แหล่งจ่ายไฟของคอมพิวเตอร์)
- คอมพิวเตอร์สำหรับตั้งโปรแกรมหุ่นยนต์ของคุณ (ถ้าคุณใช้ Arduino ในการเขียนโปรแกรมแสดงว่า Arduino IDE)
แน่นอนว่าคุณจะต้องมีสายเคเบิลและเครื่องมือพื้นฐานบางอย่าง เช่น ไขควง และอื่นๆ ตอนนี้เราสามารถไปสู่การออกแบบได้แล้ว
การประกอบเครื่องกล
ก่อนที่จะเริ่มพัฒนาชิ้นส่วนกลไกของหุ่นยนต์ ควรสังเกตว่าฉันไม่มีภาพวาด นอตทั้งหมดถูกสร้างขึ้น "บนเข่า" แต่หลักการนั้นง่ายมาก คุณมีลิงค์อะคริลิกสองตัวซึ่งคุณต้องติดตั้งเซอร์โวมอเตอร์ระหว่างนั้น และอีกสองลิงค์ สำหรับการติดตั้งเครื่องยนต์ด้วย ก็คว้าเอง วิธีที่ง่ายที่สุดในการซื้อด้ามจับดังกล่าวคือทางอินเทอร์เน็ต เกือบทุกอย่างติดตั้งด้วยสกรู
ความยาวของส่วนแรกประมาณ 19 ซม. ที่สอง - ประมาณ 17.5; ความยาวของข้อต่อด้านหน้าประมาณ 5.5 ซม. เลือกขนาดที่เหลือตามขนาดโครงการของคุณ โดยหลักการแล้ว ขนาดของโหนดที่เหลือนั้นไม่สำคัญมากนัก
แขนกลต้องมีมุมการหมุน 180 องศาที่ฐาน ดังนั้นเราจึงต้องติดตั้งเซอร์โวมอเตอร์ที่ด้านล่าง ในกรณีนี้จะติดตั้งอยู่ในดิสโก้บอลเดียวกัน ในกรณีของคุณ นี่อาจเป็นกล่องที่เหมาะสมก็ได้ หุ่นยนต์ติดตั้งอยู่บนเซอร์โวมอเตอร์นี้ คุณสามารถติดตั้งวงแหวนหน้าแปลนโลหะเพิ่มเติมได้ดังแสดงในรูป คุณสามารถทำได้โดยไม่มีมัน
ในการติดตั้งเซ็นเซอร์อัลตราโซนิก จะใช้อะคริลิกหนา 2 มม. คุณสามารถติดตั้ง LED ได้ที่ด้านล่าง
เป็นการยากที่จะอธิบายรายละเอียดอย่างชัดเจนถึงวิธีการสร้างหุ่นยนต์ดังกล่าว ส่วนใหญ่ขึ้นอยู่กับส่วนประกอบและชิ้นส่วนที่คุณมีในสต็อกหรือซื้อ ตัวอย่างเช่น หากขนาดของเซอร์โวของคุณแตกต่างกัน ข้อต่ออะครีลิคอาร์เมเจอร์ก็จะเปลี่ยนไปเช่นกัน หากขนาดเปลี่ยนแปลง การสอบเทียบของเครื่องมือจัดการก็จะแตกต่างออกไปด้วย
คุณจะต้องขยายสายเคเบิลเซอร์โวมอเตอร์อย่างแน่นอนหลังจากเสร็จสิ้นการพัฒนาชิ้นส่วนทางกลของหุ่นยนต์ เพื่อจุดประสงค์เหล่านี้ โปรเจ็กต์นี้จึงใช้สายไฟจากสายอินเทอร์เน็ต เพื่อให้ทั้งหมดนี้มีลักษณะเช่นนี้ อย่าเกียจคร้านและติดตั้งอะแดปเตอร์ที่ปลายด้านที่ว่างของสายต่อขยาย - ตัวเมียหรือตัวผู้ ทั้งนี้ขึ้นอยู่กับเอาต์พุตของบอร์ด Arduino แผงป้องกัน หรือแหล่งพลังงาน
หลังจากประกอบชิ้นส่วนเครื่องจักรกลแล้ว เราก็ไปยัง "สมอง" ของหุ่นยนต์ของเราได้เลย
ด้ามจับหุ่นยนต์
ในการติดตั้งกริป คุณจะต้องใช้เซอร์โวมอเตอร์และสกรูบางตัว
ดังนั้นสิ่งที่ต้องทำจริงๆ
นำตัวโยกออกจากเซอร์โวแล้วย่อให้สั้นลงจนพอดีกับด้ามจับของคุณ หลังจากนั้นให้ขันสกรูตัวเล็กสองตัวให้แน่น
หลังจากติดตั้งเซอร์โวแล้ว ให้หมุนไปที่ตำแหน่งซ้ายสุดแล้วบีบปากจับของกริปเปอร์
ตอนนี้คุณสามารถติดตั้งเซอร์โวด้วยสลักเกลียว 4 ตัว ในเวลาเดียวกัน ตรวจสอบให้แน่ใจว่าเครื่องยนต์ยังอยู่ในตำแหน่งซ้ายสุดและกรามของมือจับปิดอยู่
คุณสามารถเชื่อมต่อเซอร์โวไดรฟ์เข้ากับบอร์ด Arduino และตรวจสอบการทำงานของกริปเปอร์ได้
โปรดทราบว่าการทำงานของมือจับอาจมีปัญหาหากสลักเกลียว/สกรูแน่นเกินไป
การเพิ่มแสงสว่างให้กับอุปกรณ์ชี้ตำแหน่ง
คุณสามารถทำให้โครงการของคุณสดใสขึ้นได้โดยการเพิ่มแสงสว่างเข้าไป มีการใช้ไฟ LED สำหรับสิ่งนี้ ทำได้ง่ายและดูน่าประทับใจมากในความมืด
สถานที่สำหรับติดตั้ง LED ขึ้นอยู่กับความคิดสร้างสรรค์และจินตนาการของคุณ
แผนภาพไฟฟ้า
คุณสามารถใช้โพเทนชิโอมิเตอร์ 100 kOhm แทนตัวต้านทาน R1 เพื่อปรับความสว่างด้วยตนเองได้ ตัวต้านทาน 118 โอห์มถูกใช้เป็นความต้านทาน R2
รายการส่วนประกอบหลักที่ใช้:
- ตัวต้านทาน R1 - 100 kOhm
- R2 - ตัวต้านทาน 118 โอห์ม
- ทรานซิสเตอร์ bc547
- โฟโตรีซีสเตอร์
- ไฟ LED 7 ดวง
- สวิตช์
- การเชื่อมต่อกับบอร์ด Arduino
บอร์ด Arduino ถูกใช้เป็นไมโครคอนโทรลเลอร์ แหล่งจ่ายไฟจากคอมพิวเตอร์ส่วนบุคคลถูกใช้เป็นแหล่งจ่ายไฟ เมื่อเชื่อมต่อมัลติมิเตอร์เข้ากับสายเคเบิลสีแดงและสีดำ คุณจะเห็นไฟ 5 โวลต์ (ซึ่งใช้สำหรับเซอร์โวมอเตอร์และเซ็นเซอร์วัดระยะอัลตราโซนิก) สีเหลืองและสีดำจะให้ไฟ 12 โวลต์ (สำหรับ Arduino) เราสร้างตัวเชื่อมต่อ 5 ตัวสำหรับเซอร์โวมอเตอร์โดยเชื่อมต่อขั้วบวกเข้ากับ 5 V และขั้วลบเข้ากับกราวด์ เช่นเดียวกับเซ็นเซอร์วัดระยะ
หลังจากนั้นให้เชื่อมต่อตัวเชื่อมต่อที่เหลือ (หนึ่งตัวจากเซอร์โวแต่ละตัวและสองตัวจากเรนจ์ไฟน) เข้ากับบอร์ดที่เราบัดกรีและ Arduino ในเวลาเดียวกันอย่าลืมระบุพินที่คุณใช้ในโปรแกรมให้ถูกต้องในอนาคต
นอกจากนี้ ยังได้ติดตั้งไฟ LED แสดงสถานะพลังงานบนแผงจ่ายไฟอีกด้วย นี่เป็นเรื่องง่ายที่จะนำไปใช้ นอกจากนี้ มีการใช้ตัวต้านทาน 100 โอห์มระหว่าง 5V และกราวด์
LED ขนาด 10 มม. บนหุ่นยนต์เชื่อมต่อกับ Arduino ด้วยเช่นกัน ตัวต้านทาน 100 โอห์มเปลี่ยนจากพิน 13 ไปยังขาบวกของ LED เชิงลบ - ลงสู่พื้น คุณสามารถปิดการใช้งานได้ในโปรแกรม
สำหรับเซอร์โวมอเตอร์ 6 ตัว จะใช้คอนเนคเตอร์ 6 ตัว เนื่องจากเซอร์โวมอเตอร์ 2 ตัวด้านล่างใช้สัญญาณควบคุมเดียวกัน ตัวนำที่เกี่ยวข้องเชื่อมต่อและเชื่อมต่อกับพินเดียว
ฉันขอย้ำอีกครั้งว่าแหล่งจ่ายไฟจากคอมพิวเตอร์ส่วนบุคคลถูกใช้เป็นแหล่งจ่ายไฟ หรือแน่นอนคุณสามารถซื้อแหล่งจ่ายไฟแยกต่างหากได้ แต่เมื่อคำนึงถึงความจริงที่ว่าเรามีไดรฟ์ 6 ตัวซึ่งแต่ละตัวกินไฟประมาณ 2 A แหล่งจ่ายไฟที่ทรงพลังเช่นนี้จะไม่ถูก
โปรดทราบว่าตัวเชื่อมต่อจากเซอร์โวเชื่อมต่อกับเอาต์พุต PWM ของ Arduino ใกล้หมุดแต่ละอันบนกระดานนั้นมี เครื่องหมาย- สามารถต่อเซ็นเซอร์วัดระยะอัลตราโซนิกเข้ากับพิน 6, 7 ได้ ส่วน LED สามารถต่อเข้ากับพิน 13 และกราวด์ได้ นี่คือพินทั้งหมดที่เราต้องการ
ตอนนี้เราสามารถไปยังการเขียนโปรแกรม Arduino ได้แล้ว
ก่อนที่จะเชื่อมต่อบอร์ดผ่าน USB เข้ากับคอมพิวเตอร์ของคุณ ตรวจสอบให้แน่ใจว่าคุณได้ปิดเครื่องแล้ว เมื่อคุณทดสอบโปรแกรม ให้ปิดไฟที่แขนหุ่นยนต์ของคุณด้วย หากไม่ได้ปิดเครื่อง Arduino จะได้รับไฟ 5 โวลต์จาก usb และ 12 โวลต์จากแหล่งจ่ายไฟ ดังนั้นพลังงานจาก usb จะถ่ายโอนไปยังแหล่งพลังงานและจะ "ลดลง" เล็กน้อย
แผนภาพการเดินสายไฟแสดงให้เห็นว่ามีการเพิ่มโพเทนชิโอมิเตอร์เพื่อควบคุมเซอร์โว โพเทนชิโอมิเตอร์เป็นทางเลือก แต่โค้ดด้านบนจะไม่ทำงานหากไม่มีโพเทนชิโอมิเตอร์ โพเทนชิโอมิเตอร์สามารถเชื่อมต่อกับพิน 0,1,2,3 และ 4 ได้
การเขียนโปรแกรมและการเปิดตัวครั้งแรก
มีการใช้โพเทนชิโอมิเตอร์ 5 ตัวในการควบคุม (คุณสามารถแทนที่ด้วยโพเทนชิโอมิเตอร์ 1 อันและจอยสติ๊ก 2 อัน) แผนภาพการเชื่อมต่อกับโพเทนชิโอมิเตอร์แสดงไว้ในส่วนก่อนหน้า ภาพร่าง Arduino อยู่ที่นี่
ด้านล่างนี้คือวิดีโอการทำงานของแขนหุ่นยนต์หลายรายการ ฉันหวังว่าคุณจะเพลิดเพลิน
วิดีโอด้านบนแสดงการดัดแปลงล่าสุดของอาวุธยุทโธปกรณ์ ฉันต้องเปลี่ยนการออกแบบเล็กน้อยและเปลี่ยนชิ้นส่วนบางส่วน ปรากฎว่าเซอร์โว futuba s3003 ค่อนข้างอ่อนแอ ปรากฏว่าใช้สำหรับจับหรือหมุนมือเท่านั้น เขาเลยติดตั้ง mg995 โดยทั่วไปแล้ว mg946 จะเป็นตัวเลือกที่ยอดเยี่ยม
โปรแกรมควบคุมและคำอธิบาย
// ไดรฟ์ถูกควบคุมโดยใช้ตัวต้านทานแบบแปรผัน - โพเทนชิโอมิเตอร์
int potpin = 0; // พินอะนาล็อกสำหรับเชื่อมต่อโพเทนชิออมิเตอร์
อินท์วาล; // ตัวแปรสำหรับอ่านข้อมูลจากพินอะนาล็อก
myservo1.แนบ (3);
myservo2.แนบ (5);
myservo3.แนบ (9);
myservo4.แนบ (10);
myservo5.แนบ (11);
pinMode (นำ, เอาต์พุต);
( // เซอร์โว 1 พินอะนาล็อก 0
val = analogRead (พิน); // อ่านค่าโพเทนชิออมิเตอร์ (ค่าระหว่าง 0 ถึง 1,023)
// ปรับขนาดค่าผลลัพธ์เพื่อใช้กับเซอร์โว (รับค่าในช่วงตั้งแต่ 0 ถึง 180)
myservo1.write(วาล); // นำเซอร์โวไปยังตำแหน่งตามค่าที่คำนวณได้
ล่าช้า(15); // รอให้เซอร์โวมอเตอร์ไปถึงตำแหน่งที่ระบุ
วาล = อะนาล็อกอ่าน (potpin1); // เซอร์โว 2 บนพินอะนาล็อก 1
วาล = แผนที่ (วาล, 0, 1023, 0, 179);
myservo2.write(วาล);
วาล = อะนาล็อกอ่าน (potpin2); // เซอร์โว 3 บนพินอะนาล็อก 2
วาล = แผนที่ (วาล, 0, 1023, 0, 179);
myservo3.write(วาล);
วาล = อะนาล็อกอ่าน (potpin3); // เซอร์โว 4 บนพินอะนาล็อก 3
วาล = แผนที่ (วาล, 0, 1023, 0, 179);
myservo4.write(วาล);
วาล = อะนาล็อกอ่าน (potpin4); //serva 5 บนพินอะนาล็อก 4
วาล = แผนที่ (วาล, 0, 1023, 0, 179);
myservo5.write(วาล);
วาดภาพโดยใช้เซ็นเซอร์วัดระยะอัลตราโซนิก
นี่อาจเป็นหนึ่งในส่วนที่น่าตื่นเต้นที่สุดของโครงการ มีการติดตั้งเซ็นเซอร์วัดระยะบนหุ่นยนต์ ซึ่งจะตอบสนองต่อสิ่งกีดขวางรอบๆ
คำอธิบายพื้นฐานของโค้ดมีดังต่อไปนี้
#กำหนดตรีโกณมิติ 7
รหัสชิ้นส่วนต่อไปนี้:
เราตั้งชื่อให้กับสัญญาณทั้งหมด 5 สัญญาณ (สำหรับ 6 ไดรฟ์) (สามารถเป็นอะไรก็ได้)
กำลังติดตาม:
อนุกรมเริ่มต้น(9600);
pinMode(ตรีโกณมิติ, เอาท์พุต);
pinMode(echoPin, อินพุต);
pinMode (นำ, เอาต์พุต);
myservo1.แนบ (3);
myservo2.แนบ (5);
myservo3.แนบ (9);
myservo4.แนบ (10);
myservo5.แนบ (11);
เราแจ้งให้บอร์ด Arduino ทราบว่าเชื่อมต่อ LED, เซอร์โวมอเตอร์ และเซ็นเซอร์วัดระยะไว้ด้วย ไม่จำเป็นต้องเปลี่ยนแปลงอะไรที่นี่
ตำแหน่งโมฆะ1())(
digitalWrite (นำ, สูง);
myservo2.writeMicroseconds(1300);
myservo4.writeMicroseconds(800);
myservo5.writeMicroseconds(1,000);
มีบางสิ่งที่คุณสามารถเปลี่ยนแปลงได้ที่นี่ ฉันกำหนดตำแหน่งและเรียกมันว่าตำแหน่ง 1 จะนำไปใช้ในโปรแกรมต่อไป หากคุณต้องการให้มีการเคลื่อนไหวที่แตกต่างกัน ให้เปลี่ยนค่าในวงเล็บจาก 0 เป็น 3000
หลังจากนั้น:
ตำแหน่งโมฆะ2())(
digitalWrite (นำ, ต่ำ);
myservo2.writeMicroseconds(1200);
myservo3.writeMicroseconds(1300);
myservo4.writeMicroseconds(1400);
myservo5.writeMicroseconds(2200);
คล้ายกับชิ้นที่แล้ว เฉพาะในกรณีนี้คือตำแหน่งที่ 2 ด้วยหลักการเดียวกันนี้ คุณสามารถเพิ่มตำแหน่งใหม่สำหรับการเคลื่อนไหวได้
ระยะเวลาที่ยาวนาน, ระยะทาง;
digitalWrite (ตรีโกณมิติ, ต่ำ);
ดีเลย์ไมโครวินาที(2);
digitalWrite (ตรีโกณมิติ, สูง);
ดีเลย์ไมโครวินาที (10);
digitalWrite (ตรีโกณมิติ, ต่ำ);
ระยะเวลา = พัลส์อิน (echoPin, สูง);
ระยะทาง = (ระยะเวลา/2) / 29.1;
ตอนนี้โค้ดหลักของโปรแกรมเริ่มใช้งานได้แล้ว คุณไม่ควรเปลี่ยนมัน งานหลักของบรรทัดข้างต้นคือการกำหนดค่าเซ็นเซอร์วัดระยะทาง
หลังจากนั้น:
ถ้า (ระยะทาง<= 30) {
ถ้า (ระยะทาง< 10) {
myservo5.writeMicroseconds(2200); //เปิดแกร็บเบอร์
myservo5.writeMicroseconds(1,000); //ปิดตัวจับ
ตอนนี้คุณสามารถเพิ่มการเคลื่อนไหวใหม่ตามระยะทางที่วัดโดยเซ็นเซอร์อัลตราโซนิก
ถ้า(ระยะทาง<=30){ // данная строка обеспечивает переход в position1, если расстояние меньше 30 см.
ตำแหน่ง1(); // โดยพื้นฐานแล้วแขนจะคำนวณสิ่งที่คุณระบุระหว่างวงเล็บ ( )
else( // ถ้าระยะห่างมากกว่า 30 cm ให้ไปที่ตำแหน่งที่ 2
ตำแหน่ง ()2 // คล้ายกับบรรทัดก่อนหน้า
คุณสามารถเปลี่ยนระยะทางในโค้ดและทำทุกอย่างที่คุณต้องการ
รหัสบรรทัดสุดท้าย
ถ้า (ระยะทาง > 30 || ระยะทาง<= 0){
Serial.println("อยู่นอกขอบเขต"); // ส่งข้อความในมอนิเตอร์แบบอนุกรมที่เราได้เกินขอบเขตที่กำหนด
Serial.print (ระยะทาง);
Serial.println("ซม."); //ระยะห่างเป็นเซนติเมตร
ล่าช้า (500); // หน่วงเวลา 0.5 วินาที
แน่นอน คุณสามารถแปลงทุกอย่างที่นี่เป็นมิลลิเมตร เมตร เปลี่ยนข้อความที่แสดง ฯลฯ คุณสามารถเล่นกับความล่าช้าเล็กน้อยได้
นั่นคือทั้งหมดที่ เพลิดเพลิน อัปเกรดเครื่องมือจัดการของคุณเอง แบ่งปันแนวคิดและผลลัพธ์!
การเชื่อมต่อ:
หากคุณประกอบชิ้นส่วนของหุ่นยนต์ตามคำแนะนำคุณสามารถเริ่มประกอบวงจรอิเล็กทรอนิกส์ได้ เราขอแนะนำให้เชื่อมต่อเซอร์โวตัวจัดการกับ Arduino UNO ผ่าน Trerma-Power Shield และควบคุมเซอร์โวโดยใช้โพเทนชิโอมิเตอร์ Trema
- การหมุนปุ่มของโพเทนชิโอมิเตอร์ Trema ตัวแรกจะหมุนฐาน
- การหมุนปุ่มของโพเทนชิโอมิเตอร์ Trema ตัวที่สองจะหมุนแขนซ้าย
- การหมุนปุ่มโพเทนชิโอมิเตอร์ Trema ตัวที่สามจะหมุนแขนขวา
- การหมุนปุ่มโพเทนชิโอมิเตอร์ Trema ที่สี่จะขยับมือจับ
รหัสโปรแกรม (ภาพร่าง) ให้การป้องกันเซอร์โวซึ่งประกอบด้วยช่วงการหมุนถูกจำกัดด้วยช่วงเวลา (สองมุม) ของการเล่นฟรี มุมการหมุนต่ำสุดและสูงสุดถูกระบุเป็นสองอาร์กิวเมนต์สุดท้ายของฟังก์ชัน map() สำหรับแต่ละเซอร์โว และค่าของมุมเหล่านี้จะถูกกำหนดในระหว่างกระบวนการสอบเทียบซึ่งจะต้องดำเนินการก่อนที่จะเริ่มทำงานกับเครื่องมือจัดการ
รหัสโปรแกรม:
หากคุณใช้กำลังก่อนการสอบเทียบ เครื่องมือจัดการอาจเริ่มเคลื่อนไหวอย่างไม่เหมาะสม! ทำตามขั้นตอนการปรับเทียบทั้งหมดให้เสร็จสิ้นก่อน
#รวม
การสอบเทียบ:
ก่อนที่คุณจะเริ่มทำงานกับเครื่องมือจัดการ จะต้องได้รับการปรับเทียบก่อน!
- การสอบเทียบประกอบด้วยการระบุค่าสุดขีดของมุมการหมุนของเซอร์โวแต่ละตัว เพื่อให้ชิ้นส่วนไม่รบกวนการเคลื่อนที่
- ถอดเซอร์โวทั้งหมดออกจาก Trema-Power Shield อัปโหลดภาพร่างและเชื่อมต่อพลังงาน
- เปิดมอนิเตอร์พอร์ตอนุกรม
- จอภาพจะแสดงมุมการหมุนของเซอร์โวแต่ละตัว (เป็นองศา)
- เชื่อมต่อเซอร์โวตัวแรก (ซึ่งควบคุมการหมุนของฐาน) เพื่อปักหมุด D10
- การหมุนปุ่มของโพเทนชิโอมิเตอร์ Trema ตัวแรก (พิน A2) จะหมุนเซอร์โวตัวแรก (พิน D10) และจอภาพจะเปลี่ยนมุมปัจจุบันของเซอร์โวนี้ (ค่า: A1 = ...) ตำแหน่งสุดขั้วของเซอร์โวตัวแรกจะอยู่ในช่วงตั้งแต่ 10 ถึง 170 องศา (ดังที่เขียนไว้ในบรรทัดแรกของโค้ดลูป) ช่วงนี้สามารถเปลี่ยนแปลงได้โดยการแทนที่ค่าของอาร์กิวเมนต์สองตัวสุดท้ายเป็นฟังก์ชัน map() ในบรรทัดแรกของโค้ดลูปด้วยค่าใหม่ ตัวอย่างเช่น การแทนที่ 170 ด้วย 180 จะเพิ่มตำแหน่งสุดขั้วของเซอร์โวในทิศทางที่กำหนด และโดยการแทนที่ 10 ด้วย 20 คุณจะลดตำแหน่งสุดขั้วอีกอันหนึ่งของเซอร์โวตัวเดียวกัน
- หากคุณแทนที่ค่า คุณจะต้องอัปโหลดภาพร่างอีกครั้ง ตอนนี้เซอร์โวจะหมุนภายในขีดจำกัดใหม่ที่คุณระบุ
- เชื่อมต่อเซอร์โวตัวที่สอง (ซึ่งควบคุมการหมุนของแขนซ้าย) เพื่อปักหมุด D9
- การหมุนปุ่มของโพเทนชิโอมิเตอร์ Trema ตัวที่สอง (พิน A3) จะหมุนเซอร์โวตัวที่สอง (พิน D9) และจอภาพจะเปลี่ยนมุมปัจจุบันของเซอร์โวนี้ (ค่า: A2 = ...) ตำแหน่งสุดขั้วของเซอร์โวตัวที่สองจะอยู่ในช่วงตั้งแต่ 80 ถึง 170 องศา (ดังที่เขียนไว้ในบรรทัดที่สองของร่างลูป) ช่วงนี้เปลี่ยนแปลงในลักษณะเดียวกับเซอร์โวตัวแรก
- หากคุณแทนที่ค่า คุณจะต้องอัปโหลดภาพร่างอีกครั้ง
- เชื่อมต่อเซอร์โวตัวที่สาม (ซึ่งควบคุมการหมุนของแขนขวา) เพื่อปักหมุด D8 และปรับเทียบในลักษณะเดียวกัน
- เชื่อมต่อเซอร์โวตัวที่สี่ (ควบคุมกริปเปอร์) เพื่อปักหมุด D7 และปรับเทียบในลักษณะเดียวกัน
การสอบเทียบเพียงครั้งเดียวหลังจากประกอบหุ่นยนต์แล้ว การเปลี่ยนแปลงที่คุณทำ (ค่าของมุมจำกัด) จะถูกบันทึกไว้ในไฟล์ร่าง
บทความนี้เป็นคำแนะนำเบื้องต้นสำหรับผู้เริ่มต้นในการสร้างแขนหุ่นยนต์ที่เขียนโปรแกรมโดยใช้ Arduino แนวคิดก็คือโครงการแขนหุ่นยนต์จะมีราคาไม่แพงและง่ายต่อการสร้าง เราจะประกอบต้นแบบอย่างง่ายด้วยโค้ดที่สามารถและควรได้รับการปรับให้เหมาะสม นี่จะเป็นการเริ่มต้นที่ยอดเยี่ยมสำหรับคุณในด้านวิทยาการหุ่นยนต์ แขนหุ่นยนต์ Arduino ถูกควบคุมโดยจอยสติ๊กที่ถูกแฮ็ก และสามารถตั้งโปรแกรมให้ทำซ้ำลำดับการกระทำที่คุณระบุได้ หากคุณไม่เก่งด้านการเขียนโปรแกรม คุณสามารถเข้าร่วมโปรเจ็กต์นี้เป็นการฝึกอบรมการประกอบฮาร์ดแวร์ อัปโหลดโค้ดของฉันลงไป และรับความรู้พื้นฐานจากฮาร์ดแวร์นั้น อีกครั้งโครงการนี้ค่อนข้างง่าย
วิดีโอแสดงการสาธิตหุ่นยนต์ของฉัน
ขั้นตอนที่ 1: รายการวัสดุ
เราจะต้อง:
- บอร์ดอาร์ดูโน่. ฉันใช้ Uno แต่ความหลากหลายก็จะทำงานได้ดีพอๆ กันสำหรับโปรเจ็กต์นี้
- เซอร์โว 4 ตัวที่ถูกที่สุดที่คุณจะพบ
- วัสดุที่อยู่อาศัยที่เหมาะกับรสนิยมของคุณ ไม้ พลาสติก โลหะ กระดาษแข็งมีความเหมาะสม โครงการของฉันทำจากสมุดบันทึกเก่า
- หากคุณไม่อยากยุ่งยากกับแผงวงจรพิมพ์ คุณจะต้องมีเขียงหั่นขนม บอร์ดขนาดเล็กจะทำ มองหาตัวเลือกที่มีจัมเปอร์และแหล่งจ่ายไฟ - อาจมีราคาถูกมาก
- บางอย่างสำหรับโคนแขน - ฉันใช้กระป๋องกาแฟ มันไม่ใช่ตัวเลือกที่ดีที่สุด แต่มันคือทั้งหมดที่ฉันหาได้ในอพาร์ทเมนท์
- ด้ายเส้นเล็กสำหรับกลไกแขนและเข็มสำหรับเจาะรู
- กาวและเทปเพื่อยึดทุกอย่างไว้ด้วยกัน ไม่มีอะไรที่ยึดติดกันไม่ได้ด้วยเทปพันสายไฟและกาวร้อน
- ตัวต้านทาน 10K สามตัว หากคุณไม่มีตัวต้านทาน ก็มีวิธีแก้ไขในโค้ดสำหรับกรณีดังกล่าว แต่ทางเลือกที่ดีที่สุดคือการซื้อตัวต้านทาน
ขั้นตอนที่ 2: มันทำงานอย่างไร
รูปที่แนบมาแสดงหลักการทำงานของมือ ฉันจะอธิบายทุกอย่างด้วยคำพูด มือทั้งสองข้างเชื่อมต่อกันด้วยด้ายเส้นเล็ก ตรงกลางของเธรดเชื่อมต่อกับอาร์มเซอร์โว เมื่อเซอร์โวดึงด้าย มือจะหดตัว ฉันจับแขนด้วยสปริงปากกาลูกลื่น แต่ถ้าคุณมีวัสดุที่ยืดหยุ่นกว่านี้ ก็ใช้สปริงนั้นได้
ขั้นตอนที่ 3: การปรับเปลี่ยนจอยสติ๊ก
สมมติว่าคุณประกอบกลไกแขนเสร็จแล้ว ฉันจะไปยังส่วนจอยสติ๊ก
โปรเจ็กต์นี้ใช้จอยสติ๊กแบบเก่า แต่โดยหลักการแล้วอุปกรณ์ใดๆ ที่มีปุ่มก็สามารถใช้ได้ ปุ่มแอนะล็อก (เห็ด) ใช้เพื่อควบคุมเซอร์โว เนื่องจากโดยพื้นฐานแล้วเป็นเพียงโพเทนชิโอมิเตอร์ หากคุณไม่มีจอยสติ๊ก คุณสามารถใช้โพเทนชิโอมิเตอร์ธรรมดาได้ 3 ตัว แต่ถ้าคุณเป็นเหมือนฉันและกำลัง DIY จอยสติ๊กเก่าๆ อยู่ ต่อไปนี้คือสิ่งที่คุณต้องทำ
ฉันเชื่อมต่อโพเทนชิโอมิเตอร์เข้ากับเขียงหั่นขนม แต่ละอันมีสามขั้ว หนึ่งในนั้นต้องเชื่อมต่อกับ GND ส่วนที่สองคือ +5V บน Arduino และอันตรงกลางกับอินพุต ซึ่งเราจะกำหนดในภายหลัง เราจะไม่ใช้แกน Y บนโพเทนชิออมิเตอร์ด้านซ้าย ดังนั้นเราจึงต้องการเพียงโพเทนชิออมิเตอร์เหนือจอยสติ๊กเท่านั้น
สำหรับสวิตช์ ให้เชื่อมต่อ +5V ที่ปลายด้านหนึ่ง และต่อสายไฟที่ไปยังอินพุต Arduino อีกด้านหนึ่งไปยังปลายอีกด้านหนึ่ง จอยสติ๊กของฉันมีเส้น +5V ทั่วไปสำหรับสวิตช์ทั้งหมด ฉันเชื่อมต่อเพียง 2 ปุ่ม แต่จากนั้นฉันก็เชื่อมต่ออีกปุ่มหนึ่งเพราะจำเป็น
สิ่งสำคัญคือต้องตัดสายไฟที่ไปที่ชิป (วงกลมสีดำบนจอยสติ๊ก) เมื่อคุณทำตามขั้นตอนข้างต้นทั้งหมดแล้ว คุณก็สามารถเริ่มเดินสายไฟได้
ขั้นตอนที่ 4: การเดินสายอุปกรณ์ของเรา
ภาพถ่ายแสดงการเดินสายไฟฟ้าของอุปกรณ์ โพเทนชิโอมิเตอร์เป็นคันโยกบนจอยสติ๊ก ข้อศอกเป็นแกน Y ด้านขวา ฐานเป็นแกน X ด้านขวา ไหล่เป็นแกน X ด้านซ้าย หากคุณต้องการเปลี่ยนทิศทางของเซอร์โว เพียงเปลี่ยนตำแหน่งของสาย +5V และ GND บนโพเทนชิออมิเตอร์ที่สอดคล้องกัน
ขั้นตอนที่ 5: อัปโหลดโค้ด
ณ จุดนี้ เราจำเป็นต้องดาวน์โหลดโค้ดที่แนบมาลงในคอมพิวเตอร์ของคุณแล้วอัปโหลดไปยัง Arduino
หมายเหตุ: หากคุณเคยอัปโหลดโค้ดไปยัง Arduino มาก่อน ให้ข้ามขั้นตอนนี้ไป คุณจะไม่ได้เรียนรู้อะไรใหม่ ๆ
- เปิด Arduino IDE แล้ววางโค้ดลงไป
- ใน Tools/Board ให้เลือกบอร์ดของคุณ
- ใน Tools/Serial Port ให้เลือกพอร์ตที่บอร์ดของคุณเชื่อมต่ออยู่ เป็นไปได้มากว่าตัวเลือกจะประกอบด้วยหนึ่งรายการ
- คลิกปุ่มอัปโหลด
คุณสามารถเปลี่ยนช่วงการทำงานของเซอร์โวได้ฉันทิ้งโน้ตไว้ในโค้ดเกี่ยวกับวิธีการทำเช่นนี้ เป็นไปได้มากว่ารหัสจะทำงานได้โดยไม่มีปัญหา คุณจะต้องเปลี่ยนพารามิเตอร์เซอร์โวของแขนเท่านั้น การตั้งค่านี้ขึ้นอยู่กับว่าคุณตั้งค่าเส้นใยอย่างไร ดังนั้นฉันขอแนะนำให้ตั้งค่าให้ถูกต้องทุกประการ
หากคุณไม่ได้ใช้ตัวต้านทาน คุณจะต้องแก้ไขโค้ดที่ฉันจดบันทึกไว้
ไฟล์
ขั้นตอนที่ 6: การเริ่มต้นโครงการ
หุ่นยนต์ถูกควบคุมโดยการเคลื่อนไหวบนจอยสติ๊ก มือจะถูกบีบอัดและคลายออกโดยใช้ปุ่มมือ วิดีโอแสดงให้เห็นว่าทุกอย่างทำงานอย่างไรในชีวิตจริง
ต่อไปนี้เป็นวิธีตั้งโปรแกรมมือ:
- เปิด Serial Monitor ใน Arduino IDE ซึ่งจะทำให้ง่ายต่อการตรวจสอบกระบวนการ
- บันทึกตำแหน่งเริ่มต้นโดยคลิกบันทึก
- ย้ายเซอร์โวครั้งละหนึ่งตัวเท่านั้น เช่น ยกไหล่ขึ้น แล้วกดบันทึก
- เปิดใช้งานมือระหว่างก้าวเท่านั้น จากนั้นบันทึกโดยกดบันทึก การปิดใช้งานยังดำเนินการในขั้นตอนแยกต่างหาก ตามด้วยการกดบันทึก
- เมื่อคุณเสร็จสิ้นลำดับคำสั่ง ให้กดปุ่มเล่น หุ่นยนต์จะย้ายไปยังตำแหน่งเริ่มต้นแล้วเริ่มเคลื่อนที่
- หากคุณต้องการหยุด ให้ถอดสายเคเบิลหรือกดปุ่มรีเซ็ตบนบอร์ด Arduino
หากทำทุกอย่างถูกต้อง ผลลัพธ์ก็จะประมาณนี้!
ฉันหวังว่าบทเรียนจะเป็นประโยชน์กับคุณ!
มุมมองด้านในฝ่ามือของหุ่นยนต์ฮิวแมนนอยด์ RKP-RH101-3D ฝ่ามือของหุ่นยนต์ฮิวแมนนอยด์ถูกหนีบไว้ที่ 50% (ดูรูปที่ 2)
ในกรณีนี้ การเคลื่อนไหวที่ซับซ้อนของมือของหุ่นยนต์ฮิวแมนนอยด์เป็นไปได้ แต่การเขียนโปรแกรมจะซับซ้อน น่าสนใจ และน่าตื่นเต้นมากขึ้น ในเวลาเดียวกัน บนแต่ละนิ้วมือของหุ่นยนต์ฮิวแมนนอยด์ สามารถติดตั้งเซ็นเซอร์และเซ็นเซอร์ต่างๆ เพิ่มเติมที่ควบคุมกระบวนการต่างๆ ได้
โดยทั่วไปแล้วนี่คือการออกแบบของตัวจัดการ RKP-RH101-3D สำหรับความซับซ้อนของงานที่หุ่นยนต์ตัวใดตัวหนึ่งซึ่งมีอุปกรณ์ควบคุมต่างๆ ที่ใช้แทนมือสามารถแก้ปัญหาได้ ส่วนใหญ่จะขึ้นอยู่กับความซับซ้อนและความสมบูรณ์แบบของอุปกรณ์ควบคุม
เป็นเรื่องปกติที่จะพูดถึงหุ่นยนต์สามรุ่น: หุ่นยนต์อุตสาหกรรม หุ่นยนต์ปรับตัว และปัญญาประดิษฐ์ แต่ไม่ว่าหุ่นยนต์ประเภทไหนจะได้รับการออกแบบมา ก็ไม่สามารถทำอะไรได้หากไม่มีมือของหุ่นยนต์เพื่อทำงานต่างๆ ลิงก์ตัวจัดการสามารถเคลื่อนย้ายได้โดยสัมพันธ์กันและสามารถดำเนินการเคลื่อนไหวแบบหมุนและการแปลได้ บางครั้งแทนที่จะหยิบสิ่งของจากหุ่นยนต์อุตสาหกรรม ข้อต่อสุดท้ายของหุ่นยนต์ (มือของมัน) คือเครื่องมือทำงานบางประเภท เช่น สว่าน ประแจ เครื่องพ่นสี หรือคบเพลิงเชื่อม หุ่นยนต์ฮิวแมนนอยด์อาจมีอุปกรณ์จิ๋วเพิ่มเติมอีกมากมายที่ปลายนิ้วของหุ่นยนต์ที่มีรูปร่างเหมือนมือ เช่น สำหรับการเจาะ การแกะสลัก หรือการวาดภาพ
มุมมองทั่วไปของหุ่นยนต์ต่อสู้ฮิวแมนนอยด์บนเซอร์โวด้วยมือ RKP-RH101-3D (ดูรูปที่ 3)