Search Code

Èkọ́ 15/55 ESP32 - Ìṣàkóso ìyára Mọ́tọ̀ DC pẹ̀lú ESP32 L293D | SunFounder's ESP32 IoT Learning kit

Èkọ́ 15/55 ESP32 - Ìṣàkóso ìyára Mọ́tọ̀ DC pẹ̀lú ESP32 L293D | SunFounder's ESP32 IoT Learning kit

ESP32 Ikẹkọ 15/55 - Iṣakoso Iyara Mọto DC pẹlu ESP32 L293D | SunFounder's ESP32 IoT Learning kit

Ṣiṣakoso mọto DC pẹlu ESP32 le dabi ẹni pe o ṣoro, ṣugbọn o rọrun pupọ pẹlu awọn ẹya ti o tọ ati oye. Ninu ikẹkọ yii, a yoo kọ iṣẹ akanṣe kan ti yoo gba wa laaye lati ṣakoso iyara ati itọsọna mọto DC kan nipa lilo awakọ mọto L293D. Ni ipari, iwọ yoo ni eto ti n ṣiṣẹ ti o le yi mọto naa pada siwaju ati sẹhin lakoko ti o n ṣatunṣe iyara rẹ. Fun itọkasi wiwo, rii daju pe o wo fidio naa ni (ninu fidio ni 00:00).

ESP32-15_L293D_motor_schematic

Awọn Ẹya Hardware Ti Ṣalaye

Awọn ẹya akọkọ ti iṣẹ akanṣe yii pẹlu microcontroller ESP32 ati awakọ mọto L293D. ESP32 jẹ microcontroller alagbara pẹlu Wi-Fi ati awọn agbara Bluetooth ti a ṣe sinu rẹ, ti o jẹ ki o dara fun awọn ohun elo IoT. O le ṣakoso ọpọlọpọ awọn ẹya hardware, pẹlu awọn mọto, nipasẹ awọn pinni GPIO rẹ. L293D jẹ awakọ mọto H-bridge meji ti o gba ọ laaye lati ṣakoso itọsọna ati iyara awọn mọto DC meji. Ọkọọkan H-bridge le wakọ mọto kan ni itọsọna boya nipa yiyipada polarity ti foliteji ti a lo si awọn ebute mọto. Ni afikun, L293D le mu lọwọlọwọ ti o to 600 mA fun ikanni, ti o jẹ ki o dara fun awọn mọto kekere si alabọde.

L293D-Motor-Driver-IC

Awọn Alaye Datasheet

Olupese Texas Instruments
Nọmba apakan L293D
Foliteji Logic/IO 2.5 – 7 V
Foliteji ipese 4.5 – 36 V
Iwọn lọwọlọwọ (fun ikanni) 600 mA (typ.)
Iwọn lọwọlọwọ ti o ga julọ (fun ikanni) 1.2 A (max)
Itọsọna igbohunsafẹfẹ PWM 20 kHz (typ.)
Awọn ipele ila-ẹnu 0.8 V (ga), 2.0 V (rẹlẹ)
Idinku foliteji / RDS(on) / saturation 1.5 V (max)
Awọn opin igbona 150 °C (max)
Package 16-DIP
Awọn akọsilẹ / awọn iyatọ Quadruple half-H driver

 

  • Rii daju pe o ṣe itutu agbara daradara fun awọn ohun elo lọwọlọwọ giga.
  • Yọ ipese agbara kuro pẹlu awọn capacitors lati ṣe idiwọ awọn spikes foliteji.
  • Ṣọra pẹlu okun waya lati ṣe idiwọ polarity ti o yipada.
  • Lo PWM fun iṣakoso iyara lati yago fun igbona pupọ.
  • Ṣayẹwo foliteji ti a ṣe iwọn ti mọto lati ṣe idiwọ ibajẹ.

Awọn Ilana Okun Waya

ESP32-15_L293D_motor_wiring

