สารบัญ:

การควบคุมเซอร์โวมอเตอร์ 3 ตัวด้วยโพเทนชิโอมิเตอร์ 3 ตัวและ Arduino: 11 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมเซอร์โวมอเตอร์ 3 ตัวด้วยโพเทนชิโอมิเตอร์ 3 ตัวและ Arduino: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: การควบคุมเซอร์โวมอเตอร์ 3 ตัวด้วยโพเทนชิโอมิเตอร์ 3 ตัวและ Arduino: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: การควบคุมเซอร์โวมอเตอร์ 3 ตัวด้วยโพเทนชิโอมิเตอร์ 3 ตัวและ Arduino: 11 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: มินิโปรเจค Arduino ควบคุม Servo Motor โดยใช้ Potentiometer 2024, พฤศจิกายน
Anonim
การควบคุมเซอร์โวมอเตอร์ 3 ตัวด้วยโพเทนชิโอมิเตอร์ 3 ตัวและ Arduino
การควบคุมเซอร์โวมอเตอร์ 3 ตัวด้วยโพเทนชิโอมิเตอร์ 3 ตัวและ Arduino

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

เป้าหมายที่ฉันตั้งไว้คือเพื่อควบคุมหุ่นยนต์ที่แสดงในเว็บไซต์นี้:

bocabearingsworkshop.blogspot.co.id/2015/08…

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

ก่อนที่ฉันจะระบุขั้นตอนที่เกี่ยวข้องในเรื่องนี้ ฉันต้องการให้คำอธิบายสั้นๆ ว่าทุกอย่างทำงานอย่างไร

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

โพเทนชิโอมิเตอร์ใช้พลังงานจากสาย 5v ของ Arduino ในขณะที่เซอร์โวได้รับพลังงานจากก้อนแบตเตอรี่

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

ขั้นตอนที่ 1: เตรียมส่วนประกอบของคุณ

การเตรียมส่วนประกอบของคุณ
การเตรียมส่วนประกอบของคุณ
การเตรียมส่วนประกอบของคุณ
การเตรียมส่วนประกอบของคุณ
การเตรียมส่วนประกอบของคุณ
การเตรียมส่วนประกอบของคุณ

คุณต้องการโพเทนชิโอมิเตอร์ 10k สามตัวพร้อมขาที่สามารถใส่ลงในเขียงหั่นขนมได้

ฉันพบพวกเขาที่นี่:

www.adafruit.com/products/562

ถัดมาเป็นเซอร์โวมอเตอร์ ฉันใช้อันที่เล็กที่สุดเพราะขนย้ายจะเล็กมากและราคาถูก

www.adafruit.com/products/169

ต่อไปคุณต้องใช้ก้อนแบตเตอรี่ AA 4 ก้อน:

www.adafruit.com/products/830

เขียงหั่นขนมเพื่อเชื่อมต่อทุกอย่าง:

www.adafruit.com/products/239

Arduino Uno R3 (อย่างน้อยนี่คือสิ่งที่ฉันใช้):

www.adafruit.com/products/50

สาย usb เพื่อเชื่อมต่อ Arduino กับพีซีและจ่ายไฟ:

www.adafruit.com/products/62

ซอฟต์แวร์ Arduino IDE เพื่ออัปโหลดโปรแกรมที่จะควบคุมเซอร์โว:

www.arduino.cc/en/Main/Software

สายจัมเปอร์ตัวผู้/ตัวผู้และสายจัมเปอร์สำหรับเชื่อมต่อ

www.adafruit.com/products/1956

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

www.adafruit.com/products/400

ขั้นตอนที่ 2: เตรียมเขียงหั่นขนมของคุณ

เตรียมเขียงหั่นขนมของคุณ
เตรียมเขียงหั่นขนมของคุณ

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

ขั้นตอนที่ 3: การเดินสายไฟหนึ่งโพเทนชิออมิเตอร์ 1

การเดินสายไฟหนึ่งโพเทนชิออมิเตอร์ 1
การเดินสายไฟหนึ่งโพเทนชิออมิเตอร์ 1

แผนภาพนี้แสดงให้เห็นว่าพิน 3 ตัวบนโพเทนชิออมิเตอร์มีไว้เพื่ออะไร

ขั้นตอนที่ 4: การเดินสายโพเทนชิออมิเตอร์ 2

การเดินสายไฟโพเทนชิออมิเตอร์2
การเดินสายไฟโพเทนชิออมิเตอร์2

นำสายเคเบิลตัวผู้ 3 สายแล้วดันเข้าไปในเขียงหั่นขนมดังแสดงในแผนภาพ

ขั้นตอนที่ 5: การเดินสายโพเทนชิออมิเตอร์ 3

การเดินสายไฟโพเทนชิออมิเตอร์ 3
การเดินสายไฟโพเทนชิออมิเตอร์ 3

ตอนนี้ดันหมุดของโพเทนชิออมิเตอร์เข้าไปในเขียงหั่นขนมตามที่แสดงในแผนภาพ

ขั้นตอนที่ 6: การเดินสายโพเทนชิออมิเตอร์ 4

การเดินสายโพเทนชิออมิเตอร์4
การเดินสายโพเทนชิออมิเตอร์4

ทำซ้ำขั้นตอนนี้อีก 2 ครั้ง และตอนนี้เราก็พร้อมที่จะเชื่อมต่อสายสัญญาณกับ Ardiuno

ขั้นตอนที่ 7: การเดินสายโพเทนชิออมิเตอร์ขั้นตอนสุดท้าย

