مقدمه: کارت دما چیست و چرا میخواهیم یکی بسازیم؟
یک کارت دما در سادهترین تعریف، یک مدار الکترونیکی است که سیگنال آنالوگ یک سنسور دما (مانند ترموکوپل یا RTD) را دریافت کرده و آن را به یک سیگنال استاندارد و قابل خواندن (مانند دیجیتال، 4-20 میلیآمپر یا 0-10 ولت) تبدیل میکند. هدف از ساخت آن میتواند یادگیری، نمونهسازی اولیه یا استفاده در یک پروژه شخصی کوچک باشد.
در این مقاله، ما قصد داریم یک ماژول اندازهگیری دما ساده را با استفاده از یک سنسور ترموکوپل نوع K و یک آمپلی فایر مخصوص ترموکوپل بسازیم که خروجی آن به راحتی توسط یک آردوینو (Arduino) خوانده شود.
گام اول: انتخاب سنسور و درک چالشها
ما از ترموکوپل نوع K استفاده میکنیم زیرا ارزان، در دسترس و با محدوده دمایی وسیع است.
چالش اصلی: خروجی ترموکوپل بسیار ضعیف (در حد میکروولت به ازای هر درجه سانتیگراد) و غیرخطی است. همچنین نیاز به جبران سازی ناحیه سرد (Cold Junction Compensation - CJC) دارد تا دمای نقطه اتصال به مدار ما را نیز در نظر بگیرد.
گام دوم: انتخاب قلب تپنده کارت؛ آیسی تقویت کننده (Amplifier IC)
برای حل چالشهای بالا، به جای طراحی یک مدار پیچیده، از یک آیسی مخصوص ترموکوپل استفاده میکنیم. این آیسیها همه محاسبات و تقویت را به طور داخلی انجام میدهند.
پیشنهاد ما: آیسی MAX6675 یا MAX31855.
این آیسیها به طور داخلی دارای تقویت کننده، مبدل آنالوگ به دیجیتال (ADC) و جبرانساز ناحیه سرد هستند.
خروجی آنها به صورت دیجیتال (پروتکل SPI) است که کار را برای میکروکنترلرها بسیار آسان میکند.
دقت خوبی (معمولاً ±2°C) برای کاربردهای غیرحساس ارائه میدهند.
گام سوم: قطعات مورد نیاز
میکروکنترلر: یک برد آردوینو (Arduino Uno/Nano)
آیسی مبدل ترموکوپل: ماژول آماده MAX6675 یا MAX31855 (پیشنهاد میکنیم از ماژول آماده استفاده کنید تا دردسرهای مونتاژ را نداشته باشید).
سنسور دما: ترموکوپل نوع K
برد بورد (Breadboard) و سیم جامپر
منبع تغذیه: پورت USB آردوینو یا یک منبع 5 ولت خارجی
خازنهای فیلتر (اختیاری): برای نویزگیری
گام چهارم: نقشه Schematic (اتصالات)
اتصالات بین ماژول MAX6675 و آردوینو بسیار ساده است:
پایه ماژول MAX6675 پایه آردوینو توضیح
VCC 5V تغذیه مثبت
GND GND زمین
SCK پین 13 (SCK) کلاک پروتکل SPI
CS پین 10 (SS) انتخاب تراشه (Chip Select)
SO پین 12 (MISO) خروجی داده از ماژول به آردوینو
ترموکوپل نیز به ترمینال مخصوص خود روی ماژول وصل میشود (قطبیت مهم است).
گام پنجم: نرمافزار و برنامهنویسی (کد آردوینو)
یکی از مزایای استفاده از این آیسیها، وجود کتابخانه (Library) آماده است.
در نرمافزار آردوینو IDE، کتابخانه "Adafruit MAX6675 Library" را از طریق Library Manager نصب کنید.
کد زیر را آپلود کنید:
#include "Adafruit_MAX31855.h" // فراخوانی کتابخانه
// تعریف پایهها
#define MAX_CS 10
#define MAX_DO 12
#define MAX_CLK 13
// ایجاد یک شیء از کلاس سنسور
Adafruit_MAX31855 thermocouple(MAX_CLK, MAX_CS, MAX_DO);
void setup() {
Serial.begin(9600); // راه اندازی ارتباط سریال
Serial.println("MAX6675 - Reading Temperature from Thermocouple");
delay(500);
}
void loop() {
// خواندن دما به صورت مستقیم
double c = thermocouple.readCelsius(); // خواندن دما به سانتیگراد
if (isnan(c)) { // بررسی خطا
Serial.println("Error Reading Sensor!");
} else {
Serial.print("Temperature: ");
Serial.print(c);
Serial.println(" °C");
}
delay(1000); // تاخیر یک ثانیه
}
گام ششم: تست و عیبیابی
پس از آپلود کد، Serial Monitor آردوینو را باز کنید.
باید مقادیر دمایی را به صورت زنده مشاهده کنید.
سنسور را در دست بگیرید یا به یک منبع گرم/سرد نزدیک کنید تا تغییرات دما را ببینید.
اگر خطا دریافت کردید، اتصالات، سلامت ترموکوپل و تغذیه را بررسی کنید.
گام هفتم: ارتقاء و تبدیل به یک "کارت" واقعی
این مدار روی بردبورد یک نمونه اولیه است. برای ساخت یک کارت دما (Temperature Card) صنعتیتر و مستقل، باید این مراحل را طی کنید:
طراحی PCB: یک برد مدار چاپی (PCB) اختصاصی برای مدار خود طراحی کنید.
ایزولاسیون (جداسازی گالوانیک): برای محافظت از آردوینو در برابر نویز و ولتاژهای بالا در محیط صنعتی، از اپتوکوپلر و مبدلهای ایزوله استفاده کنید.
خروجی استاندارد: به جای خروجی سریال، یک خروجی استاندارد صنعتی 4-20 میلیآمپر یا 0-10 ولت به مدار اضافه کنید.
قاب و کانکتور: کل مدار را در یک محفظه (Enclosure) محکم قرار داده و از کانکتورهای صنعتی (مثل Terminal Block) برای اتصال سنسور و منبع تغذیه استفاده کنید.
کالیبراسیون: دقت سنسور خود را با یک منبع دمای مرجع (مانند حمام یخ) کالیبره کنید.
نتیجهگیری
ساخت یک کارت دما در سطح مبتدی یک پروژه عالی برای درک مفاهیم اندازهگیری صنعتی دما است. آنچه ما ساختیم یک ماژول سنجش دما مبتنی بر ترموکوپل بود. برای استفاده در محیطهای حساس و صنعتی، باید ملاحظات ایمنی، دقت و استحکام را به طور جدی در نظر گرفت و از کارتهای دما (Temperature Cards) یا ترانسمیترهای دمای آماده و استاندارد شده شرکتهای معتبر استفاده نمود.