Cov txheej txheem:

Arduino Smart Home System: 7 Kauj Ruam
Arduino Smart Home System: 7 Kauj Ruam

Video: Arduino Smart Home System: 7 Kauj Ruam

Video: Arduino Smart Home System: 7 Kauj Ruam
Video: Mind-boggling arduino UNO project. You need to do it yourself! #arduino #electronics 2024, Lub Xya hli ntuj
Anonim
Arduino Smart Tsev System
Arduino Smart Tsev System
Arduino Smart Tsev System
Arduino Smart Tsev System

Hauv Cov Lus Qhia no peb yuav qhia koj yuav tsim koj tus kheej lub tsev ntse li cas nrog MATLAB's App Designer nrog Sparkfun Red board. Cov Lus Qhia no tuaj yeem siv los pab kom nkag siab zoo txog MATLAB's App Designer, ntxiv rau siv tus kws yees duab, tus neeg siv khoom, thiab PIR lub suab ntsuas.

Kauj Ruam 1: Pib: Cov Khoom

Txoj haujlwm no xav tau cov ntaub ntawv hauv qab no:

- Arduino Uno (Rau txoj haujlwm no peb siv Sparkfun Red board)

- Ib tus photoresistor

- Ib lub cav mini-servo

- Ib lub cav servo txuas ntxiv mus

- Ib PIR tsab ntawv tsa suab sensor

- Ib qho ntsuas kub

- 2 LEDs

- Cov hlua thiab cov tiv thaiv raws li xav tau

Kauj Ruam 2: Kauj Ruam 2: Mus Txog Qhov Teeb Meem los daws

Lub hom phiaj tseem ceeb ntawm txoj haujlwm no yog txhawm rau tsim kom yooj yim siv lub tsev ntse los ntawm kev sau tus lej Arduino Uno nrog MATLAB. Peb xub xav txog tsuas yog ua haujlwm nrog qhov ntsuas kub thiab av noo, txawm li cas los xij yog tias peb nyob nrog ob lub ntsuas no peb lub tsev ntse yuav tsis yooj yim rau kev lag luam rau cov neeg mloog. Peb txiav txim siab tias peb xav tsim lub zog ntse hauv tsev uas yuav ua haujlwm zoo li lub ntsuas cua sov thiab kev nyab xeeb. Thaum kawg, peb xav ua haujlwm nrog MATLAB's AppDesigner yog li tus neeg siv tuaj yeem hloov kho lub tsev ntse raws li lawv xav tau.

Kauj Ruam 3: Kauj Ruam 3: Txhim Kho GUI thiab Cov Cai Yooj Yim Yooj Yim

Kauj Ruam 3: Kev teeb tsa GUI thiab Cov Cai Yooj Yim Flow
Kauj Ruam 3: Kev teeb tsa GUI thiab Cov Cai Yooj Yim Flow

Txhawm rau pib koj yuav tsum qhib MATLABs AppDesigner thiab tso cov hauv qab no:

Ob qhov kev hloov pauv tus lej rau qhov nkag mus rau qhov kub thiab txias

Ib lub pob kom qhib lub qhov rooj

Thiab plaub qhov taw qhia teeb rau lub qhov cub, qhov rooj, kiv cua, thiab teeb dej nyab.

Ob daim ntawv los tham nrog tus neeg siv.

Txog qhov haujlwm no peb pom nws yooj yim dua los ua haujlwm nrog cov hloov pauv thoob ntiaj teb thiab kev pib ua haujlwm hauv tus tsim qauv. Koj yuav xav tau cov kev hloov pauv no hauv kev pib ua haujlwm:

ntiaj teb no a

a = arduino ('COM3', 'uno', 'Libraries', 'Servo'); ntiaj teb s ntiaj teb p ntiaj teb hotUI ntiaj teb txias txias ntiaj teb qhib ntiaj teb temp ntiaj teb curr_temp ntiaj teb int_light

