![Hindernis om robotmotors te vermy: 9 stappe Hindernis om robotmotors te vermy: 9 stappe](https://i.howwhatproduce.com/images/010/image-27633-j.webp)
INHOUDSOPGAWE:
- Stap 1: Black Box
- Stap 2: Arduino
- Stap 3: Heg die Arduino aan op Blackbox
- Stap 4: Ultrasoniese sensor
- Stap 5: Breadboard -verbinding van sensor met Arduino
- Stap 6: Motorskerm
- Stap 7: Verbind motorskerm met Arduino
- Stap 8: Koppel die vier motors en batterye aan die skild
- Stap 9: Programmeer die robot
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-23 12:53
![Hindernis om robotmotors te vermy Hindernis om robotmotors te vermy](https://i.howwhatproduce.com/images/010/image-27633-1-j.webp)
![Hindernis om robotmotors te vermy Hindernis om robotmotors te vermy](https://i.howwhatproduce.com/images/010/image-27633-2-j.webp)
Hoe om 'n hindernis te bou om robot te vermy
Stap 1: Black Box
![Swart boks Swart boks](https://i.howwhatproduce.com/images/010/image-27633-3-j.webp)
die eerste stap het ek 'n swart boks as basis vir my robot gebruik.
Stap 2: Arduino
![Arduino Arduino](https://i.howwhatproduce.com/images/010/image-27633-4-j.webp)
Die Arduino is die brein van die hele stelsel en organiseer ons motors
Stap 3: Heg die Arduino aan op Blackbox
![Koppel die Arduino aan Blackbox Koppel die Arduino aan Blackbox](https://i.howwhatproduce.com/images/010/image-27633-5-j.webp)
Ek het die arduino met warm gom aan die blackbox vasgemaak
Stap 4: Ultrasoniese sensor
![Ultrasoniese sensor Ultrasoniese sensor](https://i.howwhatproduce.com/images/010/image-27633-6-j.webp)
Om 'n robot te maak wat op sy eie kan beweeg, benodig ons 'n soort insette, 'n sensor wat by ons doel pas. 'N Ultrasoniese sensor is 'n instrument wat die afstand na 'n voorwerp met behulp van ultrasoniese klankgolwe meet. 'N Ultrasoniese sensor gebruik 'n transducer om ultrasoniese pulse te stuur en te ontvang wat inligting oor die nabyheid van 'n voorwerp teruggee
Stap 5: Breadboard -verbinding van sensor met Arduino
![Broodbordverbinding van sensor met Arduino Broodbordverbinding van sensor met Arduino](https://i.howwhatproduce.com/images/010/image-27633-7-j.webp)
![Broodbordverbinding van sensor met Arduino Broodbordverbinding van sensor met Arduino](https://i.howwhatproduce.com/images/010/image-27633-8-j.webp)
Ek het drade gebruik om die verbinding tussen die broodbord en die arduino te verbind.
Let daarop dat u pingsensor 'n ander penuitleg kan hê, maar 'n spanningspen, grondpen, trigpen en 'n eggo -pen moet hê.
Stap 6: Motorskerm
![Motorskerm Motorskerm](https://i.howwhatproduce.com/images/010/image-27633-9-j.webp)
Arduino -borde kan nie self DC -motors beheer nie, omdat die strome wat hulle genereer te laag is. Om hierdie probleem op te los, gebruik ons motorskerms. stapmotor. … Deur hierdie penne aan te spreek, kan u 'n motorkanaal kies om te begin, die motorrigting (polariteit) spesifiseer, motorsnelheid (PWM) stel, die motor stop en begin en die stroomopname van elke kanaal monitor.
Stap 7: Verbind motorskerm met Arduino
![Verbind motorskerm met Arduino Verbind motorskerm met Arduino](https://i.howwhatproduce.com/images/010/image-27633-10-j.webp)
Bevestig eenvoudig die motorskerm aan die arduino met die sensordrade ingedruk
Stap 8: Koppel die vier motors en batterye aan die skild
![Koppel die 4 motors en batterye aan die skild Koppel die 4 motors en batterye aan die skild](https://i.howwhatproduce.com/images/010/image-27633-11-j.webp)
Elke motorskerm het (ten minste) twee kanale, een vir die motors en een vir 'n kragbron, verbind hulle ten opsigte van mekaar
Stap 9: Programmeer die robot
voer hierdie kode uit
#include #include
NewPing sonar (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;
#definieer TRIG_PIN A2 #definieer ECHO_PIN A3 #definieer MAX_DISTANCE 150 #definieer MAX_SPEED 100 #definieer MAX_SPEED_OFFSET 10
boolean goesForward = false; int afstand = 80; 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 distanceR = 0; int afstand L = 0; vertraging (40); if (afstand <= 15) {moveStop (); vertraging (50); moveBackward (); vertraging (150); moveStop (); vertraging (100); distanceR = lookRight (); vertraging (100); distanceL = lookLeft (); vertraging (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } anders {turnLeft (); moveStop (); }} anders {moveForward (); } afstand = readPing (); }
int lookRight () {myservo.write (50); vertraging (250); int afstand = readPing (); vertraging (50); myservo.write (100); terugkeer afstand; }
int lookLeft () {myservo.write (120); vertraging (300); 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 = 200; } cm terug; }
void moveStop () {motor1.run (RELEASE); motor2.run (RELEASE); motor3.run (RELEASE); motor4.run (RELEASE); } ongeldig moveForward () {
as (! goesForward) {goesForward = true; motor1.run (VOORUIT); motor2.run (VOORUIT); motor3.run (VOORUIT); motor4.run (VOORUIT); vir (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); vertraging (5); }}}
void moveBackward () {goesForward = false; motor1.loop (TERUG); motor2.run (TERUG); motor3.loop (TERUG); motor4.run (TERUG); vir (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); vertraging (5); } void turnLeft () {motor1.run (TERUG); motor2.run (TERUG); motor3.run (VOORUIT); motor4.run (VOORUIT); vertraging (500); motor1.run (VOORUIT); motor2.run (VOORUIT); motor3.run (VOORUIT); motor4.run (VOORUIT); }
leegte draaiLinks () {motor1.run (TERUG); motor2.run (TERUG); motor3.run (VOORUIT); motor4.run (VOORUIT); vertraging (500); motor1.run (VOORUIT); motor2.run (VOORUIT); motor3.run (VOORUIT); motor4.run (VOORUIT); }
Aanbeveel:
Hindernis om LEGO -robot te vermy: 8 stappe (met prente)
![Hindernis om LEGO -robot te vermy: 8 stappe (met prente) Hindernis om LEGO -robot te vermy: 8 stappe (met prente)](https://i.howwhatproduce.com/images/001/image-941-j.webp)
Hindernis Om LEGO -robot te vermy: Ons is mal oor LEGO en ons is ook mal oor Crazy Circuits, so ons wou die twee kombineer tot 'n eenvoudige en prettige robot wat kan voorkom dat u mure en ander voorwerpe raakloop. Ons sal u wys hoe ons ons eie gebou het, en die basiese beginsels uiteensit wat u nodig het, sodat u u eie kan bou
Hindernis om robot te vermy deur Arduino Nano te gebruik: 5 stappe
![Hindernis om robot te vermy deur Arduino Nano te gebruik: 5 stappe Hindernis om robot te vermy deur Arduino Nano te gebruik: 5 stappe](https://i.howwhatproduce.com/images/001/image-1714-j.webp)
Hindernis om robot te vermy deur Arduino Nano te gebruik: in hierdie instruksies gaan ek beskryf hoe u 'n hindernis kan vermy deur robot te vermy deur Arduino te gebruik
Hindernis om padboot met Arudino te vermy: 9 stappe
![Hindernis om padboot met Arudino te vermy: 9 stappe Hindernis om padboot met Arudino te vermy: 9 stappe](https://i.howwhatproduce.com/images/001/image-1397-j.webp)
Hindernis om padboot te vermy met Arudino: Hallo vriende, in hierdie tutoriaal sal ek jou wys hoe om 'n hindernis te vermy. Ek het hierdie idee gekry terwyl ek naby my visdam ontspan en aan 'n idee dink vir 'n plastiese uitdaging. Ek het besef dat die plastiek hier baie sal wees
5 in 1 Arduino -robot - Volg My - Reëlvolg - Sumo - Tekening - Vermy hindernis: 6 stappe
![5 in 1 Arduino -robot - Volg My - Reëlvolg - Sumo - Tekening - Vermy hindernis: 6 stappe 5 in 1 Arduino -robot - Volg My - Reëlvolg - Sumo - Tekening - Vermy hindernis: 6 stappe](https://i.howwhatproduce.com/images/002/image-5669-j.webp)
5 in 1 Arduino -robot | Volg My | Reëlvolg | Sumo | Tekening | Vermyding van hindernis: Hierdie robotbeheerbord bevat 'n ATmega328P -mikrobeheerder en 'n L293D -motorbestuurder. Dit verskil natuurlik nie van 'n Arduino Uno -bord nie, maar dit is nuttiger omdat dit nie 'n ander skild nodig het om die motor aan te dryf nie! Dit is vry van spring
Hindernis om robot te vermy met IR -sensors sonder mikrobeheerder: 6 stappe
![Hindernis om robot te vermy met IR -sensors sonder mikrobeheerder: 6 stappe Hindernis om robot te vermy met IR -sensors sonder mikrobeheerder: 6 stappe](https://i.howwhatproduce.com/images/003/image-8831-j.webp)
Hindernis om robot te vermy met IR -sensors sonder mikrobeheerder: hierdie projek is 'n ouer projek; ek het dit in 2014 in Julie of Augustus gemaak, en ek wou dit met julle deel. Dit is 'n eenvoudige hindernis om 'n robot te vermy wat IR -sensors gebruik en sonder 'n mikrobeheerder werk. Die IR -sensors gebruik opamp IC i