ترموستات دیجیتال با AVR

ترموستات دیجیتال یا کنترل دمای محیط یک پروژه کاملا کاربردی هست که برای ثابت نگه داشتن دمای محیط در یک بازه مشخص طراحی شده است.

توضیحات مقدماتی ترموستات دیجیتال با AVR

در این پروژه از یک سنسور دما برای اندازه گیری دما ، میکروکنترلر برای کارهای پردازشی ، دو عدد رله یکی برای فن و دیگری برای هیتر و یک عدد نمایشگر برای نمایش دما ، سه عدد پوش باتن برای تنظیم مقدار ماکزیمم و مینمیم دما طراحی شده است.

ترموستات دیجیتال با AVR

نکته خیلی مهم : سنسور این پروژه DS18B20   می­باشد ، ولی یک ویژگی خوب دیگر این پروژه این است که با تغییر کوچک در سخت افزار و تغییر کد میکروکنترلر می توانید سنسور LM35  را نیز روی پروزه سوار کنید. نحوه انجام کار در  فایل توضیح داده خواهد شد.

 

پروژه ترموستات دیجیتال با میکروکنترلر AVR و سنسور DS18B20  یک پروژه ای کامل برای کنترل دمای ، محیط های صنعتی و خانگی می باشد .

نحوه عملکرد ترموستات دیجیتال با AVR

عملکرد پروژه بطور ساده بدین صورت است که سنسور DS18B20  دما را اندازه گیری و با پروتکل 1WIRE  به میکروکنترلر ATmega8  منتقل می کند . برد پروژه دارای دو عدد رله می باشد که اگر دما از حد تنظیم شده پایین بیاید بخاری یا هیتر روشن می شود و اگر دما بالاتر از حد تنظیم شده برود فن روشن می شود.  هدف پروژه نگه داشتن دمای محیط در حد مطلوب می باشد .از این پروژه می توان در محیط های مختلفی از جمله مرغ داری ها ، تنظیم دمای دستگاه های جوجه کشی و غره استفاده کرد .

پروژه ترموستاد AVR + DS18B20 +

با توجه به اینکه از سنسور DS18B20  برای اندازه گیری دما استفاده شده است دقت و بازه کافی برای اندازه گیری را داریم . نکته مهم دیگر این است که تمام سه خروجی رله به وسیله ترمینال سه تایی بیرون آورده شده است و کاربر هم می تواند از حالت Normaly Open  و هم از حالت  Normaly Closed استفاده کند. با شستی های های موجود روی برد می توانید بازه دمایی را مشخص کنید .

قطعات مدار
Quantity Value اسم قطعه
1 100uF 16V خازن  الکترولیتی
2 100nF خازن عدسی
1 سبز ال ای دی
2 1N4007 دیود
2 تک کنتاکت ده امپر رله 10 امپر تک کنتاکت
1 LCD 16X2 نمایشگر
1 مادگی جک آداپتور
2 سه پین آبی ترمینال آبی سه پین
2 2N2222 ترانزیستور
1 5K پتانسیومتر
2 4.7K مقاومت
3 1K مقاومت
3 دو پایه پوش باتن
1 7805 رگولاتور ولتاژ 5 ولت
1 ATmega8 میکروکنترلر
1  ‘DS18B20 یا LM35 سنسور دما (با توجه به توضیحات)
1 28 پین سوکت آیسی 28 پین
1 جفت 1*40 پین هدر 40*1 نری و مادگی

فیلم عملکرد مدار

ویژگی ها

  • قابلیت تنظیم بازه دمایی با سه عدد شستی
  • بازه اندازه گیری 55- تا 125+ با سنسور DS18B20 می باشد.
  • دارای دقت اندازه گیری 12 بیتی با سنسور DS18B20
  • کنترل دمای محیط در بازه دلخواه
  • قابلیت تنظیم نور نمایشگر
  • نمایشگر کاراکتری 16*2
  • ال ای دی پاور

تذکر: شماتیک بصورت با کیفیت در فایل جداگانه بصورت PDF  ضمیمه شده است.

فایل ها : فایل شماتیک ، فایل شبیه سازی پرتئوس ،برنامه نویسی، فایلPCB

 

نکته مهم : این پروژه دارای کنترل PID نمی باشد. و از کنترلر ساده قطع و وصل رله با دما استفاده میکند. شما میتوانید به دلخواه با تغییر برنامه کنترلر دلخواه خودتان را پیاده کنید. در حقیقت یک پلتفرم آماده است که میتوانید برنامه آن را تغییر دهید. دوستان زیادی هستن که روی کنترلر های PID ، فازی ، باند مرده و… میخوان کار کنن. این سری دوستان میتوانند روی این برد برنامه نوشته شده خود را پیاده سازی کنن.

دانلود فایل های پروژه

دانلود فایل PCB

درباره ی جهاندیده

کاربر عزیز از اینکه مطالب سایت ما را مطالعه میکنید بینهایت سپاسگذارم.با نظرات سازنده خود به ما انگیزه بیشتری دهید تا مطالب آموزشی بیشتری را تولید و منتشر کنیم. استیوجابز میگه "شغل شما بخش عمده ای از زندگیتان را تشکیل خواهد داد، پس تنها راهی که از این بخش احساس رضایت خواهید کرد این است که باور داشته باشید در حال انجام کار بزرگی هستید. بهترین راه برای انجام یک کار بزرگ نیز لذت بردن از آن کار است. اگر نمی دانید چه باید انجام دهید عجله نکنید و سعی نمایید اول راه خود را بیابید. با پیدا کردن راه درست مانند یک رابطه ی خوب با گذشت سال ها هر روز همه چیز بهتر و بهتر می شود و همواره رو به جلو پیش خواهید رفت. بنابراین به دنبال آن چیزی بگردید که قلباً شما را راضی می کند. عجله نکنید." امیدوارم همیشه موفق باشید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