การเดินสายโพเทนชิออมิเตอร์ขั้นตอนสุดท้าย
การเดินสายโพเทนชิออมิเตอร์ขั้นตอนสุดท้าย

ตอนนี้เราใช้สายสัญญาณสีเหลืองแล้วเสียบเข้ากับบอร์ด Arduino ดู Arduino อย่างระมัดระวังแล้วคุณจะเห็นส่วนหนึ่งของบอร์ดที่เรียกว่า Analog In เราจะเสียบสายเคเบิลของเราเข้ากับ A0, A1 และ A2 ตามที่แสดงในแผนภาพ

สำหรับช่วงเวลาที่เราทำหม้อเสร็จแล้ว ตอนนี้เพื่อตั้งค่ามอเตอร์

ขั้นตอนที่ 8: การเดินสายไฟมอเตอร์ 1

การเดินสายไฟมอเตอร์ 1
การเดินสายไฟมอเตอร์ 1
การเดินสายไฟมอเตอร์ 1
การเดินสายไฟมอเตอร์ 1
การเดินสายไฟมอเตอร์ 1
การเดินสายไฟมอเตอร์ 1

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

สีของสายเคเบิลบนมอเตอร์นั้นดูยุ่งยากเนื่องจากแตกต่างกันไปตามแต่ละมอเตอร์ ในไดอะแกรมของฉัน

สีดำเป็นพื้น (-)

สีแดงคือพลัง (+)

สีเหลืองคือสัญญาณ

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

ทำซ้ำขั้นตอนนี้อีกสองครั้ง จากนั้นเราก็พร้อมที่จะเชื่อมต่อมอเตอร์กับ Arduino

ขั้นตอนที่ 9: การเดินสายไฟมอเตอร์2

การเดินสายไฟมอเตอร์2
การเดินสายไฟมอเตอร์2

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

เสียบเข้ากับเขียงหั่นขนมแล้วเสียบเข้ากับ Arduino ที่ตำแหน่งเหล่านี้:

~9

~10

~11

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

เมื่อเสร็จแล้วเราก็พร้อมที่จะเชื่อมต่อพลังงานและทำให้มันทำงาน

ขั้นตอนที่ 10: การเพิ่มพลัง

เติมพลัง
เติมพลัง
เติมพลัง
เติมพลัง
เติมพลัง
เติมพลัง

ณ จุดนี้เราต้องการเชื่อมต่อไฟ Arduino 5v และกราวด์กับรางด้านบนซึ่งจะให้พลังงานแก่โพเทนชิโอมิเตอร์ จากนั้นเราจะเชื่อมต่อชุดแบตเตอรี่ของเรากับรางด้านล่างเพื่อจ่ายไฟให้กับเซอร์โว

หากเราทำสิ่งนี้ มันจะหมายความว่าระนาบกราวด์ Arduino และระนาบกราวด์เซอร์โวจะไม่เชื่อมต่อกัน และอาจส่งผลให้เกิดปัญหาใหญ่ได้ ถอดปลั๊ก Arduino ออกจากสาย USB ตรวจสอบให้แน่ใจว่าไม่ได้เชื่อมต่อก้อนแบตเตอรี่กับบอร์ดขนมปัง และเชื่อมต่อสายจัมเปอร์ตัวผู้สองตัวตามที่แสดงในแผนภาพ หนึ่งถึง 5v ใน Arduino และอีกสายหนึ่งกับกราวด์ใน Arduino

จากนั้นใช้สายจัมเปอร์ตัวผู้และต่อกราวด์จากรางด้านบนกับกราวด์บนรางด้านล่างดังแสดงทางด้านขวามือของเขียงหั่นขนม ตอนนี้เชื่อมโยงกับกราวด์ Arduino กับกราวด์ของแบตเตอรี่ซึ่งเราจะแนบต่อไป

ในที่สุดก็เพิ่มก้อนแบตเตอรี่ลงในเขียงหั่นขนมและเราได้ตั้งค่าทางกายภาพเสร็จแล้วและจะย้ายไปเขียนโปรแกรม Arduino

ขั้นตอนที่ 11: การเขียนโปรแกรม Ardiuno

การเขียนโปรแกรม Ardiuno
การเขียนโปรแกรม Ardiuno

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

www.arduino.cc/en/Tutorial/HomePage

เพื่อตรวจสอบการเชื่อมต่อในการตั้งค่าของฉัน

โพเทนชิโอมิเตอร์เสียบเข้ากับ A0, A1 และ A2

เซอร์โวเสียบเข้ากับ ~9, ~10 และ ~11

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

#รวม

เซอร์โว myservo3;

เซอร์โว myservo5;

เซอร์โว myservo6;

NS

int potpin = 0; int potpin2 = 1;

int potpin3 = 2;

int val = 0; int val2 = 0;

int val3 = 0;

การตั้งค่าเป็นโมฆะ (){

myservo3.attach(9);myservo5.attach(10);

myservo6.attach(11);

}

วงเป็นโมฆะ (){

val = analogRead(potpin);val = map(val, 3, 1023, 0, 176);

myservo3.write(val);

ล่าช้า(25);

val2 = analogRead (potpin2);val2 = แผนที่ (val2, 3, 1023, 0, 176);

myservo5.write(val2);

ล่าช้า(25);

val3 = analogRead (potpin3); val3 = แผนที่ (val3, 3, 1023, 0, 175);

myservo6.write(val3);

ล่าช้า(25);

}

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

แนะนำ: