
Índice:
- Etapa 1: Caixa Preta
- Etapa 2: Arduino
- Etapa 3: anexando o Arduino ao Blackbox
- Etapa 4: sensor ultrassônico
- Etapa 5: Conexão da placa de ensaio do sensor ao Arduino
- Etapa 6: blindagem do motor
- Etapa 7: Conectando a blindagem do motor ao Arduino
- Etapa 8: Conectando os 4 motores e baterias para blindar
- Etapa 9: programe o robô
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03


Como construir um robô para evitar obstáculos
Etapa 1: Caixa Preta

a primeira etapa usei uma caixa preta como base para meu robô.
Etapa 2: Arduino

O Arduino é o cérebro de todo o sistema e orquestra nossos motores
Etapa 3: anexando o Arduino ao Blackbox

Anexei o arduino à caixa preta usando cola quente
Etapa 4: sensor ultrassônico

Para fazer um robô que se mova sozinho, precisamos de algum tipo de entrada, um sensor que se ajuste ao nosso objetivo. Um sensor ultrassônico é um instrumento que mede a distância até um objeto usando ondas sonoras ultrassônicas. Um sensor ultrassônico usa um transdutor para enviar e receber pulsos ultrassônicos que retransmitem informações sobre a proximidade de um objeto
Etapa 5: Conexão da placa de ensaio do sensor ao Arduino


Usei fios para fazer a conexão entre a placa de ensaio e o arduino.
Preste atenção que seu sensor de ping pode ter um layout de pino diferente, mas deve ter um pino de tensão, pino de aterramento, pino de trigonometria e um pino de eco.
Etapa 6: blindagem do motor

As placas Arduino não podem controlar os motores CC por conta própria, porque as correntes que geram são muito baixas. Para resolver esse problema, usamos blindagem do motor. A blindagem do motor tem 2 canais, o que permite o controle de dois motores CC, ou 1 motor de passo. … Ao endereçar esses pinos, você pode selecionar um canal do motor para iniciar, especificar a direção do motor (polaridade), definir a velocidade do motor (PWM), parar e iniciar o motor e monitorar a absorção de corrente de cada canal
Etapa 7: Conectando a blindagem do motor ao Arduino

Basta conectar a blindagem do motor ao arduino com os fios do sensor triturados
Etapa 8: Conectando os 4 motores e baterias para blindar

Cada blindagem do motor tem (pelo menos) dois canais, um para os motores e um para uma fonte de alimentação, conecte-os um em relação ao outro
Etapa 9: programe o robô
execute este código
#include #include
Sonar NewPing (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
boolean goesForward = false; distância interna = 80; int speedSet = 0;
void setup () {
myservo.attach (10); myservo.write (115); atraso (2000); distância = leitura (); atraso (100); distância = leitura (); atraso (100); distância = leitura (); atraso (100); distância = leitura (); atraso (100); }
loop vazio () {distância interna R = 0; distância interna L = 0; atraso (40); if (distância <= 15) {moveStop (); atraso (50); mover para trás(); atraso (150); moveStop (); atraso (100); distanceR = lookRight (); atraso (100); distanceL = lookLeft (); atraso (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } distância = leitura (); }
int lookRight () {myservo.write (50); atraso (250); distância interna = leitura (); atraso (50); myservo.write (100); distância de retorno; }
int lookLeft () {myservo.write (120); atraso (300); distância interna = leitura (); atraso (100); myservo.write (115); distância de retorno; atraso (100); }
leitura interna () {atraso (70); int cm = sonar.ping_cm (); se (cm == 0) {cm = 200; } return cm; }
void moveStop () {motor1.run (RELEASE); motor2.run (RELEASE); motor3.run (RELEASE); motor4.run (RELEASE); } void moveForward () {
if (! vai para a frente) {vai para a frente = verdadeiro; motor1.run (FORWARD); motor2.run (FORWARD); motor3.run (FORWARD); motor4.run (FORWARD); para (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); atraso (5); }}}
void moveBackward () {goesForward = false; motor1.run (PARA TRÁS); motor2.run (PARA TRÁS); motor3.run (PARA TRÁS); motor4.run (PARA TRÁS); para (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); atraso (5); } void turnLeft () {motor1.run (BACKWARD); motor2.run (PARA TRÁS); motor3.run (FORWARD); motor4.run (FORWARD); atraso (500); motor1.run (FORWARD); motor2.run (FORWARD); motor3.run (FORWARD); motor4.run (FORWARD); }
void turnLeft () {motor1.run (BACKWARD); motor2.run (PARA TRÁS); motor3.run (FORWARD); motor4.run (FORWARD); atraso (500); motor1.run (FORWARD); motor2.run (FORWARD); motor3.run (FORWARD); motor4.run (FORWARD); }
Recomendado:
Obstáculo para evitar o robô LEGO: 8 etapas (com fotos)

Obstáculo para evitar o LEGO Robot: Nós amamos o LEGO e também amamos os Crazy Circuits, então queríamos combinar os dois em um robô simples e divertido que pode evitar bater em paredes e outros objetos. Mostraremos como construímos o nosso e descreveremos os fundamentos necessários para que você possa construir o seu próprio
Obstáculo para evitar o robô usando Arduino Nano: 5 etapas

Obstáculo evitando robô usando Arduino Nano: neste instrutível, vou descrever como você pode fazer um obstáculo evitando robô usando Arduino
Obstáculo para evitar o barco a remo com Arudino: 9 etapas

Obstáculo para evitar o barco a remo com Arudino: Olá amigos, neste tutorial vou mostrar a vocês como fazer um obstáculo para evitar o barco a remo. Tive essa ideia enquanto estava relaxando perto do meu viveiro de peixes e pensando em uma ideia para um desafio de plástico. Percebi que o plástico aqui vai ficar muito
DIY Arduino Obstáculo para evitar o carro em casa: 5 etapas

DIY Arduino Obstáculo Evitando carro em casa: Neste artigo, vou mostrar como fazer um Arduino Obstáculo Evitando carro em casa
Obstáculo do Arduino para evitar o carro movido a motor: 7 etapas

Obstáculo do Arduino para evitar o carro movido a motor: Olá! e bem-vindo ao tutorial sobre como construir um carro evitando obstáculos do Arduino. Podemos começar obtendo os materiais necessários para este projeto, e não deixe de nos divertir! MATERIAIS: Fios fêmea para macho Sensor de distância