به گزارش خبرنگار گروه علم و آموزش ایرنا، میکروکنترلر (Microcontroller) یک چیپ (تراشه) الکترونیکی برنامهپذیر است که با اتصال قطعات مختلف در یک مدار الکترونیکی، اجزای یک رایانه ساده را فراهم می کند. از میکروکنترلر برای ساخت، کنترل و رصد انواع سیستم های الکترونیکی استفاده می شود.
میکروکنترلرها همچون رایانههای بسیار کوچکی هستندکه در بیشتر لوازم الکتریکی کاربرد دارند؛ برای نمونه در راهاندازی یک ال.ای.دی یا دیود نورافشان/ LED کوچک تا کنترل موتور خودروها. برای فهم کارکرد میکروکنترلرها بهتر است ابتدا با اجزای سازنده آن آشنا شویم.
سی پی یو/CPU یا پردازنده: در اصل همان مغز میکروکنترلر است که وظیفه استخراج و پردازش دادهها، انجام محاسبات و وظایف اختصاصداده شده را بر عهده دارد.
حافظه: هر میکروکنترلر از مقدار مشخصی رم یا حافظه ROM،RAM و فلش ساخته میشود و تمام برنامهها و دادههای میکروکنترلر در این واحد ذخیره میشوند. پردازنده معمولاً از این واحد برای ذخیرهسازی و دسترسی به اطلاعات استفاده میکند. حافظه میکروکنترلرها از دو بخش بلندمدت و کوتاهمدت تشکیل میشود، حافظه بلندمدت دستورالعملهایی است که پردازنده به آن نیاز دارد و نیاز به اتصال الکتریکی ندارد و دائم است. بخش دیگر حافظه قسمت کوتاهمدت است که مربوط به دستورالعملهای در حال انجام میباشد، این بخش از حافظه موقتی میباشد و تا زمانی باقی میماند که اتصال الکتریکی برقرار باشد.
ورودی و خروجیها: پورتهای ورودی و خروجی (I/O) در اصل راه ارتباطی هستند که تمام میکروکنترلرها از آنها برای اتصال به وسایل جانبی، دریافت ورودی و نمایش خروجی استفاده می کنند.
تایمر: برای تولید پالس، اندازهگیری فرکانس، ساخت نوسانات و غیره هر میکروکنترلر به یک یا چند تایمر (شمارنده) نیاز دارد تا با کمک آنها، عملیات زمانبندی و شمارش را کنترل کند.
مبدل آنالوگ به دیجیتال (ADC) و مبدل دیجیتال به آنالوگ(DCA): بیشتر کمیتهای اطراف ما که برای اندازهگیری، کنترل و شبیهسازی از آنها استفاده میکنیم، آنالوگ و پیوسته هستند اما میکروکنترلر تنها مقادیر دیجیتال را درک میکند. در نتیجه ما برای ایجاد یک زبان مشترک بین میکروکنترلر و کمیتهایی مانند گرما، نور و… از مبدلهای ADC و DCA کمک میگیریم.
نحوه کارکرد میکروکنترلرها
میکروکنترلرها اطلاعاتی که از طریق بخش (I/O) از دستگاه دریافت میکنند را به صورت موقتی درون حافظه خود ذخیره میکنند، سپس این اطلاعات توسط پردازنده خوانده، عملیات موردنظر انجام و دوباره توسط بخش (I/O) به دستگاه منتقل میشود.
این مراحل به طور کلی و سادهشده نحوه کارکرد میکروکنترلرها را بیان میکند. ولی در واقعیت مراحل دیگری در این میان با پیچیدگیهای بالاتری وجود دارد؛ برای مثال میتوان به این موضوع اشاره کرد که ذهن میکروکنترلر یا همان پردازنده تنها زبان باینری (۰۱۰۱۰) را متوجه میشود بنابراین باید در این میان یک مترجم برای تبدیل دستورها به کد باینری وجود داشته باشد.
کامپایلرها در این میان نقش مترجم را ایفا میکنند تا دستورات را به زبان ماشین تبدیل کنند. از دیگر پیچیدگیهای موجود در عملکرد میکروکنترلرها میتوان به این موضوع اشاره کرد که گاهی ورودی میکروکنترلرها میتواند بهصورت آنالوگ باشد؛ مانند سنسورهای حساس به نور یا گرما، در این موارد ورودیهای آنالوگ باید به دیجیتال تبدیل شوند تا میکروکنترلر توانایی درک آن را داشته باشد، در این موارد از مبدلهای تبدیل آنالوگ به دیجیتال استفاده میشود. اگر این تبدیل برای خروجی میکروکنترلر لازم باشد، باید در انتها از مبدل دیجیتال به آنالوگ نیز استفاده شود.
همانطور که گفته شد کاربرد میکروکنترلرها وسیع است و به همین دلیل تنوع بالایی دارند؛ برای مثال میکروکنترلرها در خودرو برای کنترل موتور و دستگاههای جانبی آن بهکار برده میشوند، این میکروکنترلرها وظیفه محاسبه میزان سوخت تزریقشده به سیلندر و زمانبندی احتراق را بر عهده دارند.
از دیگر کاربردهای میکروکنترلرها میتوان به لوازم خانگی مانند سشوار یا جاروبرقی اشاره کرد که در این موارد میکروکنترلرهای به کار رفته شده باید سبک و ارزان قیمت باشند. با توجه به اهمیت و حساسیت کاربرد و همچنین بودجه و ابعاد، دستگاه موردنظر میکروکنترلر مناسب انتخاب میشود.
از برندهای سازنده میکروکنترلرهای پرفروش میتوان به اردینو Arduino نوعی میکروکنترلر متنباز (open-source) با رابطکاربری ساده اشاره کرد که برای استفادههای ساده و ارزانقیمت کاربرد فراروانی دارد. (شروع فعالیت این برند در ایتالیا بوده و اکنون بخش عمدهای از تولیدات Arduino در آمریکا انجام میشود).
نوع دیگری از میکروکنترلرها توسط شرکت راسپبری Raspberry Pi ارائه میشوند که ابعاد کوچکی دارند، اقتصادی هستند و میتوانند بهعنوان یک رایانه مستقل در لوازم مختلف استفاده شوند (این نوع از میکروکنترلرها در کارخانههای شرکت سونی در کشورهای ولز، چین و ژاپن تولید میشوند). همچنین شرکت پی.ای.سی میکروکنترلر PIC Microcontroller انواع دیگری از میکروکنترلر را ارائه میکند که در سیستمهای پیشرفتهتر تعبیه میشوند و در صنایعی؛ مانند خودروسازی و صنایع نظامی کاربرد دارند. (بخش اصلی تولیدات این شرکت در کشور هند است).
شرکت میکروالکترونیکس STMicroelectronics انواع بسیار پیشرفته میکروکنترلرها (مانند STM۳۲) را تولید می کند که در سیستمهای امنیتی و سیستمهای کنترلی کاربرد دارند. (دفتر اصلی این شرکت در سوئیس است ولی تولیدات عمده آن در کشورهای فرانسه و ایتالیا صورت میگیرد).
استفاده از میکروکنترلرها در مقایسه با میکروپروسسورها در اکثر موارد سادهتر و بهصرفهتر است. برای درک بهتر این موضوع به مقایسه کلی این دو میپردازیم:
میکروپروسسور در اصل همان پردازنده CPU یا مغز میکروکنترلر است که تمام عملیات محاسباتی و منطقی روی دادهها توسط آن انجام میشود. اصلیترین تفاوت بین میکروکنترلر و میکروپروسسور در طریقه اتصال آنها به تجهیزات جانبی خارجی است.
تمام وسایل جانبی به کاربرده شده در میکروکنترلر به صورت واحد در تراشه، کنار یکدیگر فشرده شدهاند، اما برای اتصال همین تجهیزات به میکروپروسسور باید از نمونههای بزرگتر آنها استفاده کنیم.
در شکل ۵ تفاوت میان میکروپروسسور و میکروکنترلر به تصویر کشیده شده است. در سمت راست شکل، میکروپروسسور مشاهده میشود که برای کاربرد و استفاده در لوازم نیاز به اتصالات خارجی است که این امر استفاده از میکروپروسسور را کمی سختتر میکند.
در سمت چپ تصویر میکروکنترلر است که بخشهای زیادی را شامل میشود و استفاده از آن بهطور مستقل سادهتر بوده و کاربرد گستردهتری دارد.
با توجه به کاربرد بسیار گسترده میکروکنترلرها و استفاده روزافزون لوازم الکتریکی که از انواع میکروکنترلرها بهره میبرند، پیشبینی میشود صنعت میکروکنترلرها هر ساله افزایش چشمگیری داشته باشد و بودجه بیشتری به آن اختصاص داده شود.
در نمودار قبل به میزان فروش و پیشبینی فروش برحسب میلیارد دلار پرداخته شده بود، حال برای درک بهتر ابعاد گسترده این صنعت وسیع به تعداد فروش و تولید میکروکنترلرها در هر سال برحسب میلیارد میکروکنترلر ساختهشده پرداخته میشود.
در میان این بازار وسیع، پنج شرکت بزرگ تامین کننده میکروکنترلر حدود ۸۲ درصد از سهم فروش را به خود اختصاص دادهاند. نام این شرکتها و سهم هر یک، از بازار میکروکنترلرها در ادامه آورده شده است.
نظر شما