Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Jednog sam dana pronašao zanimljiv video na: https://arduinotr.com/cisim/?fbclid=IwAR22rYmiRQQJ0nqAusOLhBj_778gROseej6TUonvbOnAd65A-sl_wnyqrJQ&tdsourcetag=s_pcqq_aiomsg ovo je zaista dobar video
Na prvi pogled osjećam da je to zaista čudno, a onda su noge prevarile, ne znaju što je donji razlog zašto je ovaj dizajner napravio tako zavaravajuću priču … nemoguće je pomoću jednostavnog IC senzora ili čak bez ikakvog kontrolera, već samo jednostavnih trioda.
Ne poznajem tipa i cijelu priču, samo pokušavam to napraviti sam. Upravo sam napravio vlastiti dizajn, s vrlo jednostavnim modulima:
- Bilo koji kontroler kompatibilan s Arduinom, poput Maduina
- Vozač motora L298N
- 3x IR senzor
- Neki uobičajeni skakači
Korak 1: Otkrivanje prepreka
Tamo se 3 IR senzora koriste za otkrivanje prepreke, a lijevi/desni osjetnik je otkrio prepreku, treba je rotirati prema smjeru sata/kazaljke na satu, dok je srednji senzor otkrio, sve je u redu.
3 senzor detektira ima li prepreka ispred. Spaja signalni pin na Maduino ulazne pinove, poput Pin2/3/4;
Kao softver, jednostavno provjerite stanje izlaza senzora kako biste odlučili što motor treba učiniti:
if (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == HIGH) // Ako srednji osjetnik otkrije prepreku, motor se zaustavlja
{
analogWrite (EN, 0);
Stop();
}
if (IR1_STA == LOW & IR2_STA == HIGH & IR3_STA == HIGH) // ako desni senzor otkrije prepreku, motor se kreće velikom brzinom unatrag;
{
analogWrite (EN, velika brzina);
Obrnuti ();
}
if (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == HIGH) // ako je
desni i srednji senzor detektiraju prepreku, motor unatrag pri maloj brzini;
{
analogWrite (EN, niska brzina);
Obrnuto ();
}
……
Korak 2: Upravljanje motorom
A vozač motora za upravljanje motorom, velikom/niskom brzinom, ovisi o statusu senzora.
Korištenje L298N modula za pogon motora, s Maduino pin5/6 i PWM pin (Maduino Pin9) na L298N Omogućite pin i napajanje modula s 9V:
int EN = 9; // Upravljanje PWM -om
int highspeed = 80; // definirajte veliku brzinu
int lowspeed = 60; // definirajte nisku brzinu
a zatim se brzina motora može kontrolirati:
analogWrite (EN, velika brzina);
Korak 3: Instalirajte nešto tamo, takav pas …
Instalirajte senzore i motore i napravite nešto za mene, ja volim da se pas igra sa mojom kćeri od 1,5 godine. Ovdje preuzmite Arduino kôd …. Slobodno me kontaktirajte: [email protected] ako imate pitanja