آموزش کام راه‌اندازی سنسور دما مادون قرمز MLX90614 توسط آردوینو

آموزش کام راه‌اندازی سنسور دما مادون قرمز MLX90614 توسط آردوینو

سنسور MLX90614 يك دماسنج مادون قرمز است كه براي اندازه گيري بدون تماس دما طراحي شده. يك مبدل آنالوگ به ديجيتال ۱۷بيتي به همراه DSP قدرتمند داخلي، رزولوشن و دقت بالايي را براي اين سنسور ايجاد می نماید. اين سنسور كاربردهاي بيشماري دارد كه يكي از آنها مي تواند اندازه گيري دماي بدن انسان و يا ردياب حركتي باشد.

دماسنج MLX90614 دو نوع خروجي دارد. خروجي PWM و خروجي SMBus (مانند TWI و I2C). خروجي PWM ده ۱۰ بيتي سنسور رزولوشني به ميزان ۰٫۱۴ درجه فراهم مي آورد؛ حال آنكه رزولوشن در حالت خروجي TWI به ميزان ۰٫۰۲ درجه سانتيگراد خواهد بود. سنسور MLX90614 توسط كارخانه سازنده براي رنج اندازه گيري ۴۰- تا ۸۵ درجه دماي محيط و ۷۰- تا ۳۸۲٫۲ درجه دماي اجسام، كاليبره شده است. مقدار اندازه گيري شده توسط سنسور ميانگين دماي اجسامي است كه در زاويه ي ديد سنسور قرار دارند. دقت استاندارد سنسور ۰٫۵ درجه سانتيگراد خواهد بود.

اين سنسور در پكيج TO-39 كه استاندارد صنعتي است عرضه شده است. ورژن ديگر اين سنسور با تغذيه ي ۳ ولت نيز وجود دارد.

در این آموزش قصد داریم تا راه اندازی سریع و استاندارد سنسور MLX90614 توسط آردینو را در بخش آموزش الکترونیک ewink به عنوان مرجعی ساده برای آموزش آردوینو آموزش دهیم.

سنسور استفاده شده در این آموزش از نوع سنسور MLX90614ESF-AAA بوده که رنج ولتاژ کاری آن ۵ ولت می باشد.

ویژگی های سنسور MLX90614ESF-AAA

  • پروتکل ارتباطی I2C
  • کالیبره شدن در کاخانه برای رنج‌های
    • ۴۰- الی ۸۵+ درجه‌ سانتی‌گراد برای اندازه‌گیری دمای خود سنسور
    • ۷۰- الی ۳۸۰+ درجه سانتی‌گزاد برای اندازه‌گیری اجسام توسط سنسور
  • انطباق ولتاژی ۳٫۳ ولت الی ۱۶ ولت ( با مدارات اضافه رگولاتوری ) – ولتاژ کاری مستقیم سنسور ۴٫۵ تا ۵٫۵ ولت
  • حالت ذخیره انرژی

نحوه اتصال سنسور MLX90614ESF-AAA به آردوینو

تصویر زیر نحوه قرار گیری پایه های این سنسور را نشان می دهد به علامت گذاری پایه های دیتا و ورودی ولتاژی دقت کنید.

آموزش کام راه‌اندازی سنسور دما مادون قرمز MLX90614 توسط آردوینو

همچنین در شکل زیر کانکشن ارتباطی به آردوینو نشان داده شده است.

آموزش کام راه‌اندازی سنسور دما مادون قرمز MLX90614 توسط آردوینو

توضیحات وایرینگ

  • یک پایه GND ایجاد کنید و GND آردینو، سنسور و منبع تغذیه را به آن وصل کنید.
  • پایه PWR را به ولتاژ مثبت ( ۳٫۳ ولت یا ۵ ولت ) بسته به نوع سنسور متصل نمایید ( سنسور با مشخصه AAA از نوع ۵ ولت و سنسور با مشخصه BAA از نوع ۳٫۳ ولت است )
  • پایه SDA را به پین I2C پایه SDA آردوینو متصل نمایید این پین در آردوینو UNO ( آردوینوهای پایه ۳۲۸ ) پایه A4 و در آردوینو مگا پایه digital 20 و در آردینو میکرو و لئوناردو پایه digital 2 می باشد.
  • پایه SCL را به پین I2C ;gh کلاک SCL روی آردوینو متصل نمایید. این پین در آردوینو UNO ( آردوینوهای پایه ۳۲۸ ) پایه A5 و در آردوینو مگا پایه digital 21 و در آردینو میکرو و لئوناردو پایه digital 3 می باشد.
  • جهت عملکرد بهتر سنسور پایه های دیتا با استفاده از دو مقاومت در رنج ۲٫۲ تا ۵٫۴ کیلو اهم به صورت پول آپ در می آیند.

توضیح مختصر اینکه سنسور MLX90614 دارای آدرس ثابت I2C می باشد و در حالت عادی شما تنها یک سنسور میتوانید به پایه I2C میکرو متصل کنید ولی به صورت پیشرفته میتواند آدرس سنسور را تغییر و سنسورهای متعددی روی یک پورت I2C داشت.

کد نویسی و اجرای برنامه

پیش از شروع کد نیوسی نیاز است که کتابخانه ای برای سنسور به آردوینو اضافه کنیم اینجا ما از کتابخانه Adafruit سنسور استفاده کرده ایم شما میتوانید برای دانلود کتابخانه آردوینو MLX90614 به لینک مرود نظر مراجعه نمایید. همچنین میتوانید از بخش Sketch و دنبال کردن گزینه include library  و زدن گزینه manage libraries عبارت Adafruit-MLX90614-Library را جستجو کرده و کتابخانه مورد نظر را نصب نمایید.

پس از نصب کتابخانه مورد نظر کد زیر را در یک برنامه جدید بنویسید.

توضیح توابع سنسور MLX90614

۱- فراخوانی کتابخانه I2C و کتابخانه MLX90614

۲- ساخت یک آبجکت با نام mlx برای ارتباط با کتابخانه Adafruit

۳- تنظیمات پورت سریال و شروع به کار سنسور

۴-  فراخوانی و نمایش دمای Ambient و دمای object

تابع mlx.readObjectTempC دمای Object را به صورت درجه سانتی گراد بر میگرداند و تابع mlx.readObjectTempF دمای Object را به صورت فارنهایت بر میگرداند.