INHOUDSOPGAWE:
- Stap 1: Wat u benodig in hierdie projek:
- Stap 2: Kringdiagram
- Stap 3: Programmering van Arduino UNO
- Stap 4: Fantasties
Video: Hoe om 'n DIY Arduino -hindernis te maak om robot tuis te vermy: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Hallo ouens, in hierdie instruksies sal u 'n hindernis maak om robot te vermy. Hierdie instruksie behels die bou van 'n robot met 'n ultrasoniese sensor wat voorwerpe in die omgewing kan opspoor en hul rigting kan verander om hierdie voorwerpe te vermy. Die ultrasoniese sensor word aan 'n servomotor gekoppel wat voortdurend na links en regs soek en op soek is na voorwerpe.
Dus, sonder meer, laat ons begin!
Stap 1: Wat u benodig in hierdie projek:
Hier is die onderdele lys:
1) Arduino Uno
2) Motorbestuurder se skild
3) ratmotor, raam en wiele stel
4) Servomotor
5) Ultrasoniese sensor
6) Li-ion battery (2x)
7) Batteryhouer
8) Manlike en vroulike jumperdraad
9) Soldeerbout
10) Laaier
Stap 2: Kringdiagram
Werk:
Voordat u aan die projek gaan, is dit belangrik om te verstaan hoe die ultrasoniese sensor werk. Die basiese beginsel agter die werking van die ultrasoniese sensor is soos volg:
Deur 'n eksterne snellersignaal te gebruik, word die Trig -pen op die ultrasoniese sensor vir ten minste 10µs logies gemaak. 'N Soniese uitbarsting van die sendermodule word gestuur. Dit bestaan uit 8 pulse van 40KHz.
Die seine keer terug nadat hulle 'n oppervlak getref het en die ontvanger bespeur hierdie sein. Die Echo -pen is hoog vanaf die tyd dat die sein gestuur en ontvang is. Hierdie tyd kan met behulp van toepaslike berekeninge omgeskakel word na afstand.
Die doel van hierdie projek is om 'n hindernis te implementeer om robot te vermy met behulp van ultrasoniese sensor en Arduino. Alle verbindings word gemaak volgens die stroomdiagram. Die werking van die projek word hieronder verduidelik.
As die robot aangeskakel word, werk beide die motors van die robot normaal en die robot beweeg vorentoe. Gedurende hierdie tyd bereken die ultrasoniese sensor voortdurend die afstand tussen die robot en die weerkaatsende oppervlak.
Hierdie inligting word deur die Arduino verwerk. As die afstand tussen die robot en die struikelblok minder as 15 cm is, stop die robot en soek na links en regs na nuwe afstand met behulp van servomotor en ultrasoniese sensor. As die afstand na die linkerkant groter is as dié van die regterkant, berei die robot voor vir 'n draai na links. Maar eers ondersteun dit 'n bietjie en aktiveer dan die linkerwielmotor in omgekeerde rigting.
Net so, as die regte afstand meer is as die van die linkerafstand, berei die robot die regte draai voor. Hierdie proses duur vir ewig voort en die robot bly aan die beweeg sonder om enige hindernis te raak.
Stap 3: Programmering van Arduino UNO
#insluit
#insluit
#insluit
# definieer TRIG_PIN A1
# definieer ECHO_PIN A0
# definieer MAX_DISTANCE 200
# definieer MAX_SPEED 255 // stel die snelheid van GS -motors in
# definieer MAX_SPEED_OFFSET 20
NewPing sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor motor3 (3, MOTOR34_1KHZ);
AF_DCMotor motor4 (4, MOTOR34_1KHZ); Servo myservo;
boolean goesForward = false;
int afstand = 100; int speedSet = 0;
ongeldige opstelling () {
myservo.attach (10);
myservo.write (115); vertraging (2000); afstand = readPing (); vertraging (100); afstand = readPing (); vertraging (100); afstand = readPing (); vertraging (100); afstand = readPing (); vertraging (100); }
leemte -lus () {
int afstandR = 0; int afstand L = 0; vertraging (40);
if (afstand <= 15) {moveStop (); vertraging (100); moveBackward (); vertraging (300); moveStop (); vertraging (200); distanceR = lookRight (); vertraging (200); distanceL = lookLeft (); vertraging (200);
as (afstandR> = afstandL) {
draai regs(); moveStop (); } anders {turnLeft (); moveStop (); }} anders {moveForward (); } afstand = readPing (); }
int lookRight () {
myservo.write (50); vertraging (500); int afstand = readPing (); vertraging (100); myservo.write (115); terugkeer afstand; }
int lookLeft () {
myservo.write (170); vertraging (500); int afstand = readPing (); vertraging (100); myservo.write (115); terugkeer afstand; vertraging (100); }
int readPing () {
vertraging (70); int cm = sonar.ping_cm (); as (cm == 0) {cm = 250; } cm terug; }
leegte moveStop () {
motor3.run (RELEASE);
motor4.run (RELEASE); }
nietig moveForward () {
as (! gaan vorentoe) {
goesForward = waar;
motor3.run (VOORUIT);
motor4.run (VOORUIT); vir (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) // verhoog die spoed stadig om te voorkom dat die batterye te vinnig laai {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); vertraging (5); }}}
nietig moveBackward () {
goesForward = vals;
motor3.run (TERUG);
motor4.run (TERUG); vir (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) // verhoog die spoed stadig om te voorkom dat die batterye te vinnig laai {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); vertraging (5); }}
nietige turnRight () {
motor3.run (VOORUIT);
motor4.run (TERUG); vertraging (500);
motor3.run (VOORUIT);
motor4.run (VOORUIT); }
leegte turnLeft () {
motor3.loop (TERUG);
motor4.run (VOORUIT); vertraging (500);
motor3.run (VOORUIT);
motor4.run (VOORUIT); }
1) Laai die Arduino Desktop IDE af en installeer dit
- vensters -
- Mac OS X -
- Linux -
2) Laai die NewPing -biblioteek (Ultrasonic sensor function library) lêer af en plak dit in die gids Arduino biblioteke.
- Laai die NewPing.rar hieronder af
- Pak dit uit na die pad - C: / Arduino / biblioteke
3) Laai die kode op 'n Arduino -bord op via 'n USB -kabel
Aflaai kode:
Stap 4: Fantasties
Nou is u robot gereed om hindernisse te vermy …
Ek beantwoord graag u vrae
E -pos my: [email protected]
Webwerf:
Teken in op my YouTube-kanaal:
Instagram:
Facebook:
Dankie:)
Aanbeveel:
Hoe om 'n DIY Arduino gebaarbeheer -robot tuis te maak: 4 stappe
Hoe om 'n DIY Arduino gebaarbeheer -robot tuis te maak: hoe om 'n DIY Arduino gebaarbeheer -robot tuis te maak. In hierdie projek gaan ek jou wys hoe om 'n DIY Arduino Gesture Control Robot te maak
Hoe om 'n DIY -lugblaser maklik tuis te maak: 3 stappe
Hoe om 'n maklik gemaakte blaser tuis te maak: in hierdie video het ek 'n lugblaser baie maklik met huishoudelike items gemaak
Hoe om 'n Arduino -gebaseerde rand te vermy om robot te vermy: 4 stappe
Hoe om 'n Arduino -gebaseerde rand te vermy om robot te vermy: Kom ons maak 'n volledig outonome robot met behulp van Arduino- en IR -sensors. Dit verken die oppervlak van die tafel sonder om te val. Kyk na die video vir meer
Hoe om 'n drone tuis te maak - DIY Quadcopter: 5 stappe
Hoe om 'n drone tuis te maak - DIY Quadcopter: Hallo lesers in hierdie instruksies, ek het 'n drone gemaak wat regtig hoog vlieg, en die beste deel hier is dat al die materiaal wat nodig is om dit te bou, beskikbaar is op aanlyn -inkopiesentrums (kyk vir skakels in my video Hierdie tuisgemaakte hommeltuig is baie maklik
Hoe om 'n afstandsbedieningsmotor op 'n maklike manier tuis te maak - 'n DIY draadlose RC -motor: 7 stappe
Hoe om 'n afstandsbedieningsmotor op 'n maklike manier tuis te maak - DIY draadlose RC -motor: Hallo vriende in hierdie instruksionele, ek sal jou wys hoe om 'n afstandsbediende rc -motor op 'n maklike manier te maak, lees verder …… Dit is regtig 'n werklike oulike projek, probeer om een te bou