สารบัญ:
- ขั้นตอนที่ 1: รายการช้อปปิ้ง
- ขั้นตอนที่ 2: เตรียมโครงสร้างที่สวมใส่ได้
- ขั้นตอนที่ 3: เตรียมส่วนการทำงาน
- ขั้นตอนที่ 4: แก้ไขเซ็นเซอร์ที่ส่วนปลาย
- ขั้นตอนที่ 5: แก้ไขชิ้นส่วนที่พิมพ์ 3 มิติให้กับถุงมือ
- ขั้นตอนที่ 6: เตรียมล้อสำหรับเซอร์โว
- ขั้นตอนที่ 7: แก้ไขมอเตอร์กับแขน
- ขั้นตอนที่ 8: รหัสบน Arduino
- ขั้นตอนที่ 9: แก้ไข Arduino, แบตเตอรี่ และ Veroboard ที่แขน
- ขั้นตอนที่ 10: เชื่อมต่ออุปกรณ์อิเล็กทรอนิกส์
- ขั้นตอนที่ 11: เพิ่มสายไนลอน
- ขั้นตอนที่ 12: สนุก
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
เราเป็นกลุ่มนักศึกษาของ ULB Université Libre de Bruxelles โครงการของเราประกอบด้วยการพัฒนาถุงมือหุ่นยนต์ที่สามารถสร้างแรงยึดจับเพื่อช่วยคนหยิบสิ่งของ
ถุงมือ
ถุงมือมีการต่อสายไฟที่เชื่อมนิ้วมือกับเซอร์โวมอเตอร์บางตัว: ลวดติดอยู่ที่ปลายนิ้วและกับเซอร์โว ดังนั้นเมื่อเซอร์โวหมุน ลวดจะถูกดึงและนิ้วจะงอ ด้วยวิธีนี้ โดยการควบคุมการยึดจับที่ผู้ใช้ทำผ่านเซ็นเซอร์ความดันบางตัวที่ส่วนปลายของนิ้ว เราจึงสามารถสั่งงานมอเตอร์ในลักษณะที่ควบคุมได้ และช่วยให้จับยึดได้โดยการงอนิ้วตามสัดส่วนกับการหมุนของมอเตอร์และ ดังนั้นการม้วนสายไฟ ด้วยวิธีนี้ เราควรอนุญาตให้คนที่อ่อนแอจับสิ่งของหรือช่วยเหลือแม้แต่คนที่อยู่ในสภาวะทางสรีรวิทยาในการจับวัตถุและเก็บมันไว้โดยไม่ต้องใช้ความพยายามใดๆ
การออกแบบ
โมเดลนี้ได้รับการพัฒนาขึ้นเพื่อให้การเคลื่อนไหวของมือเป็นไปอย่างอิสระที่สุด อันที่จริง เราพิมพ์ 3D เฉพาะส่วนที่จำเป็นอย่างยิ่งที่เราจำเป็นต้องเชื่อมต่อสายไฟ มอเตอร์ และนิ้วมือ
เรามีโดมด้านบนพิมพ์ด้วย PLA บนแต่ละนิ้ว: นี่คือส่วนขั้วต่อที่ต้องต่อสายไฟและต้องให้การป้องกันกับเซ็นเซอร์ความดันที่ติดอยู่ด้านใน เซ็นเซอร์ความดันติดกาวด้วยกาวร้อนระหว่างส่วนปลายของ PLA กับถุงมือ
จากนั้นเราก็มีวงแหวนพิมพ์ 3 มิติสองวงต่อนิ้วซึ่งเป็นแนวทางสำหรับสายไฟ นิ้วโป้งเป็นนิ้วเดียวที่มีวงแหวนพิมพ์เพียงวงเดียว มีลวดหนึ่งเส้นต่อนิ้ว พับครึ่งที่ปลายนิ้ว ทั้งสองส่วนกำลังผ่านไกด์ทั้งสองของส่วนโดมและในวงแหวนทั้งสอง: พวกมันถูกใส่เข้าไปในรูที่เราทำขึ้นที่ด้านนอกของวงแหวนเหล่านี้ จากนั้นจะประกอบเข้าด้วยกันเป็นล้อที่เชื่อมต่อโดยตรงกับมอเตอร์ วงล้อได้รับการออกแบบมาเพื่อให้สามารถพันรอบสายไฟได้: เนื่องจากมอเตอร์ของเรามีการหมุนไม่เต็มที่ (ต่ำกว่า 180°) เราจึงได้ทราบถึงล้อเพื่อดึงลวดให้มีระยะห่าง 6 เซนติเมตรซึ่งเป็นระยะห่าง จำเป็นต้องปิดมืออย่างสมบูรณ์
เรายังพิมพ์เพลตสองแผ่นเพื่อยึดเซอร์โวมอเตอร์และอาร์ดิโนที่แขน ควรตัดด้วยไม้หรือพลาสติกแข็งด้วยเครื่องตัดเลเซอร์
ขั้นตอนที่ 1: รายการช้อปปิ้ง
ถุงมือและสายไฟ:
ถุงมือที่มีอยู่ 1 อัน (ต้องเย็บได้)
ยีนส์เก่าหรือผ้าเนื้อแข็งอื่นๆ
สายไนลอน
ท่อโพลีเอทิลีนความหนาแน่นต่ำ (เส้นผ่านศูนย์กลาง: 4 มม. ความหนา: 1 มม.)
อิเล็กทรอนิกส์:
Arduino Uno
1 แบตเตอรี่ 9V + 9V ที่ใส่แบตเตอรี่
สวิตช์อิเล็กทรอนิกส์ 1 ตัว
1 veroboard
3 เซอร์โวมอเตอร์ (1 ต่อนิ้ว)
3 ใบพัด (ให้มาพร้อมกับเซอร์โว)
แบตเตอรี่ 4 ก้อน AA + 4 ที่ใส่แบตเตอรี่ AA
3 เซ็นเซอร์ความดัน (1 ต่อนิ้ว)
ตัวต้านทาน 3 ตัว 330 โอห์ม (1 ต่อนิ้ว)
6 สายไฟฟ้า (2 ต่อเซ็นเซอร์)
สกรู น็อตและตัวยึด:
4 M3 ยาว 10 มม. (เพื่อซ่อม Arduino)
2 M2.5 ยาว 12 มม. (เพื่อยึดที่ใส่แบตเตอรี่ 9V)
6 ถั่วที่สอดคล้องกัน
6 M2 ยาว 10 มม. (2 ต่อเซอร์โวเพื่อยึดล้อกับเซอร์โว)
สายรัดขนาดเล็ก 12 เส้น (สำหรับยึดเพลตและสวิตช์)
สายรัดขนาดใหญ่ 7 เส้น (2 ตัวต่อมอเตอร์และ 1 ตัวสำหรับที่ใส่แบตเตอรี่ AA 4 ก้อน)
เครื่องมือที่ใช้:
เครื่องพิมพ์ 3 มิติ (Ultimaker 2)
วัสดุสำหรับเย็บผ้า
ปืนกาวร้อน
ตัวเลือกเสริม: เครื่องตัดเลเซอร์
ขั้นตอนที่ 2: เตรียมโครงสร้างที่สวมใส่ได้
โครงสร้างที่สวมใส่ได้ทำด้วยเสื้อผ้า: ในกรณีของเรา เราใช้ถุงมือธรรมดาสำหรับช่างไฟฟ้า และผ้ายีนส์สำหรับโครงสร้างรอบข้อมือ พวกเขาถูกเย็บเข้าด้วยกัน
จุดมุ่งหมายคือการมีโครงสร้างที่สวมใส่ได้ยืดหยุ่น
โครงสร้างต้องแข็งแรงกว่าถุงมือขนสัตว์ทั่วไป เนื่องจากต้องเย็บ
เราต้องการโครงสร้างที่สวมใส่ได้รอบข้อมือเพื่อยึดตัวจ่ายไฟและแอคทูเอเตอร์ และเราต้องการให้มีความเสถียร ดังนั้นเราจึงเลือกที่จะปรับการปิดได้โดยใช้แถบเวลโคร (แถบกาวอัตโนมัติ) ที่ข้อมือของกางเกงยีนส์
ท่อนไม้บางส่วนถูกเย็บเข้าไปด้านในเพื่อทำให้ยีนส์แข็งขึ้น
ขั้นตอนที่ 3: เตรียมส่วนการทำงาน
ชิ้นส่วนที่แข็งแรงนั้นรับรู้ผ่านการพิมพ์ 3 มิติใน PLA จากไฟล์.stl ในคำอธิบาย:
แหวนนิ้ว x5 (มีสเกลต่างกัน: 1x สเกล 100%, 2x สเกล 110%, 2x สเกล 120%);
Finger Extremity x3 (มีสเกลต่างกัน: 1x สเกล 100%, 1x สเกล 110%, 1x สเกล 120%);
ล้อสำหรับมอเตอร์ x3
สำหรับชิ้นส่วนของนิ้ว จำเป็นต้องใช้เครื่องชั่งที่แตกต่างกันเนื่องจากขนาดที่แตกต่างกันของแต่ละนิ้วและของพรรคแต่ละกลุ่ม
ขั้นตอนที่ 4: แก้ไขเซ็นเซอร์ที่ส่วนปลาย
ขั้นแรกให้บัดกรีเซ็นเซอร์ความดันเข้ากับสายไฟ
จากนั้นพวกเขาจะติดกาวโดยใช้ปืนกาวภายในปลายนิ้ว: กาวจำนวนเล็กน้อยวางอยู่ในส่วนปลายที่ด้านข้างที่มีสองรู จากนั้นเซ็นเซอร์จะถูกนำไปใช้กับส่วนที่ใช้งาน (กลม) บน กาว (ให้เพียโซอิเล็กทริกหันด้านในของโครงสร้างและชิ้นส่วนพลาสติกบนกาวโดยตรง) สายไฟต้องลากผ่านด้านบนของนิ้วลงไปด้านหลัง เพื่อให้สายไฟวิ่งที่หลังมือ
ขั้นตอนที่ 5: แก้ไขชิ้นส่วนที่พิมพ์ 3 มิติให้กับถุงมือ
ต้องเย็บชิ้นส่วนที่แข็งทั้งหมด (ส่วนปลาย, วงแหวน) เข้ากับถุงมือจึงจะซ่อมได้
ในการวางแหวนอย่างถูกต้อง ก่อนอื่นให้สวมถุงมือแล้วลองสวมแหวนหนึ่งวงต่อกลุ่ม โดยไม่ต้องให้แหวนสัมผัสระหว่างการปิดมือ โดยประมาณ วงแหวนบนดัชนีจะยึดไว้เหนือฐานนิ้ว 5 มม. และสูงกว่าวงแหวนแรก 17 ถึง 20 มม. สำหรับนิ้วกลาง แหวนวงแรกจะอยู่เหนือฐานนิ้วประมาณ 8 ถึง 10 มม. และแหวนที่สองจะอยู่เหนือวงแรกประมาณ 20 มม. สำหรับนิ้วหัวแม่มือ ความแม่นยำที่จำเป็นนั้นต่ำมาก เนื่องจากไม่เสี่ยงที่จะรบกวนวงแหวนอื่นๆ ดังนั้น ให้ลองใช้มันกับถุงมือที่สวมอยู่ วาดเส้นบนถุงมือที่คุณต้องการให้มี แหวนเพื่อให้คุณสามารถเย็บมัน.
สำหรับการตัดเย็บนั้น ไม่จำเป็นต้องใช้เทคนิคหรือความสามารถพิเศษใดๆ ด้วยเข็ม ด้ายเย็บผ้าจะวนเป็นวงกลมรอบวงแหวน ผ่านพื้นผิวของถุงมือ ขั้นตอนระหว่างสองรูในถุงมือ 3-4 มม. ทำให้การยึดแน่นเพียงพอแล้ว ไม่จำเป็นต้องเย็บผ้าที่หนาแน่นมาก
ใช้เทคนิคเดียวกันนี้ในการแก้ไขปลายแขน: ส่วนบนของปลายเป็นรูเพื่อให้เข็มผ่านได้ง่าย ดังนั้นจะต้องเย็บเฉพาะรูปทรงที่คล้ายกากบาทที่ด้านบนของนิ้วเท่านั้น
จากนั้น ตัวนำโพลีเอทิลีนจะต้องได้รับการแก้ไขด้วย โดยปฏิบัติตามเกณฑ์สามประการ:
ส่วนปลาย (หันนิ้ว) จะต้องหันไปทางนิ้วเพื่อหลีกเลี่ยงการเสียดสีสูงกับลวดไนลอนที่จะเข้าไปข้างใน
ส่วนปลายต้องอยู่ไกลพอที่จะไม่รบกวนมือที่ปิด (ประมาณ 3 ซม. ต่ำกว่าฐานของนิ้วก็เพียงพอแล้ว 4 ถึง 5 ซม. สำหรับนิ้วหัวแม่มือ)
ท่อต้องผ่านกันและกันให้น้อยที่สุดเพื่อลดปริมาณถุงมือทั้งหมดและความคล่องตัวของแต่ละท่อ
เย็บเข้าที่บริเวณถุงมือและข้อมือโดยใช้เทคนิคเดียวกับด้านบน
เพื่อหลีกเลี่ยงความเสี่ยงจากการร่อนบนรางเย็บ จึงมีการเพิ่มกาวเล็กน้อยระหว่างท่อและถุงมือ
ขั้นตอนที่ 6: เตรียมล้อสำหรับเซอร์โว
เราใช้ล้อที่ออกแบบมาโดยเฉพาะ วาดและพิมพ์ 3 มิติด้วยตัวเองสำหรับโปรเจ็กต์นี้ (ไฟล์.stl ในคำอธิบาย)
เมื่อล้อพิมพ์ออกมา เราต้องยึดกับใบพัดของเซอร์โวโดยการขันสกรู (M2, สกรู 10 มม.) เนื่องจากรูของใบพัดมีขนาดเล็กกว่าเส้นผ่านศูนย์กลาง 2 มม. เมื่อขัน M2 จึงไม่จำเป็นต้องมีน็อต
สามารถใช้ใบพัด 3 ตัวกับเซอร์โวแต่ละตัวได้
ขั้นตอนที่ 7: แก้ไขมอเตอร์กับแขน
ขั้นตอนนี้ประกอบด้วยการยึดมอเตอร์เข้ากับแขน ในการทำเช่นนั้น เราต้องพิมพ์แผ่นโลหะเสริม PLA เพื่อรับการสนับสนุน
อันที่จริง มอเตอร์ไม่สามารถยึดเข้ากับแขนได้โดยตรง เนื่องจากล้อซึ่งจำเป็นสำหรับการดึงสายไฟ อาจถูกปิดกั้นระหว่างการเคลื่อนไหวเนื่องจากถุงมือ ดังนั้นเราจึงพิมพ์ 3D แผ่น PLA ขนาด 120x150x5 มม.
จากนั้นเราก็ยึดแผ่นโลหะที่ถุงมือด้วยสายรัด: เราทำรูในถุงมือโดยใช้กรรไกร จากนั้นเราก็เจาะรูบนแผ่นพลาสติกด้วยสว่านและประกอบทุกอย่างเข้าด้วยกัน จำเป็นต้องมีรูสี่รูในแผ่นโลหะตรงกลางระหว่างปริมณฑลเพื่อผ่านสายรัด พวกเขาทำด้วยสว่าน เหล่านี้อยู่ที่ส่วนตรงกลางและไม่ได้อยู่ที่ด้านข้างของจานเพื่อให้สามารถปิดกางเกงยีนส์รอบแขนได้โดยไม่ต้องมีแผ่นกั้นเนื่องจากจานไม่ยืดหยุ่น
จากนั้นเจาะรูอื่น ๆ ลงในแผ่นพลาสติกเพื่อยึดมอเตอร์ มอเตอร์ได้รับการแก้ไขด้วยสายรัดสองเส้น กาวบางส่วนถูกเพิ่มที่ด้านข้างเพื่อให้แน่ใจว่าการตรึง
ต้องวางมอเตอร์ในลักษณะที่ล้อไม่รบกวนกัน ดังนั้นทางซ้ายและขวาของมือจึงแยกออกจากกัน: สองล้ออยู่ด้านข้างโดยที่ล้อหมุนไปในทิศทางตรงกันข้ามและอีกอันอยู่อีกด้านหนึ่ง
ขั้นตอนที่ 8: รหัสบน Arduino
โค้ดได้รับการพัฒนาในวิธีที่ง่าย: เพื่อกระตุ้นหรือไม่ใช้มอเตอร์เซอร์โวจะทำงานก็ต่อเมื่อการอ่านมีค่าเกินค่าที่กำหนด (ได้รับการแก้ไขโดยการทดลองและข้อผิดพลาดเนื่องจากความรู้สึกของเซ็นเซอร์แต่ละตัวไม่เหมือนกันทุกประการ). มีโอกาสดัดได้สองแบบ คือ แบบต่ำสำหรับแรงต่ำ และแบบสมบูรณ์สำหรับกำลังแรง เมื่องอนิ้วแล้ว ผู้ใช้ไม่จำเป็นต้องใช้แรงใดๆ เพื่อรักษาตำแหน่งจริงของนิ้ว เหตุผลของการใช้งานนี้คือไม่เช่นนั้นจะมีการกล่าวไว้ว่านิ้วมือต้องใช้แรงกดบนเซ็นเซอร์อย่างต่อเนื่อง และถุงมือไม่ได้ให้ประโยชน์ใดๆ ในการปล่อยนิ้วงอ จำเป็นต้องใช้แรงใหม่กับเซ็นเซอร์ความดัน โดยทำหน้าที่เป็นคำสั่งหยุด
เราสามารถแบ่งรหัสออกเป็นสามส่วน:
เซ็นเซอร์เริ่มต้น:
ก่อนอื่น เราเริ่มต้นตัวแปรจำนวนเต็มสามตัว: การอ่าน 1 การอ่าน 2 การอ่าน 3 สำหรับแต่ละเซ็นเซอร์ เซ็นเซอร์ถูกใส่ลงในอินพุตแบบอะนาล็อก A0, A2, A4 ตัวแปรแต่ละตัวสำหรับการอ่านถูกตั้งค่าดังนี้:
- Reading1 ที่เขียนค่าที่อ่านในอินพุต A0,
- Reading2 ที่เขียนค่าที่อ่านในอินพุต A2
- การอ่าน3 ที่เขียนค่าที่อ่านในอินพุต A4
ธรณีประตูสองอันถูกกำหนดด้วยนิ้วซึ่งสอดคล้องกับตำแหน่งการสั่งงานของเซอร์โวสองตำแหน่ง เกณฑ์เหล่านี้แตกต่างกันไปสำหรับแต่ละนิ้ว เนื่องจากแรงที่ใช้กับนิ้วแต่ละนิ้วไม่เหมือนกัน และความไวของเซ็นเซอร์ทั้งสามนั้นไม่เหมือนกันทุกประการ
มอเตอร์เริ่มต้น:
ถ่านสามตัวแปร (save1, save2, save3) หนึ่งตัวสำหรับมอเตอร์แต่ละตัวเริ่มต้นที่ 0 จากนั้นในการตั้งค่า เราระบุพินที่เราเสียบมอเตอร์ตามลำดับ: พิน 9, พิน 6 และพิน 3 สำหรับเซอร์โว1, เซอร์โว2, เซอร์โว3; ทั้งหมดเริ่มต้นที่ค่า 0
จากนั้นเซอร์โวจะถูกกระตุ้นผ่านคำสั่ง servo.write() ซึ่งสามารถแก้ไขมุมที่ได้รับเป็นอินพุตบนเซอร์โว นอกจากนี้ จากการลองผิดลองถูก พบว่ามุมที่ดีทั้งสองมุม จำเป็นต้องงอนิ้วในสองตำแหน่งที่สอดคล้องกับด้ามจับขนาดเล็กและด้ามจับขนาดใหญ่
เนื่องจากมอเตอร์ตัวหนึ่งจำเป็นต้องหมุนไปในทิศทางตรงกันข้ามเนื่องจากการตรึง จุดเริ่มต้นของมอเตอร์จึงไม่เป็นศูนย์ แต่เป็นมุมสูงสุดและลดลงเมื่อใช้แรงเพื่อให้สามารถหมุนไปในทิศทางตรงกันข้ามได้
การเชื่อมโยงระหว่างเซ็นเซอร์และมอเตอร์:
ทางเลือกของ save1, save2, save3 และ reading1, reading2, reading3 ขึ้นอยู่กับการบัดกรี แต่สำหรับแต่ละนิ้ว เซ็นเซอร์และมอเตอร์ที่เกี่ยวข้องจะต้องมีตัวเลขเท่ากัน
จากนั้นในวงถ้าใช้เงื่อนไขในการทดสอบว่านิ้วอยู่ในตำแหน่งงอหรือไม่และความดันถูกนำไปใช้หรือไม่บนเซ็นเซอร์ เมื่อเซ็นเซอร์ส่งคืนค่า ต้องใช้แรง แต่เป็นไปได้สองกรณี:
- หากนิ้วยังไม่งอ เมื่อเปรียบเทียบค่านี้ที่เซ็นเซอร์ส่งคืนกับธรณีประตู มุมที่สอดคล้องกันจะถูกนำไปใช้กับเซอร์โว
- หากนิ้วงออยู่แล้ว แสดงว่าผู้ใช้ต้องการปลดการดัด จากนั้นมุมเริ่มต้นจะถูกนำไปใช้กับเซอร์โว
สิ่งนี้ทำสำหรับมอเตอร์แต่ละตัว
จากนั้นเราเพิ่มการหน่วงเวลา 1,000 มิลลิวินาทีเพื่อหลีกเลี่ยงการทดสอบค่าของเซ็นเซอร์บ่อยเกินไป หากใช้ค่าการหน่วงเวลาน้อยเกินไป อาจเสี่ยงที่จะเปิดมืออีกครั้งหลังจากปิดแล้ว ในกรณีที่แรงกระทำในช่วงเวลาที่นานกว่าเวลาหน่วง
กระบวนการทั้งหมดสำหรับเซ็นเซอร์ตัวเดียวแสดงอยู่ในแผนผังลำดับงานด้านบนนี้
รหัสทั้งหมด
#รวมเซอร์โวเซอร์โว1; เซอร์โวเซอร์โว2; เซอร์โวเซอร์โว3; การอ่านโดยตั้งใจ1; การอ่านภายใน2; การอ่านภายใน3; ถ่าน save1 = 0; // เซอร์โวเริ่มต้นที่สถานะ 0, สถานะการนอนหลับ char save2 = 0; ถ่าน save3 = 0; การตั้งค่าเป็นโมฆะ (เป็นโมฆะ) { Serial.begin (9600); servo2.attach(9); //เซอร์โวที่ขาดิจิตอล 9 servo2.write(160); //จุดเริ่มต้นสำหรับเซอร์โวเซอร์โว1.แนบ(6); //เซอร์โวที่ขาดิจิตอล 6 servo1.write(0); //จุดเริ่มต้นสำหรับเซอร์โว servo3.attach(3); //เซอร์โวที่ขาดิจิตอล 3 servo3.write(0); //จุดเริ่มต้นสำหรับเซอร์โว
}
วงเป็นโมฆะ (เป็นโมฆะ) { reading1 = analogRead (A0); // แนบกับแอนะล็อก 0 การอ่าน2 = แอนะล็อกอ่าน (A2); //แนบกับการอ่านอนาล็อก 23 = analogRead(A4); //แนบกับอนาล็อก4
// if (reading2 >= 0) { Serial.print ("ค่าเซนเซอร์ = "); // ตัวอย่างคำสั่งที่ใช้ในการสอบเทียบขีดจำกัดของเซ็นเซอร์ตัวแรก
// Serial.println (การอ่าน 2); } // อื่นๆ { Serial.print ("ค่าเซ็นเซอร์ = "); Serial.println(0); }
if (อ่าน 1 > 100 และ save1 == 0){ // ถ้าเซ็นเซอร์ได้รับค่าที่สูงและไม่อยู่ในสถานะสลีป save1 = 2; } // ไปที่สถานะ 2 อื่น if (อ่าน 1 > 30 และ save1 == 0){ // หากเซ็นเซอร์ได้รับค่าปานกลางและไม่ได้อยู่ในสถานะสลีป save1 = 1; } // ต้องระบุ 1 อื่น if (reading1 > 0){ // ถ้าค่าไม่ใช่ศูนย์และไม่มีเงื่อนไขก่อนหน้านี้แก้ไข save1 = 0;} // ไปที่สถานะสลีป
ถ้า (save1 == 0) { servo1.write (160); } // ปล่อยตัวอื่น if (save1 == 1) { servo1.write (120); } // มุมกลางของการดึงอื่น { servo1.write (90); } // มุมสูงสุดของการดึง
if (reading2 > 10 and save2 == 0){ // เหมือนกับ servo 1 save2 = 2; } else if (การอ่าน 2 > 5 และ save2 == 0){ save2 = 1; } else if (reading2 > 0){ save2 = 0;}
ถ้า (save2 == 0) { servo2.write(0); } อื่น ๆ ถ้า (save2 == 1) { servo2.write (40); } อื่น ๆ { servo2.write (60); }
if (reading3 > 30 และ save3 == 0){ // เหมือนกับ servo 1 save3 = 2; } else if (reading3 > 10 and save3 == 0){ save3 = 1; } else if (reading3 > 0){ save3 = 0;}
ถ้า (save3 == 0) { servo3.write(0); } อื่น ๆ ถ้า (save3 == 1) { servo3.write (40); } อื่น ๆ { servo3.write (70); } ล่าช้า (1000); } // รอสักครู่
ขั้นตอนที่ 9: แก้ไข Arduino, แบตเตอรี่ และ Veroboard ที่แขน
แผ่นอีกแผ่นถูกพิมพ์ด้วย PLA เพื่อให้สามารถซ่อมที่ใส่แบตเตอรี่และ Arduino ได้
ขนาดจาน: 100x145x5mm.
มีสี่รูสำหรับขัน Arduino และอีกสองรูสำหรับขันที่ใส่แบตเตอรี่ 9V รูถูกสร้างขึ้นในที่ใส่แบตเตอรี่ 6V และในเพลตเพื่อใช้สายรัดเพื่อยึดเข้าด้วยกัน เพิ่มกาวบางส่วนเพื่อให้แน่ใจว่าการยึดของที่ยึดนี้ สวิตช์ได้รับการแก้ไขด้วยสายรัดขนาดเล็กสองเส้น
นอกจากนี้ยังมีสี่รูที่ใช้ยึดแผ่นยีนส์โดยใช้สายรัด
veroboard วางอยู่บน Arduino เหมือนเกราะ
ขั้นตอนที่ 10: เชื่อมต่ออุปกรณ์อิเล็กทรอนิกส์
วงจรถูกบัดกรีบน veroboard ตามที่รายงานในรูปแบบด้านบน
Arduino มีแบตเตอรี่ 9V เป็นแหล่งจ่ายไฟและมีการเชื่อมต่อสวิตช์ระหว่างสิ่งเหล่านี้เพื่อให้สามารถปิด Arduino ได้ จำเป็นต้องใช้แบตเตอรี่ 6V สำหรับเซอร์โวมอเตอร์ที่ต้องการกระแสไฟมากและมีการเชื่อมต่อพินที่สามของเซอร์โวที่ พิน 3, 6 และ 9 เพื่อควบคุมด้วย PWM
เซ็นเซอร์แต่ละตัวเชื่อมต่อกับ 5V ของ Arduino และอีกด้านหนึ่งโดยตัวต้านทาน 330 โอห์มที่เชื่อมต่อกับกราวด์และหมุด A0, A2 และ A4 เพื่อวัดความตึงเครียด
ขั้นตอนที่ 11: เพิ่มสายไนลอน
ลวดไนลอนทำขึ้นเพื่อลอดผ่านรูทั้งสองที่ส่วนปลายและวงแหวนตามที่เห็นในภาพ จากนั้นลวดทั้งสองครึ่งจะเข้าไปในตัวกั้นโพลีเอทิลีนและคงไว้ด้วยกันจนถึงปลายตัวนำไปยังมอเตอร์ ความยาวของสายไฟถูกกำหนด ณ จุดนี้ พวกเขาต้องยาวพอที่จะวนเป็นวงกลมเมื่อนิ้วตรงของวงล้อของเซอร์โว
พวกเขาจะจับจ้องไปที่ล้อโดยมีปมผ่านรูเล็กๆ สองรูบนไฟล์.stl และด้วยกาวร้อนเพื่อเพิ่มความเสถียร
ขั้นตอนที่ 12: สนุก
มันทำงานได้ตามที่คาดไว้
แรงกระตุ้นครั้งแรกจะงอนิ้ว และวินาทีที่ปล่อยนิ้วออก ไม่จำเป็นต้องใช้แรงเมื่องอนิ้ว
ยังคงมีปัญหาอยู่สามประการ:
- เราต้องใช้ความระมัดระวังในการสร้างแรงกระตุ้นให้สั้นกว่า 1 วินาทีเพื่อกระตุ้นเซอร์โว มิฉะนั้น สายไฟจะถูกปลดทันทีหลังจากการดึงตามที่อธิบายไว้ในขั้นตอนที่ 8 เกี่ยวกับโค้ด Arduino
- ชิ้นส่วนพลาสติกลื่นเล็กน้อย เราจึงเพิ่มกาวร้อนที่ส่วนปลายเพื่อเพิ่มแรงเสียดทาน
- หากนิ้วมีภาระมาก เซ็นเซอร์จะมีค่ามากตลอดเวลา ดังนั้นเซอร์โวจะหมุนอย่างต่อเนื่อง