Taula de continguts:
- Pas 1: què necessiteu en aquest projecte:
- Pas 2: diagrama del circuit
- Pas 3: Programació d'Arduino UNO
- Pas 4: genial
Vídeo: Com fer un robot Arduino per evitar obstacles a casa: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Hola nois, en aquest instructiu, faràs un robot per evitar obstacles. Aquesta instrucció consisteix a construir un robot amb un sensor d’ultrasons que pugui detectar objectes propers i canviar-ne la direcció per evitar-los. El sensor d'ultrasons es connectarà a un servomotor que escaneja constantment a l'esquerra i la dreta buscant objectes al seu pas.
Per tant, sense més preàmbuls, comencem!
Pas 1: què necessiteu en aquest projecte:
Aquí teniu la llista de peces:
1) Arduino Uno
2) Escut del conductor del motor
3) Conjunt de motor d'engranatges, bastidor i rodes
4) Servomotor
5) Sensor d'ultrasons
6) Bateria de ions de Li (2x)
7) Suport de la bateria
8) Filferro de pont masculí i femení
9) Soldador
10) Carregador
Pas 2: diagrama del circuit
Treball:
Abans d’anar a treballar en el projecte, és important entendre com funciona el sensor d’ultrasons. El principi bàsic del funcionament del sensor d'ultrasons és el següent:
Mitjançant un senyal d’activació extern, el pin Trig del sensor d’ultrasons augmenta la lògica durant almenys 10 µs. S’envia una ràfega sonora des del mòdul transmissor. Consta de 8 impulsos de 40 KHz.
Els senyals tornen després de tocar una superfície i el receptor detecta aquest senyal. El pin Echo és alt des del moment d’enviar el senyal i rebre’l. Aquest temps es pot convertir a distància mitjançant els càlculs adequats.
L’objectiu d’aquest projecte és implementar un robot que eviti obstacles amb sensor ultrasònic i Arduino. Totes les connexions es realitzen segons el diagrama del circuit. A continuació s’explica el funcionament del projecte.
Quan el robot s’encén, els motors del robot funcionaran amb normalitat i el robot avança. Durant aquest temps, el sensor d'ultrasons calcula contínuament la distància entre el robot i la superfície reflectant.
Aquesta informació és processada per Arduino. Si la distància entre el robot i l'obstacle és inferior a 15 cm, el robot s'atura i escaneja en direccions esquerra i dreta cap a la nova distància mitjançant el servomotor i el sensor d'ultrasons. Si la distància cap al costat esquerre és superior a la del costat dret, el robot es prepararà per fer un gir a l’esquerra. Però primer, fa una còpia de seguretat una mica i després activa el motor de la roda esquerra en sentit invers.
De la mateixa manera, si la distància correcta és superior a la distància esquerra, el robot prepara la rotació dreta. Aquest procés continua per sempre i el robot continua movent-se sense xocar amb cap obstacle.
Pas 3: Programació d'Arduino UNO
#incloure
#incloure
#incloure
# definiu TRIG_PIN A1
# defineix ECHO_PIN A0
# defineix MAX_DISTANCE 200
# define MAX_SPEED 255 // estableix la velocitat dels motors de corrent continu
# define MAX_SPEED_OFFSET 20
Newar sonar NewPing (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor motor3 (3, MOTOR34_1KHZ);
AF_DCMotor motor4 (4, MOTOR34_1KHZ); Servo miservo;
booleà va endavant = fals;
int distància = 100; int speedSet = 0;
configuració nul·la () {
myservo.attach (10);
myservo.write (115); endarreriment (2000); distància = readPing (); retard (100); distància = readPing (); retard (100); distància = readPing (); retard (100); distància = readPing (); retard (100); }
bucle buit () {
int distància R = 0; int distànciaL = 0; retard (40);
if (distància <= 15) {moveStop (); retard (100); moveBackward (); retard (300); moveStop (); retard (200); distànciaR = lookRight (); retard (200); distànciaL = lookLeft (); retard (200);
if (distànciaR> = distànciaL) {
giri a la dreta(); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } distància = readPing (); }
int lookRight () {
myservo.write (50); retard (500); int distance = readPing (); retard (100); myservo.write (115); distància de retorn; }
int lookLeft () {
myservo.write (170); retard (500); int distance = readPing (); retard (100); myservo.write (115); distància de retorn; retard (100); }
int readPing () {
retard (70); int cm = sonar.ping_cm (); if (cm == 0) {cm = 250; } retorn cm; }
void moveStop () {
motor3.run (LLANÇAMENT);
motor4.run (LLANÇAMENT); }
void moveForward () {
si (! va endavant) {
va endavant = cert;
motor3.run (FORWARD);
motor4.run (AVANT); per a (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) // augmentar lentament la velocitat per evitar carregar les bateries massa ràpidament {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); retard (5); }}}
void moveBackward () {
va endavant = fals;
motor3.run (BACKWARD);
motor4.run (BACKWARD); for (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) // augmentar lentament la velocitat per evitar carregar les bateries massa ràpidament {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); retard (5); }}
void turnRight () {
motor3.run (FORWARD);
motor4.run (BACKWARD); retard (500);
motor3.run (FORWARD);
motor4.run (AVANT); }
void turnLeft () {
motor3.run (BACKWARD);
motor4.run (AVANT); retard (500);
motor3.run (FORWARD);
motor4.run (AVANT); }
1) Descarregueu i instal·leu l'IDE d'escriptori Arduino
- windows:
- Mac OS X:
- Linux:
2) Descarregueu i enganxeu el fitxer de biblioteca NewPing (biblioteca de funcions de sensor d'ultrasons) a la carpeta de biblioteques Arduino.
- Baixeu-vos el NewPing.rar a continuació
- Extraieu-lo al camí d'accés: biblioteques C: / Arduino
3) Pengeu el codi a la placa Arduino mitjançant un cable USB
Codi de descàrrega:
Pas 4: genial
Ara el robot està preparat per evitar qualsevol obstacle …
Estaré encantat de respondre a qualsevol pregunta que tingueu
Envieu-me un correu electrònic: [email protected]
Lloc web:
Subscriu-me al meu canal de YouTube:
Instagram:
Facebook:
Gràcies:)
Recomanat:
Robot per evitar obstacles amb Arduino Nano: 5 passos
Robot per evitar obstacles mitjançant Arduino Nano: en aquest instructiu, vaig a descriure com es pot fer un robot per evitar obstacles mitjançant Arduino
Com fer un robot per evitar obstacles: 6 passos
Com fer un robot per evitar obstacles: el robot per evitar obstacles és un robot senzill que funciona amb un arduino i que fa que només vagi i eviti obstacles. En altres paraules, detecta els obstacles amb un sensor d’ultrasons HC-SR04 si el robot detecta objectes propers a
OAREE - Imprès en 3D - Robot per evitar obstacles per a l'educació en enginyeria (OAREE) amb Arduino: 5 passos (amb imatges)
OAREE - Imprès en 3D - Robot per evitar obstacles per a educació en enginyeria (OAREE) amb Arduino: Disseny de OAREE (robot per evitar obstacles per a educació en enginyeria): l’objectiu d’aquest instructiu era dissenyar un robot OAR (robot per evitar obstacles) que fos senzill / compacte, Imprimible en 3D, fàcil de muntar, utilitza servos de rotació contínua per a movem
Com fer un robot per evitar obstacles amb Arduino: 5 passos
Com fer un robot per evitar obstacles amb Arduino: en aquest instructiu, us ensenyaré a fer un robot per evitar obstacles que funcioni amb Arduino. Heu de conèixer Arduino. Arduino és una placa de control que utilitza el microcontrolador atmega. Podeu utilitzar qualsevol versió d'Arduino, però he
COM MUNTAR UN BRAÇ IMPRESSIONANT DEL ROBOT DE FUSTA (PART2: ROBOT PER EVITAR OBSTACLES) - BASAT AL MICRO: BIT: 3 passos
COM MUNTAR UN BRAÇ IMPRESSIONANT DEL ROBOT DE FUSTA (PART2: ROBOT PER EVITAR OBSTACLES) - BASAT AL MICRO: BIT: Anteriorment vam introduir Armbit en mode de seguiment de línia. A continuació, presentem com instal·lar Armbit evitant el mode d'obstacles