Taula de continguts:
- Pas 1: LED sensible a la llum
- Pas 2: Mini interruptor d’alimentació
- Pas 3: segona fotocèl·lula
- Pas 4: LED RGB
- Pas 5: sensor de temperatura
- Pas 6: Motorreductor DAGU
- Pas 7: Codi
Vídeo: Projecte EF230 Smart Home: 7 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
Peces i materials necessaris:
- 1 Arduino MKR 1000
- 3 taules de pa
- 2 mini fotocèl·lules
- 1 transistors NPN
- 1 mini interruptor d’alimentació
- 1 LED - RGB (4 puntes)
- 1 LED (color que trieu)
- 1 díode 1N4148
- 1 resistències de 10K Ohm
- Resistència de 5 100 Ohm
- 1 sensor de temperatura TMP36
- 1 motor DAGU 48: 1 Ratio Gearmotor
- 25 cables de pont
- Cable USB
- Programa MATLAB
-
Guia d'experimentació SIK per a la placa Arduino 101 / Genuino 101 - Enllaç Guia d'experimentació SIK
Aquest projecte detalla el disseny conceptual d’un sistema de llar intel·ligent que utilitza les dades per ajudar els propietaris a optimitzar el seu ús i seguretat d’energia. Inclou un sensor de llum per encendre llums exteriors a la nit, un sensor de llum per a seguretat i un sensor de temperatura i ventilador per al control de temperatura interior.
Pas 1: LED sensible a la llum
- La configuració LED sensible a la llum està dissenyada per representar les llums exteriors d’una casa que s’encén a la nit.
- Quan la mini fotocèl·lula detecta una quantitat reduïda de llum, el LED s’encendrà.
- Per a una llar intel·ligent, això té implicacions energètiques i de seguretat. Estalviarà energia deixant els llums apagats durant el dia i proporcionarà més seguretat a la nit.
- El cablejat i la configuració exactes d’aquesta part del projecte es poden trobar a l’experiment 7 de la Guia d’experiments SIK.
Pas 2: Mini interruptor d’alimentació
- El canvi és el primer pas del procés de seguretat de la casa intel·ligent.
- Quan estigui activat, el commutador iniciarà una resposta preguntant a l'usuari si vol entrar al mode "Inici" o "Aus".
- Si se selecciona el mode "Inici", la seguretat es considerarà desarmada, però si seleccioneu el mode "Fora" s'armarà el sistema de seguretat.
- El cablejat d'aquesta part del projecte es pot trobar a l'experiment 6 de la Guia de l'experiment. Als efectes de la casa intel·ligent, no cal incloure els LED i els seus cables de connexió que es troben a l’experiment 6.
Pas 3: segona fotocèl·lula
- La segona fotocèl·lula serveix com a sensor de moviment per al sistema de seguretat de la casa intel·ligent.
- El sensor només s'utilitza quan el sistema es posa en mode "Away", tal com es descriu al pas anterior.
- Si la fotocèl·lula experimenta una disminució de la quantitat de llum que rep, ho reconeix com a moviment a l'interior de la casa.
- La configuració d'aquesta part del projecte es troba a l'experiment 7 de la Guia d'experimentació SIK. Tot i això, només cal incloure la fotocèl·lula i els seus cables de connexió al cablejat.
Pas 4: LED RGB
- El LED RGB s’utilitza conjuntament amb el mini interruptor d’alimentació i la segona fotocèl·lula per al sistema de seguretat de la casa intel·ligent.
- Els tres colors diferents s’utilitzen com a indicadors per al resident de la casa intel·ligent.
- Quan el sistema es posa en mode "Inici", el LED es torna blau. Quan el sistema es col·loca en mode "Away", el LED es posa de color verd. Quan s’activa la fotocèl·lula que s’utilitza com a sensor de moviment, la llum parpelleja de vermell.
- El cablejat del LED RGB es pot trobar a l’experiment 3 de la Guia de l’experiment SIK.
Pas 5: sensor de temperatura
- El sensor de temperatura és una part important de la conservació de l’energia a la casa intel·ligent.
- El resident pot introduir la temperatura desitjada per a la seva llar quan s’utilitza la llar intel·ligent.
- El sensor de temperatura és com el sistema sap a quina distància es troba la temperatura real de la temperatura desitjada.
- La configuració del sensor de temperatura es troba a l’experiment 9 de la Guia de l’experiment SIK.
Pas 6: Motorreductor DAGU
- El motor permet a la casa intel·ligent regular la temperatura de la casa en funció de la temperatura desitjada i de les lectures del sensor de temperatura.
- Actuant com a unitat de corrent altern a la llar, el motor gira a diferents velocitats en funció de quant sigui més alta la temperatura real que la temperatura desitjada. Com més gran sigui la diferència, més ràpid gira el motor.
- El cablejat del motor es troba a la Guia de l’experiment de l’experiment 11.
Pas 7: Codi
- El codi de la casa intel·ligent inclou diverses interfícies d’usuari que permeten al resident entendre fàcilment el seu funcionament i canviar fàcilment la configuració.
- Amb el sistema de casa intel·ligent, el resident rebrà un avís per correu electrònic si el sensor de moviment s’activa mentre estan fora.
- L'únic canvi que cal fer és inserir la informació per al correu electrònic del remitent i l'adreça de correu electrònic del destinatari.
netejar a; clar s; clar m; clc; tancar-ho tot; % Esborreu les variables arduino i servo perquè es puguin redefinir cada vegada perquè el codi s'executi de manera eficaç ("clear m" és necessari perquè un dels bucles while funcioni correctament) a = arduino (); % Estableix la variable arduino
s = servo (a, 'D6'); % Estableix la variable servo
% Inicialitzeu les variables de correu electrònic per al correu electrònic d'advertència del sistema de seguretat
correus electrònics = {'insereix l'adreça del destinatari'}; % Matriu de correus electrònics als quals s'envia el correu electrònic de seguretat
% Configuració de les preferències de correu electrònic necessàries per utilitzar Gmail per enviar missatges des de
setpref ('Internet', 'E_mail', 'adreça de correu electrònic del remitent');
setpref ('Internet', 'SMTP_Username', 'nom d'usuari del remitent');
setpref ('Internet', 'SMTP_Password', 'contrasenya del remitent');
atrezzo = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'true');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory'); props.setProperty ('mail.smtp.socketFactory.port', '465');
% Assumpte del correu electrònic i variables de text
subj = 'Alerta d'intrusos a casa vostra';
text = 'Hola, aquest és el vostre sistema de seguretat Smart Home que us informa que s'ha detectat moviment fora de casa vostra. Hem pres les mesures necessàries i ens hem posat en contacte amb les autoritats. Cuidat.';
tot i que és cert
prompt = {'Introduïu la temperatura de casa desitjada (entre 65F i 85F):'}; % Sol·licita el menú d'entrada de l'usuari
dlgtitle = 'Selecció de temperatura'; % Títol per al menú d'entrada de l'usuari
dims = [1 30]; % Dimensions del menú d'entrada de l'usuari
definput = {'72'}; % Entrada per defecte que apareix quan s'obre el menú per primera vegada
tempsel_array = inputdlg (prompt, dlgtitle, dims, definput); % Menú emergent d'entrada d'usuari que desarà el número introduït en una matriu
if ~ isempty (tempsel_array)% Si la matriu NO està buida
tempsel_char = cell2mat (tempsel_array); % Converteix la matriu en una cadena de caràcters
tempsel = str2double (tempsel_char); % Converteix la cadena de caràcters en números
thingSpeakWrite (chID, tempsel, 'WriteKey', writeKey, 'Camps', 1); % Escriviu la temperatura seleccionada al vostre canal ThingSpeak
break% Trenca del bucle while perquè el menú no aparegui diverses vegades
else% Si l'usuari fa clic a cancel·la en lloc d'introduir una temperatura
msg1 = msgbox ('No s'ha seleccionat cap temperatura, per defecte a 85F', 'Atenció!'); % Missatge que es mostra a l'usuari després de fer clic a cancel·la
waitfor (msg1); % Espereu que el quadre de missatges es tanqui abans de continuar
tempsel = 85; % Estableix la temperatura a l'establerta al quadre de missatges
thingSpeakWrite (chID, tempsel, 'WriteKey', writeKey, 'Camps', 1); % Escriviu la temperatura seleccionada al vostre canal ThingSpeak
break% Trenca del bucle while perquè el menú no aparegui diverses vegades
final
final
tot i que és cert
chID = 745517; % Identificador de canal ThingSpeak
writeKey = 'G9XOQTP8KOVSCT0N'; % Clau per accedir al canal ThingSpeak
% Inicialitzeu els sensors per obtenir dades
tempread = readVoltage (a, 'A3'); % Llegiu la tensió del sensor de temperatura
lightl1 = readVoltage (a, 'A2'); % Nivell de llum per al fotoresistor que va al LED vermell
lightl2 = readVoltage (a, 'A5'); Nivell de llum per al fotoresistor que va al sistema de seguretat
switchv = readVoltage (a, 'A0'); % Del valor del commutador
% Converteix les dades de temperatura de tensió a graus Fahrenheit
tempC = (tempread - 0,5) * 100; % Converteix el voltatge en temperatura en centígrads
tempF = (tempC * 9/5) + 32; % Converteix la temperatura en centígrads a Fahrenheit
% Inicialitzeu els números de pin del LED multicolor
redp = 'D9'; % Pin per a llum vermella del LED
greenp = 'D10'; % Pin per a llum verda del LED
bluep = 'D11'; % Pin per a llum blava del LED
si tempsel <tempF% Si la temperatura seleccionada és superior a la temperatura ambient
writePosition (s, 1); % Servo començarà a moure's
pausa (10)% Servo continuarà girant durant 10 segons per indicar que la CA s'apagaria després d'un temps especificat
writePosition (s, 0); % Apagueu el ventilador per continuar el codi sense activar-lo
tempsel = 150; % Canvieu el valor de la temperatura per sortir del bucle després que el ventilador s'hagi apagat, de nou només per continuar el codi
final
si lightl1 <= 3% Si el primer fotoresistor detecta un nivell de llum baix
writeDigitalPin (a, 'A1', 1); % Enceneu el LED vermell que representa llums exteriors
else% Si el nivell de llum torna a ser alt
writeDigitalPin (a, 'A1', 0); Apagueu el LED vermell quan el nivell de llum sigui prou alt
final
si switchv> 3% Si l'interruptor està activat
A = existir ('m', 'var'); % Comproveu l'existència de la variable 'm', això s'inicialitzarà per al bucle while i permetrà que es trenqui quan se selecciona un element de menú (per això s'ha de fer l'esborrat m al començament del codi)
mentre que A == 0% Loop s'executarà fins que existeix la variable 'm'
menutext = 'Quin mode de seguretat voleu introduir?'; % Text del menú emergent de seguretat
decisions = {'Inici', 'Fora'}; % Opcions per al menú emergent de seguretat
m = menú (menú text, opcions); % Menú emergent per als modes del sistema de seguretat
break% Assegura que el bucle while està trencat de manera que el menú no apareixerà diverses vegades
final
si m == 1% Si està seleccionat el mode "Inici"
writeDigitalPin (a, bluep, 1); % Enceneu només la llum blava al LED que canvia de color
writeDigitalPin (a, redp, 0);
writeDigitalPin (a, greenp, 0);
elseif m == 2% Si està seleccionat el mode 'Fora'
writeDigitalPin (a, bluep, 0);
writeDigitalPin (a, redp, 0);
writeDigitalPin (a, greenp, 1); % Enceneu només la llum verda del LED que canvia de color
si lightl2 <= 3% Si el nivell de llum del segon fotoresistor és baix, representant el moviment detectat pel sistema de seguretat
sendmail (correus electrònics, subj, text); % Envia un correu electrònic amb les propietats de correu electrònic definides prèviament writeDigitalPin (a, greenp, 0); % Color vermell intermitent activat i desactivat 2 vegades
writeDigitalPin (a, redp, 1);
pausa (0,3)
writeDigitalPin (a, redp, 0);
pausa (0,3)
writeDigitalPin (a, redp, 1);
pausa (0,3)
writeDigitalPin (a, redp, 0);
pausa (0,3)
writeDigitalPin (a, redp, 1); % Acabeu amb vermell continu després de parpellejar per mostrar que hi ha moviment fins que el nivell de llum torni a pujar
msg2 = msgbox ('Intrús detectat pel sistema de seguretat, s'ha enviat un correu electrònic als propietaris per informar-los.', 'AVÍS!'); % Quadre de missatges per informar l'usuari del moviment i per informar sobre el correu electrònic enviat waitfor (msg2)% Espereu que el quadre de missatges es tanqui abans de continuar
en cas contrari
writeDigitalPin (a, greenp, 1); % Un cop el nivell de llum hagi tornat a pujar, tornarà a ser verd
final
final
elseif switchv <3,3% Si l'interruptor està desactivat
writeDigitalPin (a, bluep, 0); % Apagueu el LED completament per mostrar que el sistema de seguretat està apagat
writeDigitalPin (a, redp, 0);
writeDigitalPin (a, greenp, 0);
final
final
Recomanat:
Seguidor de línia HoGent - Projecte Synthese: 8 passos
Linefollower HoGent - Syntheseproject: Voor het vak syntheseproject kregen we de opdracht een linefollower te maken. In deze instructable zal ik uitleggen hoe ik deze gemaakt heb, en tegen welke problemen ik o.a ben aangelopen
Projecte d'estabilitzador de cardan: 9 passos (amb imatges)
Projecte Gimbal Stabilizer: Com fer un Gimbal un vídeo tan inestable
Projecte: Home Energy Saver: 8 Steps
Projecte: Home Energy Saver: Hannah Robinson, Rachel Wier, Kaila Cleary L'ús d'una placa Arduino i Matlab va demostrar ser un mètode senzill i eficaç per ajudar els propietaris a optimitzar el seu consum d'energia. La senzillesa i versatilitat de la placa Arduino és sorprenent. Hi ha
Projecte 2 Smart-Helmet: 6 passos (amb imatges)
Projecte 2 Smart-Helmet: Nosaltres, Benoot Sven, Staelens Lennert i Dujardin Laurens, havíem de fer un projecte per a l'escola. Vam haver de treballar junts amb un estudiant de la sortida a borsa (Industrial Product Design). Se li va acudir la idea de fabricar un casc de moto elegant. Va fer el disseny de
Gravador USB Aquest projecte es pot cremar a través de plàstics / fusta / paper (el divertit projecte també ha de ser fusta molt fina): 3 passos
Gravador alimentat per USB. Aquest projecte pot cremar-se a través de plàstics / fusta / paper (el divertit projecte també ha de ser fusta molt fina): NO FEREU AIX US mitjançant USB !!!! He descobert que pot fer malbé el vostre ordinador per tots els comentaris. el meu ordinador està bé. Utilitzeu un carregador de telèfon de 600 ma 5 v. He utilitzat això i funciona bé i res es pot danyar si utilitzeu un endoll de seguretat per aturar l'alimentació