در اين پروژه از ميکرو کنترلر هاي AVR و زبان برنامه نويسي بيسيک تحت BASCOM استفاده شده است . براي تشخيص حرکت موتور از سنسورهاي مادون قرمز استفاده شده است . راحت ترین تشخیص دور موتور استفاده از شافت انکودر هستش که می تونین از اون استفاده کنین ! ولی شاید به دلیل قیمت بالا و اتصال مکانیکی جالب نباشه و می تونین از روش زیر استفاده کنین :
بر روي شافت موتور خطوط سفيد و سياه رنگي را با تعداد معيين ( به عنوان مثال دو قسمت يکي سفيد و ديگري سياه ) و اندازه يکسان ايجاد کرده و سنسورهاي مادون قرمز را در روبروي آن قرار مي دهيم . همانطور که مي دانيم رنگ سياه نور مادون قرمز را جذب و رنگ سفيد آن را انعکاس مي دهد
سنسور گيرنده مادون قرمز نيز در حرکت موتور پالس هاي را ايجاد مي کند . اگر شافت موتور فقط داراي دو قسمت سياه و سفيد باشد با چرخش موتور با سرعت 1200 دور دقيقه در هر ثانيه سنسور گيرنده مادون قرمز 20 پالس مي دهد . با ضرب اين عدد در عدد 60 مي توان سرعت دور موتور در دقیقه را بدست آورد . اگر شافت موتور داراي دو قسمت سياه و دو قسمت سفيد باشد 40 پالس در هر ثانيه دريافت شده در اين صورت بايد با عدد 30 ضرب شود تا سرعت دور موتور را بدست آوريم و به همين صورت براي مراحل بالاتر .
شفت موتور
اگر نقاط سفید و سیاه را 60 تا در نظر بگیریم آنگاه فرکانس دریافتی از گیرنده مادون قرمز همان دوردردقیقه است . البته با افزایش این نقاط احتمال خطا بالا رفته و باید از سنسورهای مادون قرمز دقیق تری استفاده کرد . در طراحي مدار اين حالت در نظر گرفته شده است و مي توان اين عدد را که دور در ثانیه در آن ضرب می شود را بین 0 تا 99 تغير داد .
سنسور گرما موجود نيز در کنار موتور نصب مي شود تا بتوان دماي موتور را نيز اندازه گرفت . براي سنسور دما از آي سي LM35 استفاده شده است .
اين آي سي با ولتاژ ورودي بين 3 تا 10 ولت به ازاي يک درجه حرارت در خروجي 10 ميلي ولت مي دهد يعني اگر دما 25 درجه باشد خروجي آي سي 250 ميلي ولت است . حداکثر دماي قابل اندازه گيري 125 درجه است . خروجي آي سي دما به ورودي آنالوگ ميکروکنترلر براي بدست آوردن ولتاژ خروجي آي سي داده شده است .
براي تشخيص خطوط سياه و سفيد ايجاد شده بر روي شافت موتور نيز از مدار زیر استفاده شده است .
مدار تشخیص پالس
با استفاده از کريستال 32768 هرتز و تنظيمات مربوطه تايمر دو هر 0/25 ثانيه سر ريزي اتفاق مي افتد و با فعال بودن وقفه به زير روال SECTIC مي رود .
در مدت زمان يک ثانيه تايمر يک که به عنوان شمارنده استفاده شده است پالس هاي ورودي از سنسور مادون قرمز را مي شمارد همينطور متغير هاي دقيقه و ساعت و ثانيه به روز مي شوند . عدد موجود در تايمر یک بهمراه تعداد وقفه های تایمر یک در عدد خاصي که قابل تنظيم است ضرب شده و نمايش داده مي شود . متغير هاي زمان هم نمايش داده شده و ورودي آنالوگ نيز براي دريافت مقدار گرما فعال شده و نمايش داده مي شود .
در حالت کار معمول هنگامي که کليد SET را فشار دهيم به بر چسب Temp براي تنظيم دماي ترموستات رفته و مي توان دماي ترموستات را بين 0 تا 125 درجه با استفاده از کليد هاي + و – تنظيم کرد .
ترموستات میانگین 60 ثانیه گذشته دمای محیط را با دمای تنظیم شده تست کرده و در صورت بیشتر بودن دمای محیط خروجی PORTD.6 را یک می کند .
در حالت کار معمول هنگامي که کليد SET براي چند ثانيه ( حدود 5 ثانیه ) فشارداده شود برنامه به برچسب CC رفته و مي توان با استفاده از کليد هاي + و – ساعت را تنظيم کرد . با دوباره فشاردادن دادن کليد به برچشب MM رفته و در اينجا نيز با استفاده از کليد هاي + و – مي توان دقيقه را تنظيم کرد با دوباره فشاردادن کليد SET به بر چسب SS براي تنظيم ثانيه پرش مي کند . در اينجا با فشردن کليد – ثانيه صفر مي شود و با زدن کليد + اگر ثانيه بين 30 تا 59 باشد ابتدا به دقيقه يک واحد افزوده شده و سپس ثانيه صفر مي شود و اگر ثانيه کمتر از 30 باشد فقط ثانيه صفر مي شود .
با فشردن دوباره کليد SET به بر چسب WRPM پرش مي کند . در اينجا نيز با فشردن کليد هاي + و – مي توان عددي که در فرکانس ورودي ( تايمر يک ) براي بدست آوردن دور در دقيقه ضرب مي شود را بين 1 الي 99 تنظيم کرد . اگر این عدد را یک انتخاب کنیم می توانیم از مدار به عنوان فرکانس متر استفاده کرد ! با فشردن کليد SET به حالت کار معمول دستگاه باز مي گرديم .
توجه : با نگه داشتن کلید های + و – می توان متغیر مورد تنظیم رو با سرعت بالاتر کم و یا زیاد کرد .
نکته :
در هنگام تنظیم هر متغیر , آن متغیر با فرکانس 2 بار در ثانیه شروع به چشمک زدن می کند .
در صورتی که عدد ضرب شده در دور در ثانیه را یک در نظر بگیریم می توان از مدار بعنوان فرکانس متر در حد چندین مگاهرتز با دقت یک هرتز استفاده کرد . ( RPS * 1 = RPM ) در این صورت ورودی فرکانس متر پایه 11 ( ورودی T1 و یا PORTD.5 ) است.
سعی شود از سنسورهای مادون قرمز با کیفیت بالا استفاده شود و سنسور گیرنده نیز دارای فیلتر اشعه خورشید باشد . ( معمولا دارای رنگ سیاه می باشند . ) و فاصله سنسور ها از شافت موتور که دارای قسمت های سیاه و سفید می باشد حداکثر 10 سانتی متر باشد . ( هر چه کمتر بهتر )
برای OP AMP میتوان از هر مدلی استفاده کرد ( مثل 741 و یا 3130 و یا 324 و … ) .
PORTD.7 ( پایه 13 ) خروجی جهت اتصال به LED جهت نمایش ثانیه است . LED با سرعت یک بار در ثانیه چشمک می زند .
PORTD.6 ( پایه 12 ) خروجی جهت گرمای بیش از اندازه است .( خروجی ترموستات )
پتانسیومتر AD.J IR را طوری تنظیم کنید که اگر سنسورها را روبروی کاغذ سفید قرار دهیم خروجی OpAMP یک شده و در غیر این صورت صفر باشد .