Tam sim no peb tsuas muaj lub luag haujlwm rau qhov sib txawv kom koj lub khoos phis tawj tuaj yeem nyeem cov arduino. COM3 yuav txawv nyob ntawm seb qhov chaw nres nkoj twg koj lub khoos phis tawj yuav siv.

Thaum koj ua raws txoj cai, nws yuav pib nyob rau hauv qhov pib ua haujlwm tsim lub ntiaj teb sib txawv thiab ntsuas qhov system. Qhov kawg ntawm txoj haujlwm no yuav muaj lub sijhawm ua haujlwm uas hu rau cov khoom peb hu ua Timer. Tsis pub dhau Timer cov cuab yeej no peb muab tso rau hauv txoj cai uas ua haujlwm hauv tsev yog li lub sijhawm tsis rov ua dua qhov kev ntsuas ntsuas.

Nco tseg: Peb tsis tau muab cov lus qhia txuas rau kab ke. Peb xa mus rau phau ntawv qhia uas los nrog SparkFun Red board.

Kauj Ruam 4: Kauj Ruam 3: Teeb Lub Tshuab Ntsuas Kub

Kauj Ruam 3: Teeb Lub Tshuab Ntsuas Kub
Kauj Ruam 3: Teeb Lub Tshuab Ntsuas Kub
Kauj Ruam 3: Teeb Lub Tshuab Ntsuas Kub
Kauj Ruam 3: Teeb Lub Tshuab Ntsuas Kub

Kev ua haujlwm rau ntsuas cua sov ua haujlwm raws li hauv qab no:

Tus neeg siv yuav ntsuas qhov ntsuas kub uas lawv xav tias kub dhau lossis txias dhau. Thaum tus pas ntsuas kub nyeem ntawv, yog tias lub tsev txias dhau lawm ces "lub qhov cub" (lub teeb liab) yuav qhib thiab ua kom sov lub tsev. Yog tias lub tsev kub dhau lawm ces "kiv cua" (txuas lub tshuab servo txuas ntxiv) yuav tig lub tsev txias.

Txhawm rau ntsuas Thermostat system:

Peb yuav pib ua qhov pib ua haujlwm los tso saib qhov ntsuas kub tam sim no thiab qhia rau tus neeg siv nkag mus rau lawv qhov txias thiab qhov kub.

p = 'A0' %Photoresistor tus pin

volt = nyeemVoltage (a, temp); celc = (volt-0.5).*100; curr_temp = celc*9/5+32; app. Label_4. Text = num2str (curr_temp); %Cov ntawv cim npe tuaj yeem hloov ncua (10); %Tej zaum xav hloov !!!!!

Tom qab ntawd peb yuav ua tiav qhov ntsuas cua sov hauv Timer cov cuab yeej.

ntiaj teb curr_temp

lub ntiaj teb txias txias thoob ntiaj teb lub ntiaj teb hotUI yog curr_temp hotUI app. FanStateLamp. Color = [0.47 0.67 0.19]; %Tig GUI teeb ntsuab sau PWMDutyCycle (a, 'D11',.9) %Peb kab tom ntej ntawm kab ntawv ua haujlwm servo kiv cua ncua (10) writePWMDutyCycle (a, 'D11',.0) lwm app. FireplaceStateLamp. Color = [0.90 0.90 0.90]; %Qhov no tua tag nrho GUI teeb thiab lub qhov cub app. FanStateLamp. Color = [0.9 0.9 0.9]; writeDigitalPin (a, 'D13', 0); kawg

Kauj Ruam 5: Kauj Ruam 4: Teeb Qhov Rooj Qhov Rooj

Kauj Ruam 4: Teeb Qhov Rooj Qhov Rooj
Kauj Ruam 4: Teeb Qhov Rooj Qhov Rooj

Lub luag haujlwm rau lub qhov rooj ua haujlwm raws li hauv qab no:

