پروژه کنترل سرعت چرخش فن با توجه به دما – قسمت اول
هدف این پروژه ساخت یک مدار نسبتا بهینه با توجه به دمای مورد نظر سرعت یک فن را کنترل کنیم طوری که اگر دما خیلی پایین تر از دمای مد نظر ما بود فن بصورت خودکار خاموش شود. در این پروژه قصد بر این است که مدار مورد نظر بسیار هوشمندانه تصمیم گیری کند و اگر دما بسیار بالا رفت آن گاه یک فن کمکی را نیز روشن کند.
ایده و دیاگرام کلی مداری ک مد نظر ما بود به شرح زیر است
با توجه به اینکه قصد هوشمند سازی و تصمیم گیری در مدار را داریم میکرو کنترلر میتواند به عنوان هوش سیستم عمل کند طوری که دمای محیط را از روی سنسور دما بخواند و سرعت چرخش و یا عدم چرخش فن ها را کنترل کند. امروزه در اکثرا مدارات کنترلی از میکرو کنترلها استفاده میشود که باعث کیفیت بالا و اطمینان مدارات و همچنین باعث پایین آمدن هزینه های طراحی سخت افزاری و عدم پیچیدگی مدارات الکترونیکی می شود.و با توجه به برنامه پذیر بودن آن ارتقاع سیستم هایی که بر پایه میکرو کنترلر ها طراحی شده باشند بسیار آسانتر و کم هزینه تر(چه از لحاظ زمانی چه از لحاظ مالی) از سایر مدارات الکترونیکی است.
همانطور که در تصویر بالا مشخص است در ابتدا به یک سنسور دما نیاز داریم که دمای محیط را تشخیص داده؛ سنسور LM35 یکی از معروفترین سنسورها برای این کار است که میتواند در دمای ۵۵- سانتیگراد تا ۱۵۰ درجه سانتیگراد کارایی داشته باشد که در کنار ارزان بودن آن از کیفیت خوبی نیز برخوردار است.
سنسور دما LM35dz :
این سنسور تغییرات دمای مورد نظر را به ولتاژ آنالوگ تبدیل میکند.
این سنسور دارای سه پایه میباشد در صورتی که سنسور روربروی ما قرار گیرد (بتوانیم نوشته هایش را ببینیم).
اولین پایه ، سمت چپ ( vcc ) میباشد که به ۵ ولت وصل میشود.
پایه وسط ، ولتاژ خروجی ( Vout )است که به میکروکنترلر متصل میشود.
پایه سوم ، زمین ( GND ) سنسور است.
اگر از نمای زیر مانند تصویر بالا به سنسور نگاه کنیم ترتیب پایه ها را مشخص می شود.
محدوده دمایی که این سنسور قادر به انداه گیری آن میباشد بین ۵۵- تا ۱۵۰+ درجه سانتیگراد است و این سنسور به ازای هر درجه سانتیگراد ۱۰ میلی ولت ولتاژ خروجی را تغییر میدهد . یعنی به ازای دمای ۱ درجه ، ولتاژ خروجی سنسور ۱۰ میلی ولت و به ازای ۱۰۰ درجه خروجی سنسور ۱۰۰۰ میلی ولت میباشد.
همچنین به ازای دمای ۲۰- درجه خروجی سنسور ۲۰۰- میلی ولت میباشد .
مشخصات میکرو کنترلر استفاده شده در پروژه:
میکرو کنترلر مورد استفاده در این پروژه ATMega16a از خانواده AVR میباشد. این میکرو کنترلرها ساخت شرکت ATMEL میباشند که در کنار کارایی نسبتا خوب و قابل قبول از قیمت نسبتا پایینی برخوردار هستد. بطور کلی در جدول زیر مشخصات این میکرو کنترلر آورده شده اند:
در ادامه به ویژگی های ATMega16 پرداخته ایم:
این میکروکنترلرهای هشت بیتی دارای توان مصرفی پایینی بوده و در معماری آنها از ساختار پیشرفته RISC(Reduced instruction set computing) بهره گرفته شده است.
به عبارت دیگر این میکروکنترلرها دارای صد و سی و یک دستورالعمل ساده هستند که اغلب آنها در یک پالس ساعت اجرا می شوند اجرا شدن دستورالعملها در یک سیکل باعث افزایش سرعت این میکروکنترلرها گردیده است همچنین Atmega ۱۶ دارای سی و دو رجیستر همه منظوره هشت بیتی است و قابلیت اجرای حداکثر شانزده میلیون دستورالعمل در ثانیه را دارد این قابلیت یکی دیگر از دلایل افزایش سرعت این میکروکنترلرهاست .
Atmega 16 دارای ۱۶ کیلو بایت حافظه فلش با قابلیت خواندن و نوشتن تا ده هزار مرتبه ،۵۱۲ بایت حافظه EEprom با قابلیت خواندن و نوشتن تا صد هزار بار و ۱ کیلوبایت حافظه داخلی SRAM می باشد.
برای برنامه ریزی میکروکنترلرهای AVR می توان از استاندارد JTAG استفاده نمود. این استاندارد برای برنامه ریزی FLASH، EEprom فیوزها و Lockbit ها از طریق رابط JTAG به کاربرده می شود.
یکی دیگر از مزیتهای میکروکنترلرهای AVR دارا بودن تجهیزات جانبی مختلف مورد نیازاست ، این تجهیزات که دارای کاربردهای متنوعی هستند، به شرح زیر می باشند.
۱- دارای دو شمارنده هشت بیتی و یک شمارنده شانزده بیتی است ، فرکانس کار این شمارنده ها به طور جداگانه تنظیم می شود. این شمارنده ها دارای واحد مقایسه هستند که برای ایجاد شکل موجهای PWM در مدهای مختلف به کار برده می شود.
۲- این میکروکنترلر دارای یک مبدل ADC با هشت کانال ده بیتی است هشت ورودی مبدل ADC با استفاده از مالتی پلکس داخلی انتخاب و به این مبدل اعمال می شوند انتخاب ورودیهای مختلف و ولتاژ مرجع با برنامه نویسی انجام می شود از طرف دیگر اگر ورودیهای Single Ended به این پایه ها اعمال شود، می توان هر هشت کانال را به طور جداگانه به کار گرفت حالت Single Ended زمانی است که ورودیها دارای زمین مشترک باشند در حالت دیفرانسیلی که ورودیها دارای پلاریته هستند (به عنوان مثال ولتاژ دو سر یک مقاومت در داخل یک مدار) نوع TQFP ، هفت کانال ورودی برای مبدل دارد و نوع PDIP آن که دارای چهل پایه است ، دو کانال ورودی ADC در اختیار قرار می دهد. همچنین در حالت PDIP می توان بهره را به مقدارهای ۱۰×۲۰×۱× نیز تنظیم نمود.
۳- دارای رابط سریال TWI است که اتصال چندین میکروکنترلر را توسط دو باس دیتا و پالس فراهم می کند.
۴- قابلیت ارتباط سریال USART از دیگر مشخصات این میکروکنترلرهاست توضیح اینکه ارتباط با استفاده از پورت سریال USART به دو صورت سنکرون و آسنکرون صورت می گیرد. در حالت سنکرون از یک پالس ساعت برای همزمانی استفاده می شود. در حالت آسنکرون میکروکنترلر ورود و خروج اطلاعات را کنترل کرده و برنامه ریزی در این حالت ساده تر است.
۵- دارای رابط سریال SPI است که در دو مد Master/Slave به کار گرفته می شود، نحوه استفاده از این رابط برای برنامه ریزی میکروکنترلرهای AVR بیان می شود.
۶- شمارنده Watchdoge با اسیلاتور جداگانه ، که برای جلوگیری از هنگ کردن میکروکنترلر به کار می رود، یکی دیگر از قسمت های جانبی این میکروکنترلرهاست در صورتی که تنظیمات لازم برای فعال شدن این شمارنده انجام شده باشد، با شروع به کار میکروکنترلر ، این شمارنده شروع به کار می کند. برنامه نویس با توجه به مدت زمان اجرای دستورالعملها ، در زمان مشخصی قبل از رسیدن شمارنده به انتهای سیکل کاری خود ، با استفاده از دستور WDR شمارنده را ریست می کند. حال اگر میکروکنترلر به دلایلی از کار افتاده باشد، دستور WDR اجرا نشده، شمارنده ریست نمی شود. در نتیجه Watchdog تا انتهای سیکل کاری خود شمارش کرده و میکروکنترلر را ریست نموده ، خود از ابتدا شروع به شمارش می کند.
۷- مقایسه کننده آنالوگ داخلی یکی دیگر از تجهیزات جانبی این میکروکنترلرهاست ورودیهای این مقایسه کننده از پورت B تامین می شود.
ادامه دارد…
دیدگاهتان را بنویسید