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 ?

13 de jul. de 2014

Projeto 30 – Acionando LED e Rele via Bluetooth com ArduinoCommander

Projeto 30 – Acionando LED e Rele via Bluetooth com ArduinoCommander

Olá pessoal, como prometido, irei mostrar como acionar LED e rele via bluetooth. Este projeto se aplica tanto a smartphones quanto a tablets. Muito mais fácil de usar com este app do que com outros que você possa encontrar pela internet. Mãos aos componentes!



Vídeo do projeto pronto








Componentes necessários

1 Shield JY-MCU (Módulo Bluetooth)
1 Shield rele
1 resistor de 330Ω
1 LED (qualquer cor)
1 Smartphone com Android
Fios jumper do tipo macho/femea e macho/macho


Esquema para montagem





O código para comunicação com o Arduino Commander


Sigas os passos:

1) Abra o IDE do Arduino.
2) Clique em File >> Examples >> Firmata e StandardFirmata.
3) Irá abrir o código StandardFirmata.
4) Dê um Ctrl+F e busque por 57600.
5)  Troque o valor por 9600.
6)   Pronto agora faça o upload para o Arduino*.

*OBS.: Antes de passar o código para o Arduino retire os jumpers dos pinos RX e TX. Se não for feito isso o não irá carregar o código para o Arduino dando erro.



Conectando-se ao ArduinoCommander

2) Após ter instalado, abra-o. Ficará assim a tela:




3) Clique em “Discover devices” para encontrar seu Shield Bluetooth. Se o seu aparelho estiver com o bluetooth desligado, ele irá habilitar o mesmo. Como mostra na imagem abaixo:




 4) Agora pesquise novamente os dispositivos em “Discover devices” e ira aparecer os dispositivos bluetooth ao alcance, como mostra a imagem abaixo:




 5) O meu shield esta com o nome ELTONSHIELD, visualize o seu e clique clique nele para seleciona-lo.
 6) Após isto irá se conectar a sua placa Arduino como mostra a imagem abaixo:





 7)   Se algo der errado ira aparecer algo assim:






Agora vamos acionar o LED e o Rele no ArduinoCommader

 1) Clique em cima do pino 7, ira aparecer as opções para setar o pino como output ou input. Selecione output assim como mostra a imagem abaixo:




 2) Se você quiser deixar este pino desligado basta apenar clicar em OK. Caso queira liga-lo clique em cima de OFF e ira ficar ON, clique em OK e pronto o LED ira ascender como mostra as imagens abaixo:  








3)   Para apaga-lo clique em cima do pino 7 novamente e clique em ON para ficar OFF e OK. Pronto LED desligado.

4) Para acionar o rele segue a mesma linha de raciocínio. Clique em cima do pino 11, selecione output e clique em cima de OFF para ficar ON e OK acionar o rele.







 5)   Para desabilitar o pino clique em cima dele, selecione ON para ficar OFF e OK.



 
 6)  Para desconectar do bluetooth clique na tecla de menu do smartphone e selecione “Disconnect”, aguarde alguns segundos e pronto.





- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Faça o download do app para ter atualizações em suas mãos.
- Curta nossa fan page !


22 de jun. de 2014

Projeto 29 – Configurando o modulo de bluetooth (JY-MCU)

Projeto 29 – Configurando o modulo de bluetooth (JY-MCU)

Olá pessoal, antes de começarmos a acionar componentes pelo smartphone e/ou tablet via bluetooth se faz necessário algumas configurações do módulo antes disto, para que tudo funcione corretamente. Então... mãos aos componentes !! 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 Shield JY-MCU (Modulo Bluetooth).
Fios jumper do tipo macho/fêmea.


Imagem do esquemático pronto:






Segue o esquemático abaixo para melhor entendimento:


Pinos do módulo JY-MCU              Pinos do Arduino
VCC                                                  5V
GND                                                 GND
TXD                                                  10                           
RXD                                                  11


OBS.: Verifique qual a tensão do seu módulo, pois poderá ser de 3.3V. Se for o caso utilize o respectivo pino do Arduino.


Siga os passos a seguir para comunicação e configuração de seu módulo:

 1)  Depois de tudo conectado ao seu Arduino. Conecte-o à porta USB de seu computador;

 2) Abra o IDE do Arduino e cole o seguinte código:


#include <SoftwareSerial.h>  // Biblioteca responsável pela comunicação serial.
  
  
SoftwareSerial mySerial(11, 10); // RX, TX 
String command = "";  // Responsável por reconhecer os comandos no AT.
  
void setup()  
   
  Serial.begin(115200);  // Abre a porta de comunicação serial para reconhecer os comandos AT.  
  Serial.println("Type AT commands!");   
  mySerial.begin(9600);   // Taxa de transferência na "Porta COM X" a 9600bps.
}  
  
