درایور موتور L298
ماژول درایور موتور L298 یک ماژول درایور موتور است که برای کنترل حرکت موتورها در پروژههای الکترونیکی با استفاده از میکروکنترلرهایی مانند آردوینو Arduino و ESP ها استفاده میشود. ماژول درایور موتور L298 دارای دو کانال است که هر کدام از آنها به صورت مستقل قابل کنترل است و میتواند موتورهای DC و Stepper Motor با جریان حداکثر 2 آمپر را کنترل کند. ماژول L298 دارای ولتاژ تغذیه 5 تا 35 ولت است که به آن از طریق باتری یا منبع تغذیه خارجی متصل میشود. ماژول درایور موتور L298 دارای چهار ورودی است که دو ورودی آن برای هر کانال موتور به عنوان ورودی کنترل سرعت استفاده میشود. همچنین این ماژول دارای دو خروجی هستند که به دو موتور متصل میشوند. در این ماژول، جریان خروجی برای هر موتور به صورت مجزا قابل تنظیم است. با استفاده ماژول درایور موتور L298 میتوان توان و جهت حرکت موتورها را کنترل کرد و همچنین میتوان آنها را به صورت دستی یا به صورت خودکار با استفاده از سنسورهای مختلف کنترل کرد. همچنین این ماژول قابلیت ارتباط با آردوینو و سایر میکروکنترلرها را دارد و برای پروژههایی که نیاز به کنترل موتور دارند، یکی از بهترین گزینههایی است که در دسترس است .
مشخصات فنی ماژول درایور موتور L298
- ولتاژ تغذیه: 5 تا 35 ولت
- جریان حداکثر خروجی: 2 آمپر برای هر کانال
- تعداد کانالها: 2 کانال
- ورودی کنترل سرعت: 2 ورودی برای هر کانال
- قابلیت کنترل موتورهای DC و Stepper Motor
- دارای دو خروجی قابل تنظیم جریان خروجی برای هر موتور
- ابعاد کوچک و مناسب برای استفاده
بررسی پایه های ماژول درایور موتور L298
ماژول درایور موتور L298 دارای 15 پایه است که به صورت زیر شمارهگذاری شدهاند:
Enable 1
Input 1
Input 2
Ground
Ground
Input 3
Input 4
Enable 2
Output 2
Output 2
Output 1
Output 1
+5V
+5V
Ground
اتصال موتور به ماژول درایور L298 به شکل زیر است. با توجه به کد مورد استفاده، پایههای درایور موتور L298 به ورودیهای آردوینو متصل میشوند.
- یک سیم به پایهی ۵ و ۱۵ ماژول متصل شود تا به گراند و منبع تغذیه +5 ولت وصل شود.
- سیم قرمز موتور را به پایهی ۱۱ و ۱۲ متصل کنید.
- سیم سبز موتور را به پایهی ۹ و ۱۰ متصل کنید.
- توجه کنید که باتری یا منبع تغذیه قبل از اتصال به ماژول، باید قطب مثبت و منفی آن بررسی شود تا با پایههای مناسب متصل گردد.
به همراه درایور L298 چه اقلامی باید خریداری شود؟
برای استفاده از ماژول درایور موتور L298، به علاوه خود ماژول، اقلام دیگری نیز نیاز است.برای استفاده از این ماژول، باتری باید با ولتاژ همخوانی با درایور موتور استفاده شود. ولتاژ مناسب برای باتری و یا منبع تغذیه باید بین حداقل 5 ولت و حداکثر 35 ولت باشد، که بسته به ولتاژ مورد نیاز موتور تعیین میشود. ویژگیهای موتور نیز باید با توجه به نیاز مورد استفاده تعیین شود. برای استفاده از ماژول درایور موتور L298، موتور(های) DC یا Stepper Motor با جریان کمتر از 2 آمپر برای هر کانال مورد استفاده قرار میگیرد.
- موتور(های) DC یا Stepper Motor
- باتری یا منبع تغذیه با ولتاژ مناسب (حداقل 5 ولت و حداکثر 35 ولت بسته به ولتاژ مورد نیاز موتور)
- آردوینو یا میکروکنترلر دیگری برای کنترل ماژول درایور موتور L298
- کابلهای مناسب برای اتصال ماژول به موتور و آردوینو
راه اندازی درایور موتور L298 با آردوینو
جهت برنامه نویسی ماژول درایور موتور L298 مطابق با اتصالات درج شده، از کد زیر در نرم افزار Arduino IDE استفاده کنید. این کد از PWM (Pulse-Width Modulation) برای کنترل سرعت موتور استفاده میکند. تابع analogWrite() دوره پالس PWM را تعیین میکند که باعث تنظیم سرعت موتور میشود. در کد آردوینو مقدار ۲۵۵ سرعت را به حداکثر تنظیم میکند، در حالی که مقدار ۰ موتور را خاموش میکند.سرعت را با تغییر مقدار ارسال شده به analogWrite() تنظیم کنید.
// تعریف پینها
int enablePin = 9;
int in1Pin = 8;
int in2Pin = 7;
void setup() {
pinMode(enablePin, OUTPUT);
pinMode(in1Pin, OUTPUT);
pinMode(in2Pin, OUTPUT);
}
void loop() {
// حرکت به جلو
digitalWrite(in1Pin, HIGH);
digitalWrite(in2Pin, LOW);
analogWrite(enablePin, 255); // تنظیم سرعت به حداکثر
delay(5000); // حرکت به جلو برای ۵ ثانیه
// توقف
digitalWrite(in1Pin, LOW);
digitalWrite(in2Pin, LOW);
analogWrite(enablePin, 0); // خاموش کردن موتور
delay(2000); // توقف برای ۲ ثانیه
// حرکت به عقب
digitalWrite(in1Pin, LOW);
digitalWrite(in2Pin, HIGH);
analogWrite(enablePin, 200); // تنظیم سرعت به متوسط
delay(3000); // حرکت به عقب برای ۳ ثانیه
// توقف
digitalWrite(in1Pin, LOW);
digitalWrite(in2Pin, LOW);
analogWrite(enablePin, 0); // خاموش کردن موتور
delay(2000); // توقف برای ۲ ثانیه
}
راه اندازی درایور موتور L298 با میکروپایتون و ESP32
جهت برنامه نویسی درایور موتور L298 از برد وای فای ESP32 هم میتوان استفاده کرد. برای کدنویسی از میکروپایتون استفاده میکنیم که در نرم افزار Thonny IDE قابل اجرا است. این کد همچنین از PWM برای کنترل سرعت استفاده میکند. تابع en.duty() دوره پالس PWM را تعیین میکند که باعث تنظیم سرعت موتور میشود. در مثال بالا، مقدار ۱۰۲۳ سرعت را به حداکثر تنظیم میکند، در حالی که مقدار ۰ موتور را خاموش میکند. شما میتوانید سرعت را با تغییر مقدار ارسال شده به en.duty() تنظیم کنید.
# تعریف پینها
from machine import Pin, PWM
en = PWM(Pin(14)) # پین فعالسازی
in1 = Pin(27, Pin.OUT) # پین 1
in2 = Pin(26, Pin.OUT) # پین 2
# حرکت به جلو
in1.value(1)
in2.value(0)
en.duty(1023) # تنظیم سرعت به حداکثر
utime.sleep(5) # حرکت به جلو برای ۵ ثانیه
# توقف
in1.value(0)
in2.value(0)
en.duty(0) # خاموش کردن موتور
utime.sleep(2) # توقف برای ۲ ثانیه
# حرکت به عقب
in1.value(0)
in2.value(1)
en.duty(500) # تنظیم سرعت به متوسط
utime.sleep(3) # حرکت به عقب برای ۳ ثانیه
# توقف
in1.value(0)
in2.value(0)
en.duty(0) # خاموش کردن موتور
utime.sleep(2) # توقف برای ۲ ثانیه
راه اندازی درایور موتور L298 با میکروپایتون و Pico
جهت راه اندازی درایور موتور L298 با میکروپایتون از برد رزبری پای پیکو Pico RP2040 استفاده میکنیم. این کد همچنین از PWM برای کنترل سرعت استفاده میکند. تابع en.duty_u16() دوره پالس PWM را تعیین میکند که باعث تنظیم سرعت موتور میشود. در مثال بالا، مقدار ۶۵۵۳۵ سرعت را به حداکثر تنظیم میکند، در حالی که مقدار ۰ موتور را خاموش میکند. شما میتوانید سرعت را با تغییر مقدار ارسال شده به en.duty_u16() تنظیم کنید.
# تعریف پینها
from machine import Pin, PWM
en = PWM(Pin(20)) # پین فعالسازی
in1 = Pin(21, Pin.OUT) # پین 1
in2 = Pin(22, Pin.OUT) # پین 2
# حرکت به جلو
in1.value(1)
in2.value(0)
en.duty_u16(65535) # تنظیم سرعت به حداکثر
utime.sleep(5) # حرکت به جلو برای ۵ ثانیه
# توقف
in1.value(0)
in2.value(0)
en.duty_u16(0) # خاموش کردن موتور
utime.sleep(2) # توقف برای ۲ ثانیه
# حرکت به عقب
in1.value(0)
in2.value(1)
en.duty_u16(32768) # تنظیم سرعت به متوسط
utime.sleep(3) # حرکت به عقب برای ۳ ثانیه
# توقف
in1.value(0)
in2.value(0)
en.duty_u16(0) # خاموش کردن موتور
utime.sleep(2) # توقف برای ۲ ثانیه
مشخصات
- کاربری
- مناسب برای استفاده صنعتی
- نوع ماژول
- درایور
- تعداد قطعات
- 19 عدد
- ابعاد فیبر
- 4.3 * 4.3 سانتی متر
- سطح تجربه مورد نیاز
- پیشرفته
- ولتاژ مورد نياز
- 5 ولت DC
- فیبر مدار چاپی
- فایبرگلاس دو رو
- چاپ مس
- دارای چاپ قرمز
- اقلام همراه محصول
- ارائه به همراه رادیاتور مخصوص آی سی
- سازنده
- arduino
- کشور سازنده
- چین
- نوع کانکتور
- ترمینال پیچی
- معماری پردازنده
- DRIVER
امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایههای GPIO قابل اتصال به میکروکنترلرها هستند.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.