Montar o seu próprio Shield não é tão difícil como se pensa, só
precisa saber manusear um ferro de solda. Os componentes que usei no meu Shields
foram:
-CI L293D, ponte h;
-Suporte para CI de 16 pinos;
-Barra de terminal macho;
-Fios;
-Borne KRE;
Antes de tudo o que seria a ponte h? A
ponte h é um circuito que permite que um micro controlador
controle um motor DC, o micro controlador por si não consegue
"dar" a corrente necessária para o funcionamento do motor, e ainda
torna possível que o motor rode tanto para um sentido quanto o outro.
Vamos ver os terminais desse CI:
* Pino 16, corrigindo, é idem ao terminal 8
Apesar de que existe
outros CIs, preferir usar o L293D, que deve custar em torno de R$15,00 à
R$20,00. A montagem fica como está a imagem abaixo:
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 porfor.
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.
intled= 13;//Declarei que led é a variável 13
voidsetup()
{
pinMode(led,OUTPUT);//Agora utilizei essa variável e disse que ela é a porta 13 do
arduino
}
voidloop()
{
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(inti = 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, novoid setup()que , digamos, eu falei que seria na
porta 10 do arduino.
A grande mudança
foi noloop(), que usei a
sentaçafor, dentro desse
sentença como viram tem uma expressão, nessa função vocês tem que falarinicializaçã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
useidigitalWritee simanalogWrite, 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
O arduino é uma plataformaopen-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.
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.