» Eletrônicos » Arduino »Robô no Arduino!

Robô no Arduino!


Bom dia a todos! Este artigo será dedicado aos amantes da eletrônica, robótica, bem como às pessoas com uma visão não-padrão das coisas ao redor!

Então agora vou tentar descrever o processo de criação, montagem o mais claramente possível o robô com e recheio, ou seja, no Arduino! Vamos lá!

Do que precisamos:
Laço de três fios (3 peças). É aconselhável levar mais autêntico.

Fios comuns

Potenciômetros

Resistores (220 ohm)

Botão

Compartimento da bateria

Breadboard

Bem, é claro, eu mesmo arduinka

E também uma placa de expansão - algo como MultiservoShieldpara controlar um grande número de servos

E mais construtor, que será a base do nosso robô, por isso é aconselhável escolher "forte"

Das ferramentas que você precisará:
Um conjunto de chaves de fenda, chaves, etc.

Além de ferro de solda, solda e fluxo


Bem, vamos começar!
Etapa 1. Fabricação da estrutura principal
Para começar, colete as "duas letras H". É assim:

Então, alguma construção na qual nossos o robô vai ficar. Não é de todo necessário, como na imagem - a seu critério. Ficou assim:

Instalamos o nosso "N" no suporte

Abaixo apertamos os parafusos

No outro "H", consertamos o primeiro servo, responsável por virar a cabeça do nosso futuro robô






Acontece algo como o seguinte:

Quase o quadro está pronto! Resta prender essas duas estruturas com placas de metal e dar altura ao robô!





Etapa 2: Criando uma moldura para os futuros ouvidos de robôs
Para fazer isso, precisamos montar duas estruturas semelhantes e fixar os servos nelas, conforme mostrado na figura:



Em seguida, usando parafusos e porcas, conecte-se à estrutura principal. O resultado será o seguinte:




Vista superior:


Bem, um certo protótipo do robô está quase pronto! Vá em frente ..
Etapa 3. Fazendo os olhos e toda a cabeça do nosso robô!
Para isso, usei o telefone antigo do interfone. Pessoalmente, ela me lembra um rosto! Veja mais ..

Fazemos dois furos e prendemos o agitador do servo ao tubo


Colamos imediatamente os LEDs nas laterais e soldamos os fios a eles


Eu usei finas:

Foi o que aconteceu!

Etapa # 4: Orelhas
Vamos usar bonés comuns de caixas pequenas
Prenda também as cadeiras de balanço para servir




Agora, fixamos com ousadia as partes do corpo do robô nos servidores
Assim:


Vista superior:



Voltar:


Em princípio, você pode aproveitar o robô agora, mas complicaremos a tarefa. Viraremos os olhos e os ouvidos do robô usando potenciômetros e nosso arduinka
Etapa # 5 Eletrônica
Combinando o arduino com a proteção multisserviço, inserimos um laço de três fios de cada servo nos pinos 9, 10, 11 (orelha esquerda, orelha direita, cent, se você colocar o robô de frente para nós)
Em seguida, na tábua de pão instalamos um potenciômetro, um botão, resistores ... Ficará assim, é feio, é claro, mas o principal funciona)







Mais detalhes!
Como instalar o botão:


Onde o fio branco está ligado, vermelho é a entrada digital do microcontrolador nº 6 e o ​​resistor é aterrado (fio amarelo)

Como instalar um potenciômetro:


Fio vermelho - energia, amarelo - terra, branco - entrada analógica do microcontrolador no. 0 (conectamos outro potenciômetro da mesma maneira, apenas entrada analógica do controlador no. 1)

Também instalamos resistores para LEDs na placa:

a corrente será fornecida a partir de 3 e 5 pinos do arduino e passará pelos fios amarelo e preto e os resistores vão para o chão (controlador GND)

Bem, basicamente tudo, acabamos com a eletrônica! Resta apenas fazer o download da próxima esboço e brinque com o robô !!

#include
#include
Multiservo myservo1;
Multiservo myservo2;
Multiservo myservo3;
int b, k1, p1, p2;
int A = 0;
int i = 0;
m2 não assinado longo = 0;
m1 longo sem sinal = 0;
int r1 = 70;
int R2 = 110;
int r3 = 70;
 int h1 = 0;
 int h = 0;
