د ESP32 ټیوټوریل 16/55 - د ESP32 او L293D په کارولو سره مینی واټر پمپ | د SunFounder د ESP32 IoT زده کړې کټ
په دې ټیوټوریل کې به موږ زده کړو چې څنګه د ESP32 مایکروکنټرولر او د L293D موټر ډرایور په کارولو سره د 5V اوبو پمپ کنټرول کړو. دا پروژه د مایکروکنټرولرونو سره د موټر ډرایورونو کارولو لپاره یوه ښه پېژندنه ده، چې تاسو ته دا وړتیا درکوي چې هغه وسایل کنټرول کړئ چې د مایکروکنټرولر څخه ډیر جریان ته اړتیا لري. د دې ټیوټوریل په پای کې به تاسو یو کار کوونکی اوبو پمپ ولرئ چې په پروګراماتیک ډول فعال او غیر فعال کیدی شي.

ESP32 یو پیاوړی مایکروکنټرولر دی چې د جوړ شوي وای-فای او بلوتوت وړتیاو سره راځي، چې دا د IoT غوښتنلیکونو لپاره مناسب کوي. د L293D موټر ډرایور د اوبو پمپ کنټرول لپاره کارول کیږي ترڅو د موټر چلولو لپاره اړین لوړ جریان اداره کړي. دا ترتیب موږ ته اجازه راکوي چې پمپ پیل او بند کړو پداسې حال کې چې ډاډ ترلاسه کوو چې ESP32 د ډیر جریان اخیستلو څخه خوندي پاتې کیږي.
هارډویر تشریح شوی
په دې پروژه کې، موږ د ESP32 مایکروکنټرولر څخه کار اخلو، کوم چې د خپل استعداد او ارتباطي اختیارونو لپاره پیژندل کیږي. دا کولی شي د Arduino په څیر کار وکړي پداسې حال کې چې اضافي ځانګړتیاوې لکه وای-فای او بلوتوت وړاندې کوي. د L293D موټر ډرایور د ESP32 او اوبو پمپ ترمنځ د انٹرفیس په توګه کار کوي، چې د مایکروکنټرولر له بارولو پرته د پمپ د عملیاتو کنټرول اجازه ورکوي.
L293D دوه H-پلونه لري، چې دا توان ورکوي چې د موټر سمت او سرعت کنټرول کړي. هر H-پل کولی شي موټر په هر لوري کې وګرځوي، چې دا د هغو غوښتنلیکونو لپاره مناسب کوي چیرې چې د موټر کنټرول ته اړتیا وي. په دې حالت کې، موږ یوازې اړتیا لرو چې پمپ په یو لوري کې د چلولو وړ کړو.
ډیټاشیټ تفصیلات
| جوړونکی | Texas Instruments |
|---|---|
| د پرزې شمېره | L293D |
| منطق/IO ولتاژ | 4.5 - 36 V |
| د برېښنا رسولو ولتاژ | 4.5 - 36 V |
| د تولید جریان (په هر چینل) | 600 mA |
| د لوړ جریان (په هر چینل) | 1.2 A |
| د PWM فریکونسي لارښوونه | 1 kHz - 10 kHz |
| د داخلې منطق حدونه | 2 V (لوړ)، 0.8 V (ټیټ) |
| د ولتاژ کمښت / RDS(on) / سنتریشن | 1.5 V (اعظمي) |
| حرارتي حدونه | +150 °C (اعظمي) |
| بسته بندي | DIP-16 |
| یادښتونه / بڼې | د انډکټیو بار محافظت لپاره جوړ شوي ډایوډونه شامل دي |
- د دوامداره عملیاتو لپاره د تودوخې مناسب ضایع کول ډاډمن کړئ.
- د مستحکم برېښنا رسولو لپاره د ډیکپلینګ کیپاسیټرونه وکاروئ.
- د زیان مخنیوي لپاره د داخلې ولتاژ څخه محتاط اوسئ.
- که اړتیا وي د سرعت کنټرول لپاره PWM پلي کړئ.
- د شارټ سرکټ مخنیوي لپاره تارونه وګورئ، په ځانګړي توګه د انډکټیو بارونو سره.
د تارونو د نښلولو لارښوونې

