License

Public Domain

Tags
Recommend Projects

200114-Temporizador 2 lampadas v.2.0

1 week ago 6
  • Description
  • Documents
  • BOM
  • Attachments
  • Members
  • Comments

Description

/* Projeto: João Abadia v.2.0 Nesse projeto, pode-se controlar duas lâmpada (corredor e banheiro, por exemplo) com temporização. Usa-se botões tipo campainha, sem retenção. Um clique acende a lâmpada e outro desliga. Caso a lâmpada não seja desligada, o temporizador segue contando, dando uma "piscada", avisando o final do tempo, desligando-as no tempo determinado nas linhas "unsigned long", respectivamente "tempo corredor" e "tempo banheiro" (intervalo e intervalo11) utilizando a fórmula "=====Configurações de tempo=====". Minha sugestão é 40 minutos para o banheiro e 10 minutos para o corredor. Os tempos para "intervaloa3" e "intervalob3" devem ser de 30000, o que dará um tempo de 30 segundos para o desligamento total das lâmpadas após essas piscarem. "intervaloa2 e intervalob2" determinam o tempo que as lâmpadas piscam. (led3) é usado para acionar um odorizador de ambiente enquanto que (led4) é ligado ao botão de acionamento manual do mesmo.

Esse projeto usa o arduino nano.

https://www.tinkercad.com/things/1WdxveF9ExR-luz-temporizada-2-lampadas-attiny/editel https://easyeda.com/editor#id=2f48eb16f74e438297778abc398bbdb0 https://create.arduino.cc/editor/abadia50/9c8c7054-488b-4a24-9dbd-a4834cc00120 */

define led1 8 //led banheiro

define led2 9 //led corredor

define botao1 2 //botao corredor

define botao2 3 //botao banheiro

define led3 13 //saída para odorizador

define led4 12 //disparo odorizador

int x1 = 0; int x2 = 0; int x3 = 0; //odorizador

unsigned long tempoa1; //tempo led1 unsigned long tempoa2; //tempo led2 unsigned long tempoa3; //tempo odorizador

/ =====Configurações de tempo===== 1 minuto = 60000 ms (60000minutos) 1 segundo = 1000 ms; 30 segundos = 30000 ms (1000segundos) / unsigned long intervaloa1 = 5000; // Tempo banheiro unsigned long intervaloa2 = (intervaloa1 + 150); unsigned long intervaloa3 = (intervaloa2 + 1500);

unsigned long intervalob1 = 5000; // Tempo corredor unsigned long intervalob2 = (intervalob1 + 150); unsigned long intervalob3 = (intervalob2 + 1500);

int tempoDelay = 500; //tempo de delay

void setup() {

pinMode(botao1, INPUT); pinMode(botao2, INPUT); pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); //odorizador pinMode(led4, OUTPUT); }

void loop() {

//========== lampada1 ==========

if (x1 == 1 and digitalRead(botao1) == 1) { x1 = 0; digitalWrite (led1, LOW); delay(tempoDelay); }

if (x1 == 1) { if (millis() - tempoa1 > intervaloa1 and millis() - tempoa1 < intervaloa2) { digitalWrite(led1, LOW); }

if (millis() - tempoa1 >  intervaloa2 and (millis() - tempoa1) < intervaloa3) {
  digitalWrite(led1, HIGH);
}

if (millis() - tempoa1 >  intervaloa3) {
  digitalWrite(led1, LOW);
  x1 = 0;
}

}

if (x1 == 0 and digitalRead(botao1) == 1) { x1 = 1; digitalWrite(led1, HIGH); tempoa1 = millis(); delay(tempoDelay); }

//========== Lampada 2 ==========

if (x2 == 1 and digitalRead(botao2) == 1) { x2 = 0; digitalWrite (led2, LOW); delay(tempoDelay); }

if (x2 == 1) { if (millis() - tempoa2 > intervalob1 and millis() - tempoa2 < intervalob2) { digitalWrite(led2, LOW); }

if (millis() - tempoa2 >  intervalob2 and millis() - tempoa2 < intervalob3) {
  digitalWrite(led2, HIGH);
}

if (millis() - tempoa2 >  intervalob3) {
  digitalWrite(led2, LOW);
  x2 = 0;
}

}

if (x2 == 0 and digitalRead(botao2) == 1) { x2 = 1; digitalWrite(led2, HIGH); tempoa2 = millis(); delay(tempoDelay); }

//========== odorizador ==========

if (x3 == 1) { if (millis() - tempoa3 > 1500 and millis() - tempoa3 < 2000) { digitalWrite(led4, HIGH); } else { digitalWrite(led4, LOW); } }

if (x1 == 1 and x3 == 0) { digitalWrite(led3, HIGH); tempoa3 = millis(); x3 = 1; }

if (x1 == 0) { digitalWrite(led3, LOW); x3 = 0; }

}

Documents

Digispark copy

PCB_2020-01-15 11:44:42

BOM

Attachments

None

Members

Success
The owner does not allow comments in this project now

Comments (0)

goToTop
你现在访问的是EasyEDA海外版,使用建立访问速度更快的国内版 https://lceda.cn(需要重新注册)
如果需要转移工程请在个人中心 - 工程 - 工程高级设置 - 下载工程,下载后在https://lceda.cn/editor 打开保存即可。
有问题联系QQ 3001956291 不再提醒
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow
We use cookies to offer you a better experience. Detailed information on the use of cookies on this website is provided in our Privacy Policy. By using this site, you consent to the use of our cookies.