สารบัญ:

หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน: 3 ขั้นตอน
หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน: 3 ขั้นตอน

วีดีโอ: หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน: 3 ขั้นตอน

วีดีโอ: หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน: 3 ขั้นตอน
วีดีโอ: หุ่นยนต์แก้ปัญหาเขาวงกตแบบลายเส้นด้วยอัลกอริธึม LSRB AUTONOMOUS MAZE SOLVING : miniature innovation 2024, พฤศจิกายน
Anonim
Image
Image
หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน
หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน
หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน
หุ่นยนต์ Line Follower สำหรับอัลกอริธึมการควบคุมการสอน

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

ฉันทำให้มันถูกตั้งโปรแกรมด้วย Arduino IDE แต่ก็เป็นไปได้ที่จะใช้ IDE การพัฒนาที่คุณต้องการ มี PIC32 อันทรงพลังพร้อม USB bootloader ดังนั้นคุณไม่จำเป็นต้องมีโปรแกรมเมอร์ นอกจากนี้ยังมีสวิตช์เปิด/ปิด รีเซ็ต และปุ่มเริ่มต้น/โปรแกรม ไฟ LED เชื่อมต่อกับสัญญาณ PWM ของมอเตอร์ คุณจึงสามารถเห็นกำลังไฟฟ้าที่คุณใช้ได้อย่างง่ายดาย

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

เสบียง

มอเตอร์เกียร์โลหะขนาดเล็ก 2x 6V พร้อมขายึดแบบขยาย (อัตราทดเกียร์ใด ๆ ก็ได้ ของฉันคือ 10:1)

1x Line เซนเซอร์ บอร์ด

1x ชุดควบคุมหลัก

1x 20 ผ่านลวดแบน ระยะห่าง 1 มม. ของผมยาว 20 ซม.

1x ตัวเชื่อมอะคริลิค (ตัดเป็นอะคริลิคใส 3 มม.)

ลูกล้อ 1x 1/8 (ของฉันเป็นโลหะ)

2x ล้อยาง เส้นผ่านศูนย์กลาง 3 ซม.

1x แบตเตอรี่ Lipo คุณสามารถจ่ายไฟให้หุ่นยนต์ได้ถึง 10v แต่อย่าลืมว่ามอเตอร์นั้นได้รับการจัดอันดับสำหรับ 6v

สกรูและน็อต M2 บางตัวสำหรับยึดทุกอย่างเข้าด้วยกัน

หากคุณต้องการสร้างไฟล์การออกแบบของคุณเอง แผนผังและทุกอย่างที่จะสร้างจะถูกแนบในขั้นตอนต่อไป

ขั้นตอนที่ 1: ฮาร์ดแวร์

ฮาร์ดแวร์
ฮาร์ดแวร์
ฮาร์ดแวร์
ฮาร์ดแวร์
ฮาร์ดแวร์
ฮาร์ดแวร์
ฮาร์ดแวร์
ฮาร์ดแวร์

ดังที่คุณเห็นในภาพ ส่วนประกอบทั้งหมดเป็น SMD เป็นโอกาสที่ดีในการฝึกฝนทักษะการบัดกรีของคุณ หุ่นยนต์ตัวนี้ถูกบัดกรีโดยนักเรียนของฉัน 3 คน คุณจึงทำได้โดยไม่มีปัญหา ไฟล์การออกแบบทั้งหมดถูกแนบ คุณสามารถดูไฟล์ด้วย EAGLE Gerbers ยังรวมอยู่ด้วยหากคุณต้องการให้บอร์ดกับผู้ผลิต PCB ที่คุณชื่นชอบ

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

หมายเหตุ: PIC ใช้เฟิร์มแวร์แบบกำหนดเอง เป็นเวอร์ชันดัดแปลงของเฟิร์มแวร์ดั้งเดิม DP32 คุณสามารถรับเฟิร์มแวร์ได้ที่นี่ มีการเชื่อมต่อ ICSP ที่ด้านล่างของบอร์ด CPU

ขั้นตอนที่ 2: ซอฟต์แวร์

ซอฟต์แวร์
ซอฟต์แวร์
ซอฟต์แวร์
ซอฟต์แวร์

ฉันแนะนำให้ใช้ Arduino IDE เพื่อตั้งโปรแกรมหุ่นยนต์ อย่างที่ฉันบอกคุณก่อนหน้านี้ว่าผู้ติดตามบรรทัดนี้ใช้ PIC32MX250 และทำให้เข้ากันได้กับ chipKIT DP32 คุณเพียงแค่ต้องติดตั้งแพ็คเกจ chipKIT บนตัวจัดการแพ็คเกจบน Arduino IDE และคุณพร้อมที่จะไป นอกจากนี้ คุณสามารถตั้งโปรแกรมบน MPLAB หรือ IDE ที่คุณต้องการได้ แต่คุณสามารถเรียนรู้พื้นฐานบน Arduino ได้

ที่เหลือก็เหมือนกับการเขียนโปรแกรมบอร์ด Arduino อื่นๆ เสียบหุ่นยนต์เข้ากับคอมพิวเตอร์ของคุณด้วยสายไมโคร USB แล้วกดปุ่มโปรแกรมทันทีหลังจากกดรีเซ็ต จากนั้นส่งแบบร่างพร้อมปุ่มอัปโหลดใน IDE

ฉันได้รวม 3 ภาพร่างในบทช่วยสอนนี้ อันแรกทดสอบอาร์เรย์เซ็นเซอร์ อันที่สองคือผู้ติดตามบรรทัด If/Else และอันสุดท้ายคือผู้ติดตามบรรทัด PID ทุกอย่างใช้งานได้แล้ว อย่างไรก็ตาม คุณจะต้องปรับค่าบางอย่างหากคุณเปลี่ยนการออกแบบ และยังรู้สึกอิสระที่จะทำของคุณเอง! มีวิธีที่ดีกว่าในการทำอัลกอริธึมการติดตามบรรทัด การทดลองคือกุญแจแห่งความสำเร็จ

ขั้นตอนที่ 3: ทดลอง

ทดลอง
ทดลอง
ทดลอง
ทดลอง
ทดลอง
ทดลอง

นี่เป็นส่วนที่สำคัญที่สุด คุณควรลองความเป็นไปได้ทั้งหมดและค้นหาสิ่งที่เหมาะกับคุณ

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

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

ท้องฟ้าเป็นข้อ จำกัด!

เป็นเคล็ดลับเพิ่มเติม… การปรับค่า PID ที่ได้รับเป็นการเดินทางที่น่าสนใจ ซึ่งคุณสามารถเรียนรู้ผลกระทบต่อหุ่นยนต์เมื่อเดินตามเส้นด้วยค่า Kp, Kd และ Ki ที่แตกต่างกัน รับประกันชั่วโมงและชั่วโมงของการเรียนรู้ !!! เด็กๆ จะไม่ได้สังเกตว่าพวกเขากำลังใช้คณิตศาสตร์เพื่อทำงานทั้งหมดที่จำเป็นจริงๆ

ฉันหวังว่าคุณจะสนุกกับการสอนนี้ หากคุณต้องการอะไรถามฉันในความคิดเห็น ขอบคุณที่อ่าน:)

แนะนำ: