domingo, 9 de dezembro de 2012

Projeto robó EX4

Ola galerinha!!!
 O robózinho sem nome está ficando bem legal, agora funcionando em uma velocidade de comando rasoavel e com um delay quase imperseptivel.
 Ainda estou usando o código da postagem anterior codigo-16ch-usando-o-switch-case
porem, agora estou alimentando o Arduíno na saída 5vcc de uma das pontes h que uso para mover o veiculo
e braço,
 Vou fazer agora uma PCB para circuito de proteção dar pontes usando fusíveis, para evitar futuros problemas com o conjunto.
 Qualquer duvida ou sugestão, fique a vontade para postar um comentário ou envie um email.

 Ate mais galerinha!!! boa pratica.

segunda-feira, 3 de dezembro de 2012

codigo 16ch usando o switch case


 void setup()
     {
       Serial.begin(9600);
      
       pinMode(2, OUTPUT);
       pinMode(3, OUTPUT);
       pinMode(4, OUTPUT);
       pinMode(5, OUTPUT);
       pinMode(6, OUTPUT);
       pinMode(7, OUTPUT);
       pinMode(8, OUTPUT);
       pinMode(9, OUTPUT);
       pinMode(10,OUTPUT);
       pinMode(11,OUTPUT);
       pinMode(12,OUTPUT);
       pinMode(22,OUTPUT);
       pinMode(23,OUTPUT);
       pinMode(24,OUTPUT);
       pinMode(25,OUTPUT);
       pinMode(26,OUTPUT);
       digitalWrite(2, LOW);
       digitalWrite(3, LOW);
       digitalWrite(4, LOW);
       digitalWrite(5, LOW);
       digitalWrite(6, LOW);
       digitalWrite(7, LOW);
       digitalWrite(8, LOW);
       digitalWrite(9, LOW);
       digitalWrite(10,LOW);
       digitalWrite(11,LOW);
       digitalWrite(12,LOW);
       digitalWrite(22,LOW);
       digitalWrite(23,LOW);
       digitalWrite(24,LOW);
       digitalWrite(25,LOW);
       digitalWrite(26,LOW);
     }

     void loop(){
    
        if (Serial.available()){
      
          char c = Serial.read();
    // apenas uma leitura por cada iteração do loop
    // em seguida faz os testes para ver onde o dado recebido da serial se encaixa

          
          switch(c){   
         
             case 'w':
                digitalWrite(2, HIGH);
                digitalWrite(4, HIGH);
                Serial.println("Frente");
                delay(100);          
                digitalWrite(2, LOW);
                digitalWrite(4, LOW);
                break;

             case 's':
                digitalWrite(3, HIGH);
                digitalWrite(5, HIGH);
                Serial.println("Trás");
                delay(100);          
                digitalWrite(3, LOW);
                digitalWrite(5, LOW);
                break;

             case 'a':
                digitalWrite(2, HIGH);
                digitalWrite(5, HIGH);
                Serial.println("Direita");
                delay(100);          
                digitalWrite(2, LOW);
                digitalWrite(5, LOW);
                break;

             case 'd':
                digitalWrite(3, HIGH);
                digitalWrite(4, HIGH);
                Serial.println("Esquerda");
                delay(100);          
                digitalWrite(3, LOW);
                digitalWrite(4, LOW);
                break;

             case 'q':
                digitalWrite(6, HIGH);
                Serial.println("gir.e");
                delay(100);          
                digitalWrite(6, LOW);
                break;

             case 'e':
                digitalWrite(7, HIGH);
                Serial.println("gir.d");
                delay(100);          
                digitalWrite(7, LOW);
                break;

             case 'r':
                digitalWrite(8,HIGH);
                Serial.println("bras.s");
                delay(100);          
                digitalWrite(8,LOW);
                break;

             case 'f':
                digitalWrite(9,HIGH);
                Serial.println("bras.d");
                delay(100);          
                digitalWrite(9,LOW);
                break;           

             case 't':
                digitalWrite(10,HIGH);
                Serial.println("a.bras.s");
                delay(100);          
                digitalWrite(10,LOW);
                break;

             case 'g':
                digitalWrite(11,HIGH);
                Serial.println("a.bras.d");
                delay(100);          
                digitalWrite(11,LOW);
                break;              

             case 'y':
                digitalWrite(12,HIGH);
                Serial.println("pul.s");
                delay(100);          
                digitalWrite(12,LOW);
                break;

             case 'h':
                digitalWrite(22,HIGH);
                Serial.println("pul.d");
                delay(100);          
                digitalWrite(22,LOW);
                break;

             case 'i':
                digitalWrite(23,HIGH);
                Serial.println("gpul.h");
                delay(100);
                digitalWrite(23,LOW);
                break;

             case 'u':
                digitalWrite(24,HIGH);
                Serial.println("gpul.a");
                delay(100);
                digitalWrite(24,LOW);
                break;

             case 'j':
                digitalWrite(25,HIGH);
                Serial.println("pin.a");
                delay(100);
                digitalWrite(25,LOW);
                break;

             case 'k':
                digitalWrite(26,HIGH);
                Serial.println("pin.f");
                delay(100);
                digitalWrite(26,LOW);
                break;
             }

          }
    }

domingo, 2 de dezembro de 2012

Montagem das pontes H's

 Assim ficou a disposição das placas de ponte H
na traseira do robô.
 Optei por coloca-las ali porque elas geram uma
temperatura muito alta, e Asim poderiam dissipar o
calor com mais facilidade sem prejudicar o
funcionamento do resto do conjunto, sem contar
que eu estou meio sem espaço no interior
do chasi porque a bateria já toma boa parte dele.
Mas assim vou brincando por aqui, e se tiverem
alguma dica, postem ai um comentário.

