Projeto 1 - Pisca LED

Olá pessoal, agora vamos iniciar na prática como montar os componentes e executar os programas para vermos como o placa Arduino funciona realmente.

Projeto 3 - Alarme com sonorizador piezo

Olá pessoal, este projeto será um pouco barulhento pois, vamos fazer um alarme com sonorizador piezo conectado a um pino de saída digital, podendo ser criado um som de sirene. Iremos gerar uma onda senoidal para gerar os pulsos e criando o som

Projeto 10 - Controle de temperatura com LCD e Cooler

Olá pessoal, já vimos basicamente como utilizar um LCD com o Arduino, agora vamos fazer um pequena aplicação utilizando o mesmo esquema do projeto anterior acrescentando um cooler. Este projeto tem pouca complexidade, desde que montado com calma para não se perderem nas inserções dos jumpers.

Projeto 8 - Controle básico com LCD

Olá pessoal, agora vamos deixar nossos projetos visualmente mais interessantes. Iremos aprender como utilizar o LCD (Liquid Crystal Display), não utilizaremos o modelo JHD 162A, deixando nossos projetos mais amigáveis.

Projeto 19 – Arduino como um osciloscópio

Olá pessoal, nós que gostamos de mexer com eletrônica sempre ficamos na curiosidade de sabermos qual é o tipo de onda que está sendo gerada em um circuito qualquer, pois então vamos aprender como fazer um osciloscópio com o Arduino, o programa é muito útil e fácil de utilizar, com ele podemos tirar nossa curiosidade em relação as ondas em circuitos eletrônicos. Vamos saciar nossa curiosidade ?

5 de out. de 2013

Projeto 17 – Gravando um arquivo .doc no SD Card

Projeto 17 – Gravando um arquivo .doc no SD Card

Olá pessoal, agora vamos ver como gravar e visualizar um arquivo .doc no cartão SD, gravando com o Arduino e visualizando o arquivo no notebook, desktop, tablet, ou ate mesmo no seu smartphone. Neste projeto foi utilizado um adaptador de microSD da Samsung, não tive problemas com este cartão, portanto se houver problemas com o que você utilizar deixe um comentário. 

Obs. importante:  Antes de compilar, coloque o cartão SD.


Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!

Componentes necessários

1 Protobord
1 Modulo SD
Fios jumpers


Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue o módulo e os fios e conecte-os como mostra a figura.








Para melhor entendimento conecte os jumpers assim

MOSI  -  pino 11 do Arduino
MISO  -  pino 12 do Arduino
CLK ou SCK - pino 13 do Arduino
CS - pino 6 do Arduino

Obs.: Neste modulo tem que conectar também o 2 GND, 1 Vcc de 3V e 1 Vcc 5V todos no Arduino.


Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos.
Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.



Agora vamos ao código


/*
Projeto 17 - Gravando um arquivo .doc no SD Card

 Este exemplo mostra como ler e escrever dados em um cartão SD

 Conexão dos pinos do SD Card no Arduino

 MOSI  - pino 11
 MISO -  pino 12
 CLK ou SCK - pino 13
 CS - pino 6
             
 */

#include <SD.h>  // Biblioteca para manipular os dados no Cartão

File meuArquivo;  // Criação de uma variável para guardar os dados inseridos

void setup()
{
 // Abre a comunicação serial liberando a porta

  Serial.begin(9600);
   while (!Serial) {

    ; // Aguarda a porta serial conectar.
  }


  Serial.print("Inicializando SD card...");  // Inicializa o cartão SD
  
  if (!SD.begin(6)) {  // Esta condição analisa se o cartão está inserido corretamente no shield
    Serial.println("A inicializacao falhou! ");
    return;
  }
  Serial.println("Inicializacao concluida! ");  // Imprime no Serial Monitor que foi bem sucedida a inserção do SD card
 
  // Abre o arquivo test.doc
   meuArquivo = SD.open("test.doc", FILE_WRITE);
 
  // Se o arquivo esta ok, então será escrito isso
  if (meuArquivo) {
    Serial.print("Escrevendo test.doc...");
    meuArquivo.println("Parabens voce conseguiu! www.facacomarduino.blogspot.com");
            // Fecha o arquivo:
    meuArquivo.close();
    Serial.println("Concluido! ");
  } else {
    // Se o arquivo não abriu, um menssagem de erro será mostrada
    Serial.println("Erro ao abrir arquivo test.doc");
  }
 
  // Abre novamente o arquivo para lê-lo

  meuArquivo = SD.open("test.doc");
  if (meuArquivo) {
    Serial.println("test.doc:");
   
    // Le o arquivo até que não há mais nada nele

    while (meuArquivo.available()) {
            Serial.write(meuArquivo.read());
    }
    // Fecha o arquivo

    meuArquivo.close();
  } else {
            // Se o arquivo não abriu, será mostrado uma menssagem de erro

    Serial.println("Erro ao abrir arquivo test.doc");
  }
}

