Inhoudsopgave:

Een infrarood speurhond - Ajarnpa
Een infrarood speurhond - Ajarnpa

Video: Een infrarood speurhond - Ajarnpa

Video: Een infrarood speurhond - Ajarnpa
Video: Reconstructie Anass Aouragh - speurhond en infrarood camera 2024, Juli-
Anonim
Image
Image
Een infrarood speurhond
Een infrarood speurhond

Op een dag vond ik een interessante video op: https://arduinotr.com/cisim/?fbclid=IwAR22rYmiRQQJ0nqAusOLhBj_778gROseej6TUonvbOnAd65A-sl_wnyqrJQ&tdsourcetag=s_pcqq_aiomsg, dit is echt een goede video, maar valsspelen

Op het eerste gezicht voel ik het echt vreemd, en dan voeten bedrogen, weet niet wat de bodem is waarom deze ontwerper zo'n misleidend verhaal heeft gemaakt … het is onmogelijk door een eenvoudige IR-sensor, of zelfs zonder enige controller, maar alleen eenvoudige triodes.

Ik ken de man en het hele verhaal niet, ik probeer het gewoon zelf te maken. Ik heb zojuist mijn eigen ontwerp gemaakt, met zeer eenvoudige modules:

  • Elke Arduino-compatibele controller zoals Maduino
  • L298N-motorstuurprogramma
  • 3x IR-sensor
  • Enkele veelvoorkomende jumpers

Stap 1: Obstakeldetectie

Obstakel detectie
Obstakel detectie

Er worden 3 IR-sensoren gebruikt om het obstakel te detecteren, en de linker / rechter sensor heeft het obstakel gedetecteerd, het moet in de richting van de klok / antiklok worden gedraaid, terwijl de middelste sensor wordt gedetecteerd, het is in orde.

De 3-sensor detecteert of er een obstakel voor de deur is. Verbindt de signaalpin met Maduino-ingangspinnen, zoals Pin2/3/4;

Controleer als software eenvoudig de status van de sensoruitgang om te beslissen wat de motor moet doen:

if (IR1_STA == HOOG & IR2_STA == LAAG & IR3_STA == HOOG)//Als de middelste sensor het obstakel detecteert, stopt de motor

{

analoogWrite(EN, 0);

Stop();

}

als (IR1_STA == LAAG & IR2_STA == HOOG & IR3_STA == HOOG)//als de rechtersensor de belemmering detecteert, keert de motor met hoge snelheid achteruit;

{

analogWrite(EN, hoge snelheid);

Achteruit();

}

if (IR1_STA == LAAG & IR2_STA == LAAG & IR3_STA == HOOG) //als de

rechts en middelste sensor detecteren de obstakels, motor achteruit met lage snelheid;

{

analogWrite(EN, lage snelheid);

Achteruit();

}

……

Stap 2: Motorbesturing

Motorbesturing
Motorbesturing
Motorbesturing
Motorbesturing

En een motordriver om de motor aan te drijven, met hoge/lage snelheid, hangt af van de sensorstatus.

Een L298N-module gebruiken om de motor aan te drijven, met Maduino pin5/6 en PWM-pin (Maduino Pin9) naar L298N Schakel pin in en voed de module met 9V:

int EN=9; // PWM-besturing

int hoge snelheid = 80;//definieer de hoge snelheid

int lage snelheid = 60;//definieer de lage snelheid

en dan kan de motorsnelheid worden geregeld door:

analogWrite(EN, hoge snelheid);

Stap 3: Installeer daar iets, zo'n hond…

Installeer daar iets, zo'n hond…
Installeer daar iets, zo'n hond…

Installeer de sensoren en motoren, en maak iets op, voor mij, ik hou van een hond om te spelen met mijn 1,5 jaar oude dochter. Download de Arduino-code hier….of neem gratis contact met mij op: [email protected] als u vragen heeft

Aanbevolen: