2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Nekega dne sem našel zanimiv videoposnetek na naslovu: https://arduinotr.com/cisim/?fbclid=IwAR22rYmiRQQJ0nqAusOLhBj_778gROseej6TUonvbOnAd65A-sl_wnyqrJQ&tdsourcetag=s_pcqq_aiomsg to je res dober video …
Na prvi pogled se mi zdi res čudno, potem pa so noge goljufale, ne vem, kaj je spodnji razlog, da je ta oblikovalec naredil tako zavajajočo zgodbo … nemogoče je s preprostim IR senzorjem ali celo brez krmilnika, ampak samo z enostavnimi triodami.
Ne poznam fanta in celotne zgodbe, poskušam to narediti sam. Pravkar sem naredil svoj dizajn z zelo preprostimi moduli:
- Vsak krmilnik, združljiv z Arduinom, kot je Maduino
- Gonilnik motorja L298N
- 3x IR senzor
- Nekaj običajnih skakalcev
1. korak: Odkrivanje ovir
Tam se za zaznavanje ovire uporabljajo 3 IR senzorja, levi/desni senzor pa je zaznal oviro, treba jo je obrniti proti smeri ure/ure, medtem ko je zaznan srednji senzor, je vse v redu.
3 senzor zazna, če je pred vami kakšna ovira. Poveže signalni zatič z vhodnimi zatiči Maduino, na primer Pin2/3/4;
Kot programska oprema preprosto preverite stanje izhoda senzorja, da se odločite, kaj mora motor narediti:
if (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == HIGH) // Če srednji senzor zazna oviro, se motor ustavi
{
analogWrite (EN, 0);
Stop ();
}
if (IR1_STA == LOW & IR2_STA == HIGH & IR3_STA == HIGH) // če desni senzor zazna oviro, motor obrnite z veliko hitrostjo;
{
analogWrite (EN, hitra hitrost);
Obratno ();
}
if (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == HIGH) // če
desni in srednji senzor zaznata oviro, motor vzvratno z nizko hitrostjo;
{
analogWrite (EN, nizka hitrost);
Obratno ();
}
……
Korak: Nadzor motorja
Gonilnik motorja za pogon motorja pri visoki/nizki hitrosti je odvisen od stanja senzorja.
Uporaba modula L298N za pogon motorja, z Maduino pin5/6 in pin PWM (Maduino Pin9) na L298N Omogočite pin in napajajte modul z 9V:
int EN = 9; // krmiljenje PWM
int highspeed = 80; // določimo visoko hitrost
int lowspeed = 60; // določimo nizko hitrost
nato lahko hitrost motorja nadzirate z:
analogWrite (EN, hitra hitrost);
Korak: Namestite nekaj tam, takega psa …
Namestite senzorje in motorje ter si nekaj privoščite, meni je všeč, da se pes igra s svojo 1,5 letno hčerko. Tukaj naložite kodo Arduino…. Če imate kakršna koli vprašanja, me lahko kontaktirate: [email protected]