ماژول ترموکوپل max6675 یک سنسور است که برای تشخیص دمای ترموالکتریک استفاده میشود. این ماژول شامل دو سیم غیرمشابه است که در یک انتها به هم متصل هستند. زمانی که دمای یک طرف با دمای طرف دیگر متفاوت است، جریان الکتریکی در مسیر برقرار میشود. این پدیده به عنوان اثر سیبک شناخته میشود و اساس کار ترموکوپل ها را تشکیل میدهد.
با استفاده از برد avr Wizard میتوان ماژول ترموکوپل max6675 را به راحتی راه اندازی کرد و دمای اندازهگیری شده را بر روی یک صفحه نمایش LCD نمایش داد. در این بررسی، به طور کامل به راه اندازی ترموکوپل با استفاده از برد avr میپردازیم. قبل از آن پیشنهاد میکنیم تا مقاله قوانین ترموکوپل را مطالعه کنید تا با آگاهی بیشتر کارتان را انجام دهید.
نحوه راه اندازی MAX6675 با AVR
ماژول max6675 یک مبدل آنالوگ به دیجیتال است که برای اندازه گیری دما با استفاده از ترموکوپل های سری K طراحی شده است. این ماژول دارای یک تقویت کننده داخلی است که قادر است دما را از صفر تا 1024 درجه سانتیگراد با وضوح 0.25 درجه سانتیگراد اندازه گیری کند. اطلاعات دما توسط این ماژول به صورت سریالی انتقال مییابد، که این به ما امکان میدهد تا دما را به طور دقیق و دقیقتر از قبل اندازه گیری کنیم.
درباره ترموکوپل نوع K بیشتر بخوانید: تست ترموکوپل نوع K
با قرار دادن پایه CS در حالت صفر، عملیات تبدیل داده توسط مبدل آنالوگ به دیجیتال (ADC) متوقف میشود. سپس با اعمال پالس ساعت به پایه SCK، دادههای آماده برای انتقال روی خط SDO منتقل میشوند. دادههای خروجی این مبدل 16 بیتی هستند و بیتهای 3 تا 14 شامل اطلاعات مربوط به دمای ترموکوپل میباشند. همچنین، بیت 2 نشان میدهد که آیا ترموکوپل قطع شده یا وصل شده است.
لوازم مورد نیاز برای راه اندازی ترموکوپل با avr
برای راه اندازی ماژول و سنسور ترموکوپل MAX6675 تایپ K با استفاده از میکروکنترلر، لازم است لوازمی مانند نمایشگر LCD کاراکتری 16×2 و پتانسیومتر 5 کیلو اهم نیز در اختیار داشته باشیم.
این لوازم که به صورت مجموعهای ارائه میشوند، به کمک آنها میتوان اطلاعات حرارتی را از ترموکوپل دریافت و آنها را به کنترلر انتقال داد. به این ترتیب، میتوان دمای محیط را اندازه گیری و کنترل کرد.
سنسور ترموکوپل MAX6675 تایپ K یک سنسور دما است که از پروتکل ارتباطی SPI استفاده میکند. این سنسور برای عملکرد خود به ولتاژی بین 3 تا 5.5 ولت نیاز دارد و جریان مصرفی آن حدود 50 میلیآمپر است.
با استفاده از این سنسور، میتوان دمای محیط را اندازهگیری کرده و به دستگاه کنترلی ارسال کرد. با توجه به ویژگیهای فنی این سنسور، میتوان آن را در برنامهها و پروژههای مختلفی که نیاز به اندازهگیری دما دارند، استفاده کرد.
مراحل راه اندازی MAX6675 با AVR
برای راه اندازی ماژول max6675 با میکروکنترلر AVR، ابتدا باید پایههای ماژول را به پینهای میکروکنترلر متصل کنیم. پایه SCK ماژول را به پین PB7 (پین 13)، پایه CS را به پین PB2 (پین 11) و پایه SO را به پین PB4 (پین 14) میکروکنترلر متصل میکنیم.
همچنین برای نمایش دادهها روی LCD، پایه RS را به پین PD0 (پین 2)، پایه EN را به پین PD1 (پین 3) و پایههای D4 تا D7 را به پینهای PD4 تا PD7 (پین های 6 تا 9) میکروکنترلر متصل میکنیم. در نهایت، برای کنترل مقاومت، پایه ADC0 را به پین 23 میکروکنترلر وصل میکنیم.
ماژول max6675 یک ترموکوپل است که دمای آن در بازه صفر تا 1024 درجه سانتیگراد قابل اندازهگیری است. دقت اندازهگیری این ماژول برابر با 0.25 درجه سانتیگراد است و دقت اندازهگیری ترموکوپل آن نیز برابر با 8 LSB است. به همین دلیل، این ماژول برای استفاده در صنعت بسیار مناسب است. برای اتصال ترموکوپل به ماژول، معمولاً از یک کابل با پوشش حرارتی ویژه استفاده میشود.
درباره ترموکوپل نوع K بیشتر بخوانید: آموزش ساخت ترموکوپل نوع K
کد AVR در کدویژن
برای شروع برنامه نویسی در نرم افزار کدویژن، کدهای مورد نیاز را باید در آن وارد کنید. ابتدا، پروژه جدیدی در کدویژن ایجاد کنید. برای این کار، از منوی “فایل” گزینه “جدید” و سپس “پروژه” را انتخاب کنید. پیامی ظاهر میشود که از شما میپرسد آیا میخواهید از بخش “کدویزارد” استفاده کنید.
سپس یک صفحه باز میشود که نشاندهنده محل ذخیره سازی پروژه است. ابتدا، محلی را که میخواهید پروژه در آن ذخیره شود را انتخاب کنید و سپس یک نام برای پروژه تعیین کنید.
در این صفحه، باید در کدویژن مدل میکروکنترلر خود را انتخاب کنید. ابتدا باید Atmega8 را از منوی مربوطه انتخاب کنید و سپس OK را بزنید. در قسمت پایین، فایلی وجود دارد که کدهای پروژه در آن ذخیره میشوند.
در قسمت C Compiler، میتوانید به تنظیماتی مانند تغییر مدل میکروکنترلر و کریستال دسترسی داشته باشید. با انتخاب گزینه OK، پروژه در نرم افزار کدویژن ایجاد میشود و آماده کدنویسی میشود.
پس از اتمام کدنویسی، میتوانید از منوی Project گزینه Compile را انتخاب کنید. اگر هیچ خطایی ندیدید، از همان منوی Project در نرم افزار کدویژن گزینه Build All را انتخاب کنید.
این کار باعث ترجمه برنامه به زبان ماشین و ذخیره آن در یک فایل با پسوند hex میشود. در این قسمت از آموزش کدویژن، باید میکروکنترلر را به سیستم متصل کنید و روی پروگرامر قرار دهید.
برای استفاده از برنامه، ابتدا باید فایل hex مربوط به آن را انتخاب کنید. سپس فایل را در محل ذخیره پروژه خود قرار دهید. بعد از آن، وارد پوشه Debug در پوشه Exe شوید و فایل با پسوند hex را انتخاب کنید.
در هنگام تنظیم فیوز بیتهای آی سی، به این نکته توجه کنید که این بیتها به طور پیش فرض بر روی یک مگاهرتز تنظیم شدهاند. بنابراین، اگر برنامه را با استفاده از کریستال 8 مگاهرتز کامپایل کردهاید، در قسمت Fuses باید فیوز بیتها را روی 8 مگاهرتز تنظیم کنید.
بعد از انجام مراحل فوق، گزینه Auto Program را انتخاب کنید و صبر کنید تا آی سی برنامه ریزی شود. حالا میکروکنترلر AVR آماده استفاده در مدار است. در نرم افزار CodeVision یک پروژه جدید ایجاد کنید و کدهای ترموکوپل max6675 را در آن کپی کنید. سپس تراشه میکروکنترلر Atmega8 را برنامه ریزی کنید.
تحلیل کد پروژه ترموکوپل max6675
برای اجرای برنامه خود، ابتدا کتابخانههای مورد نیاز را به برنامه اضافه میکنیم. سپس، به منظور نمایش دما بر روی یک صفحه LCD، ابتدا LCD را روی یک پورت خاص از میکروکنترلر تنظیم میکنیم.
در ادامه، یک متغیر برای ذخیره دما و یک رشته برای تنظیمات LCD تعریف میکنیم. سپس، با استفاده از تابع read_temp، مقادیر پروتکل SPI برای ماژول ترموکوپل max6675 تنظیم میشود و در نهایت، این تابع دمای اندازهگیری شده توسط ماژول را به ما برمیگرداند.
در تابع اصلی برنامه، ابتدا پورت B به عنوان ورودی و خروجی تعریف میشود تا بتواند به ماژول متصل شود. سپس پروتکل SPI فعال میشود که به ماژول اجازه ارتباط با میکروکنترلر را میدهد.
در داخل حلقه بینهایت، ابتدا دما از تابع read_temp خوانده میشود و سپس نمایشگر LCD این دما را نمایش میدهد. در مرحله برنامهریزی کد بر روی میکروکنترلر AVR، فیوز بیتها برای استفاده از کریستال خارجی تنظیم میشود.
سپس وارد حلقه اصلی برنامه میشویم و با استفاده از الگوی ذکر شده در دیتاشیت ماژول Max6675، دادهها را دریافت کرده و آنها را به مقادیر درجه سانتیگراد و درجه فارنهایت تبدیل میکنیم. در نهایت، این دو مقدار روی نمایشگر LCD نشان داده میشود.
نظر شما درباره این محتوا چیه؟
از ۱ تا ۵ امتیاز بدید.
میانگین نظرات / 5. تعداد نظردهی:
اولین نفر شما هستید