راه اندازی ماژول PIR یا سنسور حساس به حرکت بدن انسان

اتوماسیون خانه

در این بخش دانلود پروژه راه اندازی ماژول PIR یا سنسور حساس به حرکت بدن انسان با میکروکنترلر AVR, توسط تیم الکترونیک و برنامه نویسی الکترونیک ۹۸ برای شما علاقه مندان به پروژه های میکروکنترلر AVR آماده شده است. در این پروژه به یکی از جنبه های اتوماسیون در خانه (هوشمند سازی منازل) یعنی روشن و خاموش کردن خودکار چراغ های داخل ساختمان (راهروها, اتاق ها و …) با استفاده از حسگر تشخیص دهنده حرکت بدن انسان (Human Motion Detector), می پردازیم و برای پیاده سازی هرچه ارزانتر و ظریفتر, میکروکنترلر ATtiny13 را انتخاب می کنیم که کوچک (با 8 پایه), ظریف و البته ارزان قیمت است.

دانلود پروژه راه اندازی ماژول PIR یا سنسور حساس به حرکت بدن انسان

تشخیص حرکت انسان

اساس کار روش های تشخیص حضور یا حرکت انسان، آشکارسازی پرتو مادون قرمز ساطع شده از بدن انسان است. بدن انسان (همین طور حیوانات) علاوه بر تولید گرما، مقداری اشعه مادون قرمز با طول موجی در حدود 9.4µm نیز تولید می کند که با آشکارسازی آن می توان به حضور وی پی برد. تراشه RE200B تراشه پر کاربرد و مناسبی از نوع PIR برای رسیدن به این هدف است.

شیوه تشخیص حرکت انسان توسط آشکارسازی پرتو مادون قرمز ساطع شده از بدن انسان

حسگرهای PIR از کریستال های خاصی ساخته شده اند که قرار گرفتن در معرض انرژی گرمایی حاصل از پرتو مادون قرمز به افزایش بار الکتریکی در آنها منجر می شود. چنانچه انرژی پرتوی مادون قرمز دریافتی از حد خاصی بالاتر رود، افزایش بار، ترانزیستور اثر میدان (FET) داخل تراشه را راه اندازی می کند و تغییرات در خروجی تراشه ظاهر می شوند. حسگر اصلی داخل تراشه، به طیف وسیعی از امواج الکترومغناطیس از جمله نور مرئی، حساس می باشد، به همین دلیل برای جلوگیری از ورود نور محیط به درون تراشه، از یک فیلتر سیلیکنی مخصوص استفاده شده است. تصویر زیر نمای ظاهری تراشه RE200B را نشان می دهد.

نمای ظاهری تراشه RE200B

تصویر زیر نمای کلی مدار راه انداز تراشه را نشان می دهد. پرتو مادون قرمز، پس از عبور از یک لنز پلاستیکی مخصوص – که نقش متمرکز کننده را ایفا می کند – به RE200B برخورد می کند. در خروجی تراشه، سیگنال به دست آمده، ابتدا تقویت می شود و در صورت رسیدن دامنه آن به مقدار مطلوب، خروجی مقایسه کننده را فعال می کند.

نمای کلی مدار راه انداز تراشه RE200B

با استفاده از دو حسگر موجود داخل تراشه می توان حرکت انسان را تشخیص داد. همانطور که در تصویر زیر مشاهده می کنید، هر یک از این دو حسگر، به ترتیب حرکت یک منبع گرمایی (مانند انسان) از محدوده دید PIR را تشخیص می دهند. در نهایت، پالسی مطابق شکل در خروجی تراشه ایجاد می شود.

تشخیص حرکت انسان توسط تراشه RE200B

نقشه شماتیک مدار راه انداز تراشه RE200B

تصویر زیر مدار راه انداز تراشه را به صورت کامل نشان می دهد. در این پروژه از ماژول HP-708 استفاده شده است که تراشه RE200B را همراه مدار کامل راه انداز و لنز پلاستیکی مخصوص در بر دارد. لنز پلاستیکی برای تنظیم شعاع دید حسگر اصلی استفاده شده است. لنز موجود روی ماژول HP-708 تعویض شدنی است و بسته به کاربردهای متفاوت می توان از لنزهای مناسب استفاده کرد.

نقشه شماتیک مدار کامل راه انداز تراشه RE200B

ماژول HP-708 چهار پایه (پایه + / پایه – / پایه CDS / پایه OUT) دارد. در اینجا، از پایه CDS استفاده نشده است. پایه + به 5 ولت و پایه – به زمین یا همان منفی منبع تغذیه وصل می شود. پایه OUT یک پایه خروجی است که هنگام تشخیص حرکت انسان، برای چند لحظه صفر می شود.

نقشه شماتیک پروژه راه اندازی ماژول PIR با میکروکنترلر AVR

نقشه شماتیک کامل مدار پروژه در شکل زیر نشان داده شده است. در این مدار نسبتا ساده, میکروکنترلر ATtiny13 برای کنترل چراغ های اتاق برنامه ریزی شده است. اگر حضور کسی در اتاق حس نشود, چراغ های اتاق پس از مدت زمان مشخص خاموش می شوند. این کار با فرمان میکروکنترلر AVR به یک رله انجام می گیرد.

نقشه شماتیک پروژه راه اندازی ماژول PIR با میکروکنترلر AVR