Thaum koj thawj zaug siv koj tus lej MATLAB, lub app yuav nug koj kom qhib lub qhov rooj kom tus kws yees duab tuaj yeem nyeem thawj lub teeb nyeem. Thaum qhov ntawd ua tiav, lub sijhawm teev tseg yuav qhib thiab lub photoresistor yuav nyeem lub teeb thib ob. Yog tias nyeem ntawv lub teeb thib ob yog qhov hnyav dua li qhov pib, lub tshuab servo yuav kaw lub qhov rooj. Yog tias tus neeg siv xav kom lub qhov rooj qhib, lawv tuaj yeem nias lub pob ntawm lub app uas yuav qhib lub qhov rooj.

Txhawm rau teeb tsa servo motor thiab photoresistor:

Txhawm rau ua kom lub qhov rooj kaw lus:

Peb yuav pib nyob rau hauv qhov pib ua haujlwm txhawm rau ntsuas qhov pib nyeem ntawv.

s = servo (a, 'D9') %Pin tuaj yeem hloov pauv raws kab thaiv

app. Label_4. Text = 'Thov qhib lub qhov rooj kom ntsuas qhov system'; ncua (15); %Qhov no muab sijhawm rau tus neeg siv qhib lub qhov rooj int_light = readVoltage (a, p); app. Label_4. Text = 'Koj tuaj yeem tshem koj tus ntiv tes';

Tom ntej no, peb yuav ua kom tiav cov cai hauv Timer cov cuab yeej

ntiaj teb qhib

thoob ntiaj teb int_light ntiaj teb s ntiaj teb a %Tau txais lub teeb pom kev nyeem tam sim no los sib piv curr_light = readVoltage (a, p); % - Xauv Qhov Rooj - yog int_light <curr_light writePosition (s, 1) % Servo txoj haujlwm yuav txawv ntawm ib lub cav nres (0.5); app. DoorStateLamp. Color = [0.47 0.67 0.19]; kawg % - Xauv Qhov Rooj - yog qhib == 1234 ncua (0.5); writePosition (s,.52) app. DoorStateLamp. Color = [0.85 0.33 0.10]; kawg

Thaum kawg peb yuav tsim lub xauv khawm hu rov qab. Thaum tus neeg siv nias lub pob qhib, lub ntiaj teb hloov pauv hloov pauv yuav muab tus lej uas tuaj yeem ua tiav qhov kawg yog cov lus hais hauv Timer cov cuab yeej.

ntiaj teb qhib

qhib = 1234;

Kauj Ruam 6: Kauj Ruam 6: Teeb Lub Teeb Dej Nyab Dej

Kauj Ruam 6: Teeb Lub Teeb Dej Nyab Dej Nyab
Kauj Ruam 6: Teeb Lub Teeb Dej Nyab Dej Nyab

Lub luag haujlwm rau lub teeb dej nyab ua haujlwm raws li hauv qab no:

Thaum koj pib tus lej MATLAB, lub PIR tsab ntawv tsa suab sensor yuav pib pom cov lus tsa suab. Thaum nws pom qee yam kev txav chaw, nws yuav txiav lub zog teeb liab. Thaum lub teeb liab ntawd raug txiav, lub teeb dej nyab yuav qhib sab nraum lub tsev.

Txhawm rau teeb tsa lub teeb dej nyab:

Txhawm rau teeb tsa lub teeb dej nyab:

Lub sijhawm no peb tuaj yeem hla mus rau Timer cov cuab yeej vim tias peb tsis tas yuav sau ib qho kev hloov pauv ntxiv.

human_detected = readDigitalPin (a, 'D2'); %Pin tuaj yeem hloov pauv raws li kev teeb tsa yog tias tib neeg_detected == 0 writeDigitalPin (a, 'D7', 1) %Pin yuav hloov app. FloodLightStateLamp. Color = [0.47 0.67 0.19]; elseif human_detected == 1 app. FloodLightStateLamp. Color = [0.9 0.9 0.9]; writeDigitalPin (a, 'D7', 0) kawg

Kauj Ruam 7: Xaus

Tam sim no koj muaj cov ntawv sau tseg ntawm koj GUI nrog App Designer thiab koj tus lej rau Arduino koj npaj tau los ua koj tus kheej kho lossis ntsaws rau hauv koj Arduino thiab mus!

Pom zoo: