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


กลับหน้าหลัก บทความ

ตอนที่ 79 ปรับควสามเร็วมอเตอร์ และ กลับทางหมุน

VDO การทำงาน
จาก Facebook



บทความก่อนหน้านี่ที่เกี่ยวข้องกัน


ตอนที่ 27 การใช้งาน โมดูล L298N ขับมอเตอร์

ตอนที่ 31 การอ่าานค่าสัญญาณ อนาล็อก

ตอนที่ 44 การใช้งาน PWM

ในโครงงานนี้ จะทั้งการรับค่า อนาล็อก + การใช้งานบอร์ด L298N
ในการควบคุมความเร็วมอเอคร์ และ เปลี่ยนทิศทางได้

บอร์ด L29N และขั้วต่อต่างๆ


ขั้วต่างๆและการต่อใช้งาน ในโครงงานนี้จะใช้ การควบคุมมอเตอร์ตัวเดี่ยวเท่านั้น

วงจรสำหรับการทดสอบ


วงจรตามรูปเลยครับ
สวิตช์เลื่อน ต่อกับขา 11 ทำหน้าที่เลือกการหมุน และ กลับทาฃงหมุน
VR 20KB ใช้สำหรับปรับความเร็วของมอเตอร์
ขา9 เป็นขา PWM ต่อกับ IN1
ขา8 ต่อกับ IN2
บอร์ด L298N ต่อไฟเลี้ยงตามรูปเลย



ตอวงจรสำหรับการทดลอง

.

สวิตชแบบเลื่อน กำหนดทิศทางการหมุน

VR ปรับความเร็วรอบ

บอร์ด L298V

มอเตอร์ศ (เจาะ PCB) 12V .ใช้ในการทดลอง

Code และอธิบาย

int buttonPin = 11;
int sw ;
int vr_pin = A0;
int a;
int b;

void setup()
{
pinMode(9,OUTPUT);
pinMode(8,OUTPUT);
pinMode(vr_pin, INPUT);
Serial.begin(9600);
}

void loop()
{
int vr = analogRead(vr_pin);
sw=digitalRead(buttonPin);
a=vr/4;
b=255-a;
if(sw==1) {
analogWrite(9,a); // 0-255 คือ 0-5V
digitalWrite(8,LOW);
delay(10);
}
else {
analogWrite(9,b); // 0-255 คือ 0-5V
digitalWrite(8,HIGH);
delay(10);
}
Serial.println(a);
}

การเขียน code จะเป็นการเขียนรวมกันระหว่าง การรับค่าจากสวิตช์
การรับค่า อนาล็อกของ VR การเขียน PWM และ การใช้บอร์ด L298N

a=vr/4;เนื่องจาก ค่าอนาล็อกจะเขามาที่ 0-1023 เราต้องแปลงให้เป็น 0-255 เพื่อใช้งาน PWM
b=255-a;เป็นการกลับทางค่าตัวเลขซึ่งทำให้มอเตอร์หมุนความเร็วเท่ากันทั้ง 2 ด้าน

VDO การทำงาน
จาก Facebook


เขียนเมื่อ 16 กพ 66 / ติดตามตอนต่อไปครับ