ترموکوپل در واقع تشکیل شده از دو فلز نا همسان می باشد. با حرارت دادن به محل اتصال این دو فلز، جریان بسیار ضعیفی تولید میشود. با بالاتر رفتن دمای محل اتصال دو فلز، ولتاژ تولیدی افزایش مییابد. در حقیقت ترموکوپل در هر دما، ولتاژ خاصی تولید میکند. بنابراین در صورت سنجش دقیق این ولتاژ، قادر خواهیم بود دمای محل اتصال را به صورت دقیق اندازه گیری کنیم. ولتاژ تولید شده توسط ترموکوپل بوسیله ترمومتر به دما تبدیل میشود. ترموکوپلها انواع مختلفی دارند که تفاوت آنها در نوع آلیاژهای به کار رفته در آنها میباشد. همچین محدوده دمایی عملکرد آنها هم به همین موضوع وابسته میباشد. برای مثال ترموکوپل در تیپهای B، J، K، S و… موجود میباشند. با توجه به نوع ترموکوپل، برای اندازهگیری دما باید از ترمومتر مناسب آن استفاده نمود. در این پست نحوهی راه اندازی ماژول ترموکوپل max6675 و نمایش دما روی lcd را به شما آموزش خواهم داد. در ادامه با مرجع تخصصی بردهای امبدد به زبان فارسی، دیجی اسپارک همراه باشید.
سنسور ترموکوپل MAX6675 تایپ K
ولتاژ مورد نیاز :۳ تا ۵٫۵ ولت DC
جریان :جریان ماژول ۵۰ میلی آمپر
پروتکل ارتباطی :SPI
دمای کاری ترموکوپل max6675 بین ۰ تا ۴۵۰ درجه سانتی گراد میباشد. این ترمومتر قادر به خواندن دما بین ۰ تا ۱۰۲۴ درجه سانتی گراد است. دقت اندازه گیری ماژول برابر با ۰٫۲۵ و دقت اندازه گیری ترموکوپل برابر با ۸ LSBs است. این ماژول برای استفادههای صنعتی مناسب میباشد. معمولا سنسور توسط یک کابل با روکش حرارتی مخصوص به ماژول متصل میشود. همانند تصویر زیر:
اتصالات مدار
اتصالات مدار همانند شماتیک در تصویر زیر میباشد. نمایشگر LCD به پورت D متصل شده است و ماژول ترموکوپل max6675 با پروتکل SPI (پورت B) به میکروکنترلر متصل است. توجه داشته باشید که ولتاژ مورد نیاز مدار ۵ ولت میباشد. برای این منظور میتوانید از یک آداپتور ۵ ولت یک آمپر برای تغذیه این مدار استفاده نمایید. الباقی اتصالات به میکروکنترلر Atmega8 هم در تصویر زیر قابل مشاهده است. ولی اگر در این مورد سوالی داشتید، از بخش نظرات همین آموزش مطرح کنید.
لوازم مورد نیاز
- ماژول و سنسور ترموکوپل MAX6675 تایپ K
- میکروکنترلر Atmega8
- نمایشگر lcd کاراکتری ۱۶*۲
- پتانسومتر ۵ کیلو اهم
کد AVR در CodeVision
جهت اجرای کدها باید در نرم افزار کدویژن، کدها را آماده کرده و سپس پروگرام کنید. چنانچه این روش را نمیدانید به آموزش نحوه ی ساخت پروژه جدید و پروگرام کردن میکروکنترلر مراجعه کنید. پس از ساخت پروژهی جدید در نرم افزار کدویژن CodeVision کدهای ترموکوپل max6675 زیر را داخل آن کپی کنید. سپس تراشه میکروکنترلر Atmega8 را پروگرام کنید.
محدودیت در دسترسی کامل به این مجموعه آموزش
دسترسی کامل به آموزش برای اعضای دیجی اسپارک امکان پذیر است. بخش اصلی آموزش شامل سورس کدهای توسعه داده شده توسط مهندسهای دیجی اسپارک است. به همین دلیل این آموزش خاص و یکتاست. برای استفاده از آن بایستی عضویت تهیه کنید. تبادل نظر با کاربران و پرسش سوال رایگان است و میتوانید از بخش نظرات همین آموزش اقدام کنید. |
تحلیل کد پروژه ترموکوپل max6675
در کدهای این آموزش، ابتدا کتابخانههای مورد نیاز به برنامه اضافه شده است. سپس LCD بر روی پورت D تنظیم شده است. متغیری برای ذخیره دما و رشتهای برای پیکربندی LCD تعریف کردهام. تابع read_temp یک تابع دارای خروجی میباشد. داخل این تابع تنظیمات پروتوکل SPI برای ماژول ترموکوپل max6675 انجام شده است و خروجی این تابع دمای اندازه گیری شده توسط ماژول میباشد. داخل تابع اصلی (main) ابتدا پورت B را به صورتی که برای اتصال به ماژول نیاز است، به عنوان ورودی و خروجی تعریف شده و سپس پروتکل SPI فعال شده است. و داخل حلقهی بینهایت ابتدا دما از تابع read_temp خوانده شده و پس از آن داخل LCD نمایش داده میشود. درهنگام پروگرام کردن کد روی میکروکنترلر AVR ، فیوزبیتها بر روی کریستال خارجی تنظیم شود.
چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند میتوانید از همین طریق اطلاع رسانی کنید.
پروژه و دریافت بن ارسال رایگان
برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکههای اجتماعی از جمله آپارات و اینستگرام، با هشتگهای دیجی_اسپارک دانشجوکیت digispark daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.
در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.
سلام.وقت بخیر.
اگر بخواهم دمای بیش از ۱۰۲۳ درجه را اندازه بگیرم،آیا ماژولی برای آن وجود دارد؟؟
چون ترموکوپل تایپ K دماهای بالاتری را نیز حس میکند .ممنونم.
با سلام برای اندازه گیری دمای بالاتر از ۱۰۲۴ درجه بایستی از ترموکوپل تایپ های R یا S استفاده کنید.
لینک دانلود سورس کد و کتابخانه ها نیست
با سلام
در این سایت هیچ فایلی برای دانلود نیست و تنها با خرید اشتراک سایت میتوانید به آموزش ها دسترسی پیدا کنید.
سلام اگه بخوایم رو کریستال داخلی باشه چه تغییری باید تو کد داد؟
با سلام
کد و نقشه شماتیک موجود در آموزش برای کریستال ۸ مگاهرتز داخلی است.
متن اصلی برنامه تو کدویژن چیه?
با سلام
متسفانه متوجه منظور شما نشدم. کد مربوط به راه اندازی ماژول داخل متن آموزش قرار داده شده است.
سلام من اشتراک سه ماهه خریداری کردم ولی کدها بهم نمایش داده نمیشه پیام فعال سازی ایمیل هم برام اومده و اشتراکم فعال شده چطوری باید به کدها دسترسی داشته باشم ممنون
با سلام
کاربر گرامی پیرو درخواستی که داشتید، حساب شما بررسی و فعال شد. لطفا به هنگام ایجاد حساب کاربری اطلاعات را صحیح و کامل وارد کنید که چنین مشکلاتی بروز ندهد.