Una idea interesante fue inventada e implementada por un maestro con el apodo carolinebuttet1.
En el mundo hay alrededor de 770 millones de cámaras de vigilancia. Algunos de ellos no tienen una contraseña o hay una contraseña predeterminada. Esto los hace fácilmente accesibles para cualquier persona con conexión a Internet.
Esta mirilla virtual, que fue inventada por un dispositivo maestro para monitorear algunas de estas cámaras sin protección. La elección de la cámara es aleatoria, es decir. cada vez que cierra y vuelve a abrir el ojo, puede ver la imagen de otra cámara de video seleccionada al azar.
Para implementar esta idea, el maestro utilizó el siguiente equipo:
-Arduino Micro
Fotorresistor
-Raspberry Pi 3 Modelo B
- Pantalla Raspberry Pi
-Caja de madera
Mirilla de la puerta
-Taladro
Destornillador
La mirilla virtual consta de dos partes distintivas: la Raspberry Pi (con una pantalla pequeña) y Arduino Micro. El Raspberry Pi está conectado a Internet y a un sitio web que transmite un canal aleatorio desde la cámara.
Hay un sensor de luz dentro del ojo para determinar si está abierto o cerrado. Cada vez que se cierra la mirilla, la señal se envía al Raspberry Pi (a través de Arduino Micro) y el sitio web cambia a otra cámara. Los datos de la cámara que el asistente utilizó para este proyecto se tomaron del sitio Insecam , que registra más de 73,000 cámaras sin protección.
Sitio web para mostrar.
Para su mirilla virtual, el asistente creó un sitio web con los datos que recopiló de insecam. Puede hacerlo sin crear un sitio y usar esto el enlace (cambia la cámara web cada vez que presiona la barra espaciadora)
Configurar Raspberry Pi.
Asegúrese de que su Raspberry Pi esté en funcionamiento (consulte Esta guiasi eres nuevo en Raspberry Pi). Conecte la pantalla LCD a la Raspberry Pi. Debe configurar su Raspberry Pi para que se inicie con una página web. Cómo hacer esto, puedes ver aqui.
Arduino setup.
Nota: para realizar este proyecto, su placa Arduino debe admitir una biblioteca de teclado. Como se menciona en página de la biblioteca:
Modelos compatibles: placas base basadas en 32u4 y SAMD (familia de Leonardo, Esplora, Zero, Due y MKR)
Conecte su sensor de luz a Arduino
Descargue el código en Arduino.
El código primero comienza la calibración durante 5 segundos (durante los cuales se registrarán los valores mínimo y máximo para el fotosensor), y luego envía una señal de tecla de "espacio" cada vez que el valor de iluminación es inferior al valor (es decir, el ojo está cerrado).
CÓDIGO INICIO
previousMillis = 0
// debido a que la luz siempre varía, calibraremos el fotosesor en cada arranque.
tiempo de calibración largo = 5000;
inicio largoMillis = 0;
// el valor máximo para un sensor analógico es 1024
int sensorMin = 1024;
int sensorMax = 0;
int promedio = 0;
umbral int = 5;
bool lastState = true;
bool isClosed = true;
configuración nula () {
Serial.begin (9600); // abre el puerto serie
Keyboard.begin (); // inicia la biblioteca de teclado
startMillis = millis (); // inicia el contador
}
bucle vacío () {
// estabiliza la lectura en los primeros 5 segundos
// luego, detecta una variación en la estabilización.
unsigned long currentMillis = millis (); // establece millis como la hora actual
int sensorValue = analogRead (A0); // lee el sensor
if (currentMillis-startMillis & lt; tiempo de calibración) {
// mientras estemos en el tiempo de calibración
// durante este tiempo de calibración, abra y cierre la mirilla para calibrarlo.
int elapsedtime = currentMillis - startMillis;
Serial.println (tiempo transcurrido);
Serial.println (sensorMin);
Serial.println (sensorMax);
if (sensorValue & lt; sensorMin) {// registra el valor máximo y mínimo para el sensor
sensorMin = sensorValue;
promedio = (sensorMin + sensorMax) / 2;
}
if (sensorValue & gt; sensorMax) {
sensorMax = sensorValue;
promedio = (sensorMin + sensorMax) / 2;
}
retraso (100); // retraso
}
else {// si la calibración está hecha
if (sensorValue & gt; average + umbral) {// detecta si la mirilla está abierta o cerrada
isClosed = false;
if (lastState! = isClosed) {
}
}
más {
isClosed = true;
if (lastState! = isClosed) {
Keyboard.print (""); // envía una señal clave si la mirilla está abierta
}
}
lastState = isClosed;
retraso (100);
}
}
FIN DEL CÓDIGO.
A continuación, debe instalar el equipo en la caja.
Taladre un agujero en la mirilla de la puerta para instalar el fotosensor (determinará si su mirilla está abierta o no, y luego activa el cambio de la cámara web). Taladra un agujero en la caja. Antes de la mirilla de la puerta, fije la pantalla de frambuesa (el maestro usó velcro).
Conectar Arduino:
Conecte el fotosensor al Arduino
Pase el cable USB entre el Rpi y el Arduino. Arduino actuará como un teclado y enviará una barra espaciadora a la Raspberry Pi.
Después de que todo esté montado, puede iniciar la mirilla virtual.
Coloque el dispositivo en la pared.
Conecte su Rapsberry Pi a la corriente
Ahora tendrá 5 segundos para calibrar el fotosensor ubicado en la puerta, debe abrirlo y cerrarlo varias veces.
¡Ahora la mirilla virtual debería funcionar!
En mi opinión, una gran idea e implementación. Por supuesto, puede instalar el dispositivo en otro caso, se puede finalizar el código y hacer una lista de cámaras con una conexión preferida, pero todos pueden hacerlo por su cuenta.