quinta-feira, 23 de junho de 2011

Blink - Piscando LED


      Aqui vai uma breve explicação para programação de piscar um led, esse é um exemplo clássico que todos quando recebem o arduino usa para testa-lo se está funcionando. Mas na programação existe várias maneiras para fazer a mesma coisa, no caso vou explicar a programação básica e uma, um pouquinho mais avançada para quem está começando agora com o arduino, que é a programação por for.

1-Programação Básica:
    Vou fazer a programação toda e depois vou explicar em partes. Lembrando que no próprio arduino tem um led conectado a porta 13.

int led= 13; //Declarei que led é a variável 13
void setup()
{
  pinMode(led, OUTPUT); //Agora utilizei essa variável e disse que ela é a porta 13 do arduino
}
void loop()
{
  digitalWrite(led, HIGH); // Led ficará ligado
  delay(1000);                    //Por 1000 milissegundos
  digitalWrite(led, LOW); //Led irá ficar desligado
  delay(1000);                   //Por 1000 milissegundos
}
     No início da programação quando declarei que led = 13, esse valor serial uma variável, mas no nosso consentimento, na nossa cabeça fica como se fosse já a porta do arduino, mas é uma variável qualquer.
     No void setup(); que é a preparação da programação, ai sim digamos falamos da porta do arduino, declarei que esse valor vai sair dados, vai sair tensão (se fosse INPUT, seria o contrario, entraria dados);
     No void loop(); como o nome já diz, vai servir para repetir a programação infinitamente até que se desligue o arduino. Mas na programação dentro do loop que o led vai ficar acesso por 1000 milissegundos

PS: No delay, que seria o tempo da função que foi ativado, é em milissegundos.

     Voltando, o led vai ficar acesso por 1 segundo e depois vai se desligar por 1 segundo e isso vai ficar assim o tempo todo até que desligue o arduino.

2-Programação em for:
     Nessa programação precisa colocar o led numa porta PWM que está marcado na placa do arduino, a programação vai ficar fica assim:

int led= 10;  //Declarei a variável 10 vai se chamar led, idem ao anterior
void setup()
{
  pinMode(led, OUTPUT); //Agora declarei que aquela porta 10 é a porta digital do arduino
}
void loop()
{
  for(int i = 0; i < 255; i++) //Condição que usei, i começa em zero, se ele for menor que 255 vai somar 1 para i
   {
     analogWrite(led, i); //Led acende de acordo com o valor de i
     delay(250); //Durante 250 milissegundos
   }
}

     Bom, eu mudei a porta e coloquei numa porta PWM, mas lembrando de que, declarei a variável 10 do led, no void setup() que , digamos, eu falei que seria na porta 10 do arduino.
     A grande mudança foi no loop(), que usei a sentaça for, dentro desse sentença como viram tem uma expressão, nessa função vocês tem que falar inicialização, condição e incremento.
     Então, i declarei dentro do for para ser uma variável qualquer, mas essa variável vai está ligado a corrente que vai passar no led. Comecei com a variável em 0 (inicialização); se i for menor que 255 (condição); vão ser somados 1 variável em i (incremento).

     Dessa vez não usei digitalWrite e sim analogWrite, que serve para as portas pwm... Agora vocês se perguntando o que seria essas portas pwm: É uma porta aonde você controla a corrente que passa onde que variável de 0-1023, mas na programação esse valor é divido por 4, logo vai variar de 0-255.


Vídeo:
Houve um erro de português no ultimo video, em vez de programaçãos e sim programações

Bom pessoal, espero que tenham entendido, qualquer coisa deixa como comentário que explicarei
Até mais... 

quarta-feira, 22 de junho de 2011

Conhecendo o arduino

          O arduino é uma plataforma open-source, é um software livre, a programação dele toda e inspirado em C/C++ (não é C/C++ todo). Esse hardware existe há pouco tempo foi feito em 2005 com intenção em projetos escolares de forma a ter um orçamento menor que outros sistemas de prototipagem disponíveis naquela época.
     Podemos fazer qualquer projeto que imaginar com o arduino, podemos usar todos os sensores que existir no arduino e até ligar motores também.
     No arduino existe módulos expansivos chamados de Shields que serve para estender a sua capacidade. Existe vários tipos de Shields (wifi, Bluetooth, motor, ethernet, etc.).
         Nesses links a seguir fala da programação do Arduino, falando da estrutura e de cada função: Programação Arduino.
     O Software do Arduino IDE é uma aplicação multiplataforma escrita em Java na qual é derivada dos projetos Processing e Wiring. Para a programação funcionar sempre precisar deixar declaradas duas funções:
  • setup() - Inserida no inicio, na qual pode ser usada para inicializar configuração;
  • loop() - Chamada para repetir um bloco de comandos ou esperar até que seja desligada;
     No link a seguir tem um vídeo que é um documentário sobre o arduino, o áudio está em inglês, mas a legenda em espanhol The Arduino Documentary e uma breve introdução do arduino:

Até mais pessoal, espero que tenha entendido tudo.
Fui!!!

Primeira Postagem


Bom pessoal, nessa primeira postagem, irei fazer uma breve apresentação.

Ainda curso o ensino médio e faço curso técnico em eletrônica. Já participei em dois eventos de robóticas, a OBR (Olimpíadas Brasileira de Robótica) em 2010, onde a minha equipe ficamos em 2º lugar no Estadual e entre os 10 melhores do Brasil na Nacional (7º lugar) usando kit da Legomindstorms.

Agora comecei a usar o kit do arduino, estudo o arduino há quase um ano e estou fazendo vários projetos com ele de robótica e física. Pretendo postar tudo o que fiz e o que sei aqui no blog para ajudar a todos.

Bom pessoal até mais...
 
Blogger Templates