สารบัญ:
- ขั้นตอนที่ 1: เรียนรู้ว่า "เซอร์โวมอเตอร์" คืออะไร
- ขั้นตอนที่ 2: เซอร์โวมอเตอร์ทำงานอย่างไร
- ขั้นตอนที่ 3: แผนภาพวงจร (วิธีการต่อสายเซอร์โว)
- ขั้นตอนที่ 4: รหัสและการทดสอบ
วีดีโอ: วิธีควบคุม Servo Motor Arduino Tutorial: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
ไงพวก! ยินดีต้อนรับสู่บทช่วยสอนใหม่ของฉัน ฉันหวังว่าคุณจะชอบ "การควบคุมมอเตอร์สเต็ปเปอร์ขนาดใหญ่" ที่สอนได้ก่อนหน้านี้ของฉันแล้ว วันนี้ ' ฉันกำลังโพสต์ข้อมูลการสอนนี้เพื่อสอนพื้นฐานของการควบคุมเซอร์โวมอเตอร์ ฉันได้โพสต์วิดีโอเกี่ยวกับการควบคุมความเร็วและทิศทางของมอเตอร์กระแสตรงและสเต็ปเปอร์มอเตอร์ และวันนี้เราจะเริ่มด้วยเซอร์โวและวิธีนี้ก็เสร็จเรียบร้อย กับแอคชูเอเตอร์สำคัญส่วนใหญ่ที่ผู้ผลิตสามารถใช้ได้
ในระหว่างการจัดทำบทช่วยสอนนี้ เราพยายามทำให้แน่ใจว่าคำแนะนำนี้จะเป็นแนวทางที่ดีที่สุดสำหรับคุณ เพื่อที่จะได้สนุกกับการเรียนรู้พื้นฐานของการควบคุมเซอร์โวมอเตอร์ เนื่องจากการเรียนรู้กระบวนการทำงานของแอคทูเอเตอร์อิเล็กทรอนิกส์มีความสำคัญมากสำหรับการพัฒนาโครงการ ดังนั้นเราจึงหวังว่าคำแนะนำนี้มีเอกสารที่จำเป็น
สิ่งที่คุณจะได้เรียนรู้จากคำแนะนำนี้:
- กำหนดการใช้งานและความต้องการเซอร์โวมอเตอร์
- ตรวจดูภายในฮูดเซอร์โวมอเตอร์
- ทำความเข้าใจกลไกเซอร์โวมอเตอร์
- เรียนรู้ส่วนควบคุมไฟฟ้า
- สร้างไดอะแกรมการเดินสายไฟที่เหมาะสมกับบอร์ด Arduino
- ทดสอบโปรแกรมควบคุมเซอร์โวมอเตอร์แรกของคุณ
ขั้นตอนที่ 1: เรียนรู้ว่า "เซอร์โวมอเตอร์" คืออะไร
เซอร์โวมอเตอร์มีมานานแล้วและถูกนำไปใช้งานหลายอย่าง มีขนาดเล็กแต่อัดแน่นและประหยัดพลังงานมาก ซึ่งทำให้เป็นตัวเลือกที่เหนือกว่าสำหรับการใช้งานหลายประเภท
วงจรเซอร์โวนั้นแตกต่างจากมอเตอร์แบบสเต็ปและ DC ตรงที่วงจรเซอร์โวสร้างขึ้นภายในยูนิตมอเตอร์และมีเพลาที่ปรับตำแหน่งได้ ซึ่งปกติแล้วจะติดตั้งกับเฟือง มอเตอร์ถูกควบคุมด้วยสัญญาณไฟฟ้าซึ่งกำหนดปริมาณการเคลื่อนที่ของเพลา
จากตรงนี้ เราให้คำจำกัดความว่าเพื่อให้เข้าใจว่าเซอร์โวทำงานอย่างไร เราต้องดูภายใต้ประทุน ภายในเซอร์โว (ตรวจสอบภาพด้านบน) มีการตั้งค่าที่ค่อนข้างง่าย:
- มอเตอร์กระแสตรงขนาดเล็ก
- โพเทนชิออมิเตอร์
- วงจรควบคุม.
มอเตอร์ถูกยึดด้วยเฟืองกับล้อควบคุม
ขณะที่มอเตอร์หมุน ความต้านทานของโพเทนชิออมิเตอร์จะเปลี่ยนไป ดังนั้นวงจรควบคุมจึงสามารถควบคุมการเคลื่อนที่และทิศทางได้อย่างแม่นยำ
ดังนั้นเมื่อเพลาของมอเตอร์อยู่ในตำแหน่งที่ต้องการ กำลังที่จ่ายให้กับมอเตอร์จะหยุดลง
ขั้นตอนที่ 2: เซอร์โวมอเตอร์ทำงานอย่างไร
เซอร์โวถูกควบคุมโดยการส่งพัลส์ไฟฟ้าที่มีความกว้างแปรผัน หรือการมอดูเลตความกว้างพัลส์ (PWM) ผ่านสายควบคุม
ใช่ มันทำให้ฉันนึกถึงพิน PWM ของ Arduino!
โดยปกติแล้วเซอร์โวมอเตอร์สามารถหมุนได้เพียง 90° ในทิศทางใดทิศทางหนึ่งสำหรับการเคลื่อนที่ทั้งหมด 180° ตามความถี่และความกว้างของพัลส์ที่ได้รับผ่านสายควบคุม
เซอร์โวมอเตอร์คาดว่าจะเห็นพัลส์ทุกๆ 20 มิลลิวินาที (มิลลิวินาที) และความยาวของพัลส์จะเป็นตัวกำหนดว่ามอเตอร์จะหมุนได้ไกลแค่ไหน ตัวอย่างเช่น ชีพจร 1.5ms จะทำให้มอเตอร์หมุนไปที่ตำแหน่ง 90° ระยะที่สั้นกว่า 1.5 มิลลิวินาทีจะเคลื่อนตัวในทิศทางทวนเข็มนาฬิกาไปที่ตำแหน่ง 0 องศา และนานกว่า 1.5 มิลลิวินาทีจะทำให้เซอร์โวหมุนตามเข็มนาฬิกาไปยังตำแหน่ง 180°
ขั้นตอนที่ 3: แผนภาพวงจร (วิธีการต่อสายเซอร์โว)
ฉันกำลังใช้เซอร์โวของ Carson ในบทช่วยสอนนี้สำหรับรถแข่งเนื่องจากแรงบิดสูงและเกียร์โลหะ เช่นเดียวกับเซอร์โวทั้งหมดที่มีสามสาย หนึ่งสายสำหรับสัญญาณควบคุม และสองสายสำหรับจ่ายไฟซึ่งเป็น 6V DC แต่สำหรับการทดสอบ การเคลื่อนไหวก็โอเคกับ 5V DC
ฉันกำลังใช้บอร์ด Arduino Nano ซึ่งมีพิน PWM สำหรับควบคุมสัญญาณอยู่แล้ว
เพื่อควบคุมการเคลื่อนที่ของเซอร์โว ฉันจะใช้โพเทนชิออมิเตอร์ที่ต่ออยู่กับอินพุตแบบอะนาล็อกของ Arduino ของฉัน และเพลาเซอร์โวจะเหมือนกับการหมุนโพเทนชิออมิเตอร์ทุกประการ
ฉันย้ายไปที่ EasyEDA เพื่อเตรียมแผนภาพวงจร มันเป็นการตั้งค่าที่ค่อนข้างง่าย เนื่องจากทั้งหมดที่เราต้องการคือเซอร์โวมอเตอร์ที่ขับเคลื่อนโดยแหล่งจ่ายไฟ DC 5V ภายนอกและควบคุมโดย Arduino Nano ผ่านสัญญาณแอนะล็อกที่ได้รับจากโพเทนชิออมิเตอร์
ขั้นตอนที่ 4: รหัสและการทดสอบ
เกี่ยวกับโปรแกรมควบคุม ในบทช่วยสอนนี้ เราจะใช้ Arduino Library ซึ่งเป็นไลบรารีเซอร์โวที่อนุญาตให้สร้างอินสแตนซ์ของเซอร์โวซึ่งคุณต้องตั้งค่าพินควบคุมเอาต์พุตสำหรับเซอร์โว และในตัวอย่างนี้ เรากำลังใช้พิน PWM 9 จากนั้น เรากำลังอ่านสัญญาณแอนะล็อกจากโพเทนชิออมิเตอร์ผ่านฟังก์ชัน analogRead จากอินพุตแอนะล็อก A0
ในการควบคุมเซอร์โว เราจำเป็นต้องใช้ฟังก์ชันเขียนจากอ็อบเจกต์เซอร์โวซึ่งได้ค่าตั้งแต่ 0 ถึง 180 ดังนั้นเราจึงแปลงค่าแอนะล็อกซึ่งมีค่าตั้งแต่ 0 ถึง 1024 (ขนาดของ ADC) เป็นค่าตั้งแต่ 0 ถึง 180 โดยใช้ฟังก์ชันแผนที่ จากนั้นเราวางค่าที่แปลงแล้วลงในฟังก์ชันเขียน
ตามบทช่วยสอนนี้ คุณจะสามารถควบคุมและทดสอบเซอร์โวมอเตอร์ของคุณได้ และคุณสามารถพัฒนาความรู้เหล่านี้เพื่อควบคุมเซอร์โวได้มากขึ้นในกลไกขั้นสูง เช่น แขนหุ่นยนต์
เพียงเท่านี้สำหรับบทช่วยสอนนี้
มันคือ BEE MB จาก MEGA DAS แล้วพบกันใหม่
แนะนำ:
วิธีควบคุม Bluetooth (HC-05) ด้วย Arduino: 5 ขั้นตอน
วิธีควบคุมบลูทูธ (HC-05) ด้วย Arduino: สวัสดีเพื่อนๆ ของฉันในบทเรียนนี้ เราจะเรียนรู้วิธีการควบคุมมอเตอร์กระแสตรงด้วยสมาร์ทโฟนหรือแท็บเล็ตของเรา เพื่อให้บรรลุสิ่งนี้ เราจะใช้ตัวควบคุมมอเตอร์ L298N และโมดูล Bluetooth (HC- 05).มาเริ่มกันเลย
วิธีควบคุม DC Motor ด้วย L298n และ Arduino: 5 ขั้นตอน
วิธีควบคุม DC Motor ด้วย L298n และ Arduino: สวัสดีทุกคน มาแนะนำตัวกัน ฉันชื่อ Dimitris และฉันมาจากประเทศกรีซ ฉันชอบ Arduino มากเพราะเป็นบอร์ดอัจฉริยะ ฉันจะพยายามอธิบายให้ดีที่สุดเท่าที่จะทำได้เพื่อให้คำแนะนำนี้สำหรับทุกคน มาเริ่มกันเลย
วิธีควบคุม WS2812 RGB LED (NeoPixel) ด้วย Arduino [บทช่วยสอน]: 10 ขั้นตอน
วิธีควบคุม WS2812 RGB LED (NeoPixel) ด้วย Arduino [บทช่วยสอน]: ภาพรวม LED NeoPixel ถูกใช้อย่างแพร่หลายในโครงการอิเล็กทรอนิกส์ เนื่องจากเอฟเฟกต์ภาพที่น่าดึงดูด ไฟ LED เหล่านี้มีจำหน่ายในขนาดและรูปร่างต่าง ๆ และในรูปแบบแถบ ในบทช่วยสอนนี้ คุณจะได้เรียนรู้เกี่ยวกับ NeoPixel LED และวิธี
วิธีควบคุม MOSFET ด้วย Arduino PWM: 3 ขั้นตอน
วิธีควบคุม MOSFET ด้วย Arduino PWM: ในคำแนะนำนี้ เราจะดูวิธีควบคุมกระแสผ่าน MOSFET โดยใช้สัญญาณเอาต์พุต Arduino PWM (Pulse Width Modulation) ในกรณีนี้ เราจะจัดการโค้ด Arduino เพื่อให้สัญญาณ PWM แปรผันบนพินดิจิตอล 9 ของ ardui
วิธีควบคุม I2C Oled Display ด้วย Arduino: 9 ขั้นตอน (พร้อมรูปภาพ)
วิธีควบคุมจอแสดงผล Oled I2C ด้วย Arduino: นี่เป็นบทแนะนำง่ายๆ เกี่ยวกับวิธีการควบคุม I2C Oled Display ด้วย Arduino หากคุณชอบคำแนะนำนี้ โปรดสมัครรับข้อมูลจากช่องของฉัน https://www.youtube.com/ZenoModiff