Skip to content

Instantly share code, notes, and snippets.

@abimaelajtun
Last active February 29, 2016 10:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save abimaelajtun/967d97e4bf0f734d3780 to your computer and use it in GitHub Desktop.
Save abimaelajtun/967d97e4bf0f734d3780 to your computer and use it in GitHub Desktop.
#include <Dhcp.h>
#include <Dns.h>
#include <Ethernet.h>
#include <EthernetClient.h>
#include <EthernetServer.h>
#include <EthernetUdp.h>
//Pin utilizado para la salida del led
const int led = 8;
//Pin utilizado para la entrada del sensor NCY70
const int in_infrarrojo = 4;
//Variable utilizada para almacenar 0 o 1, donde 0 = Negro y 1 = Cualquier otro color
int val_infrarrojo = 0;
//Variable encargada de llevar el conteo de cajas
int contador = 0;
void setup() {
//Establecemos el pin del led como salida
pinMode(led,OUTPUT);
//Establecemos el pin del infrarrojo como entrada
pinMode(in_infrarrojo,INPUT);
//Establecemos la comunicacion serial a 9600 baudios
Serial.begin(9600);
//Mostramos el valor inicial del contador (Se puede visualizar en el Monitor Serie)
Serial.print("Cantidad de Cajas: ");
Serial.println(contador);
}
void loop() {
//Leemos el valor proporcionado por el sensor infrarrojo
val_infrarrojo = digitalRead(in_infrarrojo);
//Validamos si el sensor detecto algun objeto de color negro
if (val_infrarrojo == 0){
//Si se detecta un objeto de color negro apagamos el led
digitalWrite(led,0);
//Hasta que se vuelva a detectar nuevamente algun otro color que no sea el negro
while(val_infrarrojo == 0){
//Si val_infrarrojo no cambia de valor, es decir el cero, significa que el objeto aún sigue debajo del sensor
val_infrarrojo = digitalRead(in_infrarrojo);
}
//Saldrá del ciclo cuando, el sensor detecte un color distinto del negro, es decir distinto de cero
//Aumentamos el valor del contador
contador++;
//Mostramos la cantidad de cajas que han pasado debajo del sensor
Serial.print("Cantidad de Cajas: ");
Serial.println(contador);
}else{//En caso contrario el led estará encendido
digitalWrite(led,1);
}
}
@abimaelajtun
Copy link
Author

Diagrama interno del sensor Infrarrojo CNY70

cny70interno

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment