Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Este instructivo ayudará a explicar cómo configurar y usar nuestro sistema de hogar inteligente mediante el software Matlab y el hardware Raspberry Pi. Al final de este instructivo, ¡debería poder usar nuestro producto por completo con facilidad!
Paso 1: Paso 1: Piezas y materiales necesarios
- Frambuesa pi
- Placa de pruebas (x2)
- Sensor de movimiento PIR
- Módulo LCD
- Luz LED
- Condensador
- Cámara Raspberry Pi
- Micro servomotor
- Alambres de Doble Extremo (20)
Paso 2: Paso 2: Declaración del problema
Los problemas que nuestro producto está tratando de abordar son los controles manuales de luz, el control de temperatura interior y la eficiencia energética. Nos enfocamos en la cantidad de energía que usa el hogar promedio y queríamos encontrar formas de reducir el uso de energía. Las luces que se dejan encendidas y las temperaturas innecesarias del termostato representan un uso de energía innecesario muy alto. La luz se activará por movimiento hasta donde se apague cuando una habitación esté vacía, y el termostato se ajustará a una temperatura ambientalmente eficiente basada en la lectura de la temperatura exterior.
Paso 3: Paso 3: Configuración del sensor de movimiento
El sensor de movimiento está conectado a un pin de alimentación de 3,3 V, un pin de tierra y un pin digital de su elección. Están conectados a los puertos VCC, GND y OUT del sensor de movimiento, respectivamente. El sensor de movimiento detectará cuando alguien está cerca y activa el LED para indicar que las luces están encendidas. Una vez que ya no se detecta movimiento, el LED se apagará solo. El código es el siguiente:
si bien es cierto
motionDetected = readDigitalPin (rpi, 3);
si motionDetected == 1
writeDigitalPin (rpi, 16, 1)
demás
writeDigitalPin (rpi, 16, 0)
fin
fin
Paso 4: Paso 4: Pantalla del módulo LCD
La pantalla LCD toma los datos de temperatura de la información meteorológica en vivo proporcionada por Internet. A continuación, el módulo LCD muestra la lectura de temperatura actual. En Matlab, la temperatura se lee y luego pasa por un ciclo if para determinar cuánto ajustar la configuración de temperatura en el hogar. El código es el siguiente:
url = 'https://forecast.weather.gov/MapClick.php? lat = 35.9606 & lon = -83.9207 & FcstType = json';
datos = webread (url);
a = data.currentobservation. Temp;
fprintf ('La temperatura exterior es% s / n', a)
x = str2num (a);
si x> 80
fprintf ('Baje el termostato 15 grados')
writeDigitalPin (rpi, 26, 1)% enciende las luces
elseif x> 75 && x <80
fprintf ('Apagar el termostato / n')
writeDigitalPin (rpi, 26, 1)% enciende las luces
elseif x 55
fprintf ('Sube el termostato 10 grados / n')
writeDigitalPin (rpi, 26, 0)% apaga las luces
elseif x 45
fprintf ('Sube el termostato 20 grados / n')
writeDigitalPin (rpi, 26, 0)% apaga las luces
elseif x 40
fprintf ('Suba el termostato 25 grados / n')
writeDigitalPin (rpi, 26, 0)% apaga las luces
elseif x 30
fprintf ('Sube el termostato 35 grados / n')
demás
fprintf ('Gira el termostato hasta 65 grados / n')
fin
Paso 5: Paso 5: Módulo de servomotor
El Motor Servo Module representa la capacidad de abrir y cerrar las persianas. Cuando sea necesario enfriar la casa, las persianas se cerrarán para dejar entrar menos calor. Cuando sea necesario calentar la casa, las persianas se abrirán para que se caliente más rápido. El servo decide qué hacer al recibir información del usuario que interactúa con un menú de opciones. El código del motor es el siguiente:
s = servo (rpi, 3)
writeDigitalPin (rpi, 4, 1)
writePosition (s, 45)
temp_sys = menu ('¿Cómo te sientes?')% ajustador de temperatura
si temp_sys == 1% caliente
writeDigitalPin (rpi, 26, 1)% enciende las luces
writePosition (s, 0)% gira el motor en sentido horario / antihorario
cierra las persianas, apaga las luces
elseif temp_sys == 2% frío
writeDigitalPin (rpi, 26, 0)% apaga las luces
writePosition (s, 180)% gira el motor CCW / CW
abre las persianas, enciende las luces
elseif temp_sys == 3% justo
fprintf ('Manteniendo el estado de la temperatura. / n')
fin
Paso 6: Paso 6: Cámara con sensor de movimiento
La cámara con sensor de movimiento toma una foto de quienes entran o salen de una habitación. Elegimos esto como una característica de seguridad adicional para aquellos que sienten curiosidad por saber quién ha estado en su hogar. Cuando el sensor de movimiento detecta movimiento, el código Matlab le dice a la cámara que tome una imagen y la muestre. El código es el siguiente:
i = 0
cámara clara
cam = tablero de la cámara (rpi);
mientras que i == 0
instantánea (cam); % de búfer de imagen clara
img = instantánea (cámara);
imagesc (img);
fin