configuração nula ()
{
  myservo1.attach (9); // orelha esquerda
  myservo2.attach (10); // orelha direita
  myservo3.attach (11); // olhos
      pinMode (6, INPUT); // botão
      pinMode (3, SAÍDA); // luzes nos olhos PWM
      pinMode (5, SAÍDA);
}
 loop vazio ()
{
   
    while (A == 0) // loop de controle manual do robô
    {
        b = leitura digital (6);
        se (! b) k1 = 1;
        if (b == 1 && k1 == 1)
        {
              atraso (10);
              b = leitura digital (6);
              if (b == 1 && k1 == 1)
                {
                 A é 1;
                 k1 = 0;
                }
        }
      p1 = int (leitura analógica (A0) / 6);
      p2 = int (leitura analógica (A1) / 6);
      myservo1.write (p1);
      myservo2.write (p1);
      myservo3.write (p2);
      analogWrite (3, i);
      analogWrite (5, i);
      if (millis ()> = m1 + 70 && h1 == 0)
      {
        i = i + 4;
        m1 = milis ();
        se (i> 250) h1 = 1;
      }
     
        if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = milis ();
        se (i == 0) h1 = 0;
      }
    }
  while (A == 1) // ciclo de trabalho autônomo do robô
   {
       digitalWrite (13.0);
       b = leitura digital (6);
        se (! b) k1 = 1;
        if (b == 1 && k1 == 1)
        {
            atraso (10);
            b = leitura digital (6);
            if (b == 1 && k1 == 1)
            {
                A é 0;
                k1 = 0;
            }
        }
      analogWrite (3, i);
      analogWrite (5, i);
      if (millis ()> = m1 + 70 && h1 == 0)
      {
        i = i + 4;
        m1 = milis ();
        se (i> 250) h1 = 1;
      }
      if (millis ()> = m1 + 70 && h1 == 1)
      {
        i = i-4;
        m1 = milis ();
        se (i == 0) h1 = 0;
      }
   if (millis ()> = m2 + 15 && h == 0)
   {
    myservo1.write (r1);
    myservo2.write (r2);
    myservo3.write (r3);
    r1 = r1 + 1;
    R2 = R2-1;
    r3 = r3 + 1;
    if (r1 == 110) h = 1;
    m2 = milis ();
   }
   if (millis ()> = m2 + 15 && h == 1)
   {
    myservo1.write (r1); // 110
    myservo2.write (r2); // 70
    myservo3.write (r3); // 110
    r1 = r1-1;
    r2 = r2 + 1;
    r3 = r3-1;
    se (r1 == 70) h = 0;
    m2 = milis ();
   }
   }
}


O código é bastante grande, mas acredite, vale a pena!
Resumidamente, o que esse programa faz:
Temos um botão que é responsável por 2 estados do sistema: controlamos o robô manualmente ou executamos os movimentos já registrados previamente. Quando um botão é pressionado, os estados mudam para nós e, no código, 2 ciclos mudam entre si, nos quais os comandos correspondentes são registrados. Os olhos do nosso robô iluminam-se gradualmente, tornam-se cada vez mais brilhantes e depois desaparecem. é por isso que apelidamos os LEDs dos pinos que suportam PWM - modulação por largura de pulso.

Fotos do robô:




Pequeno gravação de vídeo, como e o que acaba virando:

Concluindo, quero dizer que, é claro, esse robô pode ser lembrado por um longo tempo, mas esse é o gosto de todas as pessoas. Faça isso! Inventar! Evoluir! Boa sorte a todos!
7
6.7
5.7

Adicionar um comentário

    • sorrirsorrisosxaxaoknão seiyahoonea
      chefearranhartolosimsim simagressivosegredo
      desculpedançardance2dance3perdãoajudabebidas
      pararamigosbomgoodgoodapitodesmaiarlíngua
      fumaçapalmascraydeclararirônicodon-t_mentionbaixar
      calorirritantelaugh1mdareuniãomoskingnegativo
      not_ipipocapunirlerassustarsustospesquisar
      provocarthank_youistoto_clueumnikagudoconcordar
      malbeeeblack_eyeblum3corargabar-setédio
      censuradobrincadeirasecret2ameaçarvitóriayusun_bespectacled
      sacudirrespektlolpreviubem vindoKrutoyya_za
      ya_dobryiajudantene_huliganne_othodifludproibirfechar

Aconselhamos que você leia:

Entregue-o para o smartphone ...