สารบัญ:

แขนหุ่นยนต์ที่ใช้ไมโครคอนโทรลเลอร์ PIC: 6 ขั้นตอน (พร้อมรูปภาพ)
แขนหุ่นยนต์ที่ใช้ไมโครคอนโทรลเลอร์ PIC: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: แขนหุ่นยนต์ที่ใช้ไมโครคอนโทรลเลอร์ PIC: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: แขนหุ่นยนต์ที่ใช้ไมโครคอนโทรลเลอร์ PIC: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: EP 27. Arduino ฉบับไวจนไฟลุก !! - สาระเดฟ ใน 3 นาที 2024, พฤศจิกายน
Anonim
แขนหุ่นยนต์ที่ใช้ไมโครคอนโทรลเลอร์ PIC
แขนหุ่นยนต์ที่ใช้ไมโครคอนโทรลเลอร์ PIC

ตั้งแต่สายการประกอบของอุตสาหกรรมการผลิตรถยนต์ไปจนถึงหุ่นยนต์ telesurgery ในอวกาศ Robotic Arms สามารถพบได้ทุกที่ กลไกของหุ่นยนต์เหล่านี้มีความคล้ายคลึงกับมนุษย์ซึ่งสามารถตั้งโปรแกรมการทำงานที่คล้ายคลึงกันและเพิ่มความสามารถได้ สามารถใช้เพื่อดำเนินการซ้ำ ๆ ได้เร็วและแม่นยำกว่ามนุษย์หรือสามารถใช้ในสภาพแวดล้อมที่รุนแรงโดยไม่ต้องเสี่ยงต่อชีวิตมนุษย์ เราได้สร้าง Record and Play Robotic Arm โดยใช้ Arduino ซึ่งสามารถฝึกฝนให้ทำงานเฉพาะและทำซ้ำได้ตลอดไป

ในบทช่วยสอนนี้ เราจะใช้ไมโครคอนโทรลเลอร์ 8 บิตมาตรฐานอุตสาหกรรม PIC16F877A เพื่อควบคุมแขนหุ่นยนต์ตัวเดียวกันกับโพเทนชิโอมิเตอร์ ความท้าทายของโครงการนี้คือ PIC16F877A มีพินที่ใช้ PWN เพียงสองตัวเท่านั้น แต่เราจำเป็นต้องควบคุมเซอร์โวมอเตอร์ประมาณ 5 ตัวสำหรับหุ่นยนต์ของเราซึ่งต้องใช้พิน PWM 5 ตัว ดังนั้นเราจึงต้องใช้พิน GPIO และสร้างสัญญาณ PWM บนพิน PIC GPIO โดยใช้ตัวจับเวลาขัดจังหวะ ตอนนี้ แน่นอน เราสามารถอัพเกรดเป็นไมโครคอนโทรลเลอร์ที่ดีกว่า หรือใช้ไอซี de-multiplexer เพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นมากที่นี่ แต่ก็ยังคุ้มค่าที่จะลองทำโครงงานนี้เพื่อประสบการณ์การเรียนรู้

โครงสร้างทางกลของแขนหุ่นยนต์ที่ฉันใช้ในโปรเจ็กต์นี้พิมพ์ 3 มิติอย่างสมบูรณ์สำหรับโปรเจ็กต์ก่อนหน้าของฉัน คุณสามารถค้นหาไฟล์การออกแบบที่สมบูรณ์และขั้นตอนการประกอบได้ที่นี่ หรือหากคุณไม่มีเครื่องพิมพ์ 3 มิติ คุณสามารถสร้าง Robotic Arm แบบง่ายๆ โดยใช้กระดาษแข็งตามที่แสดงในลิงก์ สมมติว่าคุณมีแขนหุ่นยนต์อยู่แล้ว ให้ดำเนินการในโครงการต่อไป

ขั้นตอนที่ 1: แผนภาพวงจร

แผนภูมิวงจรรวม
แผนภูมิวงจรรวม

แผนภาพวงจรที่สมบูรณ์สำหรับ Robotic Arm ที่ใช้ไมโครคอนโทรลเลอร์ PIC แสดงอยู่ด้านล่าง แผนผังถูกวาดโดยใช้ EasyEDA

แผนภาพวงจรค่อนข้างง่าย โครงการทั้งหมดใช้พลังงานจากอะแดปเตอร์ 12V จากนั้น 12V นี้จะถูกแปลงเป็น +5V โดยใช้ตัวควบคุมแรงดันไฟฟ้า 7805 สองตัว อันหนึ่งมีป้ายกำกับว่า +5V และอีกอันมีป้ายกำกับว่า +5V(2) เหตุผลในการมีตัวควบคุมสองตัวคือเมื่อเซอร์โวหมุน มันจะดึงกระแสจำนวนมากซึ่งทำให้แรงดันไฟฟ้าตก แรงดันตกคร่อมนี้บังคับให้ PIC รีสตาร์ทเอง ดังนั้นเราจึงไม่สามารถใช้งานทั้ง PIC และเซอร์โวมอเตอร์บนราง +5V เดียวกันได้ ดังนั้นตัวที่ติดป้ายกำกับว่า +5V จะใช้เพื่อจ่ายไฟให้กับไมโครคอนโทรลเลอร์ PIC, LCD และโพเทนชิโอมิเตอร์ และเอาต์พุตตัวควบคุมแยกต่างหากซึ่งมีป้ายกำกับว่า +5V(2) ใช้สำหรับจ่ายไฟให้กับเซอร์โวมอเตอร์

พินเอาท์พุตห้าพินของโพเทนชิโอมิเตอร์ซึ่งให้แรงดันไฟฟ้าผันแปรจาก 0V ถึง 5V เชื่อมต่อกับพินอะนาล็อก An0 ถึง AN4 ของ PIC เนื่องจากเรากำลังวางแผนที่จะใช้ตัวจับเวลาเพื่อสร้าง PWM เซอร์โวมอเตอร์สามารถเชื่อมต่อกับพิน GPIO ใดก็ได้ ฉันได้เลือกพินจาก RD2 ถึง RD6 สำหรับเซอร์โวมอเตอร์แล้ว แต่อาจเป็น GPIO ใดก็ได้ที่คุณเลือก

เนื่องจากโปรแกรมเกี่ยวข้องกับการดีบักจำนวนมาก หน้าจอ LCD ขนาด 16x2 จึงเชื่อมต่อกับพอร์ตB ของ PIC ซึ่งจะแสดงรอบการทำงานของเซอร์โวมอเตอร์ที่ถูกควบคุม นอกจากนี้ ฉันยังได้ขยายการเชื่อมต่อสำหรับ GPIO และพินอะนาล็อกทั้งหมด เผื่อในกรณีที่จำเป็นต้องเชื่อมต่อเซ็นเซอร์ใดๆ ในอนาคต ในที่สุดฉันก็ได้เชื่อมต่อพินโปรแกรมเมอร์ H1 เพื่อตั้งโปรแกรม PIC ด้วย pickit3 โดยตรงโดยใช้ตัวเลือกการเขียนโปรแกรม ICSP

ขั้นตอนที่ 2: การสร้างสัญญาณ PWM บน GPIO Pin สำหรับการควบคุมเซอร์โวมอเตอร์

"กำลังโหลด="ขี้เกียจ">

แนะนำ: