Robo controlado atráves de rede wireless

E aí pessoal!

Entrei em férias da faculdade, hoje (até que enfim…) conclui todas as 7 matérias com êxito e agora estou livre de aulas por pelo menos umas duas semanas! E para comemorar as férias resolvi fazer esse tutorial para mostrar o meu mais novo projeto (mini-projeto), um robô controlado por rede wireless. Esse robô utiliza o arduino e um shield xbee para fazer a comunicação com o meu computador.

O funcionamento básico é:

O shield Xbee prove uma comunicação utilizando protocolo ZigBee especificado pela IEEE 802.15.4, esse é um padrão que especifica a camada física e efetua o controle de acesso para redes sem fio pessoais de baixas taxas de transmissão, geralmente WPANs.

O objetivo do tutorial não é mostrar como configurar uma comunicação entre o arduino e o shield xbee pois está é uma tarefa simples e existem vários tutoriais na internet de como fazer isso. Para maiores informações a respeito do assunto acesse a página oficial do arduino que fala sobre isso. LINK AQUI.

Bem o código é muito simples e fácil, veja:

/*
# Autor: Fernando Krein Pinheiro
# Data: 07/07/2012
# Linguagem: C/C++

# ========= IMPORTANTE ===========
# O codigo esta livre para usar,
# citar e compartilhar desde que
# mantida sua fonte e seu autor.
# Obrigado.

----------------------------------

O robo pode ser controlado pelas teclas
w,a,d,s.

       W

       ^
       |
A  <--- ---> D
       |
       v

       S
*/

#include <Servo.h>
#include <SoftwareSerial.h>

Servo motorDireita, motorEsquerda;
SoftwareSerial mySerial(2, 3);
char comando;

void setup()
{
  iniciar_Motor();
  Serial.begin(9600);
  mySerial.begin(9600);
}
void loop()
{
	if (mySerial.available())
        {
             comando = mySerial.read();
             Serial.print(comando);
             if(comando == 'a')
             {
                  rotacao_Esquerda();
             }
             else
             if(comando == 'd')
             {
                  rotacao_Direita();
             }
             else
             if(comando == 'w')
             {
                  rotacao_Frente();
             }
             else
             if(comando == 's')
	     {
                  rotacao_Re();
             }

        }
	else
            rotacao_Parado();
}

void rotacao_Parado()
{
   motorDireita.detach();
   motorEsquerda.detach();
}

void rotacao_Re()
{
   iniciar_Motor();
   motorDireita.write(0);
   motorEsquerda.write(180);
   delay(600);
   rotacao_Parado();
}

void rotacao_Frente()
{
   iniciar_Motor();
   motorDireita.write(180);
   motorEsquerda.write(0);
   delay(600);
   rotacao_Parado();
}

void rotacao_Direita()
{
   iniciar_Motor();
   motorDireita.write(180);
   motorEsquerda.write(180);
   delay(250);
   rotacao_Parado();
}
void rotacao_Esquerda()
{
   iniciar_Motor();
   motorDireita.write(0);
   motorEsquerda.write(0);
   delay(250);
   rotacao_Parado();
}

void iniciar_Motor()
{
   motorDireita.attach(10);
   motorEsquerda.attach(11);
}

Veja agora o resultado final.

Vídeo:

Anúncios
por ferpinheiro Postado em Arduino

4 comentários em “Robo controlado atráves de rede wireless

  1. ola ferpinlheiro ,exelente projerto,eu gostaria de tirar uma duvida do mesmo, quando vç enviar os caracteres ,, vç aperta a tecra ent. ou nao,,,eu comprei um kit xbee este mesmo q vç esta usando,.mais nao conseguir fazer funcionar,guando envio comando os led do receptor q esta no arduino mega pisca mas os servo nao aciona ,pra tirar a duvida ,usei outro projerto da robocore,ai funcionou so q tem q aperta a tecla ENT achei q e mas dificil de controlar o robo.;no seu projerto e mas facil …pelo menos foi oq vir no video,sera q tenho q mudar aposiçao daquela chavinha no receptor…….

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s