د ESP32 او L293D موټر ډرایور د اوبو پمپ سره د نښلولو لپاره، دا ګامونه په دقت سره تعقیب کړئ. لومړی، د برېښنا رسولو سرچینه L293D سره وصل کړئ. پن 1 (د موټر A لپاره د فعالولو پن) او پن 8 (Vcc2) د مثبت ولتاژ سرچینې (5V) سره وصل کړئ. پن 4 (ځمکه) د خپل سرکټ ځمکې سره وصل کړئ.
بیا، ESP32 د L293D سره تار کړئ. د ESP32 څخه GPIO پن 13 د L293D په پن 2 (انپټ 1) سره وصل کړئ، او GPIO پن 14 د پن 7 (انپټ 2) سره وصل کړئ. په پای کې، اوبو پمپ د L293D پن 3 (آوټ پټ 1) او پن 6 (آوټ پټ 2) سره وصل کړئ. ډاډ ترلاسه کړئ چې ټول ځمکني اړیکې د سم عملیات لپاره یوځای تړل شوي دي. که تاسو دا لارښوونې تعقیب کړئ، ستاسو تارونه به ساده او فعال وي.
د کوډ مثالونه او تفصیل
په کوډ کې، موږ د موټر کنټرول لپاره د پن اړیکې تعریف کوو. پیژندونکي motor1A او motor2A په ترتیب سره د ESP32 په GPIO پنونو 13 او 14 سره مطابقت لري. دا پنونه به د L293D ډرایور له لارې اوبو پمپ کنټرول کړي.
#define motor1A 13
#define motor2A 14
void setup() {
pinMode(motor1A, OUTPUT);
pinMode(motor2A, OUTPUT);
}
په setup() فنکشن کې، موږ د موټر کنټرول پنونه د آوټ پټ په توګه پیل کوو. دا ډاډ ورکوي چې موږ کولی شو د پمپ کنټرول لپاره L293D ډرایور ته سیګنالونه واستوو. د loop() فنکشن بیا د پمپ عملیات کنټرولوي.
void loop() {
digitalWrite(motor1A, HIGH);
digitalWrite(motor2A, LOW);
delay(5);
digitalWrite(motor1A, LOW);
digitalWrite(motor2A, LOW);
delay(2000); // یوه ثانیه انتظار
}
په loop() فنکشن کې، موږ د پمپ پیل کولو لپاره motor1A لوړ (HIGH) او motor2A ټیټ (LOW) ټاکو. د لنډ ځنډ وروسته، موږ دواړه پنونه ټیټ (LOW) په ټاکلو سره پمپ بندوو. دا دوره په غیر محدوده توګه تکرار کیږي، چې پمپ ته اجازه ورکوي چې د لنډې مودې لپاره وګرځي او بیا ودریږي.
ښودنه / څه تمه وکړو
یوځل چې تاسو تارونه بشپړ کړل او کوډ یې پورته کړ، تاسو باید وګورئ چې اوبو پمپ په یوه دوره کې فعال او غیر فعال کیږي. پمپ به د لنډې مودې لپاره وګرځي، بیا به ودریږي، چې د آن-آف بڼه رامینځته کوي. ډاډ ترلاسه کړئ چې ستاسو د برېښنا رسولو سرچینه د پمپ اړتیاو لپاره کافي ده ترڅو له کومې ستونزې څخه مخنیوی وشي (په ویډیو کې په 09:30).
د ویډیو وختونه
- 00:00 پیل
- 1:50 د پروژې پېژندنه
- 3:17 ولې موږ د Arduino سره L293D ته اړتیا لرو؟
- 5:47 د اوبو پمپ لپاره د تارونو نښلول تشریح شوي
- 10:01 د Arduino کوډ تشریح شوی
- 12:21 د Arduino IDE کې د ESP32 لپاره د COM پورټ غوره کول
- 14:03 د پمپ د چلولو ښودنه
- 15:25 د اوبو سره ښودنه
#define motor1A 13
#define motor2A 14
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin as an output.
pinMode(motor1A, OUTPUT);
pinMode(motor2A, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
// Rotate
digitalWrite(motor1A, HIGH);
digitalWrite(motor2A, LOW);
delay(5);
// Stop
digitalWrite(motor1A, LOW);
digitalWrite(motor2A, LOW);
delay(2000); // wait for a second
}
Common Course Links
Common Course Files
Resources & references
-
DocumentationESP32 Tutorial 16/55 - SunFounder motor documentationdocs.sunfounder.com
Files📁
Datasheet (pdf)
-
L293d_Quadruple_half_bridge_datasheet
l293d_Quadruple_half_bridge_datasheet.pdf0.34 MB