Lati fi okun waya si ESP32 ati awakọ mọto L293D, bẹrẹ nipa sisopọ agbara. Sopọ pinni 16 ti L293D si ebute rere ti ipese agbara rẹ, ati pinni 4 si ilẹ. Nigbamii, sopọ mọto naa: ebute kan si pinni 3 ati ekeji si pinni 6 lori L293D. Fun awọn ifihan agbara iṣakoso, sopọ GPIO pinni 13 ti ESP32 si pinni 2 lori L293D ati GPIO pinni 14 si pinni 7. Nikẹhin, rii daju pe o sopọ ilẹ ESP32 si ilẹ L293D lati rii daju itọkasi ti o wọpọ. Ti fidio naa ba mẹnuba okun waya miiran (ninu fidio ni 05:00), rii daju pe o tẹle awọn iyipada kan pato ti o han.

Awọn Apẹẹrẹ Koodu & Itọsọna

Koodu fun ṣiṣakoso mọto naa ni asọye awọn pinni fun mọto ati ṣeto awọn ipo wọn. Eyi ni apakan lati iṣẹ setup:

#define motor1A 13
#define motor2A 14

void setup() {
  pinMode(motor1A, OUTPUT);
  pinMode(motor2A, OUTPUT);  
}

Ninu apakan yii, a ṣalaye awọn pinni iṣakoso mọto bi awọn iduro ati ṣeto wọn bi awọn abajade ninu iṣẹ setup. Eyi ṣe pataki nitori o ṣe imurasilẹ awọn pinni fun ṣiṣakoso mọto naa. Iṣẹ loop ni ibi ti a ṣe iṣakoso ihuwasi mọto naa. Eyi ni apakan pataki ti loop:

void loop() {
  digitalWrite(motor1A, HIGH);     
  digitalWrite(motor2A, LOW);   
  delay(2000); 

  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, HIGH);    
  delay(2000); 

  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, LOW);    
  delay(3000);
}

Koodu yii yi mọto naa ni itọsọna kan fun awọn aaya 2, lẹhinna yi itọsọna pada fun awọn aaya 2 miiran, ati nikẹhin da mọto naa duro fun awọn aaya 3. Loop yii yoo tun ṣe lainidii, ti o ngbanilaaye iṣakoso lemọlemọ. Fun awọn oye alaye diẹ sii ati koodu pipe, tọka si eto kikun ti o ṣe ni isalẹ nkan naa.

Ifihan / Ohun Ti O Nireti

Lẹhin ti o ba ti fi okun waya ati gbe koodu naa soke ni aṣeyọri, o yẹ ki o rii pe mọto naa yi ni itọsọna kan fun awọn aaya 2, yi itọsọna pada fun awọn aaya 2 miiran, lẹhinna duro fun awọn aaya 3. Ti mọto naa ko ba dahun bi a ti reti, ṣayẹwo awọn idiwọ ti o wọpọ bii polarity ti o yipada tabi awọn asopọ pinni ti ko tọ (ninu fidio ni 08:00). Eto yii pese ọna ti o rọrun lati ṣakoso iyara ati itọsọna mọto DC kan nipa lilo ESP32 ati L293D.

Awọn Akoko Fidio

  • 00:00 Ibẹ̀rẹ̀
  • 2:01 Ìfihàn sí ẹ̀rọ DC motor
  • 6:14 L293D Motor driver
  • 9:17 Àwọn ìwé iṣẹ́ Project.
  • 11:04 Àlàyé nípa ìsopọ̀ Wiring
  • 14:41 Ìdarí Motor Arduino pẹ̀lú ESP32
  • 17:10 Yíyàn àwọn Port Arduino fún board ESP32
  • 18:52 Ìfihàn iṣẹ́ Project
  • 22:08 Ìdarí ìyára Motor ní lílo ESP32
  • 26:22 Ìfihàn Ìdarí ìyára
  • 28:01 Kóòdù Arduino fún ìdarí ìyára àti ìtọ́sọ́nà
  • 29:05 Ìfihàn ìdarí ìyára àti ìtọ́sọ́nà

Aworan

L293D-Motor-Driver-IC
L293D-Motor-Driver-IC
ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_wiring
ESP32-15_L293D_motor_wiring
814-ESP32 Tutorial 15/55- Arduino code for L293D motor control
Ede: C++
#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(2000); 

  // Rotate in the opposite direction
  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, HIGH);    
  delay(2000); 

  // Stop
  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, LOW);    
  delay(3000);
}

Ohun ti o le nilo

Orisun & itọkasi

Fáìlìs📁

Fọọmu data (pdf)