quarta-feira, 21 de dezembro de 2016
Curso de Arduino em Rio Claro
Módulo - INICIANTE
Apresentação do Arduino
Alimentação do Arduino
Arduino Uno
IDE e sua instalação
Configuração da IDE
Primeiro Sketch – Blink
Ambiente Autodesk Circuits - circuits.io
Sketch - Semáforo interativo
Sketch - Liga LED com botão utilizando o PULLUP interno
quinta-feira, 9 de julho de 2015
Projeto que envia mensagens para um display através do celular, mostra horas e liga 8 relés.
Telas criadas pelo Editor do OSC
Marcia e Davi, aparecem na primeira linha do display quando acionado o push da tela do celular, e as outras mensagens na segunda linha substituindo a anterior a cada toque.
Nestas telas também envia a hora para o display e liga relés
sexta-feira, 3 de julho de 2015
Criando um relógio com Arduíno Mega, um RTC e um display
Biblioteca virtuaborixRTC
//Programa: Imprime data e hora no display lcd 16x2
//Baseado no virtuabotixRTC
//Biblioteca virtuabotixRTC
#include <virtuabotixRTC.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
// Determina os pinos ligados ao modulo
// RTC(clock, data, rst)
virtuabotixRTC RTC(6, 7, 8);
//Meu Logo
byte a[8]= {B11111,B11111,B11000,B11111,B11111,B00000,B00000,B00000,};
byte b[8]= {B11111,B11111,B10001,B11011,B11011,B11011,B11111,B11111,};
byte c[8]= {B11111,B11111,B00011,B11111,B11111,B00000,B00000,B00000,};
byte d[8]= {B11111,B11011,B11011,B11011,B11011,B11011,B11011,B11111,};
void setup()
{
lcd.init();
lcd.backlight();
lcd.createChar(1, a);
lcd.createChar(2, b);
lcd.createChar(3, c);
lcd.createChar(4, d);
//Coloca meu logo no final do display, utilizando as colunas 13, 14 e 15
lcd.setCursor(13,0); //Coloca o cursor na coluna 0, linha 0
lcd.write(1); //Escreve o simbolo
lcd.setCursor(14,0); //Coloca o cursor na coluna 0, linha 0
lcd.write(2); //Escreve o simbolo
lcd.setCursor(15,0); //Coloca o cursor na coluna 0, linha 0
lcd.write(3); //Escreve o simbolo
lcd.setCursor(14,1); //Coloca o cursor na coluna 0, linha 0
lcd.write(4); //Escreve o simbolo
// Informacoes iniciais de data e hora
/*depois da data e hora ajustada, comente a linha abaixo e compile novamente,
ou seja, a hora ja foi armazenada no RTC e agora se você "recompilar"
a hora e a data já estão em andamento.
O Macete é colocar a hora com um minuto adiantado e quado chegar a três segundos antes
da hora que você ajustou clique para carregar, depois é só recompilar comentando a linha
abaixo
*/
// (segundos, minutos, hora, dia da semana, dia do mes, mes, ano)
//RTC.setDS1302Time(00, 47, 20, 6, 03, 07, 2015);
}
void loop()
{
// Le as informacoes do CI
RTC.updateTime();
// Imprime as informacoes no serial monitor
lcd.setCursor(0,0);
//Serial.print("Data: ");
// Chama a rotina que imprime o dia da semana
printdayofweek(RTC.dayofweek);
//lcd.print(" ");
lcd.print(RTC.dayofmonth);
lcd.print("/");
lcd.print(RTC.month);
lcd.print("/");
lcd.print(RTC.year);
lcd.setCursor(0,1);
// Adiciona um 0 caso o valor da hora seja <10
if (RTC.hours < 10)
{
lcd.print("0");
}
lcd.print(RTC.hours);
lcd.print(":");
// Adiciona um 0 caso o valor dos minutos seja <10
if (RTC.minutes < 10)
{
lcd.print("0");
}
lcd.print(RTC.minutes);
lcd.print(":");
// Adiciona um 0 caso o valor dos segundos seja <10
if (RTC.seconds < 10)
{
lcd.print("0");
}
lcd.print(RTC.seconds);
delay( 1000);
}
void printdayofweek(int day)
{
switch (day)
{
case 1:
lcd.print("Sun");
break;
case 2:
lcd.print("Mon");
break;
case 3:
lcd.print("Tue");
break;
case 4:
lcd.print("Wed");
break;
case 5:
lcd.print("Thu");
break;
case 6:
lcd.print("Fri");
break;
case 7:
lcd.print("Sat");
break;
}
}
quinta-feira, 2 de julho de 2015
Sensor de temperatura e umidade com arduino e um display
Ligação de um Display lendo temperatura e umidade pelo sensor.
Com controle de backlight
#include "DHT.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define DHTPIN 22 //pino com o sinal do sensor
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(0x27,16,2);
void setup(void) {
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("TK Control");
dht.begin();
}
void loop() {
float temperature, humidity;
humidity = dht.readHumidity();
temperature = dht.readTemperature();
delay(2000);
lcd.clear();
char tempF[6];
char humF[6];
dtostrf(temperature, 5, 1, tempF);
dtostrf(humidity, 2, 0, humF);
lcd.setCursor(0,0);
lcd.print("Temp:");
lcd.print(tempF);
lcd.print((char)223);
lcd.print("C ");
lcd.setCursor(0,1);
lcd.print("Umid: ");
lcd.print(humF);
lcd.print("%");
delay(3000);
lcd.setCursor(0,0);
lcd.print("você está vendo");
lcd.setCursor(0,1);
lcd.print("a temperatura ");
delay(3000);
lcd.setCursor(0,0);
lcd.print("Em Rio Claro ");
lcd.setCursor(0,1);
lcd.print(" ");
}
}
RFID com arduino mega, aqui funciona!!!
Montei um arduino mega com o módulo RFID, que permite ligar um relé ao passar o cartão correto e mostra as informações no display 16x2 serial.
segue o sketch
Segue a pinagem de deve ser usada para o MEGA
MOSI D51
MISO D50
SCK D52
SS D53
segue o sketch
//==============================================
//Sketch do RFID com arduino mega
//==============================================
#include <SPI.h>
#include <Wire.h>
#include <RFID.h>
#include <LiquidCrystal_I2C.h>
#define RST 9
#define SS 53
RFID rfid(SS, RST);
LiquidCrystal_I2C lcd(0x27,16,2);
int porta_rele1 = 2;
//==============================================
//Aqui coloquei minha logo que ficará no canto direito do display
//==============================================
byte a[8]= {B11111,B11111,B11000,B11111,B11111,B00000,B00000,B00000,};
byte b[8]= {B11111,B11111,B10001,B11011,B11011,B11011,B11111,B11111,};
byte c[8]= {B11111,B11111,B00011,B11111,B11111,B00000,B00000,B00000,};
byte d[8]= {B11111,B11011,B11011,B11011,B11011,B11011,B11011,B11111,};
void setup()
{
pinMode(porta_rele1, OUTPUT);
digitalWrite(porta_rele1, LOW);
lcd.init(); // initialize the lcd
lcd.backlight();
SPI.begin();
rfid.init();
lcd.createChar(1, a);
lcd.createChar(2, b);
lcd.createChar(3, c);
lcd.createChar(4, d);
lcd.setCursor(13,0); //Coloca o cursor na coluna 13, linha 0
lcd.write(1); //Escreve o simbolo
lcd.setCursor(14,0); //Coloca o cursor na coluna 14, linha 0
lcd.write(2); //Escreve o simbolo
lcd.setCursor(15,0); //Coloca o cursor na coluna 15, linha 0
lcd.write(3); //Escreve o simbolo
lcd.setCursor(14,1); //Coloca o cursor na coluna 14, linha 1
lcd.write(4); //Escreve o simbolo
}
void loop()
{
String conteudo= "";
if (rfid.isCard())
{
//mude aqui com o numero do cartão que quer que ligue o relé
//mude aqui com o numero do cartão que quer que ligue o relé
if (rfid.readCardSerial()&& rfid.serNum[0]==157 && rfid.serNum[1]==25 && rfid.serNum[2]==144 && rfid.serNum[3]==85 && rfid.serNum[4]==65)
{
lcd.setCursor(0,0);
lcd.print("Reconhecido ");
lcd.setCursor(0,1);
lcd.print("Liga Rele ");
digitalWrite(porta_rele1, HIGH);
delay (3000);
digitalWrite(porta_rele1, LOW);
lcd.setCursor(0,0);
lcd.print("PASSE ");
lcd.setCursor(0,1);
lcd.print("O CARTAO ");
}
else
{
lcd.setCursor(0,0);
lcd.print("Recusado ");
lcd.setCursor(0,1);
lcd.print(" ");
delay (2000);
lcd.setCursor(0,0);
lcd.print("PASSE ");
lcd.setCursor(0,1);
lcd.print("O CARTAO ");
}
}
rfid.halt();
delay(10);
}
sábado, 27 de junho de 2015
Ligação de um módulo de led RGB ao Arduino com Ethernet Shield controlado pelo celular
Ligação de um módulo de led RGB ao Arduino com Ethernet Shield controlado pelo celular
domingo, 3 de maio de 2015
Como criar a interface para utilizar no TouchOSC para o seu projeto.
Primeiramente deve-se instalar o TouchOSC Editor em seu PC.
Clicando com o botão direito encima da interface simulada, você pode selecionar uma das diversas ferramentas que o editor possui, neste exemplo utilizei um Push Button, um Toggle Button, um label, um battery e um Time todos horizontais.
Clicando com o botão direito encima da interface simulada, você pode selecionar uma das diversas ferramentas que o editor possui, neste exemplo utilizei um Push Button, um Toggle Button, um label, um battery e um Time todos horizontais.
veja vídeo explicativo.
Até mais.
Assinar:
Postagens (Atom)