31 دیدگاه

  1. سلام
    میخام از این مدار تو یخچال فریزر استفاده کنم
    این مدار میتونه مثلا اگر مینیمم دما رو 15 گذاشتی و ماکسیمم رو مثلا 20گذاشتی هرکدوم از رله ها مال یه دما هستن یا مثلا یه رله رو 20 روشن بشه و رو 15 خاموش آخه میخام بزارم رو یخچال که اگه دما به 20 رسید روشن بشه و به 15 که رسید خاموش بشه این قابلیت رو داره یا نه
    ممنون میشم اگه جواب بدین خیلی لازم دارم

    • سلام عملکردش را میشه با تغییر برنامه نویسی که به همراه فایل ها براتون ارسال میشه تغییر داد ولی بطور پیش فرض وقتی دما از مقدار حداقل کمتر شد یکی از رله ها روشن و دیگری خاموش و در حداکثر دما این عمس برعکس میشه …

  2. سلام مدار ترموستات مقدار اعشار دمارو نشون میده و تو تنظیمات حد بالا و پایین هم اعشار دما رو میشه تنظیم کرد چون تو فیلمی که گذاشتین نه دمای محیط رو اعشار نشون میده نه تنظیمات دما اعشار داره ممنون میشم پاسخ بدین

    • سلام نه قسمت اعشاری را نمیشه تنظیم کرد. و در نمایش هم پیش بینی نشده
      پ ن : بدلیل سفارش شخص کارفرما اینطوری طراحی شده میتونید کدش را ویرایش کنید خودتون اپن سورس هست !

  3. سلام
    این پروژه با بسکام نوشته شده؟
    ممنون میشم کمی سریع جواب بدین لازمش دارم

  4. حسن علیشاهی

    سلام
    فایل pcbDocدر پروژه ترموستات دیجیتال با چه نرم افزاری باز مشود

  5. سلام.
    من میخواستم هم دما هم رطوبت رو کنترل کنه .
    میخواستم بپرسم که ایا مداری با مگا8در اینمورد دارید یا نه
    لطفا معرفی کنید

  6. سلام و خسته نباشید مدار رو درست کردم فقط دما رو 464 نشون میده از lm35 استفاده کردم چرا؟

    • سلام، آقا مهدی پروژه برنامه نویسی را با نرم افزار کدویژن بازکنید و دوباره کامپایل کنید و خروجی آن را با نرم افزار پروتئوس که در کنار فایل های پروژه هست تست کنید. در ضمن وقتی از lm35 استفاده میکنید دقت کنید که از مقاومت پول آپ استفاده نکنید. مثل عکس اول. تست گنید و نتیجه را اطلاع بدید. با تشکر

  7. من تا به حال با پراگرامر و بسکام و کدویژن برنامه نریختم فقط با بوت لودر اردوینو وatmega328این کار رو کردم چطور با پروگرامر بریزم

    • سلام، علی آقا برای پروگرم کردن میکروکنترلر های AVR باید از پروگرمر های موجود در بازار مثل USBasp که قیمت ارزانی هم دارند استفاده کنید(البته تنوع زیاد هست STK500,MKII و… حتی پروگرمر‌های خود شرکت اتمل هم هستن که گرونتر هستن)در هنگام خرید این پروگرمر‌ها معمولا آموزش استفاده از آن‌ها هست. بازم اگر مشکلی داشتین و یا راهنما نداشت اینجا مطرح کنید تا در حد امکان توضیحاتی را بنویسم. فقط لطفا مدل پروگرمر خودتان را اعلام کنید.

  8. سلام. اگر اشتباه نکرده باشم منطق این مدار به این شکله که وقتی دمای پایین رو 25 و دمای بالا رو 40 تنظیم کنیم پایینتر از 25 هیتر و بالاتر از ۴۰ کولر روشن بشه. اما احتمالا دمای بین ۲۵ تا ۴۰ هر دو رله باید خاموش باشند. سوال من از شما اینه که آیا میشه حد فاصل دماها هیتر رو فقط روشن نگه داشت؟

  9. سلام
    من مدار بالا رو با سنسور DS18B20 در شبیه ساز پروتیوس اجرا کردم.یک مشکل داره که هر چند ثانیه یکبار دما قاطی میکنه
    T= -124.-79°c
    و رله هیتر به مدت چند ثانیه روشن میشه
    مشکل از شبیه ساز هست با خود سنسور؟اگه امکانش هست علتو توضیح بدین.به این مدار نیاز فوری دارم.سپاس

    • سلام، به فرکانس کاری مدارتون دقت کنید درست تنظیم کرده باشید. مقاوت پول آپ را یادتون نره بذارید…

  10. سلام .مدار با سنسور 1820 ساختم اما دما را در محدوده 3.5 درجه نشون میده!!!و مشکل دوم با قطع منبع تغذیه مقادیر دما پایین و بالا سیو نمیشه و برمیگرده به حالت پیش فرض برنامه!
    راهنمایی کنید ممنون

  11. سلام. مقادیر دما بالا و پایین با قطع ولتاژ ثبت نمیشه و برمیگرده به مقادیر پیش فرض برنامه.راهنمایی کنید ممنون

  12. حسین اسفندانی

    با سلام
    من پروژه رو کامل کردم اما مدار هیچ کاری انجام نمیده فقط کاری که میشه باهاش انجام داد اینه که

    وقتی پتانسیومر رو میچرخونی صفحه LCD کاملا سبز میشه و وقتی که در خلاف جهت میچرخونی فقط سطر بالای ال سی دی کاراکتر هاش پر رنگ میشه وهیچ عددی رونمایش نمیده و سطر پایین هم در هر دوحالت سبز میمونه هیچ تغییری نمیکنه

    لطفا راهنمایی کنید فردا صبح باید تحویل بدم

    • سلام، به احتمال زیاد شما کلاک میکروکنترلر را درست تنظیم نکردید. باید روی 8مگاهرتز داخلی باشد. برای تنظیم باید در موقع پروگرم کردن فیوز بیت ها را تنظیم کنید. در سایت نحوه تنظیم فیوز بیت ها موجود است.

  13. حسین اسفندانی

    با سلام
    من مدار رو درس کردم مشکل از اتصالی پایه ها بود که کلا مگا8 سوخت و عوض کردم الان مشکل اینه که دمای فعلی رو اینطوری نمایش میده
    T= -124.-79°c
    مشکل از کجاس فقط یخورده سریعتر

    • سلام، احتمالا مقاوت پول آپ سنسور را وصل نکردین. همچنین در مرحله مونتاژ دقت کنید. همچنین تنظیم فیوز بیت ها یادتون نره روی 8 مگ داخلی بذارید.

  14. حسین اسفندانی

    از سنسور
    DS18B20 استفاده کردم

  15. حسین اسفندانی

    سلام
    کلا پروژه روی یه فیبر دیگه با دقت بالا مونتاژ کردم
    مقاومت پول آپ گزاشتم
    و فیوزبیتهارو هم 8 مگ گزاشتم داخلی تنظیم شد
    ولی بازهم درس نشد

    توی برد قبلی فقط مینوشت
    T= -124.-79°c
    و قابلیت نتظیم دما

    اما الان وقتی مدار رو روشن میکنم
    کارکتر ردیف اول همشون با یک رنگ روشن میشن و هیچ عددی رو نمایش نمیدن
    بعد از دستکاری کلید ها مینویسه Termostat Pr
    و باز هم دستکاری میکنم مینویسه 0Sensors Found
    و بازهم دستکاری میکنم دمارو اینطوری نمایش میده T= -124.-79°c وپایینش مینویسه که دما از 20 تا 30 تنظیم شده و هرکاری که میکنم کم و زیاد نمیشه

    البته موقع دستکاری کلید ها حروف نامشخص میاد و میره

    من به یه چیزی شک کردم اینی که مینویسه 0Sensors Found یعنی چی (یعنی سنسوری وجود نداره)

    • سلام، دوست عزیز بنظر میاد اول بهتره فایل پرتئوس پروژه را یکبار تست کنید.
      در مورد کارکرد برد تا الان از این برد حداقل سه موردی را خودم منتاژ کردم البته بیشتر با LM35 بودن. و دقت کنید عکسی که در بالا است و جهت سنسور را نشون میده روش نوشته شده برای ورژن LM35 هستش. دقت کنید جهت سنسور را اشتباه نزنید.
      کلاک پروژه را مثل همیشه دقت کنید در کدویژن از Project و بعد Configure را انتخاب کنید و ببینید کلاک میکروکنترلر چقدر است. بعد یکبار دیگر میتوانید کامپایل کنید و در پروتئوس هم میتونید تست کنید. بعد فیوزبیت های میکروکنترلر را بررسی کنید.
      اگر همه چیز اکی بود بعد به جهت VCC Output GND سنسور دقت کنید روی برد. از سالم بودن سنسور مطمئن بشید.
      میتوانید یک کد خیلی ساده بنویسید خودتان تا روی ال_سی_دی یک متن ثابت نشون بده و سخت افزار خودتان را امتحان کنید.
      گفتین Termostat Pr نشون میده احتمالا یکاری میکنین میکروکنترلر ریست بشه بنظرم و همچنین نوشته 0Sensor Found هم نشون میده سنسور درست وصل نشده، پول آپ نداره، نیست یا سوخته.
      همچنین دیگهدر بدترین حالت دیدید شک اذیت میکنه میتونید پروژه دمای سنج زیر را دانلود و یکبار دیگر با سورس کد آن تست کنید و البته بازم به کانفیگ پایه ها، نوع میکروکنترلر و… در برنامه نویسی و سخت افزار دقت کنید.

  16. سلام
    کلی گشتم تا این مدارو پیدا کردم
    ولی چند تا مسئله هست
    من دانشجوی کاردانی نرم افزار هستم و از الکترونیک چیز زیادی نمیدونم و دارم تجربی یاد میگیرم
    من اگه برای ساخت این ترموستات کمک بخوام کمکم میکنین؟
    لیست قطعات که هست و مشکلی نیست
    برای پروگرم کردن باید پروگرمر داشته باشم دیگه؟,ولی برنامش کجاست؟ (: همونی که باید پروگرم بشه
    بعدشم که باید pcb رو بسازم و لحیم کاری
    تورو خدا نگته سوال بقیه نگاه سوال من. ببهشید تورو خدا