ESP32 оқулығы 16/55 - ESP32 және L293D көмегімен мини су сорғысы | SunFounder ESP32 IoT оқу жиынтығы
Бұл оқулықта біз ESP32 микроконтроллері мен L293D қозғалтқыш драйверін пайдаланып, 5V су сорғысын қалай басқаруды үйренеміз. Бұл жоба микроконтроллерлермен қозғалтқыш драйверлерін қолдануға тамаша кіріспе болып табылады, бұл микроконтроллер тікелей бере алатын токтан көбірек токты қажет ететін құрылғыларды басқаруға мүмкіндік береді. Осы оқулықтың соңында сізде бағдарламалық түрде қосылатын және өшірілетін жұмыс істейтін су сорғысы болады.

ESP32 - бұл кірістірілген Wi-Fi және Bluetooth мүмкіндіктері бар қуатты микроконтроллер, бұл оны IoT қолданбалары үшін қолайлы етеді. L293D қозғалтқыш драйвері қозғалтқышты жұмыс істету үшін қажет жоғары токты басқару арқылы су сорғысын басқару үшін қолданылады. Бұл қондырғы ESP32 шамадан тыс ток тұтынудан қауіпсіз болуын қамтамасыз ете отырып, сорғыны іске қосуға және тоқтатуға мүмкіндік береді.
Аппараттық құрал түсіндірмесі
Бұл жобада біз әмбебаптығы мен қосылу мүмкіндіктерімен танымал ESP32 микроконтроллерін қолданамыз. Ол Arduino сияқты жұмыс істей алады, сонымен қатар Wi-Fi және Bluetooth сияқты қосымша мүмкіндіктерді ұсынады. L293D қозғалтқыш драйвері ESP32 мен су сорғысы арасындағы интерфейс ретінде әрекет етеді, микроконтроллерді шамадан тыс жүктемей сорғының жұмысын басқаруға мүмкіндік береді.
L293D екі H-көпірден тұрады, бұл оған қозғалтқыштың бағыты мен жылдамдығын басқаруға мүмкіндік береді. Әрбір H-көпір қозғалтқышты екі бағытта да жүргізе алады, бұл оны қозғалтқышты басқару қажет болатын қолданбалар үшін қолайлы етеді. Бұл жағдайда бізге тек сорғыны бір бағытта жұмыс істету қажет болады.
Деректер парағының мәліметтері
| Өндіруші | Texas Instruments |
|---|---|
| Бөлшек нөмірі | L293D |
| Логика/IO кернеуі | 4.5 - 36 В |
| Қоректендіру кернеуі | 4.5 - 36 В |
| Шығыс тогы (арнаға) | 600 мА |
| Ең жоғары ток (арнаға) | 1.2 А |
| PWM жиілігі бойынша нұсқау | 1 кГц - 10 кГц |
| Кіріс логикалық шектері | 2 В (жоғары), 0.8 В (төмен) |
| Кернеу төмендеуі / RDS(on) / қанығу | 1.5 В (макс) |
| Жылулық шектер | +150 °C (макс) |
| Қаптама | DIP-16 |
| Ескертулер / нұсқалар | Индуктивті жүктемеден қорғауға арналған кірістірілген диодтарды қамтиды |
- Үздіксіз жұмыс үшін дұрыс жылу таратуды қамтамасыз етіңіз.
- Тұрақты қоректендіру үшін разрядтау конденсаторларын қолданыңыз.
- Зақымдануды болдырмау үшін кіріс кернеуіне абай болыңыз.
- Қажет болса, жылдамдықты басқару үшін PWM қолданыңыз.
- Әсіресе индуктивті жүктемелермен қысқа тұйықталуды болдырмау үшін сымдарды тексеріңіз.
Сымды қосу нұсқаулары

ESP32 мен L293D қозғалтқыш драйверін су сорғысымен қосу үшін мына қадамдарды мұқият орындаңыз. Алдымен қоректендіру көзін L293D-ге қосыңыз. 1-ші түйреуішті (A қозғалтқышы үшін қосу түйреуіші) және 8-ші түйреуішті (Vcc2) оң кернеу көзіне (5В) қосыңыз. 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
Ресурстар мен сілтемелер
-
ҚұжаттамаESP32 Tutorial 16/55 - SunFounder motor documentationdocs.sunfounder.com
Файлдар📁
Техникалық сипаттама (pdf)
-
L293d_Quadruple_half_bridge_datasheet
l293d_Quadruple_half_bridge_datasheet.pdf0.34 MB