Professional Documents
Culture Documents
Arduino 2019
Arduino 2019
h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int sensor1 = 5;
int sensor2 = 6;
int sensor3 = 7;
int sensor4 = 8;
int valorsensor1 = 0;
int valorsensor2 = 0;
int valorsensor3 = 0;
int valorsensor4 = 0;
int led1 = 9;
int led2 = 10;
int led3 = 11;
int led4 = 12;
int led5 = 13; // alarma
int cuenta1= 0;
int cuenta2= 0;
int cuenta3= 0;
int cuenta4= 0;
int total = 0 ;
void setup()
{
digitalWrite(led5,HIGH);
delay(2000);
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("C1 C2 C3 C4 SUMA");
pinMode(sensor1, INPUT);
pinMode(sensor2, INPUT);
pinMode(sensor3, INPUT);
pinMode(sensor4, INPUT);
pinMode (led1,OUTPUT);
pinMode (led2,OUTPUT);
pinMode (led3,OUTPUT);
pinMode (led4,OUTPUT);
pinMode (led5,OUTPUT);
digitalWrite(led5,LOW);
}
void loop()
{
checkCuenta1();
checkCuenta2();
checkCuenta3();
checkCuenta4();
lcd.setCursor(0,1);
lcd.print(cuenta1);
lcd.setCursor(3,1);
lcd.print(cuenta2);
lcd.setCursor(6,1);
lcd.print(cuenta3);
lcd.setCursor(9,1);
lcd.print(cuenta4);
lcd.setCursor(13,1);
lcd.print(total);
void checkCuenta1()
{
valorsensor1=digitalRead(sensor1);
if(valorsensor1==HIGH)
{
digitalWrite(led1,HIGH);
cuenta1++;
total=total+1; // si cuenta rapido entonces {while(digitalRead(sensor1)!=1)
delay(100);}
while(valorsensor1 == HIGH){
valorsensor1 = digitalRead(sensor1);
}
digitalWrite(led1,LOW);
}
if(cuenta1==20)
{
digitalWrite(led5,HIGH);
lcd.clear();
lcd.setCursor(2,1);
lcd.println("CAJA1 LLENA");
digitalWrite(led1,HIGH);
delay (1000);
digitalWrite(led5,LOW);
cuenta1=0;
lcd.clear();
digitalWrite(led1,LOW);
delay(50);
lcd.setCursor(3,1);
lcd.print(cuenta2);
lcd.setCursor(6,1);
lcd.print(cuenta3);
lcd.setCursor(9,1);
lcd.print(cuenta4);
lcd.setCursor(13,1);
lcd.print(total);
}
}
void checkCuenta2()
{
valorsensor2=digitalRead(sensor2);
if(valorsensor2==HIGH)
{
digitalWrite(led2,HIGH);
cuenta2++;
total=total+1; // si cuenta rapido entonces {while(digitalRead(sensor1)!=1)
delay(100);}
while(valorsensor2 == HIGH){
valorsensor2 = digitalRead(sensor2);
}
digitalWrite(led2,LOW);
}
if(cuenta2==10)
{
digitalWrite(led5,HIGH);
lcd.clear();
lcd.setCursor(2,1);
lcd.println("CAJA2 LLENA");
digitalWrite(led2,HIGH);
delay (2000);
digitalWrite(led5,LOW);
cuenta2=0;
lcd.clear();
digitalWrite(led2,LOW);
delay(50);
lcd.setCursor(3,1);
lcd.print(cuenta2);
lcd.setCursor(6,1);
lcd.print(cuenta3);
lcd.setCursor(9,1);
lcd.print(cuenta4);
lcd.setCursor(13,1);
lcd.print(total);
}
}
void checkCuenta3()
{
valorsensor3=digitalRead(sensor3);
if(valorsensor3==HIGH)
{
digitalWrite(led3,HIGH);
cuenta3++;
total=total+1; // si cuenta rapido entonces {while(digitalRead(sensor1)!=1)
delay(100);}
while(valorsensor3 == HIGH){
valorsensor3 = digitalRead(sensor3);
}
digitalWrite(led3,LOW);
}
if(cuenta3==22)
{
digitalWrite(led5,HIGH);
lcd.clear();
lcd.setCursor(2,1);
lcd.println("CAJA3 LLENA");
digitalWrite(led3,HIGH);
delay (2000);
digitalWrite(led5,LOW);
cuenta3=0;
lcd.clear();
digitalWrite(led3,LOW);
delay(50);
lcd.setCursor(3,1);
lcd.print(cuenta2);
lcd.setCursor(6,1);
lcd.print(cuenta3);
lcd.setCursor(9,1);
lcd.print(cuenta4);
lcd.setCursor(13,1);
lcd.print(total);
}
}
void checkCuenta4()
{
valorsensor4=digitalRead(sensor4);
if(valorsensor4==HIGH)
{
digitalWrite(led4,HIGH);
cuenta4++;
total=total+1; // si cuenta rapido entonces {while(digitalRead(sensor1)!=1)
delay(100);}
while(valorsensor4 == HIGH){
valorsensor4 = digitalRead(sensor4);
}
digitalWrite(led4,LOW);
}
if(cuenta4==23)
{
digitalWrite(led5,HIGH);
lcd.clear();
lcd.setCursor(0,1);
lcd.println("CAJA #4 LLENA ");
digitalWrite(led4,HIGH);
delay (2000);
digitalWrite(led5,LOW);
cuenta4=0;
lcd.clear();
digitalWrite(led4,LOW);
delay(50);
lcd.setCursor(3,1);
lcd.print(cuenta2);
lcd.setCursor(6,1);
lcd.print(cuenta3);
lcd.setCursor(9,1);
lcd.print(cuenta4);
lcd.setCursor(13,1);
lcd.print(total);
}
}