สารบัญ:

บทช่วยสอนเซอร์โว: 7 ขั้นตอน
บทช่วยสอนเซอร์โว: 7 ขั้นตอน

วีดีโอ: บทช่วยสอนเซอร์โว: 7 ขั้นตอน

วีดีโอ: บทช่วยสอนเซอร์โว: 7 ขั้นตอน
วีดีโอ: How to Use Servo Motors with NO Programming! - Hotwire Servo Tutorial 2024, กรกฎาคม
Anonim
บทช่วยสอนเซอร์โว
บทช่วยสอนเซอร์โว

การใช้ Arduino เพื่อควบคุมเซอร์โวมอเตอร์โดยใช้ปุ่มกดสองปุ่ม

ขั้นตอนที่ 1: รับส่วนประกอบที่เหมาะสม

รับส่วนประกอบที่เหมาะสม
รับส่วนประกอบที่เหมาะสม

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

ไปที่เว็บไซต์ที่นี่

ขอบคุณสำหรับการสนับสนุน.

1) Arduino Link: บอร์ดพัฒนา Uno R3 Rev3 ที่เข้ากันได้กับ Arduino

2) ลิงก์เขียงหั่นขนม: อุปกรณ์อิเล็กทรอนิกส์ขนาด 400 พินครึ่งพิน DIY เขียงหั่นขนมหรือ 830 จุดบัดกรีอิเล็กทรอนิกส์ DIY เขียงหั่นขนม

3) ปุ่มกดลิงค์: DIP P4 Sqaure Switch Push Buttons (100-Pack)

4) สายจัมเปอร์ลิงค์: สายจัมเปอร์ DuPont Breadboard 40 พินหลากสี (20 ซม.)

5) ลิงค์ตัวต้านทาน 10k Ohm สองตัว: DIY Universal 1/4W 1% ตัวต้านทานฟิล์มโลหะ (600PCS)

6) เซอร์โวมอเตอร์ลิงค์: Tower Pro SG90 9g Gear Steering Servo

ขั้นตอนที่ 2: เชื่อมต่อ Power

ต่อสายไฟ
ต่อสายไฟ

เชื่อมต่อ GND และ 5V

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

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

สีแดงถึง 5V

น้ำตาล/ดำ ถึง GND

สีส้มเพื่อหมุด9

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

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

ปุ่มใดปุ่มหนึ่งไปยัง DIGITAL 2

อื่นๆ ถึง DIGITAL 4

ขั้นตอนที่ 5: ตรวจสอบวงจร

ตรวจสอบวงจร
ตรวจสอบวงจร
ตรวจสอบวงจร
ตรวจสอบวงจร

ตรวจสอบให้แน่ใจว่าวงจรถูกต้อง

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

ฉันใช้ตัวอย่าง Sweep จาก Arduino และปรับเปลี่ยนให้ใช้งานได้

#รวม

const int buttonPin = 2;

const int buttonPin2 = 5;

int buttonState = 0;

int buttonState2 = 0;

เซอร์โวเซอร์โวA;

ตำแหน่ง int = 0;

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

servoA.attach(9);

pinMode (ปุ่มพิน, อินพุต);

pinMode(ปุ่มPin2, INPUT);

}

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

buttonState = digitalRead (ปุ่มพิน);

buttonState2 = digitalRead (buttonPin2);

if(buttonState ==HIGH && ตำแหน่ง <180){

servoA.write (ตำแหน่ง ++);

ล่าช้า(5);

}

if(buttonState2 == สูง && ตำแหน่ง > 3){

servoA.write (ตำแหน่ง--);

ล่าช้า(5);

}

}

แนะนำ: