สารบัญ:

แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี: 6 ขั้นตอน
แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี: 6 ขั้นตอน

วีดีโอ: แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี: 6 ขั้นตอน

วีดีโอ: แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี: 6 ขั้นตอน
วีดีโอ: Ep.99 ENCODER คืออะไร อธิบายอย่างละเอียดในคลิปเดียว 2024, พฤศจิกายน
Anonim
แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี
แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี
แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี
แขนหุ่นยนต์ควบคุมเอ็นโค้ดเดอร์โรตารี

ฉันไปที่ howtomechatronics.com และเห็นแขนหุ่นยนต์ที่ควบคุมด้วยบลูทูธที่นั่น

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

เสบียง

SG90*3

MG996*3

ตัวเข้ารหัสแบบหมุน*6

Arduino เมกะ*1

ปุ่มกด 2 พิน*2

ตัวต้านทาน 560 โอห์ม*2

สกรูและน็อต M3

เครื่องพิมพ์ 3 มิติ

ขั้นตอนที่ 1: เชื่อมต่อเซอร์โว

เชื่อมต่อเซอร์โว
เชื่อมต่อเซอร์โว

จากซ้ายไปขวา: เซอร์โวฐาน (MG996), เซอร์โวเอวต่ำ (MG996), เซอร์โวเซอร์โว (MG996), เซอร์โวมือต่ำสุด (SG90), เซอร์โวมือกลาง (SG90), เซอร์โวเซอร์โว (SG90)

เราต้องไม่ต่อ 5V ของ Arduino กับ 5V ภายนอก (นั่นคือตัวต้านทานแบบขนานและพวกเขาจะพยายามชาร์จซึ่งกันและกัน) แต่เราต้องต่อกราวด์เข้าด้วยกันเพื่อเป็นข้อมูลอ้างอิง ดังนั้นพวกมันจึงจะทำงาน หากคุณไม่มีกราวด์ที่เชื่อมต่อกับ Arduino ไม่มีเส้นทางย้อนกลับสำหรับกระแสจากสายสัญญาณของคุณ (สายสีเหลือง) ดังนั้นกราวด์ของพลังงานภายนอกควรต่อเข้ากับขากราวด์เซอร์โวและพินกราวด์ของ Arduino (ในขณะที่สายสีดำและสีแดงเป็นแหล่งจ่ายไฟอิสระ)

หมายเหตุ ที่นี่ ฉันแยกไดอะแกรมการเชื่อมต่อออกเป็นเซอร์โว ปุ่มกด และตัวเข้ารหัสแบบโรตารี่ เพราะอ่านแยกกันง่ายกว่า (ทั้งหมดเชื่อมต่อกับ Arduino Mega ตัวเดียวโดยใช้พินในแต่ละไดอะแกรม)

ขั้นตอนที่ 2: เชื่อมต่อปุ่มกด

เชื่อมต่อปุ่มกด
เชื่อมต่อปุ่มกด

ด้านซ้ายเป็นปุ่มรีเซ็ต

ปุ่มเล่นคือปุ่มที่ถูกต้อง

ปุ่มเล่นจะเล่นการเคลื่อนไหวที่บันทึกไว้

ตัวต้านทานที่ฉันใช้คือ 560 ohm. สองตัว

ขั้นตอนที่ 3: เชื่อมต่อเครื่องเข้ารหัสแบบหมุน

เชื่อมต่อเครื่องเข้ารหัสแบบหมุน
เชื่อมต่อเครื่องเข้ารหัสแบบหมุน

หมุดเชื่อมต่อ:

// Rotary Encoder 1 อินพุต

#define CLK1 53 #define DT1 51 #define SW1 49

// Rotary Encoder 2 อินพุต

#define CLK2 45 #define DT2 43 #define SW2 41

// Rotary Encoder 3 อินพุต

#define CLK3 50 #define DT3 48 #define SW3 46

// Rotary Encoder 4 อินพุต

#define CLK4 42 #define DT4 40 #define SW4 38

// Rotary Encoder 5 อินพุต

#define CLK5 34 #define DT5 32 #define SW5 30

// Rotary Encoder 6 Inputs ถูกต้องที่สุด

#define CLK6 26 //26 #define DT6 24 ///24 #define SW6 22 //22

ขั้นตอนที่ 4: ไฟล์ STL

ไฟล์ STL
ไฟล์ STL

ไฟล์ STL ให้เครดิต howtomechatronics.com

ขั้นตอนที่ 5: รหัส

ขั้นตอน:

กดรีเซ็ต (รีเซ็ตการเล่น)

สำหรับเซอร์โวยกเว้นเซอร์โวแบบคว้า: หมุนตัวเข้ารหัสแบบหมุนของเซอร์โวแต่ละตัว - กดตัวเข้ารหัส (ตำแหน่งเริ่มต้นบันทึก) สำหรับแต่ละเซอร์โว เช่น ตัวเข้ารหัสแบบหมุน 1- กดตัวเข้ารหัสแบบหมุน 1-- หมุนตัวเข้ารหัส 2-- กดตัวเข้ารหัสแบบหมุน 2

หลังจากที่เราบันทึกตำแหน่งเริ่มต้น เราก็สามารถทำเช่นเดียวกันเพื่อบันทึกตำแหน่งสิ้นสุดได้

สำหรับเซอร์โวเซอร์โว: (กับเซอร์โวตัวอื่น) กดตัวเข้ารหัสลง (เปิดเรคคอร์ดคว้า) (หลังจากที่เราบันทึกตำแหน่งเริ่มต้นของเซอร์โวตัวอื่นและอยู่ที่ตำแหน่งนั้น) หมุน--กดอีกครั้ง (บันทึกคว้าใกล้เพื่อจับบางอย่าง) (หลังจากที่เราบันทึกตำแหน่งสิ้นสุดของเซอร์โวอีกตัวหนึ่งและพวกมันอยู่ที่ตำแหน่งนั้น) หมุน-- กดตัวเข้ารหัสลง (เปิดบันทึกเพื่อปล่อยวัตถุ)

กดปุ่มเริ่มต้น (เซอร์โวจะหมุนเริ่มต้นที่ตำแหน่งเริ่มต้น ไปยังตำแหน่งสิ้นสุด) //หากต้องการทำซ้ำขั้นตอนต้องกดปุ่มเริ่มต้นหลายครั้ง

ปุ่มเล่นคือปุ่มที่ถูกต้อง

แนะนำ: