Innehållsförteckning:
- Steg 1: Black Box
- Steg 2: Arduino
- Steg 3: Anslut Arduino till Blackbox
- Steg 4: Ultraljudssensor
- Steg 5: Anslutning av brödbräda till sensor till Arduino
- Steg 6: Motorskydd
- Steg 7: Anslutning av motorskydd till Arduino
- Steg 8: Anslut de fyra motorerna och batterierna till skärmen
- Steg 9: Programmera roboten
![Hinder Undvik Robotbil: 9 steg Hinder Undvik Robotbil: 9 steg](https://i.howwhatproduce.com/images/010/image-27633-j.webp)
Video: Hinder Undvik Robotbil: 9 steg
![Video: Hinder Undvik Robotbil: 9 steg Video: Hinder Undvik Robotbil: 9 steg](https://i.ytimg.com/vi/P1oFOX7vLZc/hqdefault.jpg)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:41
![Hinder Undvik Robotbil Hinder Undvik Robotbil](https://i.howwhatproduce.com/images/010/image-27633-1-j.webp)
![Hinder Undvik Robotbil Hinder Undvik Robotbil](https://i.howwhatproduce.com/images/010/image-27633-2-j.webp)
Hur man bygger ett hinder för att undvika robot
Steg 1: Black Box
![Svart låda Svart låda](https://i.howwhatproduce.com/images/010/image-27633-3-j.webp)
det första steget använde jag en svart låda som bas för min robot.
Steg 2: Arduino
![Arduino Arduino](https://i.howwhatproduce.com/images/010/image-27633-4-j.webp)
Arduino är hjärnan i hela systemet och orkestrerar våra motorer
Steg 3: Anslut Arduino till Blackbox
![Fäster Arduino på Blackbox Fäster Arduino på Blackbox](https://i.howwhatproduce.com/images/010/image-27633-5-j.webp)
Jag fäst arduinoen i blackboxen med varmt lim
Steg 4: Ultraljudssensor
![Ultraljudssensor Ultraljudssensor](https://i.howwhatproduce.com/images/010/image-27633-6-j.webp)
För att skapa en robot som kan röra sig själv behöver vi någon form av ingång, en sensor som passar vårt mål. En ultraljudssensor är ett instrument som mäter avståndet till ett föremål med hjälp av ultraljuds ljudvågor. En ultraljudssensor använder en givare för att skicka och ta emot ultraljudspulser som vidarebefordrar information om ett objekts närhet
Steg 5: Anslutning av brödbräda till sensor till Arduino
![Brödbräda Anslutning av sensor till Arduino Brödbräda Anslutning av sensor till Arduino](https://i.howwhatproduce.com/images/010/image-27633-7-j.webp)
![Brödbräda Anslutning av sensor till Arduino Brödbräda Anslutning av sensor till Arduino](https://i.howwhatproduce.com/images/010/image-27633-8-j.webp)
Jag använde trådar för att hana anslutningen mellan brödbrädan och arduino.
Var uppmärksam på att din pingsensor kan ha en annan stiftlayout, men den bör ha en spänningsstift, jordstift, trigpinne och en ekostift.
Steg 6: Motorskydd
![Motorskydd Motorskydd](https://i.howwhatproduce.com/images/010/image-27633-9-j.webp)
Arduino -kort kan inte styra likströmsmotorer själva eftersom strömmarna de genererar är för låga. För att lösa detta problem använder vi motorskydd. stegmotor. … Genom att adressera dessa stift kan du välja en motorkanal som ska initieras, ange motorriktning (polaritet), ställ in motorvarvtal (PWM), stoppa och starta motorn och övervaka strömabsorptionen för varje kanal
Steg 7: Anslutning av motorskydd till Arduino
![Anslutning av motorskydd till Arduino Anslutning av motorskydd till Arduino](https://i.howwhatproduce.com/images/010/image-27633-10-j.webp)
Fäst helt enkelt motorskyddet på arduino med sensortrådarna inpressade
Steg 8: Anslut de fyra motorerna och batterierna till skärmen
![Anslut de 4 motorerna och batterierna till skärmen Anslut de 4 motorerna och batterierna till skärmen](https://i.howwhatproduce.com/images/010/image-27633-11-j.webp)
Varje motorskydd har (minst) två kanaler, en för motorerna och en för en strömkälla, Anslut dem i förhållande till varandra
Steg 9: Programmera roboten
kör den här koden
#inkludera #inkludera
NewPing -ekolod (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
booleska goesForward = false; int avstånd = 80; int speedSet = 0;
void setup () {
myservo.attach (10); myservo.write (115); fördröjning (2000); avstånd = readPing (); fördröjning (100); avstånd = readPing (); fördröjning (100); avstånd = readPing (); fördröjning (100); avstånd = readPing (); fördröjning (100); }
void loop () {int distanceR = 0; int avstånd L = 0; fördröjning (40); if (avstånd <= 15) {moveStop (); fördröjning (50); flytta bakåt(); fördröjning (150); moveStop (); fördröjning (100); distanceR = lookRight (); fördröjning (100); distanceL = lookLeft (); fördröjning (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } annat {turnLeft (); moveStop (); }} annat {moveForward (); } distans = readPing (); }
int lookRight () {myservo.write (50); fördröjning (250); int avstånd = readPing (); fördröjning (50); myservo.write (100); returavstånd; }
int lookLeft () {myservo.write (120); fördröjning (300); int avstånd = readPing (); fördröjning (100); myservo.write (115); returavstånd; fördröjning (100); }
int readPing () {delay (70); int cm = sonar.ping_cm (); om (cm == 0) {cm = 200; } retur cm; }
void moveStop () {motor1.run (RELEASE); motor2.run (RELEASE); motor3.run (RELEASE); motor4.run (RELEASE); } void moveForward () {
if (! goesForward) {goesForward = true; motor1.körning (FRAMÅT); motor2.run (FRAMÅT); motor3.körning (FRAMÅT); motor4.run (FRAMÅT); för (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); fördröjning (5); }}}
void moveBackward () {goesForward = false; motor1.körning (BACKWARD); motor2.run (BACKWARD); motor3.körning (BACKWARD); motor4.körning (BACKWARD); för (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); fördröjning (5); } void turnLeft () {motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.körning (FRAMÅT); motor4.run (FRAMÅT); fördröjning (500); motor1.körning (FRAMÅT); motor2.run (FRAMÅT); motor3.körning (FRAMÅT); motor4.run (FRAMÅT); }
void turnLeft () {motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.körning (FRAMÅT); motor4.run (FRAMÅT); fördröjning (500); motor1.körning (FRAMÅT); motor2.run (FRAMÅT); motor3.körning (FRAMÅT); motor4.run (FRAMÅT); }
Rekommenderad:
Hinder Undvik LEGO Robot: 8 steg (med bilder)
![Hinder Undvik LEGO Robot: 8 steg (med bilder) Hinder Undvik LEGO Robot: 8 steg (med bilder)](https://i.howwhatproduce.com/images/001/image-941-j.webp)
Hinder Undvik LEGO Robot: Vi älskar LEGO och vi älskar också Crazy Circuits så vi ville kombinera de två till en enkel och rolig robot som kan undvika att springa in i väggar och andra föremål. Vi visar dig hur vi byggde vår och beskriver de grunder som behövs så att du kan bygga din egen.
Hinder Undvik robot med Arduino Nano: 5 steg
![Hinder Undvik robot med Arduino Nano: 5 steg Hinder Undvik robot med Arduino Nano: 5 steg](https://i.howwhatproduce.com/images/001/image-1714-j.webp)
Hinder Undvik Robot Med Arduino Nano: I den här instruktören kommer jag att beskriva hur du kan göra ett hinder för att undvika robot med Arduino
Hinder Undvik paddelbåt med Arudino: 9 steg
![Hinder Undvik paddelbåt med Arudino: 9 steg Hinder Undvik paddelbåt med Arudino: 9 steg](https://i.howwhatproduce.com/images/001/image-1397-j.webp)
Obstacle Avoiding Paddle Boat With Arudino: Hej vänner, i den här självstudien kommer jag att visa dig hur du gör en Obstacle Avoiding Paddle Boat. Jag kom på den här idén medan jag kopplade av nära min fiskdamm och tänkte på en idé för en plastutmaning. Jag insåg att plasten här kommer att vara väldigt
5 i 1 Arduino Robot - Följ mig - Radföljande - Sumo - Ritning - Hinder Undvik: 6 steg
![5 i 1 Arduino Robot - Följ mig - Radföljande - Sumo - Ritning - Hinder Undvik: 6 steg 5 i 1 Arduino Robot - Följ mig - Radföljande - Sumo - Ritning - Hinder Undvik: 6 steg](https://i.howwhatproduce.com/images/002/image-5669-j.webp)
5 i 1 Arduino Robot | Följ mig | Radföljande | Sumo | Ritning | Hindra undvikande: Detta robotstyrkort innehåller en ATmega328P -mikrokontroller och en L293D -motordrivrutin. Naturligtvis skiljer det sig inte från ett Arduino Uno -kort men det är mer användbart eftersom det inte behöver en annan skärm för att driva motorn! Det är fritt från hopp
Hinder Undvik robot med IR -sensorer utan mikrokontroller: 6 steg
![Hinder Undvik robot med IR -sensorer utan mikrokontroller: 6 steg Hinder Undvik robot med IR -sensorer utan mikrokontroller: 6 steg](https://i.howwhatproduce.com/images/003/image-8831-j.webp)
Hinder Undvik robot med IR -sensorer utan mikrokontroller: Det här projektet är ett äldre projekt, jag gjorde det 2014 i juli eller augusti, tänkte dela det med er. Det är ett enkelt hinder för att undvika robot som använder IR -sensorer och fungerar utan mikrokontroller. IR -sensorerna använder opamp IC i