void loop()
{
            // Nada acontece aqui
}



Para certificar se o código está correto pressione o botão Verify/Compile.
Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, abra o Serial Monitor e logo você verá os passos para gravação do arquivo, assim que gravar retire o cartão e insira-o no computador lá terá um arquivo chamado TEST, clique nele e ele será aberto.


Captura do Serial Monitor









Captura dentro da raiz do SD Card







- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!






7 de set. de 2013

Projeto 16 - Sensor de ré para automóvel

Projeto 16 – Sensor de ré para automóvel

Olá pessoal, vamos fazer agora um sensor de ré que emite um alerta sonoro quando um objeto chega a uma certa distância. Para ficar mais visível iremos utilizar um LCD que nos informará a distância do objeto próximo ao sensor. 

Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!


Componentes necessários

1 Protobord
1 Módulo ultrassônico HC-SRO4
1 LCD (JHD 162A de 16 colunas e 2 linhas) ou outro modelo com back light
2 Potenciômetros de 10 K ohms (Um para o contraste e o outro para a luz de fundo) *
1 Sonorizador piezo
Fios jumper

Obs.: Verifique a polaridade do sonorizador piezo.
*Este modelo que utilizei não possui o back light, porém o projeto foi montado com se tivesse essa função.


Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue o sensor ultrasôncio, o LCD, o piezo, os potenciômetros e os fios e conecte-os como mostra a figura.






Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos.
Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.



Agora vamos ao código

// Projeto 16 - Sensor de ré para automóvel

#include <LiquidCrystal.h>  // Biblioteca necessária para iniciar o LCD

#define buzina 6  // Define um variável chamada buzina no pino digital 6

#define trigPin 12
#define echoPin 13

LiquidCrystal lcd(9, 8, 5, 4, 3, 2);  // Cria um objeto LCD e atribui os pinos

void setup() {
  
  lcd.begin(12, 6);  // Inicializa o LCD
  
  
  pinMode(buzina, OUTPUT);  // Declara o pino 6 como saída
  pinMode(trigPin, OUTPUT);  
  pinMode(echoPin, INPUT);

}

void loop() {
  
   long duration, distance;  // http://arduino.cc/en/Reference/Long
  digitalWrite(trigPin, LOW);  // Configura o pino 12 com um pulso baixo "LOW" ou desligado ou ainda 0
  delayMicroseconds(2);  // Aguarda 2 microssegundos

  digitalWrite(trigPin, HIGH);  // Configura o pino 12 com pulso alto "HIGH" ou ligado ou ainda 1
  delayMicroseconds(10);  // Aguarda 10 microssegundos
  digitalWrite(trigPin, LOW);  // Configura o pino 12 com pulso baixo novamente
  duration = pulseIn(echoPin, HIGH);  // PulseIn lê o tempo entre a chamada e o pino entrar em High
  
  /*Esse calculo é baseado em s = v . t, lembrando que o tempo vem dobrado
  porque é o tempo de ida e volta do ultrassom */
  
    distance = ((duration/2) / 29.1);
    
              lcd.clear();
    lcd.print("Distancia:");
    lcd.print(distance);
    lcd.print(" CM");
    {
      delay(500);
}

// Condição para ativar a buzina quando atingir a distância necessária
   if(distance < 30){
  digitalWrite(buzina, HIGH);  // Pino lógico 6 habilitado (5 Volts)
    lcd.setCursor(0,1);
    lcd.println("Muito proximo ! ");    
}
else 
{
  digitalWrite(buzina, LOW);  // Pino lógico 6 desabilitado (0 Volts)
    lcd.setCursor(0,1);
    lcd.println("Ainda seguro !   "); 
}
 delay(500);
 }
  


Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, agora gire os potenciômetros para regular o contraste e o brilho. Coloque algum objeto próximo ao ultrassônico e quando o objeto chegar ao uma distância inferior a 30 cm o piezo emitirá um som de alerta. Isso tudo você também poderá visualizar no LCD.


Vídeo do projeto pronto





- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!

28 de ago. de 2013

Projeto 15 – Sensor ultrasônico básico

Projeto 15 – Sensor ultrasônico básico

Olá pessoal, vamos aprender como utilizar o sensor ultrasônico em nossos projetos. O modelo utilizado será o HC-SRO4 encontrado em qualquer loja que contenha componetes para Arduino.

Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!


Componentes necessários

1 Protobord
1 Módulo ultrassônico HC-SRO4
Fios jumper

Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue o sensor ultrasôncio e os fios e conecte-os como mostra a figura.





Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos.
Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.



Agora vamos ao código


// Projeto 15 -  Sensor ultrasônico básico

#define trigPin 12
#define echoPin 13


void setup() {
  Serial.begin (9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);

}

void loop() {
  long duration, distance;  // http://arduino.cc/en/Reference/Long
  digitalWrite(trigPin, LOW);  // Configura o pino 12 com um pulso baixo "LOW" ou desligado ou ainda 0
  delayMicroseconds(2);  // Aguarda 2 microssegundos

  digitalWrite(trigPin, HIGH);  // Configura o pino 12 com pulso alto "HIGH" ou ligado ou ainda 1
  delayMicroseconds(10);  // Aguarda 10 microssegundos
  digitalWrite(trigPin, LOW);  // Configura o pino 12 com pulso baixo novamente
  duration = pulseIn(echoPin, HIGH);  // PulseIn lê o tempo entre a chamada e o pino entrar em High
 
  /*Esse calculo é baseado em s = v . t, lembrando que o tempo vem dobrado
  porque é o tempo de ida e volta do ultrassom */
 
    distance = ((duration/2) / 29.1);
   
    Serial.print(distance);
    Serial.println(" Cm");

  delay(500);
}



Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, abra o Serial Monitor e coloque um objeto na frente no sensor ultrasônico e você verá a distâcia que o objeto está em relação ao sensor.


Imagem do Serial Monitor






 Foto do projeto pronto





- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!





8 de ago. de 2013

Projeto 14 – Controlando um servo motor com Joystick

Projeto 14 – Controlando um servo motor com Joystick

Olá pessoal, muitos já viram controlar um servo com potenciômetro, agora vamos ver como controlar um servo com joystick. Com este projeto você pode facilmente controlar a rotação de uma câmera, de uma cabeça de um robô ou qualquer outro controle que envolva movimento, não é difícil de ser implementado, por tanto vamos lá.
Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bons projetos a todos !!


Componentes necessários

1 Protobord
1 Módulo de Joystick PS2
1 Servo motor TG9
Fios jumpers


Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue o módulo, o servo e os fios e conecte-os como mostra a figura.









Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos.
Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.



Agora vamos ao código


// Projeto 14 -  Controlando um servo motor com Joystick

#include<Servo.h>

Servo servo1;  // Cria um objeto servo
int portCom;  // Cria uma variável para armazenar dados do Joystick
int servoPin = 11;  // Pino digital 11 conectado no servo1

void setup(){
  servo1.attach(servoPin); 
  servo1.write(90);  // Inicia o servo1 em 90 graus
}

void loop(){
  portCom = analogRead(0); // Pino X do Joystick para receber dados
  portCom = map(portCom, 0, 1023, 0, 180);  // Faz um mapeamento dos dados recebidos
 
  servo1.write(portCom);  // O servo se movimenta de acordo com a posição do Joystick
  delay(15);  // Tempo leitura do pino analogico A0
}



Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, agora você poderá movimentar o Joystick na horizontal e o servo também se movimentará para direita e esquerda conforme seu comando.



Vídeo do projeto pronto






- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!




1 de ago. de 2013

Projeto 13 - Servo motor controlado por Arduino

Projeto 13 -  Servo motor controlado por Arduino


Olá pessoal, já vimos como controlar um motor CC e motor de passo. Agora vamos ver como funciona um servo motor conectado ao Arduino. Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!

Antes de começar, veja o vídeo do projeto pronto









Componentes necessários

1 Protobord (opcional para este projeto)
1 Servo motor TG9 (ou equivalente)
Fios jumper

OBS.:  Servos maiores exigem alimentação própria, já que a corrente da placa Arduino fornece correntes baixas.


Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue o servo motor e os fios e conecte-os como mostra a figura.







Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos. Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.



Agora vamos ao código


// Projeto 13 - Servo motor controlado por Arduino

#include <Servo.h>

Servo servo1;  // Cria um objeto servo
                
int pos = 0;  // Variável para armazenar a posição do servo1

void setup()
{
  servo1.attach(11);  // Agrega o objeto servo1 ao pino digital 11 
}


void loop()
{
  for(pos = 0; pos < 180; pos += 1)  // Vai de 0 grau a 180 em passo de 1 grau
  {                               
    servo1.write(pos);  // Chama o servo1 para ir para a posição da variavel "pos" 
    delay(50);  // Agurade 50ms para para o servo1 atingir a posição
  }
  for(pos = 180; pos>=1; pos-=1)  // Vai de 180 graus ate 0
  {                               
    servo1.write(pos);  // Chama o servo1 para ir para a posição da variavel "pos"
    delay(10);  // Aguarda 10ms para o servo1 atingir a posição
  }
}


- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page !

- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!




29 de jul. de 2013

Projeto 12 - Motor de passo controlado por Arduino

Projeto 12 -  Motor de passo controlado por Arduino

Olá pessoal, já vimos como controlar um motor CC. Agora vamos ver como funciona um motor de passo com Arduino. Neste projeto foi utilizado um Shield para controle de motor com ULN2003. Projeto simples de ser implementado. Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!


Antes de começar, veja o vídeo do projeto pronto








Componentes necessários

1 Protobord
1 Driver para motor com ULN2003
1 Motor de passo modelo 28BYJ-48
Fios jumper

Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, o driver, o motor de passo e os fios e conecte-os como mostra a imagem abaixo.









Para melhor entendimento, segue a inserção dos pinos Arduino/Driver:

- Pino 4 do Arduino no Pino IN1 do Driver
- Pino 5 do Arduino no Pino IN2 do Driver
- Pino 6 do Arduino no Pino IN3 do Driver
- Pino 7 do Arduino no Pino IN4 do Driver



Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos. Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.



Agora vamos ao código


// Projeto 12 -  Motor de passo controlado por Arduino

// Declarando variáveis para os pinos do motor

int motorPin1 = 4;    // Azul   - Pino 1 do motor 28BYJ-48
int motorPin2 = 5;    // Rosa   - Pino 2 do motor 28BYJ-48
int motorPin3 = 6;    // Amarelo - Pino 3 do motor 28BYJ-48
int motorPin4 = 7;    // Laranja - Pino 4 do motor 28BYJ-48 o pino 5 (Vermelho) é o pino de alimentação do motor de passo (VCC)   

int velocMotor = 1200;  // Variáveis para configurar a velocidade do motor
int contagem = 0;  // Variável usada como contador de passos
int passosPorRotacao = 512;  // Número de passos por rontação completa
int vetorLigDesl[8] = {B01000, B01100, B00100, B00110, B00010, B00011, B00001, B01001};
 // Vetor que manipula os pinos do motor entre 0 e 1 (Desliga/Liga)

void setup() {
  // Declara os pinos do motor como pinos de saída

  pinMode(motorPin1, OUTPUT);
  pinMode(motorPin2, OUTPUT);
  pinMode(motorPin3, OUTPUT);
  pinMode(motorPin4, OUTPUT);
}

void loop(){
  if(contagem < passosPorRotacao )
    sentidoHorario();  // Função para rotacionar em sentido horário
  else if (contagem == passosPorRotacao * 2)
    contagem = 0;
  else
    sentidoAntiHorario();  // Função para rotacionar em sentido anti horário
  contagem++;
}

/*Configurando os pinos para ULN2003.
o delay "motorSpeed" determina o tempo para a velocidade do motor*/

void sentidoAntiHorario()
{
  for(int i = 0; i < 18; i++)
  {
    setOutput(i);
    delayMicroseconds(velocMotor);
  }
}

void sentidoHorario()
{
  for(int i = 17; i >= 0; i--)
  {
    setOutput(i);
    delayMicroseconds(velocMotor);
  }
}

void setOutput(int out)  // Faz a manipulação de 0 e 1
{
  digitalWrite(motorPin1, bitRead(vetorLigDesl[out], 0));
  digitalWrite(motorPin2, bitRead(vetorLigDesl[out], 1));
  digitalWrite(motorPin3, bitRead(vetorLigDesl[out], 2));
  digitalWrite(motorPin4, bitRead(vetorLigDesl[out], 3));
}


Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, o motor irá rotacionar para o sentido horário e depois para o sentido anti horário.


- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!