Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Jonain päivänä löysin mielenkiintoisen videon osoitteesta: https://arduinotr.com/cisim/?fbclid=IwAR22rYmiRQQJ0nqAusOLhBj_778gROseej6TUonvbOnAd65A-sl_wnyqrJQ&tdsourcetag=s_pcqq_ai… but is
Ensi silmäyksellä minusta tuntuu todella oudolta, ja sitten jalat petti, en tiedä mikä on tämän suunnittelijan perimmäinen syy harhaanjohtavan tarinan tekemiseen … se on mahdotonta yksinkertaisella IR -anturilla tai jopa ilman ohjainta, mutta vain yksinkertaisia triodeja.
En tunne kaveria ja koko tarinaa, yritän vain tehdä sen itse. Tein juuri oman suunnitteluni hyvin yksinkertaisilla moduuleilla:
- Mikä tahansa Arduino -yhteensopiva ohjain, kuten Maduino
- L298N moottorin kuljettaja
- 3x IR -anturi
- Jotkut tavalliset hyppääjät
Vaihe 1: Esteiden tunnistus
Esteen havaitsemiseen käytetään kolmea IR-anturia, ja vasen/oikea anturi havaitsi esteen, sitä tulisi kiertää kohti kelloa/vastapäivään, kun taas keskimmäinen anturi havaittiin, se on kunnossa.
3 -anturi tunnistaa, onko edessä mitään esteitä. Yhdistää signaalitapin Maduino -tulotappeihin, kuten Pin2/3/4;
Tarkasta ohjelmistona yksinkertaisesti anturin lähtötila päättääksesi, mitä moottorin pitäisi tehdä:
jos (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == HIGH) // Jos keskianturi havaitsee esteen, moottori pysähtyy
{
analogWrite (EN, 0);
Lopettaa();
}
if (IR1_STA == LOW & IR2_STA == HIGH & IR3_STA == HIGH) // jos lämpöanturi havaitsee esteen, moottori peruuttaa suurella nopeudella;
{
analogWrite (EN, nopea);
Käänteinen();
}
if (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == HIGH) // jos
oikea ja keskimmäinen anturi havaitsevat esteen, moottori peruuttaa hitaalla nopeudella;
{
analogWrite (EN, hidas);
Käänteinen();
}
……
Vaihe 2: Moottorin ohjaus
Ja moottoriajuri moottorin ohjaamiseksi suurella/pienellä nopeudella riippuu anturin tilasta.
L298N -moduulin käyttäminen moottorin ohjaamiseen, Maduino -nasta5/6 ja PWM -nasta (Maduino -nasta 9) - L298N Ota nasta käyttöön ja kytke moduuliin virta 9 voltilla:
int EN = 9; // PWM -ohjaus
int highspeed = 80; // määrittele nopea nopeus
int hidas nopeus = 60; // määrittele hidas nopeus
ja sitten moottorin nopeutta voidaan ohjata:
analogWrite (EN, nopea);
Vaihe 3: Asenna jotain sinne, tällainen koira…
Asenna anturit ja moottorit ja tee minulle jotain, pidän koirasta leikkimässä 1,5 -vuotiaan tyttäreni kanssa. Lataa Arduino -koodi täältä…. Ota yhteyttä minuun: [email protected]