สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: เฟรม
- ขั้นตอนที่ 2: เตรียม Arduino
- ขั้นตอนที่ 3: ติดตั้ง Arduino Shield
- ขั้นตอนที่ 4: ติดตั้งเซอร์โว
- ขั้นตอนที่ 5: เมานต์พาวเวอร์แบงค์
- ขั้นตอนที่ 6: ล้อ
- ขั้นตอนที่ 7: เขียงหั่นขนม
- ขั้นตอนที่ 8: ถึงเวลาเคลื่อนไหว
- ขั้นตอนที่ 9: ส่วนเสริม: ให้ Bot Sight ของคุณ
- ขั้นตอนที่ 10: เพิ่ม - เปิด: การตรวจจับเส้นขอบผ่านเซ็นเซอร์ IR
- ขั้นตอนที่ 11: การเขียนโปรแกรม - ตั้งค่า
- ขั้นตอนที่ 12: ภาพรวมโค้ดสำหรับ Ultrasonic Sensor
- ขั้นตอนที่ 13: ภาพรวมโค้ดสำหรับการติดตามบรรทัดโดยใช้ SUMO Code
- ขั้นตอนที่ 14: การเขียนโปรแกรม - ห้องสมุด
- ขั้นตอนที่ 15: โปรแกรม
- ขั้นตอนที่ 16: แผนภาพการเดินสายไฟ
- ขั้นตอนที่ 17: ขอแสดงความยินดี !!! คุณสร้างหุ่นยนต์
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
แนวคิดคือการสร้างชุดอุปกรณ์ขนาดเล็กแต่ขยายได้สำหรับสมาชิก "Middle TN Robotic Arts Society" เราวางแผนเวิร์กช็อปเกี่ยวกับชุดแข่ง โดยเฉพาะสำหรับการแข่งขัน เช่น การติดตามสายและทริปด่วน
เราได้รวม Arduino Nano เนื่องจากมีขนาดเล็ก แต่มี I/O จำนวนมาก ด้วยการเพิ่มบอร์ดฝ่าวงล้อม พินทั้งหมดสามารถเข้าถึงได้ง่ายและเป็นมิตรกับเซอร์โว เราทิ้งแบตเตอรี่มาตรฐานและเลือกใช้ Power Bank ขนาด 3350mAh ซึ่งรวมถึงสายชาร์จ USB และสถานะไฟ LED สาย USB เป็นสองเท่าของสายการเขียนโปรแกรม เซอร์โวแบบหมุนต่อเนื่องสองตัวสำหรับไดรฟ์เพื่อให้ผู้สร้างหมุนอย่างรวดเร็วและง่ายดาย เขียงหั่นขนมขนาดเล็กช่วยให้คุณสร้างต้นแบบได้อย่างรวดเร็วและง่ายดาย รู 3 มม. เรียงตามแนวเส้นรอบวงของบอร์ดเพื่อให้คุณสามารถเพิ่มส่วนประกอบได้
สำหรับสมาชิกคลับของเรา เราขายชุดอุปกรณ์ในราคาทุน และคุณต้องเข้าร่วมเพื่อรับชุดหนึ่ง ที่จริงแล้ว เรากำลังสูญเสียเงินอยู่หากคุณคำนึงถึงเวลาที่ใช้ในการออกแบบ สร้างหลักสูตร สร้างชิ้นส่วน (การพิมพ์ 3 มิติ การตัดด้วยเลเซอร์ ฯลฯ) และประกอบเข้าด้วยกัน เราได้ลดราคาชุดอุปกรณ์ลงเหลือ $29.99 คุณจะได้รับราคาที่ต่ำกว่านี้หากคุณสั่งซื้อชิ้นส่วนที่มีเวลาจัดส่งนานขึ้น เราตระหนักดีว่าไม่ใช่ชุดที่ถูกที่สุด แต่เราให้ความสำคัญกับการสร้างสิ่งที่ง่ายต่อการสร้างและขยายได้ซึ่งใช้เวลาไม่นานในการรวบรวม อันที่จริง ชุดนี้ควรใช้เวลาน้อยกว่าหนึ่งชั่วโมงในการเคลื่อนย้าย
เสบียง
ส่วนหลัก:
- Arduino นาโน
- ธนาคารพลังงานแบตเตอรี่
- โครงหุ่นยนต์
- SliderM-F จัมเปอร์
- อัลตราโซนิกเซนเซอร์
- จำนวน 3 - 3mmx10mm 3m สกรูพร้อมน็อต
- จำนวน 3 - ตัวเว้นระยะ 3mmx3mm
- จำนวน 2 - การหมุนอย่างต่อเนื่อง SF90R Servo
- จำนวน 2 - ล้อ 52ish มม. ล้อ
- จำนวน 4 - 6" Zip Ties (ได้อันที่บางประมาณ 3.5 มม.) ชุดวาไรตี้จาก Harbor Freight ทำงานได้ดี
- เขียงหั่นขนมขนาดเล็ก
- Arduino Nano Shield
ไม่จำเป็น:
เคเบิ้ลไทร์
เครื่องมือ:
- หัวแร้งสำหรับบัดกรีส่วนหัวบน Nano
- ปืนกาว
- ไขควงพื้นฐาน
ขั้นตอนที่ 1: เฟรม
เพื่อช่วยให้ผู้สร้างดำเนินการได้อย่างรวดเร็ว เราได้สลักโครงร่างที่มีข้อความในแต่ละด้านของกรอบเพื่อระบุว่าควรวางชิ้นส่วนไว้ที่ใด
เราโชคดีที่มีการเข้าถึงเครื่องตัดเลเซอร์ หากคุณไม่ทำเช่นนั้น เราขอแนะนำให้คุณติดต่อผู้ผลิตในพื้นที่เพื่อดูว่ามีที่ที่คุณสามารถใช้ได้หรือไม่ หรือหากพวกเขายินดีที่จะตัดกรอบให้คุณ
สามารถใช้เครื่องพิมพ์ 3 มิติเพื่อพิมพ์ฐานได้ เราได้รวม SVG และ STL ไว้ให้คุณใช้งานด้วย
เราใช้อะคริลิค 3 มม. สำหรับชุดอุปกรณ์ของเรา คุณสามารถใช้สื่ออื่นๆ เช่น ไม้ กระดาษแข็ง โฟมบอร์ด เป็นต้น
ขั้นตอนที่ 2: เตรียม Arduino
เพื่อให้ง่ายต่อการประสานส่วนหัวกับ Arduino ให้ใส่ส่วนหัวของตัวผู้ลงในแผง Arduino จัดเรียง Arduino Nano กับส่วนหัว สังเกตเครื่องหมายบนกระดานกับโล่ ประสานหมุดทั้งหมดขึ้นและคุณทำเสร็จแล้ว
ขั้นตอนที่ 3: ติดตั้ง Arduino Shield
- จัดตำแหน่งสเปเซอร์สีเหลือง 3 อันให้ตรงกับรู Arduino ที่พิมพ์ล่วงหน้าหรือ 3 มิติ
- ใช้สกรูและน็อต M3x10 เพื่อติดโล่ Arduino กระชับ ไม่ตึง. หากคุณกังวลว่าสกรูจะคลายออก ให้เติมกาวร้อนที่ปลายน็อต ไม่ต้องกังวลกับรูที่ 4 บนเกราะ เพราะจะไม่จำเป็นและรบกวน Power Bank ในภายหลังระหว่างการสร้าง
ขั้นตอนที่ 4: ติดตั้งเซอร์โว
- สังเกตการวางแนวของโครงร่างเซอร์โวบนเฟรม (ไม่แสดงในฉบับพิมพ์ 3 มิติ แต่อ้างอิงรูปภาพ)
- ร้อยสายรัดซิปสองเส้นผ่านช่องสี่เหลี่ยมโดยให้หัวซิปผูกที่ด้านบนของกรอบ
- ใส่เซอร์โวและร้อยสายไฟผ่านช่องสี่เหลี่ยมไปทางด้านหลัง รัดซิปให้แน่น หากเซอร์โวไม่รู้สึกปลอดภัย คุณสามารถเพิ่มกาวร้อนเล็กน้อยที่ด้านข้างที่เซอร์โวสัมผัสกับเฟรม
ขั้นตอนที่ 5: เมานต์พาวเวอร์แบงค์
- เรียกใช้ Zip Tie ระหว่างตำแหน่ง Arduino และ Breadboard ในทิศทางที่แสดงโดยให้ส่วนหัวของ Zip Tie อยู่ด้านบน ให้หลวม
- เรียกใช้ Zip Tie ผ่านด้านหลัง ให้หลวม
- เลื่อนในพาวเวอร์แบงค์และรัดซิปให้แน่น สังเกตการวางแนว
หมายเหตุ: เราใช้ "ตัวเลื่อน" ที่พิมพ์ 3 มิติสำหรับด้านหน้าซึ่งเห็นในภาพ อย่างไรก็ตาม เราพบว่ามันทำให้เกิดการเสียดสีมากเกินไป คุณจึงอาจต้องการทดลองกับแนวคิดอื่นๆ เช่น ฝาขวด เครื่องร่อนเฟอร์นิเจอร์พลาสติก เป็นต้น
ขั้นตอนที่ 6: ล้อ
เราใช้เครื่องตัดเลเซอร์เพื่อตัดล้อของเราออกจากโฟม EVA คุณสามารถใช้สิ่งที่คุณต้องการ ฝาขวดโหล พิมพ์ 3 มิติ ล้อของเล่นเก่า ฯลฯ ลองหาล้อที่มีเส้นผ่านศูนย์กลางประมาณ 52 มม.
- ตรวจสอบให้แน่ใจว่าศูนย์กลางของล้อของคุณมีช่องเปิดเพื่อให้สกรูหัวฟิลลิปส์ขนาดเล็กติดตั้งฮอร์นเซอร์โวแบบวงกลมได้
- ตั้งศูนย์กลางของเซอร์โวฮอร์นที่มาพร้อมกับเซอร์โวและติดกาวที่ล้อ ระวังอย่าให้กาวเข้าไปในรูตรงกลางและเก็บล้อไว้แม้จะใช้แตรเซอร์โวเพื่อลดการวอกแวก
- ใช้สกรูฟิลลิปส์ขนาดเล็กยึดล้อเข้ากับเซอร์โว แนบชิดไม่แน่น.
ขั้นตอนที่ 7: เขียงหั่นขนม
ลอกแผ่นหลังออกจากเขียงหั่นขนม จัดแนวด้วยการแกะสลักที่ด้านบนของกรอบและแนบ หากใช้กรอบที่พิมพ์ 3 มิติ ให้ใช้ส่วนที่ปิดช่องสี่เหลี่ยมของงานพิมพ์
ขั้นตอนที่ 8: ถึงเวลาเคลื่อนไหว
ต่อสาย SERVOS เพื่อเคลื่อนย้าย
- แนบสายรัดจากเซอร์โวด้านซ้าย (เซอร์โวไปทางซ้ายหากคุณมองจากด้านหลัง) เข้ากับพิน 10 โดยให้สายสีส้มใกล้กับ Arduino มากที่สุด
- แนบสายรัดจากเซอร์โวด้านขวา (เซอร์โวไปทางขวาหากคุณมองจากด้านหลัง) เข้ากับพิน 11 โดยให้สายสีส้มใกล้กับ Arduino มากที่สุด
ขั้นตอนที่ 9: ส่วนเสริม: ให้ Bot Sight ของคุณ
ตอนนี้เราจำเป็นต้องเพิ่มบางสิ่งเพื่อป้องกันไม่ให้บอททำงาน ใช้เซ็นเซอร์อัลตราโซนิก ติดเซ็นเซอร์เข้ากับ Breadboard ตามที่แสดงในภาพ
*อ้างอิงแผนภาพการเดินสายเพิ่มเติมในคำแนะนำเกี่ยวกับวิธีการต่อสาย
ขั้นตอนที่ 10: เพิ่ม - เปิด: การตรวจจับเส้นขอบผ่านเซ็นเซอร์ IR
เพื่อให้บอทของคุณหลีกเลี่ยงการตกจากขอบโต๊ะ เวที ฯลฯ มาเพิ่มเซ็นเซอร์เส้นกันเถอะ เรากำลังใช้อาร์เรย์เซ็นเซอร์สะท้อนแสง QTR-MD-06RC ตัวปล่อย/ตัวตรวจจับอินฟราเรดหกตัวคว่ำหน้าลงและวัดระยะห่างจากพื้นผิวกลับไปยังเซ็นเซอร์
หากต้องการเพิ่มเซ็นเซอร์ ให้จับสกรู 2 มม. ขนาดเล็ก 4 ตัว เซ็นเซอร์ IR ขัดแย้ง (หน้ายิ้ม) อ้างอิงรูปภาพสำหรับการวางแนวที่ถูกต้อง
*อ้างอิงแผนภาพการเดินสายเพิ่มเติมในคำแนะนำเกี่ยวกับวิธีการต่อสาย
ขั้นตอนที่ 11: การเขียนโปรแกรม - ตั้งค่า
ดาวน์โหลดซอฟต์แวร์ Arduino
ปฏิบัติตามคำแนะนำมาตรฐาน
เมื่อคุณติดตั้งแล้ว ให้เปิดซอฟต์แวร์และตั้งค่าสำหรับ Arduino Nano อาจแตกต่างกันไปตามผู้ผลิตแต่ละราย แต่หากคุณมีชิ้นส่วนดังกล่าวจากรายการอะไหล่:
- เปิด "เครื่องมือ"
- เลือก “Arduino Nano” เป็นประเภทบอร์ด
- เลือก Atmega328P (Old Bootloader) เป็นประเภทโปรเซสเซอร์
- เชื่อมต่อ Arduino Nano โดยใช้สาย Micro USB ที่มาพร้อมกับที่ชาร์จของคุณเข้ากับพอร์ต USB บนคอมพิวเตอร์ของคุณ หากคุณได้รับข้อผิดพลาด เช่น "อุปกรณ์ที่ไม่รู้จัก" คุณอาจต้องติดตั้งไดรเวอร์ที่ถูกต้อง ดูส่วนเพิ่มเติมของคำแนะนำนี้เพื่อช่วย
ขั้นตอนที่ 12: ภาพรวมโค้ดสำหรับ Ultrasonic Sensor
รหัสเป็นพื้นฐานมากและใช้สองไลบรารี - Servo.h และ NewPing.h Servo.h เป็นไลบรารีที่สร้างขึ้นโดยมูลนิธิ Arduino และใช้เพื่อควบคุมสัญญาณ PWM (การปรับความกว้างพัลส์) ไปยังเซอร์โวแต่ละตัว การอ้างอิงถึงไลบรารีนี้สามารถพบได้ที่นี่:
NewPing.h ตามที่กล่าวไว้ก่อนหน้านี้เป็นห้องสมุดบุคคลที่สามโดย Tim Eckel มันถูกใช้เพื่อให้เรามีส่วนต่อประสานที่เรียบง่ายสู่โลกแห่งการวัดตามเวลา การอ้างอิงถึงไลบรารีนี้สามารถพบได้ที่นี่:
สำหรับการตั้งค่านี้ เราได้สร้างตัวอย่างการเดินหน้า ซ้าย ขวา ทำซ้ำขั้นพื้นฐาน เราต้องการให้สมาชิกของเรามีจุดเริ่มต้นที่จะสาธิตวิธีการใช้ทั้งเซ็นเซอร์อัลตราโซนิกและเซิร์ฟเวอร์การหมุนแบบต่อเนื่องสองเซิร์ฟเวอร์ ในวงของเรา หุ่นยนต์จะสแกนไปข้างหน้าและถ้าความชัดเจนยังคงเดินหน้าต่อไป อย่างไรก็ตาม หากสัมผัสได้ว่ามันอยู่ใกล้และวัตถุ (เวลา ping สั้นกว่าค่าต่ำสุดที่เราเลือก) มันก็จะหยุด เลี้ยวซ้าย สแกน เลี้ยวขวา สแกนอีกครั้ง และไปในทิศทางที่เปิดกว้างมากขึ้น
คุณอาจสังเกตเห็นว่าเซอร์โวแต่ละตัวได้รับคำสั่งที่แตกต่างกันสำหรับการส่งต่อ เนื่องจากเซอร์โวถูกติดตั้งบนแชสซีที่ชี้ไปในทิศทางตรงกันข้าม ด้วยเหตุนี้ เซอร์โวแต่ละตัวจึงต้องเคลื่อนที่ไปในทิศทางตรงกันข้ามเพื่อให้บอทเคลื่อนที่ไปข้างหน้าแทนที่จะเป็นวงกลม เช่นเดียวกับถ้าคุณต้องการย้ายกลับ
ตัวอย่างนี้แสดงให้เห็นถึงการหลีกเลี่ยงสิ่งกีดขวางขั้นพื้นฐาน แต่สามารถปรับปรุงให้ดีขึ้นได้อย่างมาก ตัวอย่าง "การบ้าน" สำหรับคุณอาจเป็นการกวาดพื้นที่ทั้งหมด 360 องศาเมื่อเริ่มต้นและเลือกเส้นทางที่เปิดกว้างที่สุด สแกนให้กว้างขึ้นจากด้านหนึ่งไปอีกด้านหนึ่งและดูว่าบอทกำลัง "เข้ากล่อง" หรือไม่ รวมกับเซ็นเซอร์อื่น ๆ เพื่อไขเขาวงกต
ขั้นตอนที่ 13: ภาพรวมโค้ดสำหรับการติดตามบรรทัดโดยใช้ SUMO Code
เร็ว ๆ นี้.
ขั้นตอนที่ 14: การเขียนโปรแกรม - ห้องสมุด
เริ่มต้นด้วยการตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งไลบรารีที่ถูกต้อง
สำหรับ Servos ไลบรารี Servo.h ควรเป็นค่าเริ่มต้น
สำหรับ Ultrasonic Sensor HC-SR04:
- ในซอฟต์แวร์ ไปที่ Sketch>Include Library>Manage Libraries
- ค้นหา "NewPing" โดย Tim Eckel
- เลือกเวอร์ชันล่าสุดและติดตั้ง
สำหรับอาร์เรย์เซนเซอร์สะท้อนแสง QTR-MD-06RC:
- ในซอฟต์แวร์ ไปที่ Sketch>Include Library>Manage Libraries
- ค้นหา "QTRSensors" โดย Pololu
- เลือกเวอร์ชันล่าสุดและติดตั้ง
ขั้นตอนที่ 15: โปรแกรม
- สำหรับ Ping Sensor ให้ดาวน์โหลดไฟล์ MTRAS_Kit_Ping_Sensor_1_18_20.ino
- สำหรับ Line Sensor พร้อม Ping Sensor ที่ตั้งโปรแกรมไว้สำหรับ SUMO ให้ดาวน์โหลดไฟล์ MTRAS_Kit_Sumo_1_18_2020.ino
- เสียบ Arduino ของคุณผ่าน USB
- เลือกพอร์ต COM (ดูรูป) พอร์ต COM ของคุณอาจแตกต่างกัน
- คลิกเครื่องหมายถูกเพื่อให้แน่ใจว่าไม่มีข้อผิดพลาด
- หากทุกอย่างเช็คเอาท์ ให้คลิกที่ลูกศรขวาเพื่อดาวน์โหลดโปรแกรมไปยัง Arduino
- เมื่อเสร็จแล้วให้ถอดสาย USB และเสียบเข้ากับ Power Bank
ขั้นตอนที่ 16: แผนภาพการเดินสายไฟ
ใช้ภาพต่อไปนี้เพื่อวางสายหุ่นยนต์ของคุณ
- สำหรับเซ็นเซอร์อัลตราโซนิกให้ใช้สายจัมเปอร์ m-f
- สำหรับเซ็นเซอร์สายให้ใช้สายจัมเปอร์ m-m
- สำหรับเซอร์โว คุณสามารถเสียบขั้วต่อ 3 พินเข้ากับพินได้โดยตรง
ขั้นตอนที่ 17: ขอแสดงความยินดี !!! คุณสร้างหุ่นยนต์
สำหรับรหัส Ultrasonic หุ่นยนต์ควรเริ่มเคลื่อนที่ไปรอบๆ เมื่อใดก็ตามที่ตรวจพบวัตถุภายใน 35 ซม. วัตถุจะหยุด เลื่อนไปทางซ้ายและทำการวัดอย่างรวดเร็ว จากนั้นเลื่อนไปทางขวาและทำเช่นเดียวกัน เป็นตัวกำหนดว่าด้านใดมีระยะทางสูงสุดและเคลื่อนที่ไปในทิศทางนั้น