Агуулгын хүснэгт:
Видео: Ухаалаг гэрийн термостат: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
Манай Ухаалаг Гэрийн Термостат нь тухайн хүний сонголтоос шалтгаалан ахуйн зардлыг автоматаар хэмнэх боломжтой програм юм.
Алхам 1: Тойм
Ухаалаг гэрийн термостат нь гэрийн температурыг хэмжихийн тулд температур мэдрэгч ашигладаг. Энэхүү температурын уншилтыг агааржуулалтын систем нь байшингийн эзний хүссэн температурт үндэслэн байшинг халаах эсвэл хөргөх шаардлагатай эсэхийг шийдэх хөтөлбөрт оруулсан болно.
Термостатын хоёр горим байдаг: гарын авлага ба автомат. Гэрийн температурыг хэрэглэгчийн хүссэн температурт тохируулах гарын авлагын горим. Термостатын автомат горим нь гэрийн температурыг хэрэглэгчийн урьдчилан тогтоосон температурт автоматаар өөрчлөх болно. Автомат горимд температурын хоёр тохиргоо байх болно: холын болон одоогийн температур. Холдох температурыг хэрэглэгч гэртээ байхгүй үед термостатыг урьдчилан тохируулсан эрчим хүч хэмнэх температур болгон өөрчлөх замаар эрчим хүч хэмнэхэд ашигладаг. Хэрэглэгч гэртээ байгаа бөгөөд тав тухтай температур хүсч байгаа үед одоогийн температурыг ашиглах болно. Термостатын автомат горимд байх үед хөдөлгөөн мэдрэгч нь хэн нэгэн гэртээ байгаа эсэхийг тодорхойлохын тулд хөдөлгөөнийг идэвхтэй хайдаг. Тэдний уншилт дээр үндэслэн гэрийн температурыг холын температур эсвэл одоогийн температурт тохируулна.
Алхам 2: эд анги, материал
(15) холбогч утас
(4) 220 Ом эсэргүүцэл
(1) 10K Ом эсэргүүцэл
(1) Температур мэдрэгч
(1) Фото резистор
(1) DAGU Mini DC хурдны хайрцаг
(1) диод
(1) транзистор
(1) Фоторезистор
(1) Талхны самбар
(1) Arduino MKR
Алхам 3: Хэлхээ
Зураг 1 = Зүүн талын том зураг
Зураг 2 = Баруун дээд
Зураг 3 = Баруун дунд
Зураг 4 = Баруун доод
Зураг 1
Дээрх диаграмыг ашиглан бид гурван LED тус бүрийг утсаар холбосон. Бид том талхны тавцан дээр ажиллаж байснаасаа хойш LED тус бүрийг тусгаарласан. Жижиг талхны хавтангийн хувьд LED -ийг хооронд нь ойртуулах шаардлагатай байж магадгүй юм. Түүнчлэн, LED нь маш бага эрчим хүч авдаг тул талхны хавтанг асаах шаардлагагүй болно. Бид LED дээр талхны самбар дээрх 5V холболтыг ашиглаагүй. LED -ээс манай Arduino -д холбогдох бүх холболт ногоон утас дээр байгаа юм шиг хийгдсэн. Манай улаан, цэнхэр, ногоон LED нь Digital Pin 8, 9, 10 -т холбогдсон бөгөөд зураг дээрх улаан, цэнхэр, ногоон утсаар тэмдэглэгдсэн байдаг.
Зураг 2
Дээрх диаграмыг фоторезисторыг холбоход ашигласан болно. Бид өөрсдөө хэд хэдэн залруулга хийсэн; Гэсэн хэдий ч ойлголтууд ижил хэвээр байна. Фоторезистор нь A1 зүү дээрх аналог зүүтэй холбогдсон байх ёстой. Фоторезистортой хамгийн ойр байгаа эсэргүүцлийн хувьд 10К ом эсэргүүцэл ашиглахаа мартуузай.
Зураг 3
Энэ бол температур мэдрэгчийг холбох утас юм. Энд ашигласан транзисторыг температур мэдрэгчтэй андуурч болохгүй. Тэд бараг адилхан харагдаж байна. Температур мэдрэгч нь мэдрэгчийн хавтгай талд TMP эсвэл өөр скрипт бичсэн байх магадлалтай. Энд байгаа утас нь маш энгийн бөгөөд бидний температур мэдрэгчийг цагаан утсаар A0 аналог зүүгээр холбодог.
Зураг 4
Дээрх зургийг DAGU Mini DC хурдны хайрцгийг утсаар холбоход ашигласан болно. Хурдны хайрцагт хавсаргасан ногоон утас нь үнэндээ манай зураг дээр холбогдсон улаан утас юм. Gearbox нь манай загварт улбар шар утастай дижитал зүү 11 -т холбогдсон байна. Энд ашигласан транзисторыг температур мэдрэгчтэй андуурч болохгүй. Тэд бараг адилхан харагдаж байна. Температур мэдрэгч нь мэдрэгчийн хавтгай талд TMP эсвэл өөр скрипт бичсэн байх магадлалтай. Та энд температур мэдрэгч биш транзисторыг ашиглах ёстой.
Алхам 4: Arduino код
Энд кодын хамгийн чухал хэсгүүдийг тайлбарласан болно. Код нь зөвхөн энд өгөгдсөн зүйлтэй ажиллахгүй. Ажлын кодыг бүрэн эхээр нь авахын тулд хуудасны доод хэсэгт линк байна.
Програмчлагдах термостатын кодыг үүсгэх үед таны хийх ёстой хамгийн эхний зүйл бол мэдрэгчийг тохируулах, температур мэдрэгчээс температурын заалтыг байнга авч байх зориулалттай давталт үүсгэх явдал юм.
Температур мэдрэгч ба LED -ийг тохируулах:
tempPin = 'A0';%нь хүчдэлийг температур руу хөрвүүлдэг үл мэдэгдэх функцийг тодорхойлдог tempCfromVolts = @(вольт) (вольт-0.5)*100; түүвэр хийх хугацаа = 5; %секунд. Бид дээж авахын тулд хэр удаан дээж авахыг хүсч байна Interval = 1; %Температурын уншилтын хооронд хэдэн секундын дотор %дээж авах хугацааны векторыг тохируулж байна %үргэлжлэх хугацаа ба интервал дээр үндэслэн дээжийн тоог тооцоолно numSamples = урт (samplelingTimes); %temp хувьсагчдыг урьдчилан хуваарилах ба унших тооны хувьсагч нь tempC = тэгийг хадгалах болно (numSamples, 1); tempF = tempC; %Бид энэ удаад for давталтыг ашиглан урьдчилан тодорхойлсон %температурын заалтыг авна
For давталт:
индексийн хувьд = 1: numSamples %нь tempPin дээрх хүчдэлийг уншиж, хувьсах вольт вольтоор хадгална = readVoltage (a, tempPin); tempC (индекс) = -1*tempCfromVolts (вольт+0.3); tempF (индекс) = tempC (индекс)*(9/5) +32; %Одоогийн температурыг уншиж буй fprintf (' %d секунд дэх температур %5.2f C буюу %5.2f F. / n',… samplingTimes (индекс), tempC (индекс), tempF (индекс)) -ийг илэрхийлж буй форматтай гаралтыг харуулах; Хэрэв та кодыг энгийн скрипт mfile руу хуулж/буулгахгүй бол кодыг гүйцэтгэж дууссаны дараа энэ дэлгэцийн гаралт нэг дор харагдах болно. завсарлага (түүвэрлэлтийн завсар) %дараагийн удаашрах хүртэл
Дараа нь бид термостатыг гар эсвэл автомат горимд оруулах эсэхээ шийдэхийн тулд хэрэглэгчийн цэсийг бий болгодог. Хэрэв хэрэглэгч хоёр сонголтын аль нэгийг сонгоогүй бол бид алдааны кодыг үүсгэдэг.
Гарын авлагын горимын цэс нь хэрэглэгчээс термостатын температурын дугаарыг тохируулахыг шаарддаг бөгөөд ингэснээр гэрийг халаах, гэрийг хөргөх эсвэл уншилт дээр үндэслэн сул зогсох болно. Кодын энэ хэсгийг тохируулахын тулд та температур мэдрэгчийн температурын уншилтыг ашиглаж, температурын уншилт нь тогтоосон температураас өндөр байх үед гэрийг хөргөх кодыг бий болгож, температурын үзүүлэлт тогтоосон температураас доогуур байвал гэрийг халаана.
Температурын заалттай болсны дараа температурыг унших нь тогтоосон температураас өндөр байх үед термостатад байшинг хөргөхийг зааж өгөх кодыг үүсгэж болно. Прототипийн хувьд термостат хөрөхөд цэнхэр гэрэл, термостат халах үед улаан гэрэл асдаг.
Цэсийн тохиргоо:
choices = {'Автомат', 'Гарын авлага'}; imode = цэс ('Горим', сонголтууд), хэрэв imode> 0 h = msgbox (['Та сонгосон' сонголтууд {imode}]); else h = warningdlg ('Та сонголт хийхгүйгээр цэсийг хаасан') end waitfor (h);
Гарын авлагын горим нь хэрэглэгчээс термостатын температурыг оруулахыг шаарддаг бөгөөд дараа нь температур мэдрэгчийн заалтыг үндэслэн байшинг халаах байшинг хөргөх болно. Хэрэв температур мэдрэгчийн тогтоосон температураас өндөр байвал гэрийг хөргөж эхэлнэ. Хэрэв температур мэдрэгчийн уншилт нь тогтоосон температураас доогуур байвал энэ нь байшинг халаах болно.
Гарын авлагын горим эхэлнэ:
if imode == 2 dlg_prompts = {'Та ямар температурыг илүүд үзэх вэ?'}; dlg_title = 'Температур'; dlg_defaults = {'68'}; opts. Resize = 'on'; dlg_ans = inputdlg (dlg_prompts, dlg_title, 1, dlg_defaults, opts); if isempty (dlg_ans) h = warningdlg ('Та inputdlg тушаалыг цуцалсан'); else temp_manual = str2double (dlg_ans {1}) %[Доорх температурын зохицуулалтын тохиргооны слайдыг нэмэх] төгсгөл
Гарын авлагын горимын if мэдэгдлийн дотор та хэрэглэгчийн хүссэн гэрийн температурыг сонгох цэсийн интерфейсийг бичиж, дараа нь гэрийн температурыг зохицуулах түр зуурын мэдэгдлийг хэрэгжүүлэх хэрэгтэй.
Температурын зохицуулалтын тохиргоо:
while temp_manual <tempF writeDigitalPin (a, 'D9', 1) writeDigitalPin (a, 'D11', 1); төгсгөл байхад temp_manual> tempF writeDigitalPin (a, 'D8', 1) writeDigitalPin (a, 'D11', 1); Төгсгөл
Автомат горим нь гарын авлагын горимоос илүү их оролт шаарддаг. Автомат горимд орсны дараа хэрэглэгч термостатынхаа хэвийн ба холын температурыг тохируулах бөгөөд эдгээр горимыг сонгосны дараа термостат ямар горимд байгаагаас шалтгаалан температурын горимд буцаж орно.
Автомат горимыг тохируулах:
elseif imode == 1 dlg_prompts = {'Хэвийн', 'Алслагдсан'}; dlg_title = 'Температурын тохиргоо'; dlg_defaults = {'68', '64'}; opts. Resize = 'on'; dlg_ans = inputdlg (dlg_prompts, dlg_title, 1, dlg_defaults, opts); if isempty (dlg_ans) h = warningdlg ('Та inputdlg тушаалыг цуцалсан'); өөр temp_normal = str2double (dlg_ans {1}) temp_away = str2double (dlg_ans {2}) хүлээх хугацаа (h); %[Хөдөлгөөн илрүүлэгч алхамыг доор оруулна уу]
Бид мөн автомат горимын тохиргоонд зориулж хөдөлгөөн мэдрэгчийг тохируулах хэрэгтэй. Хөдөлгөөн мэдрэгч нь хөдөлгөөнийг авах үед температурыг одоогийн температурын горимд байлгаж, өөрөөр хэлбэл холын температурын тохиргоонд шилжүүлнэ.
Run_Motion_Detector (a, inf) байхад lightStr == 0 temp = temp_away байхад temp tempF writeDigitalPin (a, 'D6', 1) сэнсний бичих моторт ямар ч улаан гэрэл байгаа бол бичихDigitalPin (a, 'D9', 1); төгсгөл end байхад lightStr == 1 temp = temp_normal writeDigitalPin (a, 'D6', 1) %нь ердийн гэрэл ямар ч байсан зүү болж өөрчлөгдөж байхад temp tempFDigitalPin (a, 'D6', 1) улаан гэрэл ч бас байдаг сэнсний бичих хөдөлгүүрDigitalPin (a, 'D9', 1); төгсгөл төгсгөл
Бүрэн кодыг эндээс олж болно.
Зөвлөмж болгож буй:
DIY ухаалаг гаражийн хаалга онгойлгогч + гэрийн туслахын интеграци: 5 алхам
DIY ухаалаг гаражийн хаалга онгойлгогч + гэрийн туслахын интеграцчлал: Энэхүү DIY төслийг ашиглан гаражийн ердийн хаалгаа ухаалаг болго. Би үүнийг хэрхэн яаж барьж, гэрийн туслах (MQTT дээр) ашиглан хянах, гаражийнхаа хаалгыг алсаас онгойлгох, хаах чадварыг зааж өгөх болно. Би Wemos нэртэй ESP8266 хавтанг ашиглах болно
STONE HMI Disp дээр ухаалаг гэрийн хяналтын системийг хий: 23 алхам
STONE HMI Disp дээр ухаалаг гэрийн хяналтын систем хийх: Төслийн танилцуулга Дараах заавар нь STONE STVC050WT-01 мэдрэгчтэй дэлгэцийн модулийг ашиглан гэр ахуйн цахилгаан хэрэгслийн хяналтын энгийн системийг хэрхэн хийхийг танд харуулав
Ухаалаг термостат ESP8266: 6 алхам (зурагтай)
Ухаалаг термостат ESP8266: Bienvenue sur ce nouvel нийтлэл. Хязгаарлалт хийхдээ цаг хугацаа дуусахаас өмнө цаг алдах шаардлагагүй болно. Санал болгож буй санал болгож буй асуудлуудыг шийдэж өгвөл энэ нь ямар ч асуудалгүй болно
Гэрийн автоматжуулалтыг эхлүүлэх: Гэрийн туслахыг суулгах: 3 алхам
Гэрийн автоматжуулалтыг эхлүүлэх: Гэрийн туслахыг суулгах: Бид одоо гэрийн автоматжуулалтын цувралыг эхлүүлэх гэж байна, тэнд бид ухаалаг төвийг бий болгож, гэрэл, чанга яригч, мэдрэгч гэх мэт зүйлсийг төвийн төв ашиглан удирдах боломжтой болно. дуут туслах. Энэ нийтлэлд бид хэрхэн оруулахыг сурах болно
Гэрийн термостат: 6 алхам
Гэрийн термостат: Сайн байцгаана уу, энэ бол миний анхны зааварчилгаа бөгөөд эхний зорилго бол хянагч, температур хянагчийг аюулгүй, энгийн, үр ашигтай, найдвартай болгох явдал юм. Эхлээд би гэртээ бяслаг хийдэг сонирхогч, температурыг хянах ёстой байсан. мөн ху