void loop() 
  // Lê o dispositivo de saída disponível. 
  if (mySerial.available())
  { 
     while(mySerial.available())
       { // Enquanto haver mais para ser lido, mantenha lendo.
       command += (char)mySerial.read(); 
     } 
   Serial.println(command); 
   command = "";  
  } 
 
  // Lê a entrada o usuário se disponível. 
  if (Serial.available())
  { 
    delay(10); // Pequeno delay. 
    mySerial.write(Serial.read()); 
 
  
} // Fim do loop.


3)  Após carregado o código para seu Arduino, abra o Serial Monitor (mantenha apertados Control+Shift+M);

4)    Altere a velocidade de 9600 para 115200 como mostra a imagem abaixo:






5)    Quando alterado irá aparecer a tela para inserirmos os comandos AT;



6)    Agora iremos inserir o comando AT+MEUBLUETOOTH para alterarmos o nome do nosso dispositivo que será “MEUBLUETOOTH” ou outro nome caso queira muda-lo;
  


7)    Este comando deverá retornar um “OKsetname”, confirmando a troca do nome do dispositivo;
8)    Pronto !! As configurações já foram concluídas;

OBS.: Segue abaixo outros comandos que podem ser utilizados:

AT - Retorna "OK", o que indica que o módulo bluetooth está respondendo aos comandos.
AT+NAME
 : Altera o nome do módulo Bluetooth.
AT+VERSION
 - Retorna a versão do firmware da placa.
AT+PINXXXX
 - Altera a senha do bluetooth, onde XXXX é a nova senha, e você pode utilizar qualquer combinação de 4 números. Este comando retorna "OKsetPIN".




- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Faça o download do app para ter atualizações em suas mãos.
- Curta nossa fan page !




28 de abr. de 2014

Projeto 28 - Utilizando um cartão RFID

Projeto 28 - Utilizando um cartão RFID

Olá pessoal, neste projeto iremos utilizar o módulo de identificação por rádio frequência o RFID-RC522 encontrado em lojas especializadas do ramo de eletrônica.  Este projeto consiste em apenas visualizar os dados contidos no cartão. Posteriormente iremos acionar um rele a partir do código do cartão. Então mãos aos componentes !! 
Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!

Obs.:  Para visualizar o Serial Monitor, basta ir em Tools e Serial Monitor ou pressionar Crtl+Shift+M e pronto.


Componentes necessários

1 Shield RFID-RC522.
Fios jumper do tipo macho/fêmea.

Download da biblioteca

Para fazer o download da biblioteca faça o download neste link https://skydrive.live.com/?cid=F877FDED1DE63FAA&id=F877FDED1DE63FAA%21122 (SkyDrive).

Sigas os passos abaixo:

1) Faça o download do arquivo Rfid_master.
2) Após feito o download, descompacte o arquivo.
3) Com o arquivo descompactado, vá em (C:) e na pasta Arquivos de Programas, Arduino, libraries, copie o arquivo descompactado nesta pasta e pronto.


Segue o esquemático abaixo para melhor entendimento:










Pinos do módulo RFID-RC522              Pinos do Arduino

RST                                                          9
SDA                                                          10
MOSI                                                        11
MISO                                                        12
SCK                                                          13
GND                                                     GND
VCC                                                      3.3V




Agora vamos ao código



#include <SPI.h>  // Biblioteca do Serial Peripheral Interface (Interface Periférica Serial).
#include <MFRC522.h>  // Biblioteca do módulo RFID-RC522.

#define SS_PIN 10  // Define o pino 10 como Escravo.
#define RST_PIN 9  // Define o pino 9 como Reset.
MFRC522 mfrc522(SS_PIN, RST_PIN);  // Cria um objeto MFRC522.

void setup() {
Serial.begin(9600); // Inicializa a comunicação serial com o PC.
SPI.begin(); // Inicializa o SPI bus.
mfrc522.PCD_Init(); // Inicializa o cartão MFRC522.
Serial.println("Scan a MIFARE Classic PICC to demonstrate Value Blocks.");  // Imprime no Serial Monitor a frase entre " ".
}

void loop() {
// Procura por novos cartões.
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}

// Seleciona um dos cartões.
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
// Agora um cartão é selecionado. O UID e SAK estão no mfrc522.unis.

        // Descarrega UID.
