quarta-feira, 3 de abril de 2013

O que é Arduino?


Arduino

Arduino é um projeto Open-Source que utiliza eletrônica e programação embarcada de alto nível.  O Arduino é composto de duas partes Hardware e Software:


O Hardware

O hardware consiste de um microcontrolador Atmel AVR de 8 bits, com componentes complementares que facilitam a programação e incorporação de outros circuitos, os conectores são expostos, permite  interligar o Arduino com outros módulos expansivos conhecidos como Shields.


O Software

O Software é composto da Arduino IDE que é uma aplicação multiplataforma escrita em Java derivada dos projetos Processing e Wiring. Inclui um editor de código com recursos de realce de sintaxe, parênteses correspondentes e indentação automática, sendo capaz de compilar e carregar programas para a placa com um único clique.

O Arduino IDE usa o Conjunto de ferramentas GNU e o AVR Libc para compilar os programas, para depois, com o avrdude, enviar os programas para a placa.


Aplicações

A principal finalidade do Arduino num sistema é facilitar a prototipagem, implementação ou emulação do controle de sistemas interativos, a nível doméstico, comercial ou móvel, da mesma forma que o CLP controla sistemas de funcionamento industriais. Com o Arduino é possível receber e enviar informações de quase todos os tipos de sistemas eletrônicos.
Possíveis aplicações são:  Identificar a aproximação de uma pessoa através de sensores ou variar a intensidade da luz de uma ambiente.


Expansões do Arduino

O Arduino tem um conjunto de extensões que expandem a funcionalidade do Arduino para que o mesmo adquira funções especializadas, desde a conexão através de Bluetooth até o controle de motores. Tais extensões são feitas através de um hardware chamado Shields – que são placas para serem montadas em cima da placa Arduino.


Alguns exemplos:

XBee Shield - Permite que uma placa Arduino comunicar-se sem fios a distâncias de até 100 pés (interiores) ou 300 pés (outdoors), utilizando o Maxstream Xbee - módulo ZigBee.
Motor Shield - Permite que uma placa Arduino controle motores DC e leia os codificadores.
Ethernet Shield - Permite que uma placa Arduino conectar-se à internet.


Programando com o Arduino

As duas partes básicas de um programa Arduino são feitas através de dois métodos.

void setup() {
}

void loop() {
}

O método setup é executado uma única vez quando a placa é ligada e o método loop terá o código de execução por todo o tempo que a placa estiver ligada. No método setup é onde se define os pinos de entrada e saída e os parâmetros de inicialização.


Sintaxe

Tendo o Arduino uma sintaxe igual a programação em C/C++.
“//” – Começa um comentário de uma linha.
“/*texto */” – Comentário de várias linhas.
“{}” – Um bloco de comandos.
“;” – Termino de Comando.


Tipos de Variáveis

Aqui está sendo mostrado os tipos mais comuns e utilizados. No Site Arduino mostra todos os tipos e o que cada um faz.
"boolean" - Sendo Verdadeiro(true) ou Falso(false). Existe também Alto(HIGH) e Baixo(LOW).
"int" - Sendo os números inteiros(de -32768 a 32767).
"unsigned int" - Sendo os números inteiros positivos(de 0 a 65535).
"long" - Sendo os números inteiros(de -2147483648 a 2147483647).
"unsigned long" - Sendo os números inteiros positivos(de 0 a 4294967295).
"float" - Sendo os números inteiros com decimais(-3.4028235*(10 elevado a +38) a 3.4028235*(10 elevado a +38)).
"char" - Sendo um caractere - Obs: Existe o "string" que é um conjunto de caracteres.


Operadores Matemáticos

"=" - Atribui um valor a uma variável.
"+" - Soma.
"-" - Subtração.
"*" - Multiplicação.
"/" - Divisão.
"%" - Resto da divisão. Ex: 5%2 -> O resto da divisão de 5 por 2 é 1.


Operadores de comparação

"==" - "é igual a".
"!=" - "é diferente a".
"<" - "é menor a".
">" - "é maior a".


Estruturas de controle

"if(condição){comandos1} - Se a condição for verdadeira então faça os comandos1
else if(condição){comandos2} - Senão se a condição for verdadeira então faça os comandos2
else{comandos3}" - Senão faça os comandos3. Esta estrutura pode ter apenas o "if" caso tenha apenas uma condição.

"for(variável=início;condição;modifica){comandos}" - Para a variável=início e a condição for verdadeira faça os comandos, depois modifica e verifica se a condição é verdadeira. Geralmente o "for" é utilizado para executar os comandos um número n de vezes dentro do void loop() {}.

"while(condição){comandos}" - Enquanto a condição for verdadeira faça os comandos. Parecido com o "for". Esta estrutura verifica primeiro a condição e depois executa os comandos.

"do
{comandos}
while(condição)" - Faça os comandos enquanto a condição for verdadeira. Esta estrutura executa primeiro os comandos e depois verifica a condição.


Portas digitais e analógicas

Na prática ligamos componentes em portas digitais e analógicas e através do código Arduino, manipulamos as portas: pinMode(<porta>, <modo>): configura uma porta digital para ser lida ou para enviarmos dados.
digitalWrite(<porta>, 0 ou 1): envia 0 ou 1 para porta digital.
digitalRead(<porta>): retorna um 0 ou 1 lido da porta.
analogRead(<porta>): retorna de 0 a 1023 com o valor da porta analógica.
analogWrite(<porta>, <valor>): escreve em uma porta PWM um valor de 0 a 255.


Compilação

A compilação com o Arduino é feita com o Software fornecido no link  http://arduino.cc/en/Main/Software instale e abra o IDE do Arduino:

A imagem abaixo mostra a tela que se abre ao executar a IDE do Arduino.

Tela do IDE do Arduino
IDE do Arduino

Após abrir o IDE do Arduino, clique em Tools, depois em board e selecione o modelo do seu Arduino, conecte o Arduino na porta USB, clique novamente em Tools, depois em Port e selecione a porta de comunicação do seu Arduino.

Para se selecionar um Sketch para se trabalhar clique em File, depois em Examples, em Basics clique em Blink. Irá abrir outra janela com a programação do exemplo "Piscar o LED (Blink)".

Sketch do exemplo do Blick
Sketch do exemplo do Blick

Para fazer a compilação e mandar o código para o Arduino clique no botão upload como mostrado na figura abaixo:

Mandando o Sketch para o Arduino
Mandando o Sketch para o Arduino

Se a compilação correu tudo certo e também a porta selecionada estive certa, irá piscar o LED L na placa, senão, mude a porta de comunicação do Arduino.

Essa é uma pequena introdução sobre Arduino  e espero ter ajudado alguém.

Até a próxima.



Nenhum comentário: