Indholdsfortegnelse:
- Trin 1: Black Box
- Trin 2: Arduino
- Trin 3: Vedhæftning af Arduino til Blackbox
- Trin 4: Ultralydssensor
- Trin 5: Brødbrætstilslutning af sensor til Arduino
- Trin 6: Motorskærm
- Trin 7: Tilslutning af motorskærm til Arduino
- Trin 8: Tilslutning af de 4 motorer og batterier til Shield
- Trin 9: Programmer robotten
Video: Hindring for at undgå robotbil: 9 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Sådan bygger du en forhindring for at undgå robot
Trin 1: Black Box
det første trin brugte jeg en sort boks som base for min robot.
Trin 2: Arduino
Arduino er hjernen i hele systemet og orkestrerer vores motorer
Trin 3: Vedhæftning af Arduino til Blackbox
Jeg fastgjorde arduinoen til blackboxen ved hjælp af varm lim
Trin 4: Ultralydssensor
For at lave en robot, der kan bevæge sig selv, har vi brug for en slags input, en sensor, der passer til vores mål. En ultralydssensor er et instrument, der måler afstanden til et objekt ved hjælp af ultralyds lydbølger. En ultralydssensor bruger en transducer til at sende og modtage ultralydspulser, der videresender oplysninger om et objekts nærhed
Trin 5: Brødbrætstilslutning af sensor til Arduino
Jeg brugte ledninger til at male forbindelsen mellem brødbrættet og arduino.
Vær opmærksom på, at din ping -sensor kan have et andet pin -layout, men den skal have en spændingsstift, jordstift, trig -pin og en ekko -pin.
Trin 6: Motorskærm
Arduino -tavler kan ikke selv styre jævnstrømsmotorer, fordi de strømme, de genererer, er for lave. For at løse dette problem bruger vi motorskærme. Motorskærmen har 2 kanaler, som gør det muligt at styre to DC -motorer eller 1 trinmotor. … Ved at adressere disse stifter kan du vælge en motorkanal, der skal startes, specificere motorretningen (polaritet), indstille motorhastighed (PWM), standse og starte motoren og overvåge den aktuelle absorption af hver kanal
Trin 7: Tilslutning af motorskærm til Arduino
Du skal blot fastgøre motorafskærmningen til arduinoen med sensortrådene krøllet ind
Trin 8: Tilslutning af de 4 motorer og batterier til Shield
Hvert motorskærm har (mindst) to kanaler, en til motorerne og en til en strømkilde, tilslut dem i forhold til hinanden
Trin 9: Programmer robotten
køre denne kode
#include #include
NewPing -ekkolod (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor motor1 (1, MOTOR12_1KHZ); AF_DCMotor motor2 (2, MOTOR12_1KHZ); AF_DCMotor motor3 (3, MOTOR34_1KHZ); AF_DCMotor motor4 (4, MOTOR34_1KHZ); Servo myservo;
#define TRIG_PIN A2 #define ECHO_PIN A3 #define MAX_DISTANCE 150 #define MAX_SPEED 100 #define MAX_SPEED_OFFSET 10
boolsk goesForward = false; int afstand = 80; int speedSet = 0;
ugyldig opsætning () {
myservo.attach (10); myservo.write (115); forsinkelse (2000); distance = readPing (); forsinkelse (100); distance = readPing (); forsinkelse (100); distance = readPing (); forsinkelse (100); distance = readPing (); forsinkelse (100); }
void loop () {int distanceR = 0; int distanceL = 0; forsinkelse (40); hvis (afstand <= 15) {moveStop (); forsinkelse (50); moveBackward (); forsinkelse (150); moveStop (); forsinkelse (100); distanceR = lookRight (); forsinkelse (100); distanceL = lookLeft (); forsinkelse (100);
hvis (distanceR> = distanceL) {turnRight (); moveStop (); } ellers {turnLeft (); moveStop (); }} else {moveForward (); } distance = readPing (); }
int lookRight () {myservo.write (50); forsinkelse (250); int distance = readPing (); forsinkelse (50); myservo.write (100); returafstand; }
int lookLeft () {myservo.write (120); forsinkelse (300); int distance = readPing (); forsinkelse (100); myservo.write (115); returafstand; forsinkelse (100); }
int readPing () {forsinkelse (70); int cm = sonar.ping_cm (); hvis (cm == 0) {cm = 200; } cm tilbage; }
void moveStop () {motor1.run (RELEASE); motor2.run (RELEASE); motor3.run (RELEASE); motor4.run (RELEASE); } void moveForward () {
hvis (! goesForward) {goesForward = true; motor1.run (FREM); motor2.run (FREM); motor3.run (FREM); motor4.run (FREM); for (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); forsinkelse (5); }}}
void moveBackward () {goesForward = false; motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.run (BACKWARD); motor4.run (BACKWARD); for (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); forsinkelse (5); } void turnLeft () {motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.run (FREM); motor4.run (FREM); forsinkelse (500); motor1.run (FREM); motor2.run (FREM); motor3.run (FREM); motor4.run (FREM); }
void turnLeft () {motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.run (FREM); motor4.run (FREM); forsinkelse (500); motor1.run (FREM); motor2.run (FREM); motor3.run (FREM); motor4.run (FREM); }
Anbefalede:
Hindring for at undgå LEGO Robot: 8 trin (med billeder)
Hindring for at undgå LEGO Robot: Vi elsker LEGO, og vi elsker også Crazy Circuits, så vi ville kombinere de to til en enkel og sjov robot, der kan undgå at løbe ind i vægge og andre genstande. Vi viser dig, hvordan vi byggede vores, og skitserer det nødvendige, så du kan bygge dit eget
Hindring for at undgå robot ved hjælp af Arduino Nano: 5 trin
Hindring for at undgå robot ved hjælp af Arduino Nano: I denne instruktive vil jeg beskrive, hvordan du kan gøre en forhindring ved at undgå robot ved hjælp af Arduino
Hindring for at undgå padlebåd med Arudino: 9 trin
Hindring for at undgå padlebåd med Arudino: Hej venner, i denne vejledning vil jeg vise dig, hvordan du laver en forhindring for at undgå padlebåd. Jeg kom på denne idé, mens jeg slappede af nær min fiskedam og tænkte på en idé til en plastikudfordring. Jeg indså, at plastikken her vil være meget
Hindring for at undgå robot med IR -sensorer uden mikrokontroller: 6 trin
Hindring for at undgå robot med IR -sensorer uden mikrokontroller: Nå, dette projekt er et ældre projekt, jeg lavede det i 2014 i juli eller august måned, tænkte på at dele det med jer. Det er en simpel hindring for at undgå robot, der bruger IR -sensorer og fungerer uden mikrokontroller. IR -sensorerne bruger opamp IC i
Hindring for at undgå robot (Arduino): 8 trin (med billeder)
Hindring for at undgå robot (Arduino): Her skal jeg instruere dig i at lave en forhindringsundvigelsesrobot baseret på Arduino. Jeg håber at gøre trin for trin vejledning i at lave denne robot på en meget nem måde. En hindring for at undgå robot er en fuldt autonom robot, der kan undgå enhver