Serial.print("Card UID:");
for (byte i = 0; i < mfrc522.uid.size; i++) {
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
Serial.println();

// Descarrega PICC.
byte piccType = mfrc522.PICC_GetType(mfrc522.uid.sak);
Serial.print("PICC type: ");
Serial.println(mfrc522.PICC_GetTypeName(piccType));
if ( piccType != MFRC522::PICC_TYPE_MIFARE_MINI 
&& piccType != MFRC522::PICC_TYPE_MIFARE_1K
&& piccType != MFRC522::PICC_TYPE_MIFARE_4K) {
Serial.println("This sample only works with MIFARE Classic cards.");
return;
}

// Orepara a chave - todas as chaves estão configuradas para FFFFFFFFFFFFh (Padrão de fábrica).
MFRC522::MIFARE_Key key;
for (byte i = 0; i < 6; i++) {
key.keyByte[i] = 0xFF;
}

// Nesta amostra nos usamos o segundo setor (bloco 4-7).
byte sector = 1;
byte valueBlockA = 5;
byte valueBlockB = 6;
byte trailerBlock = 7;
// Valida usando a chave A.
Serial.println("Authenticating using key A...");  // Imprime no Serial Monitor.
byte status;
status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_A, trailerBlock, &key, &(mfrc522.uid));
if (status != MFRC522::STATUS_OK) {
Serial.print("PCD_Authenticate() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
// Precisamos de um setor que define blocos 5 e 6 com valores de blocos e que permita a chave B. 
byte trailerBuffer[] = { 255,255,255,255,255,255,  0,0,0,  0,  255,255,255,255,255,255};  // Mantem por teclas padrão.
// g1=6 => Set block 5 as value block. Must use Key B towrite & increment, A or B can be used for derement.
// g2=6 => Same thing for block 6.
// g3=3 => Key B must be used to modify the Sector Trailer. Key B becomes valid. 
mfrc522.MIFARE_SetAccessBits(&trailerBuffer[6], 0, 6, 6, 3);
// Agora nos lemos o setor e vemos se isto ista como nos queremos que seja.
Serial.println("Reading sector trailer...");
byte buffer[18];
byte size = sizeof(buffer);
status = mfrc522.MIFARE_Read(trailerBlock, buffer, &size);
if (status != MFRC522::STATUS_OK) {
Serial.print("MIFARE_Read() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
if ( buffer[6] != trailerBuffer[6]
&& buffer[7] != trailerBuffer[7]
&& buffer[8] != trailerBuffer[8]) {
Serial.println("Writing new sector trailer...");  // Imprime no Serial Monitor.
status = mfrc522.MIFARE_Write(trailerBlock, trailerBuffer, 16);
if (status != MFRC522::STATUS_OK) {
Serial.print("MIFARE_Write() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
}
// Valida usando chave B.
Serial.println("Authenticating again using key B...");  // Imprime no Serial Monitor.
status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_B, trailerBlock, &key, &(mfrc522.uid));
if (status != MFRC522::STATUS_OK) {
Serial.print("PCD_Authenticate() failed: ");  // Se haver falha na autenticação uma mensagem será exibida no Serial Monitor.
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
/*OBS.:
                O valor dos blocos tem um valor com sinal de 32 bit armazenado três vezes e um endereço de 8 bits armazenados 4 vezes. 
                Certifique-se de blocos valueBlockA e valueBlockB tem esse formato: formatBlock (valueBlockA); */

// Adciona 1 no valor de valueBlockA e armazena o resultado em valueBlockA.
Serial.print("Adding 1 to value of block "); Serial.println(valueBlockA);
status = mfrc522.MIFARE_Increment(valueBlockA, 1);
if (status != MFRC522::STATUS_OK) {
Serial.print("MIFARE_Increment() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
status = mfrc522.MIFARE_Transfer(valueBlockA);
if (status != MFRC522::STATUS_OK) {
Serial.print("MIFARE_Transfer() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
// Descarrega o resultado.
mfrc522.PICC_DumpMifareClassicSectorToSerial(&(mfrc522.uid), &key, sector);
// Pausa PICC
mfrc522.PICC_HaltA();

// Para a criptografia em PCD.
mfrc522.PCD_StopCrypto1();
}

void formatBlock(byte blockAddr) {
Serial.print("Reading block "); Serial.println(blockAddr);
byte buffer[18];
byte size = sizeof(buffer);
byte status = mfrc522.MIFARE_Read(blockAddr, buffer, &size);
if (status != MFRC522::STATUS_OK) {
Serial.print("MIFARE_Read() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}

if ( (buffer[0] == (byte)~buffer[4])
&& (buffer[1] == (byte)~buffer[5])
&& (buffer[2] == (byte)~buffer[6])
&& (buffer[3] == (byte)~buffer[7])
&& (buffer[0] == buffer[8])
&& (buffer[1] == buffer[9])
&& (buffer[2] == buffer[10])
&& (buffer[3] == buffer[11])
&& (buffer[12] == (byte)~buffer[13])
&& (buffer[12] ==        buffer[14])
&& (buffer[12] == (byte)~buffer[15])) {
Serial.println("Block has correct Block Value format.");
}
else {
Serial.println("Writing new value block...");
byte valueBlock[] = { 0,0,0,0,  255,255,255,255,  0,0,0,0,   blockAddr,~blockAddr,blockAddr,~blockAddr };
status = mfrc522.MIFARE_Write(blockAddr, valueBlock, 16);
if (status != MFRC522::STATUS_OK) {
Serial.print("MIFARE_Write() failed: ");
Serial.println(mfrc522.GetStatusCodeName(status));
}
}
} // Fim do formatBlock()




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ê pode passar o cartão sobre o leitor do módulo e você verá uma imagem igual a imagem descrita abaixo:


Imagem do Serial Monitor:






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 !!