Codigos arduino
Módulo Rele
//Programa : Teste Módulo Rele Arduino - Botoes
//Autor : Juraci
//Porta ligada ao pino IN1 do modulo
int porta_rele1 = 7;
//Porta ligada ao pino IN2 do modulo
int porta_rele2 = 8;
//Porta ligada ao botao 1
int porta_botao1 = 2;
//Porta ligada ao botao 2
int porta_botao2 = 3;
//Armazena o estado do rele - 0 (LOW) ou 1 (HIGH)
int estadorele1 = 1;
int estadorele2 = 1;
//Armazena o valor lido dos botoes
int leitura1 = 0;
int leitura2 = 0;
void setup()
//Define pinos para o rele como saida
pinMode(porta_rele1, OUTPUT);
pinMode(porta_rele2, OUTPUT);
//Define pinos dos botoes como entrada
pinMode(porta_botao1, INPUT);
pinMode(porta_botao2, INPUT);
//Estado inicial dos reles - desligados
digitalWrite(porta_rele1, HIGH);
digitalWrite(porta_rele2, HIGH);
void loop()
//Verifica o acionamento do botao 1
leitura1 = digitalRead(porta_botao1);
if (leitura1 != 0)
while(digitalRead(porta_botao1) != 0)
delay(100);
//Inverte o estado da porta
estadorele1 = !estadorele1;
//Comandos para o rele 1
digitalWrite(porta_rele1, estadorele1);
//Verifica o acionamento do botao 2
leitura2 = digitalRead(porta_botao2);
if (leitura2 != 0)
while(digitalRead(porta_botao2) != 0)
delay(100);
//Inverte o estado da porta
estadorele2 = !estadorele2;
//Comandos para o rele 2
digitalWrite(porta_rele2, estadorele2);
Sensor porta
/***************************************\
** juraci ENTERPRISE **
* *
** DOOR LOCK **
\***************************************/
#include <IRremote.h>
#include <LiquidCrystal.h>
int RELE_PIN = 8;
const int PinoSensor = 0;
const int RELE_PIN2 = 9;
int ValorSensor = 0;
LiquidCrystal lcd(13, 11, 7, 5, 4, 2);
int RECV_PIN = 3;
int D0=10; //Porta que comando o sentido horario
int D1=6; //Porta que comanda o sentido anti-horario
int ELED=12;
IRrecv irrecv(RECV_PIN);
decode_results results;
long VALOR_BOTAO = 909576;
long VALOR_BOTAO1 = 385288;
long VALOR_BOTAO2 = 123144;
long VALOR_BOTAO3 = 254216;
long VALOR_BOTAO4 = 647432;
long VALOR_BOTAO5 = 819464;
int seg=0,
min=23,
hor=14;
void setup()
pinMode(RELE_PIN, OUTPUT);
digitalWrite(RELE_PIN, HIGH);
pinMode(RELE_PIN2, OUTPUT);
digitalWrite(RELE_PIN2, HIGH);
pinMode(1, INPUT);
pinMode(D0,OUTPUT);
pinMode(D1,OUTPUT);
pinMode(ELED,OUTPUT);
[Link](16, 2);
[Link](0,0);
[Link]("juraci");
[Link](6,1);
[Link]("ENTERPRISE");
[Link](9600);
[Link]();
void loop(){
int pIn = digitalRead(1); //faz a leitura da porta 2 e armazena na variável
if(pIn == LOW){ //caso possua uma tensão com nível lógico baixo:
[Link]();
[Link](0,0);
[Link](" ACESSO ");
[Link](5,1);
[Link]("NEGADO");
digitalWrite(D0, HIGH); //acende o LED na porta 12
delay(960);
else{
digitalWrite(D0, LOW);
if ([Link](&results)) {
if(([Link]) == VALOR_BOTAO){ //Se o botao for pressionado
[Link]();
[Link](0,0);
[Link](" ACESSO ");
[Link](5,1);
[Link]("NEGADO");
digitalWrite(D0,HIGH);
delay(950);
else{
digitalWrite(D0,LOW);
if ([Link](&results)) {
if(([Link]) == VALOR_BOTAO1){ //Se o botao for pressionado
[Link]();
[Link](0,0);
[Link](" ACESSO ");
[Link](5,1);
[Link]("AUTORIZADO");
digitalWrite(D1,HIGH);
delay(950);
else{
digitalWrite(D1,LOW);
if(([Link]) == VALOR_BOTAO2){ //Se o botao for pressionado
digitalWrite(ELED, HIGH);
if(([Link]) == VALOR_BOTAO4){
digitalWrite(ELED, LOW);
ValorSensor = analogRead(PinoSensor);
[Link](0,1);
[Link](ValorSensor);
if (ValorSensor > 660){
else{
if(([Link]) == VALOR_BOTAO4){
digitalWrite(RELE_PIN, HIGH);
if(([Link]) == VALOR_BOTAO3){
digitalWrite(RELE_PIN, LOW);
if(([Link]) == VALOR_BOTAO4){
digitalWrite(RELE_PIN2, HIGH);
if(([Link]) == VALOR_BOTAO5){
digitalWrite(RELE_PIN2, LOW);
static unsigned long ult_tempo = 0;
int tempo = millis();
if(tempo - ult_tempo >= 1000) {
ult_tempo = tempo;
seg++;
if(seg>=60) {
seg = 0;
min++;
if(min>=60) {
min = 0;
hor++;
if(hor>=24) {
hor=0;
min=0;
[Link](8,0);
[Link](hor);
[Link](10,0);
[Link](":");
[Link](11,0);
[Link](min);
[Link](13,0);
[Link](":");
[Link](seg);
delay(1000);
[Link](); // Receive the next value
Código Fonte do Arduinoalarme incendio
1 #define LED_G 2
2 #define LED_R 3
3 #define BUZZER 4
4 #define LM35 0
5 #define LIMITE 40
6
7 int valorLido = 0;
8 float temperatura = 0;
9
10 void setup()
11 {
12 // Configuracao de pinos de saida
13 pinMode(LED_G, OUTPUT);
14 pinMode(LED_R, OUTPUT);
15 pinMode(BUZZER, OUTPUT);
16 // Inicializando valores dos leds
17 digitalWrite(LED_G, HIGH);
18 digitalWrite(LED_R, LOW);
19 }
20 void loop()
21 {
22 // Realiza a leitura da porta analogica
23 int valorLido = analogRead(LM35);
24 // 5V / 1023 = 0.00488 (precisão do A/D)
25 temperatura = (valorLido * 0.00488);
26 // Converte milivolts para graus celcius
27 temperatura = temperatura * 100;
28 // Realizacao de testes de temperatura
29 if (temperatura >= LIMITE)
30 {
31 // Ligar led vermelho e buzzer | desligar led verde
32 digitalWrite(LED_G, LOW);
33 digitalWrite(LED_R, HIGH);
34 digitalWrite(BUZZER, HIGH);
35 }
36 else
37 {
38 // Ligar led verde | desligar led vermelho e buzzer
39 digitalWrite(LED_G, HIGH);
40 digitalWrite(LED_R, LOW);
41 digitalWrite(BUZZER, LOW);
42 }
43 // Tempo de amostragem
44 delay(500);
45 }
Codigo sensor pir detecção ovimentos
int pirPin = 2 ; // digital de 2
vazio de configuração ( ) {
Serial . começar ( 9600 ) ;
pinMode ( pirPin , ENTRADA ) ;
vazio laço ( ) {
int pirVal = digitalRead ( pirPin ) ;
se ( pirVal == LOW ) { // foi detectado movimento
de série . println ( "Motion detectado" ) ;
delay ( 2000 ) ;