Innholdsfortegnelse:

En infrarød sporingshund: 3 trinn
En infrarød sporingshund: 3 trinn

Video: En infrarød sporingshund: 3 trinn

Video: En infrarød sporingshund: 3 trinn
Video: Глаголы движения с предлогами a, en, de. Чем отличаются глаголы ir и venir? 2024, November
Anonim
Image
Image
En infrarød sporingshund
En infrarød sporingshund

En dag fant jeg en interessant video på: https://arduinotr.com/cisim/?fbclid=IwAR22rYmiRQQJ0nqAusOLhBj_778gROseej6TUonvbOnAd65A-sl_wnyqrJQ&tdsourcetag=s_pcqq_aiomsg dette er virkelig en god video …

Ved første øyekast føler jeg at det er veldig rart, og da jukset føttene, vet ikke hva som er grunnen til at denne designeren gjorde en så villedende historie … det er umulig med en enkel IR -sensor, eller til og med uten noen kontroller, men bare enkle trioder.

Jeg kjenner ikke fyren og hele historien, jeg prøver bare å klare det selv. Jeg har nettopp laget mitt eget design, med veldig enkle moduler:

  • Enhver Arduino -kompatibel kontroller som Maduino
  • L298N motordriver
  • 3x IR -sensor
  • Noen vanlige hoppere

Trinn 1: Obstacle Detection

Hindringsdeteksjon
Hindringsdeteksjon

Det er 3 IR-sensorer som brukes til å oppdage hindringen, og venstre/høyre sensor oppdaget hindringen, den skal roteres mot klokken/anti-klokkeretning, mens den midtre sensoren oppdager, er det helt greit.

Sensoren 3 oppdager om det er noen hindring foran. Kobler signalpinnen til Maduino -inngangspinner, for eksempel Pin2/3/4;

Som programvare kan du enkelt kontrollere sensorens utgangsstatus for å bestemme hva motoren skal gjøre:

hvis (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == HIGH) // Hvis mellomføleren oppdager hindringen, stopper motoren

{

analogWrite (EN, 0);

Stoppe();

}

hvis (IR1_STA == LOW & IR2_STA == HIGH & IR3_STA == HIGH) // hvis høyre sensor oppdager det hindrende, motoren reverserer med høy hastighet;

{

analogWrite (EN, høy hastighet);

Omvendt();

}

hvis (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == HIGH) // hvis

høyre og midtre sensor oppdager den hindrende, motoren bakover med lav hastighet;

{

analogWrite (EN, lav hastighet);

Omvendt();

}

……

Trinn 2: Motorstyring

Motor kontroll
Motor kontroll
Motor kontroll
Motor kontroll

Og en motordriver som driver motoren, med høy/lav hastighet, avhenger av sensorstatusen.

Bruk en L298N -modul til å drive motoren, med Maduino pin5/6, og PWM -pin (Maduino Pin9) til L298N Aktiver pin, og drev modulen med 9V:

int EN = 9; // PWM -kontroll

int highspeed = 80; // definere høy hastighet

int lavhastighet = 60; // definere lav hastighet

og deretter kan motorhastigheten styres av:

analogWrite (EN, høy hastighet);

Trinn 3: Installer noe der, en slik hund …

Installer noe der, en slik hund …
Installer noe der, en slik hund …

Installer sensorene og motorene, og lag noe på, for meg liker jeg en hund å leke med min 1,5 år gamle datter. Last ned Arduino -koden her … gratis å kontakte meg: [email protected] hvis du har spørsmål

Anbefalt: