فهرست مطالب:
- مرحله 1: LED حساس به نور
- مرحله 2: مینی سوئیچ قدرت
- مرحله 3: دومین سلول
- مرحله 4: LED RGB
- مرحله 5: سنسور دما
- مرحله 6: DAGU Gearmotor
- مرحله 7: کد
تصویری: پروژه خانه هوشمند EF230: 7 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:55
قطعات و مواد مورد نیاز:
- 1 آردوینو 1000 MKR
- 3 تخته نان
- 2 مینی فتوسل
- 1 ترانزیستور NPN
- 1 سوئیچ مینی پاور
- 1 LED - RGB (4 شاخه)
- 1 عدد LED (رنگ دلخواه)
- 1 دیود 1N4148
- 1 مقاومت 10 کیلو اهم
- 5 100 مقاومت اهم
- 1 سنسور دما TMP36
- 1 DAGU 48: 1 نسبت Gearmotor
- 25 سیم جامپر
- کابل USB
- برنامه متلب
-
راهنمای آزمایش SIK برای برد Arduino 101/Genuino 101 - پیوند راهنمای آزمایش SIK
این پروژه جزئیات طراحی مفهومی یک سیستم خانه هوشمند را ارائه می دهد که از داده ها برای کمک به صاحبان خانه برای بهینه سازی مصرف انرژی و امنیت آنها استفاده می کند. این دستگاه شامل یک سنسور نور برای روشن کردن چراغ های بیرونی در شب ، یک سنسور نور برای امنیت و یک سنسور دما و یک فن برای کنترل دمای داخلی است.
مرحله 1: LED حساس به نور
- تنظیم LED حساس به نور نشان دهنده چراغ های بیرونی خانه ای است که در شب روشن می شود.
- هنگامی که مینی فتوسل مقدار کمتری از نور را حس می کند ، LED روشن می شود.
- برای یک خانه هوشمند این امر دارای پیامدهای انرژی و امنیت است. با خاموش نگه داشتن چراغ ها در طول روز در مصرف انرژی صرفه جویی می کند و امنیت بیشتری را در شب ایجاد می کند.
- سیم کشی و تنظیم دقیق این بخش از پروژه را می توانید در آزمایش 7 در راهنمای آزمایش SIK مشاهده کنید.
مرحله 2: مینی سوئیچ قدرت
- سوئیچ اولین گام در فرایند امنیت خانه هوشمند است.
- هنگامی که روشن است ، سوئیچ پاسخ را از کاربر می پرسد که آیا می خواهد وارد حالت "خانه" یا "دور" شود.
- اگر حالت "خانه" انتخاب شود ، امنیت خلع سلاح تلقی می شود ، اما انتخاب حالت "دور" سیستم امنیتی را مسلح می کند.
- سیم کشی این بخش از پروژه را می توانید در آزمایش 6 در راهنمای آزمایش مشاهده کنید. برای اهداف خانه هوشمند ، LED ها و سیمهای اتصال آنها در آزمایش 6 نیازی به گنجاندن ندارند.
مرحله 3: دومین سلول
- فتوسل دوم به عنوان سنسور حرکت برای سیستم امنیتی خانه هوشمند عمل می کند.
- سنسور فقط زمانی استفاده می شود که سیستم در حالت "Away" قرار داده شود ، همانطور که در مرحله قبل توضیح داده شد.
- اگر فتوسل میزان نور دریافتی خود را کاهش دهد ، این را به عنوان حرکت در داخل خانه تشخیص می دهد.
- تنظیمات این بخش از پروژه را می توانید در آزمایش 7 در راهنمای آزمایش SIK مشاهده کنید. با این حال ، فقط فتوسل و سیمهای اتصال آن باید در سیم کشی قرار گیرند.
مرحله 4: LED RGB
- چراغ RGB به همراه سوئیچ قدرت کوچک و دومین سلول برای سیستم امنیتی خانه هوشمند استفاده می شود.
- سه رنگ مختلف به عنوان شاخص برای ساکن خانه هوشمند استفاده می شود.
- هنگامی که سیستم در حالت 'Home' قرار می گیرد ، LED آبی می شود. هنگامی که سیستم در حالت 'Away' قرار می گیرد ، LED سبز می شود. وقتی فتوسل مورد استفاده به عنوان سنسور حرکت متوقف می شود ، چراغ قرمز چشمک می زند.
- سیم کشی LED RGB را می توانید در آزمایش 3 راهنمای آزمایش SIK مشاهده کنید.
مرحله 5: سنسور دما
- سنسور دما بخش مهمی از صرفه جویی در انرژی در خانه هوشمند است.
- هنگامی که از خانه هوشمند استفاده می شود ، ساکن می تواند دمای مورد نظر را برای خانه خود وارد کند.
- سنسور دما این است که چگونه سیستم می داند دمای واقعی از دمای مورد نظر چقدر فاصله دارد.
- تنظیمات مربوط به سنسور دما را می توانید در آزمایش 9 راهنمای آزمایش SIK مشاهده کنید.
مرحله 6: DAGU Gearmotor
- این موتور به خانه هوشمند اجازه می دهد تا دمای خانه را بر اساس دمای مورد نظر و قرائت سنسور دما تنظیم کند.
- موتور که به عنوان واحد AC در خانه عمل می کند ، بر اساس میزان دمای واقعی بالاتر از دمای مورد نظر ، با سرعت های مختلف می چرخد. هرچه اختلاف بیشتر باشد ، موتور سریعتر می چرخد.
- سیم کشی موتور را می توانید در راهنمای آزمایش در آزمایش 11 مشاهده کنید.
مرحله 7: کد
- کد خانه هوشمند شامل چندین رابط کاربری است که به ساکن اجازه می دهد به راحتی نحوه کارکردن را بفهمد و به راحتی تنظیمات را تغییر دهد.
- با استفاده از سیستم خانه هوشمند ، در صورت خاموش شدن سنسور حرکت هنگام دور بودن ، ساکن اخطار دریافت می کند.
- تنها تغییری که باید ایجاد شود ، درج اطلاعات ایمیل فرستنده و آدرس ایمیل گیرنده است.
روشن a؛ روشن s؛ روشن m؛ clc؛ همه را بستن ؛ ٪ متغیرهای آردوینو و سروو را پاک کنید تا بتوان آنها را هربار تعریف مجدد کرد تا کد به طور موثر اجرا شود ("روشن m" برای عملکرد صحیح یکی از حلقه های زمانی ضروری است) a = arduino ()؛ ٪ متغیر arduino را تنظیم کنید
s = سروو (a ، 'D6') ؛ ٪ متغیر سروو را تنظیم کنید
٪ مقداردهی اولیه متغیرهای ایمیل برای ایمیل هشدار دهنده سیستم امنیتی
ایمیل = {'درج آدرس گیرنده'}؛ ٪ آرایه ای از ایمیل ها که باید ایمیل امنیتی به آنها ارسال شود
٪ تنظیمات برگزیده ایمیل برای استفاده از Gmail برای ارسال نامه از
setpref ("اینترنت" ، "E_mail" ، "آدرس ایمیل فرستنده") ؛
setpref ("اینترنت" ، "SMTP_Username" ، "نام کاربری فرستنده") ؛
setpref ("اینترنت" ، "SMTP_Password" ، "رمز فرستنده") ؛
props = 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') ؛
٪ متغیرهای موضوع و متن ایمیل
subj = 'هشدار مزاحم در خانه شما'؛
text = 'سلام ، این سیستم امنیتی خانه هوشمند شماست که به شما اطلاع می دهد حرکت در خارج از خانه شما تشخیص داده شده است. ما اقدامات لازم را انجام داده و با مقامات مربوطه تماس گرفته ایم. ایمن بمان. '؛
در حالی که حقیقت دارد
prompt = {'دمای مطلوب خانه (بین 65F تا 85F) را وارد کنید:'}؛ ٪ برای منوی ورودی کاربر
dlgtitle = 'انتخاب دما'؛ ٪ عنوان برای منوی ورودی کاربر
dims = [1 30]؛ ٪ ابعاد منوی ورودی کاربر
definput = {'72'}؛ input ورودی پیش فرض که هنگام باز شدن منو برای اولین بار نشان داده می شود
tempsel_array = inputdlg (سریع ، dlgtitle ، dims ، definput) ؛ ٪ منوی ورودی پنجره کاربر که شماره وارد شده را در یک آرایه ذخیره می کند
if ~ isempty (tempsel_array)٪ اگر آرایه خالی نباشد
tempsel_char = cell2mat (tempsel_array) ؛ ٪ تبدیل آرایه به یک رشته کاراکتر
tempsel = str2double (tempsel_char) ؛ ٪ رشته کاراکتر را به اعداد تبدیل کنید
thingSpeakWrite (chID، tempsel، 'WriteKey'، writeKey، 'Fields'، 1)؛ ٪ دمای انتخاب شده را در کانال ThingSpeak خود بنویسید
break٪ از حلقه while خارج شوید تا منو چندین بار ظاهر نشود
else٪ اگر کاربر کلیک کند به جای وارد کردن دما ، لغو شود
msg1 = msgbox ('دما انتخاب نشده ، به طور پیش فرض 85F' ، 'هشدار!')؛ ٪ پیام پس از کلیک روی لغو به کاربر نمایش داده می شود
waitfor (msg1)؛ ٪ قبل از ادامه صبر کنید تا جعبه پیام بسته شود
tempsel = 85 ؛ the درجه حرارت را روی آنچه در کادر پیام آمده بود تنظیم کنید
thingSpeakWrite (chID، tempsel، 'WriteKey'، writeKey، 'Fields'، 1)؛ ٪ دمای انتخاب شده را در کانال ThingSpeak خود بنویسید
break٪ از حلقه while خارج شوید تا منو چندین بار ظاهر نشود
پایان
پایان
در حالی که حقیقت دارد
chID = 745517؛ ٪ شناسه کانال ThingSpeak
writeKey = 'G9XOQTP8KOVSCT0N'؛ ٪ برای دسترسی به کانال ThingSpeak
In مقداردهی اولیه سنسورها برای واکشی داده ها
tempread = readVoltage (a ، 'A3') ؛ Read ولتاژ سنسور دما را بخوانید
lightl1 = readVoltage (a ، 'A2') ؛ level سطح نور برای مقاومت در برابر عکس به LED قرمز می رود
lightl2 = readVoltage (a ، 'A5') ؛ level سطح نور برای مقاومت در برابر عکس که به سیستم امنیتی می رود
switchv = readVoltage (a، 'A0')؛ ٪ ارزش برای سوئیچ
data داده های دما را از ولتاژ به درجه فارنهایت تبدیل کنید
tempC = (tempread - 0.5) * 100 ؛ voltage تبدیل ولتاژ به دما در درجه سانتیگراد
tempF = (tempC * 9/5) + 32 ؛ temperature تبدیل دما در درجه سانتیگراد به دما در فارنهایت
٪ شماره های پین را برای LED چند رنگ اولیه کنید
redp = 'D9'؛ Pin پین برای نور قرمز از LED
greenp = 'D10'؛ Pin پین برای نور سبز از LED
bluep = 'D11'؛ Pin پین برای نور آبی از LED
if tempsel <tempF٪ اگر دمای انتخاب شده بیشتر از دمای اتاق باشد
writePosition (s، 1)؛ ٪ سروو شروع به حرکت می کند
مکث (10)٪ سروو به مدت 10 ثانیه به چرخش ادامه می دهد تا نشان دهد که AC پس از مدت زمان مشخص خاموش می شود
writePosition (s، 0)؛ fan فن را به منظور ادامه کد بدون روشن بودن فن خاموش کنید
tempsel = 150 ؛ ٪ تغییر دما برای خروج از حلقه پس از خاموش شدن فن ، دوباره فقط به منظور ادامه کد
پایان
اگر lightl1 <= 3٪ اگر اولین مقاومت در برابر نور سطح کم را تشخیص دهد
writeDigitalPin (a، 'A1'، 1)؛ LED LED قرمز را که نشان دهنده چراغ های بیرون است روشن کنید
else٪ اگر سطح نور دوباره بالا باشد
writeDigitalPin (a، 'A1'، 0)؛ ٪ وقتی سطح نور دوباره به اندازه کافی بالا می رود LED قرمز را خاموش کنید
پایان
اگر switchv> 3٪ اگر سوئیچ روشن است
A = وجود دارد ('m' ، 'var') ؛ ٪ وجود متغیر "m" را بررسی کنید ، این حلقه برای مقداردهی اولیه راه اندازی می شود و اجازه می دهد تا هنگام انتخاب یک آیتم منو شکسته شود (به همین دلیل است که باید m را در ابتدای کد انجام دهید)
در حالی که A == 0٪ حلقه اجرا می شود تا متغیر 'm' وجود داشته باشد
menutext = 'دوست دارید وارد کدام حالت امنیتی شوید؟'؛ ٪ متن برای منوی پنجره امنیتی
انتخاب = {'خانه "،" دور "}؛ ٪ انتخابها برای منوی پنجره امنیتی
m = منو (منوتکست ، انتخاب ها) ؛ ٪ منوی پنجره برای حالت های سیستم امنیتی
break٪ اطمینان می دهد که حلقه while خراب است بنابراین منو چند بار ظاهر نمی شود
پایان
اگر m == 1٪ اگر حالت "Home" انتخاب شده باشد
writeDigitalPin (a، bluep، 1)؛ light فقط چراغ آبی را در LED تغییر رنگ روشن کنید
writeDigitalPin (a، redp، 0)؛
writeDigitalPin (a، greenp، 0)؛
elseif m == 2٪ اگر حالت 'Away' انتخاب شده باشد
writeDigitalPin (a، bluep، 0)؛
writeDigitalPin (a، redp، 0)؛
writeDigitalPin (a، greenp، 1)؛ ٪ فقط چراغ سبز را در LED تغییر رنگ روشن کنید
اگر lightl2 <= 3٪ اگر سطح نور در مقاومت نوری دوم کم است ، نشان دهنده حرکت تشخیص داده شده توسط سیستم امنیتی است
sendmail (ایمیل ، subj ، متن) ؛ Send ارسال یک ایمیل با ویژگی های ایمیل از پیش تعریف شده writeDigitalPin (a، greenp، 0)؛ ٪ رنگ قرمز فلاش 2 بار روشن و خاموش می شود
writeDigitalPin (a، redp، 1)؛
مکث (0.3)
writeDigitalPin (a، redp، 0)؛
مکث (0.3)
writeDigitalPin (a، redp، 1)؛
مکث (0.3)
writeDigitalPin (a، redp، 0)؛
مکث (0.3)
writeDigitalPin (a، redp، 1)؛ after پس از چشمک زدن ، با رنگ قرمز کامل کنید تا حرکت نشان داده شود تا زمانی که سطح نور به بالا برود
msg2 = msgbox ('مزاحم توسط سیستم امنیتی شناسایی شد ، یک ایمیل برای اطلاع صاحبان خانه ارسال شده است.'، 'WARNING!')؛ ٪ پیام برای اطلاع کاربر از حرکت و اطلاع از ایمیل ارسال شده waitfor (msg2)٪ قبل از ادامه صبر کنید تا جعبه پیام بسته شود
دیگری
writeDigitalPin (a، greenp، 1)؛ Once هنگامی که سطح نور دوباره بالا رفت دوباره سبز می شود
پایان
پایان
elseif switchv <3.3٪ اگر سوئیچ خاموش باشد
writeDigitalPin (a، bluep، 0)؛ ٪ LED را به طور کامل خاموش کنید تا نشان دهد سیستم امنیتی خاموش است
writeDigitalPin (a، redp، 0)؛
writeDigitalPin (a، greenp، 0)؛
پایان
پایان
توصیه شده:
نحوه ایجاد رادار با استفاده از آردوینو برای پروژه علمی - بهترین پروژه های آردوینو: 5 مرحله
نحوه ایجاد رادار با استفاده از آردوینو برای پروژه علمی | بهترین پروژه های آردوینو: سلام دوستان ، در این مقاله آموزشی به شما نشان خواهم داد که چگونه یک سیستم راداری شگفت انگیز ایجاد کنید که با استفاده از آردوینو نانو ساخته شده است. این پروژه برای پروژه های علمی ایده آل است و اگر برنده شدن جایزه عالی باشد ، می توانید به راحتی با سرمایه گذاری و شانس بسیار کمتری این کار را انجام دهید
پروژه خانه مرغ اتوماتیک: 7 مرحله
پروژه خودکار مرغ خانه: به عنوان بخشی از دومین کارشناسی ارشد مهندسی صنایع ما در الکترومکانیک ، ما باید پروژه ای را با کارت آردوینو یا رزبری پای پیاده کنیم. پروژه باید اجازه دهد تا یک مشکل موجود را برطرف کند. پروژه ما خانه مرغ اتوماتیک است
ایجاد کنترل از راه دور حرفه ای برای پروژه آردوینو در خانه: 9 مرحله (همراه با تصاویر)
ایجاد کنترل از راه دور حرفه ای برای پروژه آردوینو در خانه: من پروژه ای را طراحی کردم که از آردوینو و یک کتابخانه از راه دور IR برای کنترل چند چیز استفاده می کرد. بنابراین در این دستورالعمل به شما نشان خواهم داد که چگونه می توانید هر کنترل از راه دور را دوباره استفاده کنید از پروژه بعدی خود استفاده کردید. و شما نیازی به هیچ چیز فانتزی برای ساختن یک محفظه خوب ندارید
پروژه: صرفه جویی در انرژی خانه: 8 مرحله
پروژه: صرفه جویی در مصرف انرژی در خانه: هانا رابینسون ، راشل وایر ، کایلا کلیاری استفاده از یک برد آردوینو و Matlab یک روش ساده و م effectiveثر برای کمک به صاحبان خانه برای بهینه سازی مصرف انرژی است. سادگی و همه کاره بودن برد آردوینو شگفت انگیز است. وجود دارد
10 پروژه اصلی آردوینو برای مبتدیان! حداقل با یک تخته حداقل 15 پروژه بسازید!: 6 مرحله
10 پروژه اصلی آردوینو برای مبتدیان! حداقل با یک تخته حداقل 15 پروژه بسازید!: پروژه آردوینو & amp؛ هیئت آموزشی ؛ شامل 10 پروژه اصلی آردوینو است. همه کد منبع ، فایل Gerber و موارد دیگر. بدون SMD! لحیم کاری آسان برای همه. اجزای قابل جابجایی و تعویض آسان. شما می توانید حداقل 15 پروژه را با یک برنامه