تنظیم زمان تاخیر برای خاموش شدن چراغ ها توسط دیپ سوئیچ (Dip Switch) نشان داده شده در شکل, در چهار زمان 10 ثانیه, 1 دقیقه, 2 دقیقه و 10 دقیقه  امکان پذیر است.جدول زیر چگونگی تنظیم زمان تاخیر را نشان می دهد. اگر چراغ ها خاموش باشند و شخصی وارد اتاق گردد, بلافاصله تمام چراغ ها روشن می شوند.

جدول تنظیم زمان تاخیر برای روشن و خاموش شدن چراغ های اتاق

همان طور که در نقشه شماتیک مشاهده می کنید, چون خروجی ماژول PIR مدل HP-708 به PB1 متصل شده است, با صفر شدن خروجی ماژول PIR مدل HP-708, وقفه ای سخت افزاری به میکروکنترلر AVR اعمال می شود. برای اطمینان از بالا بودن خروجی HP-708, از مقاومتی 10 کیلو اهمی به عنوان مقاومت بالاکشنده استفاده شده است. عملکرد درست مدار, منوط به وجود این مقاومت است.

برنامه میکروکنترلر در محیط نرم افزار Bascom AVR

برنامه میکروکنترلر در محیط نرم افزار Code Vision AVR

شرح برنامه میکروکنترلر به زبان بیسیک و زبان C

هر دو برنامه، پس از تعریف متغیرها و مقدار دهی اولیه، طبق معمول وارد یک حلقه بی نهایت می شوند. در این حلقه وضعیت دیپ سوئیچ متصل به میکروکنترلر دائما (با تاخیری حدود 30 میلی ثانیه) توسط ساختار دستور Select Case بررسی می شود. به این ترتیب مقدار متغیر Time_Delay با توجه به وضعیت دیپ سوئیچ، یکی از مقادیر 2 و 12 و 24 یا 120 خواهد بود. همچنین در این حلقه، تایمر نگهبان نیز ریست می شود.

مقدار دهی تایمر صفر به گونه ای است که در هر 5 ثانیه، متغیر time_reg یکی افزایش می یابد. برابر شدن مقادیر time_reg و time_delay بدین معناست که زمان در نظر گرفته شده به اتمام رسیده است و در نتیجه چراغ خاموش می شود. روشن شدن چراغ، مستلزم اعمال یک وقفه خارجی است. در واقع زمانی که حسگر تشخیص حرکت انسان را حس کند، خروجی حسگر صفر می شود و یک وقفه از طریق پایه INT0 به میکروکنترلر اعمال می گردد.

در زیر روال وقفه، ابتدا بررسی می شود تا صفر شدن پایه INT0 ناشی از وجود نویز نباشد. اینکار با استفاده از خواندن وضعیت این پایه، پس از یک تاخیر 20 میلی ثانیه ای انجام می گیرد. سپس چراغ با یک شدن بیت light و فعال شدن رله، روشن می گردد. همزمان با روشن شدن چراغ، متغیر time_reg نیز صفر می گردد تا شمارش معکوس برای خاموش کردن چراغ، آغاز شود.

برای اینکه چراغ روشن بماند، باید حسگر، به طور متوالی حرکت انسان را در محیط حس کند و قبل از برابر شدن مقدار در حال افزایش متغیر time_reg با مقدار time_delay یک وقفه روی پایه INT0 رخ دهد. به این ترتیب time_reg پیش از رسیدن به time_delay ریست می شود.

 اطلاعات پروژه

 رمز فایل : www.electronics98.com

 حجم فایل : 286 کیلو بایت

 محیط برنامه نویسی : Code Vision | BASCOM-AVR

 برنامه نویسی شده به زبان : C | BASIC

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 11 آگوست 2014

7 دیدگاه

  1. با سلام ایا می شود به جای مدل HP-708 از مدل HC-SR501 استفاده کرد

  2. مشکلی نداره فقط باید به پایه out سنسور که دارای ولتاژه خروجی و به میکروکنترلر متصل میشه دقت کنید که بیشتر از 5 ولت نباشه.

  3. سلام رله رو به چه صورت در مدار ببندم؟پایه های بوبین به دو سر دیود وصل بشه؟

  4. سلام دوست عزیز
    بله باید دو پایه تغذیه رله رو به دو سر دیود متصل کنید و در نهایت طبق نقشه شماتیک اون رو به مدار متصل کنید.

  5. سلام خسته نباشید من یک led 12 ولتی و می آدابتور 12 ولت دی سی دارم که می خوام باهاش با استفاده از سنسور pir (تشخیص حرکت ) , رله روشن و خا موش بشه به محض اینکه شخصی رو احساس میکنه .
    حالا در به نظرتون میشه چیکارش کرد….

  6. سلام دوست عزیز
    برای انجام اینکار پیشنهاد می کنیم از ماژول های آماده pir استفاده کنید، همچنین می توانید از چشمی ها (سنسور) دزدگیرهای اماکن که به صورت آماده نیز در بازار هستند استفاده کنید.

  7. آیاپروژه ای برای راه اندازی سنسور flc100 مگنومتر دارید ؟

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

 به کاربران و سایر اشخاص احترام بگذارید. پیام‌هایی که شامل محتوای توهین‌آمیز و کلمات نامناسب باشند، حذف می‌شوند.

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.