Arduino

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar

Arduíno

Descrição

O Arduino é um microcontrolador montado em uma plataforma de prototipagem eletrônica de hardware livre que pode ser utilizado em múltiplas aplicações. O Arduino é facilmente programável e pode ser utilizado para automação de dispositivos eletrônicos, acionamento de motorExemplo.jpges e leds, monitoramento de sensores, construção de protótipos de soluções tecnológicas e um mundo de possibilidades.

Links e referências

Site oficial do Arduíno

Arduíno Reference

Wiki com exemplos de aplicação com Arduíno

Instalação

Para instalação no Ubuntu 12.04:

sudo apt-get install arduino

Ambiente de desenvolvimento do Arduíno

O ambiente de desenvolvimento de software do Arduíno usa uma linguagem de programação própria, baseada na linguagem C.

Os programas fonte são identificados pela extensão .ino.

A própria IDE do Arduíno apresenta vários exemplos de aplicações e programas que ajudam quem está iniciando a programá-lo.

Ambiente de programação S4A (Scratch for Arduíno)

Também é possível programar o Arduíno usando o ambiente de programação S4A (Scratch for Arduino), permite realizar a programação do Arduino utilizando as mesmas estruturas da linguagem Scratch, o que facilita muito o trabalho de quem está iniciando no mundo da programação de computadores.

Mais informações e ilustrações

Apresentação no Prezi sobre S4A: Arduíno & Scratch

Instalação do S4A e do firmware no Arduíno
O ambiente de desenvolvimento S4A e o firmware devem ser baixados no Site do S4A (Scratch for Arduino) e instalados, respectivamente, no computador e no hardware do Arduíno.
Exemplos de programas com S4A e Arduíno
Sensores virtuais no S4a

É possível criar sensores virtuais para o S4A a partir da Web.

Veja referência em: Sensores Virtuais no S4A

Eletrônica para Arduíno

Fundamentos e conceitos
Sensores baseados em resistência variável para Arduíno
Sensores de luminosidade (LDR) e sensores de temperatura possuem um resistor variável em função da grandeza que estão medindo. Os mesmos podem ser configurados em uma estrutura baseada em um divisor de tensão para fornecer uma tensão variável ao Arduíno.
Acionamento de leds com Arduíno
O Arduíno fornece no máximo 40mA de corrente em cada um dos pinos de saída e tensão de 0V a 5V. Portanto, deve ser colocado um resistor em série com o led para limitar a corrente de saída do Arduíno e também a corrente máxima do led.
Transistor como chave para acionar uma carga elevada com uma única saída do Arduíno
Exempĺo de uso: Acionamento de vários leds com uma única saída do Arduíno no projeto de Automação de Semáforo com Arduíno.

Informações sobre sensores e drives para uso com o Arduíno

Sites de lojas virtuais
Arduíno, shields e acessórios
Sensor Infravermelho
Sensor Ultrasônico
Motores e drives

Comunicação Serial

Informações sobre comunicação serial

Comunicação Serial entre dois Arduínos

Emissor
Insere na porta serial os valores 0 e 1 de maneira alternada a cada dois segundos.
Receptor
Faz a leitura dos valores escritos pelo emissor e controla o LED.
0 -> LED apagado.
1 -> LED aceso.
Código do Arduíno emissor
//emissor  
int num = 0;
void setup(){
 Serial.begin(9600);
}
void loop(){
 num = 0;
 Serial.write(num);
 delay(2000);
 num = 1;
 Serial.write(num);
 delay(2000);
}
Código do Arduíno receptor
//receptor
int recByte;
int led = 13;
void setup(){
 Serial.begin(9600);
 pinMode(led,OUTPUT);
}
void loop(){
 if (Serial.available ()> 0)
   {
       recByte = Serial.parseInt();
   }
 if(recByte == 0){
   digitalWrite(led,LOW);
 }else if(recByte == 1){
   digitalWrite(led,HIGH);
 }
}
Autoria
Matheus Marques / CST Análise e Desenvolvimento de Sistemas - IFPR - Câmpus Foz do Iguaçu

Controlando Leds pelo teclado

Componentes necessários
  • Placa Arduino;
  • Protoboard;
  • 5 fios com conectores macho;
  • 2 resistores de 220 ohm(Vermelho, vermelho, marrom);
  • 2 Leds.


Primeiramente, faça as ligações como mostra a imagem abaixo


Agora, abra a IDE do Arduino e passe a seguinte programação
char c;
void setup(){
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
Serial.begin(9600);
}
void loop()
{
   if (Serial.available() > 0)
   {
   c = Serial.read() - '0';
   Serial.flush();
   digitalWrite(c,!digitalRead(c));
   }
}
Instruções

Conecte o Arduino no PC, selecione a versão do seu Arduino e a porta e clique em UPLOAD. Abra o Serial Monitor, ao digitar o número 2 no Serial Monitor, irá acender o LED conectado na porta digital 2 do Arduino, e ao digitar novamente o número 2, o LED apagará. Agora se digitar o número 3, irá acender o LED da porta digital 3 e se digitar novamente o número 3, o LED apagará.

Igor Matheus B. Quintana / CST Análise e Desenvolvimento de Sistemas - IFPR - Câmpus Foz do Iguaçu.

Sensor de temperatura (LM35)

Componentes necessários
  • Placa Arduino;
  • Conector Arduino;
  • Protoboard;
  • 3 fios com conectores macho;
  • Sensor de temperatura – LM35.


Primeiramente, faça as ligações como mostra a imagem abaixo


Agora, abra a IDE do Arduino e passe a seguinte programação
const int LM35 = A0; // Pino Analogico onde vai ser ligado ao pino 2 do LM35
const int REFRESH_RATE = 2000;  //Tempo de atualização entre as leituras em ms
const float CELSIUS_BASE = 0.4887585532746823069403714565; //Base de conversão para  Graus Celsius ((5/1023) * 100)
void setup() {
Serial.begin(9600);
}
void loop() {
  Serial.print("Temperatura: ");
  Serial.println(readTemperature());
  delay(REFRESH_RATE);
}
 float readTemperature(){
 return (analogRead(LM35) * CELSIUS_BASE); 
}
Instruções

Conecte o Arduino no PC, selecione a versão do seu Arduino e a porta e clique em UPLOAD. Agora abra o Serial Monitor e terá a temperatura atual, observe que a cada 2 segundo será feita uma nova leitura, caso queira aumentar ou diminuir este tempo deve ser alterado o tempo de leitura na linha dois do código.


Referencia: http://www.ti.com/lit/ds/symlink/lm35.pdf

Igor Matheus B. Quintana / CST Análise e Desenvolvimento de Sistemas - IFPR - Câmpus Foz do Iguaçu.