codigo para 16 comandos

void setup()
 {
  Serial.begin(9600);
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10,OUTPUT);
  pinMode(11,OUTPUT);
  pinMode(12,OUTPUT);
  pinMode(22,OUTPUT);
  pinMode(23,OUTPUT);
  pinMode(24,OUTPUT);
  pinMode(25,OUTPUT);
  pinMode(26,OUTPUT);
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10,LOW);
  digitalWrite(11,LOW);
  digitalWrite(12,LOW);
  digitalWrite(22,LOW);
  digitalWrite(23,LOW);
  digitalWrite(24,LOW);
  digitalWrite(25,LOW);
  digitalWrite(26,LOW);
  }

 void loop()
{
 if (Serial.available())
     {
      int c = Serial.read();
      if (c == 'w')
        {
          digitalWrite(2, HIGH);
          digitalWrite(4, HIGH);
          Serial.println("Frente");
          delay(100);           
          digitalWrite(2, LOW);
          digitalWrite(4, LOW);
         }
      }
      {
        int c = Serial.read();
        if (c == 's')
          {
          digitalWrite(3, HIGH);
          digitalWrite(5, HIGH);
          Serial.println("Trás");
          delay(100);           
          digitalWrite(3, LOW);
          digitalWrite(5, LOW);
                          
          }
        }
      {
        int c = Serial.read();
        if (c == 'a')
        {
          digitalWrite(2, HIGH);
          digitalWrite(5, HIGH);
          Serial.println("Direita");
          delay(100);           
          digitalWrite(2, LOW);
          digitalWrite(5, LOW);
                          
        }
      }
        {
        int c = Serial.read();
        if (c == 'd')
             {
               digitalWrite(3, HIGH);
               digitalWrite(4, HIGH);
               Serial.println("Esquerda");
               delay(100);           
               digitalWrite(3, LOW);
               digitalWrite(4, LOW);
                          
             }
        }
        {
        int c = Serial.read();
        if (c == 'Q')
             {
               digitalWrite(6, HIGH);
               Serial.println("gir.e");
               delay(100);           
               digitalWrite(6, LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'e')
             {
               digitalWrite(7, HIGH);
               Serial.println("gir.d");
               delay(100);           
               digitalWrite(7, LOW);
              }
        }
        {
        int c = Serial.read();
        if (c == 'r')
             {
               digitalWrite(8,HIGH);
               Serial.println("bras.s");
               delay(100);           
               digitalWrite(8,LOW);
              }
        }
        {
        int c = Serial.read();
        if (c == 'f')
             {
               digitalWrite(9,HIGH);
               Serial.println("bras.d");
               delay(100);           
               digitalWrite(9,LOW);
               }
        }
        {
        int c = Serial.read();
        if (c == 't')
             {
               digitalWrite(10,HIGH);
               Serial.println("a.bras.s");
               delay(100);           
               digitalWrite(10,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'g')
             {
               digitalWrite(11,HIGH);
               Serial.println("a.bras.d");
               delay(100);           
               digitalWrite(11,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'y')
             {
               digitalWrite(12,HIGH);
               Serial.println("pul.s");
               delay(100);           
               digitalWrite(12,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'h')
             {
               digitalWrite(22,HIGH);
               Serial.println("pul.d");
               delay(100);           
               digitalWrite(22,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'i')
             {
               digitalWrite(23,HIGH);
               Serial.println("gpul.h");
               delay(100);
               digitalWrite(23,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'u')
             {
               digitalWrite(24,HIGH);
               Serial.println("gpul.a");
               delay(100);
               digitalWrite(24,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'j')
             {
               digitalWrite(25,HIGH);
               Serial.println("pin.a");
               delay(100);
               digitalWrite(25,LOW);
             }
        }
        {
        int c = Serial.read();
        if (c == 'k')
             {
               digitalWrite(26,HIGH);
               Serial.println("pin.f");
               delay(100);
               digitalWrite(26,LOW);
             }
        }
}

Duvida cruel

ligação de pontes ao arduino + bluetooth
Fala ai galerinha!!!

consegui dar um tapa na parte física do robô,
montando as ponte h's ao mesmo e interligando
todos os motores.
 Porem dei de cara com um problema que não
sei o que é:
*Se dou um comando, a ponte h da sinal de que
funciona, mas os motores não giram.
*Porem se deixar as saídas que ligam
uma das pontes e desconectar as outras, funciona
perfeitamente.  

O que sera isso? é nas ligações? é o programa?

Fica a duvida!!!

Vou posta o código para ver se alguem pode ajudar

Desde já agradeço a colaboração de todos!!!
http://roboticalternativa.blogspot.com.br/2012/12/codigo-16ch-usando-o-switch-case.html

domingo, 28 de outubro de 2012

upgrade no projeto 04



Agora o projeto 04 tem um braço manipulador para ser mais útil, ainda não fis a garra,
Mas em breve a terminarei.

Ah, o projeto ainda é controlado via rf, mas já estou com o meu Arduino mega e
Vou começar a utiliza – lo para experiências.

Ate breve!!!

sábado, 6 de outubro de 2012

Finalidade do blog


E ai galera!!!
Esse Blog foi criado com intuito de facilitar o acesso para todos os interessados em robótica e assuntos similares, visando o aprendizado e compartilhamento de experiência diversas com elétrica, eletrônica e mecânica.
 

Espero que possa ser útil em projetos simples e talvez um pouco mais complexos.

 

Há: eu também preciso de muita ajuda, e se vocês tiverem algumas idéias para nosso site sinta-se a vontade em posta-las

 

Desde já agradeço a sua visita.