ویژگی های ماژول ترموکوپل MAX6675
این ماژول یک سنسور دما با دقت 0.25 درجه سانتیگراد است که میتواند دمای بین -20 تا 80 درجه سانتیگراد را اندازه بگیرد. این ماژول شامل یک ترموکوپل تایپ K و یک راهانداز و تقویت کننده به نام MAX6675 میباشد. خروجی تراشه MAX6675، سه سیگنال با پروتکل ارتباطی SPI برای گزارش دمای اندازهگیری شده میباشد.
از مزایای این ماژول میتوان به استفاده ی ساده و اندازهگیری دماهای بالا اشاره کرد.
دیتاشیت تراشه MAX6675 را می توانید از اینجا دانلود کنید.
MAX6675 K Type Thermocouple Module Datasheet
معرفی پایه های (Pinout) ماژول ترموکوپل MAX6675
ماژول ترموکوپل MAX6675 دارای 7 پایه به شرح زیر است:
- VCC: تغذیه ماژول –3 تا 5.5 ولت
- GND: زمین
- SCK: پین کلاک
- CS: انتخاب تراشه
- SO: خروجی سریال
- TH-: ورودی سر منفی ترموکوپل
- TH+: ورودی سر مثبت ترموکوپل
پین اوت (Pinout) این ماژول را می توانید در تصویر زیر مشاهده کنید.
لوازمی که به آن احتیاج دارید
قطعات مورد نیاز
نرم افزارهای مورد نیاز
راه اندازی ماژول ترموکوپل MAX6675 با آردوینو
گام اول: سیم بندی
مطابق مدار زیر ماژول را به آردوینو وصل کنید.
گام دوم: نصب کتابخانه
به Library manager رفته و کلمه MAX6675 را سرچ کنید و در ادامه همانطور گه در تصویر زیر مشاهده می کنید، کتابخانه آن را نصب کنید.
گام سوم: کد
اکد زیر را روی برد آردوینوی خود آپلود کنید.
/*
MAX6675-K-Type-Thermocouple
Modified on 31 oct 2020
by Amir Mohammad Shojaee @ Electropeak
Home
based on MAX6675 Arduino Library Examples
*/
#include "max6675.h" // max6675.h file is part of the library that you should download from Robojax.com
int soPin = 4;// SO=Serial Out
int csPin = 5;// CS = chip select CS pin
int sckPin = 6;// SCK = Serial Clock pin
MAX6675 Module(sckPin, csPin, soPin);// create instance object of MAX6675
void setup() {
Serial.begin(9600);// initialize serial monitor with 9600 baud
Serial.println("MAX6675");
}
void loop() {
// basic readout test, just print the current temp
Serial.print("C = ");
Serial.println(Module.readCelsius());
delay(1000);
}
ابتدا کتابخانه MAX6675 پیوست میشود. در ادامه 3 پایه خروجی تعریف شده و به پین های 4 و 5 و 6 آردوینو متصل میشوند. در نهایت نیز دما بر حسب درجه سانتیگراد نمایش داده میشود.
همانطور که در تصویر زیر مشاهده میکنید، ابتدا ترموکوپل در فضای آزاد بوده و دمای محیط را نشان میدهد. بلافاصله آن را درون آب گرم قرار میدهیم. خروجی Serial Monitor دمای آب را تقریبا 70 درجه سانتی گراد اندازهگیری میکند.
Comments (17)
سلام وقت بخیر
من همه ی کد ها رو چک کردم ولی وقتی پروژه رو اجرا میکنم دما رو روی 1000 به بالا نشون میده با پروتئوس هم امتحان کردم
بردم هم اردوینو uno هست به پایه های 11.12.13 وصل میکنم
ممنون میشم جواب بدید .
سلام. وقت شما هم بخیر
یک اینکه آموزش رو با پایههای پیشنهاد شده خود آموزش هم جلو میبرید همین مشکل هست؟ البته بجز پایه های استفاده شده در آموزش، میتونید از هر پایه دیجیتال دیگه ای هم استفاده کنید فقط باید حواستون باشه و کد رو هم به دقت متناسب با همون تغییر بدید.
و اینکه اگر باز هم جواب نداد احتمال داره که مشکل از خود ماژول باشه.
سلام میشه چند ترموکوپل را به اردوینو متصل کرد
سلام،
بله مشکلی نداره. برای اتصال هر ترموکوپل به آردوینو 3 پایه لازم هست. کافیه که هر ترموکوپل رو از طریق 3 پایه به آردوینو متصل کنید و اون ترموکوپل رو در کدتون به همراه شماره پایههاش تعریف کنید. مشابه کد همین آموزش، خط 12 تا 15. همین قسمت رو با شماره پایههای جدید میتونید برای هر ترموکوپل تکرار کنید.
این برنامه جواب نمی دهد
کلا اشتباه است
یک فیلم از کار کرد بگزارید.
درود
من بستم جواب داد.
در پروتوس دما را اشتباه نشان می دهد . جواب نگرفتم.
اگر non آمد سیم ترموکوپل قطع است.
با تشکر
سلام… بنده کامل متوجه نشدم، پس در ابتدا در شبیهسازی یک سیم کاملا متصل نبوده و الان مشکلتون رفع شده؟
سلام
وقت بخیر
من این برنامه رو نوشتم و کار میده ولی دما رو حدود 7 درجه از مقدار واقعی بیشتر نشون میده.در مورد کالیبره کردن این سنسور هم چیزی پیدا نکردم.اگر راهنمایی بفرمایید ممنون میشم.
سلام.
تقریبا تمامی سنسورهای دما به نوعی کالیبراسیون برای نشون دادن مقدار دقیق دما نیاز دارن. کالیبراسیون این سنسور هم پیچیدگی خاصی نداره و شبیه کالیبره کردن هر نوع سنسور دیگه ایه. کافیه که دمای محیطی رو که از قبل دماش رو به طور دقیق میدونید به وسیله این سنسور اندازه بگیرید. یک اختلاف دما بینشون وجود داره و میتونید از اون اختلاف دما برای کالیبره کردن سنسور استفاده کنید. این کار رو در واقع خود شما هم انجام دادید و به اختلاف 7 درجه رسیدید. میتونید این 7 درجه رو داخل کد اعمال کنید و تو اندازهگیری های بعدیتون با سنسور ازش استفاده کنید.
بسیار سپاسگزارم
خواهش میکنم
سلام
من میخواستم خروجی رو به صورت نمودار دما-زمان نشون بدهف باید چیکار کنم؟
سلام.
میتونید توی نرمافزار آردوینو از Serial Plotter استفاده کنید. میتونید این رو از آدرس Tools -> Serial Plotter پیدا کنید یا از کلیدهای ترکیبی Ctrl + Shift + L استفاده کنید.
سلام من 3 تا ترموکوپل دارم، میخام دمای جسمم رو در 3 مکان مختلف اندازه بگیرم. یه دونه اردینو باید بگیرم یا سه تا؟میشه یکم راهنماییم کنین
سلام.
یک عدد ترموکوپل کفایت میکنه. همونطور که در کامنتهای بالایی هم اشاره شده، برای اتصال هر ترموکوپل به آردوینو 3 پایه لازم هست. کافیه که هر ترموکوپل رو از طریق 3 پایه به آردوینو متصل کنید و اون ترموکوپل رو در کدتون به همراه شماره پایههاش تعریف کنید. مشابه کد همین آموزش، خط 12 تا 15. همین قسمت رو با شماره پایههای جدید میتونید برای هر ترموکوپل تکرار کنید.
ممنون از آموزش کاربردی شما میخواستم یک فر برقی درست کنم و دمای آن قابل تنظیم و در آن دما ثابت بماند آیا این ترموکوپل میتواند حداکثر دمای سیصد درجه سانتی گراد را نشان بدهد و خود ترموکوپل در این دما آسیب نبیند
با سلام
جناب در توضیحات محصول آمده است “این سنسور با دقت بالا 0.25 درجه از -20 تا +80 درجه ی سانتی گراد را اندازه گیری می کند” در نتیجه خیر.