راه اندازی ماژول ترموکوپل MAX6675 K با آردوینو
این ماژول دارای قابلیت اندازه گیری تا دمای 1024 درجه سانتی گراد را دارد و مناسب برای اندازه گیری دمای کوره ها، اجاقها و سایر محیط های صنعتی میباشد.
ترموکوپل ها بسیار حساس هستند ، آنها به یک تقویت کننده خوب به همراه مرجع دمایی پایدار نیازمند هستند که تراشه MAX6675 راه انداز و تقویت کننده ترموکوپل این امر را محقق کرده و ترموکوپل های نوع K را راه اندازی کرده و داده دما را بواسطه خروجی دیجیتالی سریال SPI ارئه می دهد.برد راه انداز MAX6675 همه چیز را برای راه اندازی ترموکوپل فراهم کرده است، لذا کافیست با رابط ساده خود به هر میکروکنترلری یا برد آردوینو متصل شده و از طریف پروتکل SPI داده دما قرائت شود.
ویژگی ها:
- کار با همه ی ترموکوپل های نوع K
- خروجی 0 تا 1024 درجه سانتی گراد با دقت 0.25 درجه سانتی گراد (رزولوشن 12 بیت)
- 3.0 الی 5.5 ولت سطح منطقی و تغذیه ماژول
- انتقال اطلاعات از طریق پروتکل SPI (نیاز به حداقل 3 پین ورودی خروجی)
وضعیت پایه ها دیجیتال:
- GND
- 3.3V / 5V
- (SCK (Serial Clock
- (CS (Chip Select
- (SO (Serial Output
وضعیت پایه ها آنالوگ:
- + (Thermocouple +)
- – (Thermocouple -)
کاربرد:
موارد استفاده این ماژول در محیطهای صنعتی و نیمه صنعتی مانند کوره ها، اجاقها، اندازه گیری صنایع غذایی و… میباشد. طبق عکس زیر مدارمون رو میبندیم :
// this example is public domain. enjoy! // www.ladyada.net/learn/sensors/thermocouple #include <max6675.h> #include <LiquidCrystal.h> #include <Wire.h> int thermoDO = 12; int thermoCS = 10; int thermoCLK = 11; MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO); int vccPin = 3; int gndPin = 2; LiquidCrystal lcd(2, 3, 4, 5, 6, 7); // make a cute degree symbol uint8_t degree[8] = {140,146,146,140,128,128,128,128}; void setup() { Serial.begin(9600); // use Arduino pins pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH); pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW); lcd.begin(16, 2); lcd.createChar(0, degree); // wait for MAX chip to stabilize delay(500); } void loop() { // basic readout test, just print the current temp lcd.clear(); lcd.setCursor(0, 0); lcd.print("MAX6675 ECA.IR"); // go to line #1 lcd.setCursor(0,1); lcd.print(thermocouple.readCelsius()); #if ARDUINO >= 100 lcd.write((byte)0); #else lcd.print(0, BYTE); #endif lcd.print("C "); lcd.print(thermocouple.readFahrenheit()); #if ARDUINO >= 100 lcd.write((byte)0); #else lcd.print(0, BYTE); #endif lcd.print('F'); delay(1000); }
کتابخانه مورد استفاده در این برنامه Max6675 وLiquidCrystal میباشد.
جهت اضافه کردن کتابخانه در آردوینو از آموزش زیر استفاده کنید :
اگر در مراحل کار با مشکل روبرو شدید میتوانید در تاپیک مربوط در انجمن تخصصی برق و الکترونیک ECA سوال خود را مطرح کنید تا توسط کاربران عزیز به جواب مورد نظر برسید.
سلام شدیدا به برنامه نویسی ترموکوپل برای کوره ذغال نیازمندم ..لطفا اگر دراین زمینه فعالیت دارید بهم جواب بدید
سلام.وقت بخیر.
اگر بخواهم دمای بیش از ۱۰۲۳ درجه را اندازه بگیرم،آیا ماژولی برای آن وجود دارد؟؟
چون ترموکوپل تایپ K دماهای بالاتری را نیز حس میکند .ممنونم
سلام وقت بخیر
من پروژه رو دقیقا مطابق شما بستم و کد برنامه هم کپی کردم ولی در عمل دما رو روی ۱۰۲۳ نشون میده و تغییر هم نمیکنه
تو پروتئوس هم امتحان کردم همینجوری بود
ممنون میشم راهنمایی کنید
با سلام. من کدها را پس از کپی کردن وارد ide کردم و به اردوینو یونو منتقل کردم . نحوه اتصال نیز همانطور که توضیح دادید است اما مشکلی که دارم این است که هرباز برنامه را آپلود می کنم دما تغییر می کند اما در طول زمان اجرای برنامه تغییرات دما را نشان نمی دهد. ممکن است من را راهنمایی کنید. ممنون.
سلام میشه چند ترموکو\ل را به اردوینو متصل کرد