صفحه اصلی متفرقه کامپیوتر کامپیوترهای تعبیه شده

کامپیوترهای تعبیه شده

رایانه تعبیه شده چیست؟

رایانه­های تعبیه شده[1]     به نوع خاصی از رایانه­ها اطلاق می شود که درون سامانه ای دیگر طراحی می گردد و معمولاً هدف از به کارگیر آن ها کنترل، مدیریت و هدایت سامانه مادر جهت انجام هدفی خاص     و بعضاً بلادرنگ[2] می باشد. این رایانه ها دارای حیطه بسیار گسترده ای از کاربرد می­باشند به طوری که بتوانند عملیات های ساده تا عملیات­های بسیار پیچیده را به انجام برسانند. پردازنده­های مورد استفاده در رایانه های تعبیه شده از امکانات سخت افزاری و نرم افزاری متناسب با هدف آن بهره می­برند. حافظه های به کار رفته معمولا از نوع نیمه هادی می­باشند و دارای ظرفیت متناسب با کاربرد می باشند. واسط های ارتباط در رایانه های تعبیه شده دارای امکانات قدرتمند متناسب با عملکرد سامانه می­باشند. رایانه های تعبیه شده را می توان در اکثر دستگاه های اطراف خود بیابیم به طور مثال در خودروی شما رایانه ای وظیفه کنترل انواع عملیات را بر عهده دارد. از وضعیت موتور شامل سرعت چرخش، دما، میزان سوخت و گازهای اگزوز تا وضعیت در و کمربند راننده همه توسط حسگرها به رایانه مرکزی منتقل می گردند. این رایانه به طور خاص وضیفه کنترل خودروی شما را بر عهده دارد اجزای تشکیل دهنده آن بسیار شبیه رایانه های متداول می باشد. مواردی که آن را از سایر رایانه­ها متمایز می سازد شامل موارد زیر است:

ویژگی­های سخت افزاری یک رایانه تعبیه شده

1-      اندازه

ابعاد یک رایانه تعبیه شده باید به گونه ای باشد که به راحتی بتوان آن را در سامانه ای دیگر قرار داد. در یک خودرو رایانه مورد نظر معمولا به صورت یک بورد الکترونیکی در ابعاد 14 اینچ طراحی می گردد که بسته به نوع خودرو ممکن است متفاوت باشد.

2-      پردازنده

پردازنده مرکزی مورد استفاده در رایانه های تعبیه شده می تواند به صورت یک ریزپردازنده[3] یا ریزکنترل کننده[4] باشد. که در استفاده از ریزپردازنده ها نیاز به تراشه های جانبی برای کنترل پردازنده می باشد اما در ریزکنترل کننده ها یا میکروکنترولرها نیازی به این گونه واحدها نمی باشد در عوض سرعت و کارایی ریز پردازنده ها به مراتب بالا تر از ریزکنترل کننده ها می باشد. طراح سیستم می تواند از پردازنده ها با معماری موجو در بازار مانند: ARM[5]    ، Intel x86    ، IBM PPC[6]     و در پردازش های بالا از AMD 64     در سامانه خود استفاده نماید و یا خود به طراحی این واحد با استفاده از تکنولوژی هایی همچون FPGA     و تراشه های ASIC[7]     اقدام نماید. در سامانه هایی که نیاز به پردازش انبوه داده در بخش خاصی می باشد طراح می تواند پردازنده ای مجزا جهت پردازش آن اطلاعات در نظر بگیرد که معمولاً در سامانه های صوتی و تصویری کاربرد فراوانی دارد. در این گونه طرح ها کاربرد DSP[8]     و پردازنده های مربوط به آن ها بسیار زیاد می باشد. در سامانه هایی که از منابع تغذیه محدود استفاده می کنند حتماً می بایستی مصرف جریان الکتریسیته پردازنده را در نظر گرفت اکثر پردازنده های مورد استفاده جهت اینگونه طرح ها دارای مصرف پایین تر و دستور العمل های بهینه شده می باشند همچنین در مواردی که پردازنده در حالت بی کار قرار دارد به طور خودکار امکان ورود به حالت نیمه خاموش را دارد.

3-      حافظه

حافظه اصلی در رایانه های تعبیه شده بستگی به نوع پردازنده مورد استفاده دارد اما در اغلب طراحی های حساس به زمان از حافظه های RAM     استاتیک استفاده می گردد. در سایر طراحی ها از انواع RAM DDR    جهت حافظه اصلی استفاده می گردد. در طراحی رایانه های تعبیه شده استفاده از حافظه جانبی اکثراً جهت ذخیره سیستم عامل و نرم افزارهای مربوط به سیستم استفاده می گردد. حافظه های جانبی در طراحی رایانه های تعبیه شده اغلب به صورت نیمه هادی می باشند که به طور گسترده از تکنولوژی Flash با سرعت بالا بهره می گیرند. در مواردی که نیاز به حافظه خارج از سیستم می باشد می توان از کارت های حافظه مانند SD Card و Compact Flash استفاده نمود.

4-     واسط های ورودی و خروجی

مهم ترین پارامتر یک رایانه تعبیه شده قدرت ارتباط آن با سایر سامانه های مرتبط می باشد. ابزارها و و واسط های ورودی و خروجی شامل واسط های ارتباط با حسگر[9]، ابزارهای کنترل و واسط کاربر و ارتباط با دستگاه های جانبی می باشد. برخی پدیده های فیزیکی دارای مقادیر پیوسته می باشند لذا حسگرهای مورد استفاده جهت حس کردن این پدیده ها ماهیت آنالوگ خواهند داشت و نیاز به یک مبدل آنالوگ به دیجیتال دارند. مبدل مورد استفاده به لحاظ دقت و میزان تفکیک پذیری می تواند متفاوت باشد به طور مثال در پردازش دما نمونه برداری با فرکانس 10 Hz می تواند ما را به نتیجه واقعی برساند اما در نمونه برداری از صوت به طور معمول نیازمند فرکانسی معادل 14000 Hz  هستیم و مبدل آنالوگ به دیجیتال مورد نظر می بایستی توانایی تبدیل در سرعت بالا را داشته باشد. حسگرهای مورد استفاده جهت حس کردن پدیده های گسسته نیز نیاز به راه انداز خاص خود را دارند. برای نمونه حسگر باز بودن در خودرو و یا وضعیت کلید خودرو و نمونه هایی از این قبیل را نمی توان به طور مستقیم به پردازنده متصل نمود و هر یک دارای مدار واسط خاص خود جهت تبدیل سطوح ولتاژ و جریان می باشند که درنهایت جهت بهینه سازی می توان آن ها را توسط کد کننده کد نمود. واسط کاربر یک بخش دلخواه می باشد که در اکثر طرح ها شامل صفحه کلید و نمایشگر می باشد. خروجی رایانه طراحی شده نیز نیاز به مدارهای واسط مربوطه دارد. ارتباط با سامانه های دیگر با دو هدف نگهداری و اجرا صورت می پذیرد. در بحث نگهداری مسئله اصلی عیب یابی و برنامه ریزی رایانه می باشد که استفاده از واسط های Jtag و ISP[10] در سطح پایین بسیار متداول است. در بخش اجرا جهت انتقال اطلاعات می توان از واسط های استاندارد USB، Ethernet، RS232 و ... استفاده نمود.

استاندارد PC/104

طراحی یک رایانه تعبیه شده وابستگی بسیار زیادی نحوه عملکرد سامانه اصلی و موارد مربوط به آن است به همین دلیل استانداردها و الگوی مشخصی جهت طراحی این رایانه ها وجود ندارد. استاندارد PC/104 یک الگوی کلی جهت طراحی رایانه های تعبیه شده کوچک می باشد. این استاندارد همچنین یک روش ارتباطی رایانه های تعبیه شده با یک سامانه رایانه ای دیگر می باشد. در این استاندارد ویژگی های مشترک رایانه های تعبیه شده به طور خاص در نظر گرفته شده و آن ها برای انواع کابردها مناسب می سازد. از نمونه های این ویژگی اندازه فشرده در طراحی می باشد به طوری که اندازه ی کل رایانه ی طراحی شده در ابعاد 91.4 × 96.5 میلی متر در نظر گرفته می شود.

ویژگی­های نرم افزاری یک رایانه تعبیه شده

تا به این جا موارد سخت افزاری را در رایانه های تعبیه شده مورد برسی قرار دادیم. حال قصد داریم این رایانه های را به لحاظ نرم افزاری نیز مورد برسی قرار دهیم.

مهم ترین برنامه و نرم افزار یک رایانه سیستم عامل آن رایانه می باشد. در رایانه های تعبیه شده همانند سایر رایانه ها سیستم عامل مسئولیت کنترل منابع رایانه و اجرای برنامه های را بر عهده دارد. تفاوت اساسی سیستم عامل در رایانه های تعبیه شده محدودیت ها و امکانات متفاوت سخت افزارهای جانبی می باشد سیستم عامل های مورد استفاده در این گونه رایانه ها فضای بسیار کمی از حافظه را اشغال می نمایند و اکثراً به صورت بلادرنگ اجرا می گردند. طراح سیستم در صورت نیاز می تواند از سیستم عامل های موجود مانند Embedded Windows XP، Linux، VxWorks  و ... استفاده نماید. سیستم عامل لینوکس در طراحی گزینه بسیار مناسبی می باشد به دلیل آنکه هسته[11] آن کد باز بوده و طراح جهت امنیت سیستم خود می تواند آن را بازنگری نماید و یا با توجه به سخت افزار خود تغییرات لازم را در آن ایجاد نماید. از دیگر مزایای سیستم عامل لینوکس اشغال فضای بسیار پایین حافظه و امکان بلادرنگ نمودن هسته آن می باشد. نسخه های مناسب سیستم عامل لینوکس مانند uCLinux در اکثر طراحی ها مورد استفاده قرار می گیرد. از مهمترین ویژگی های این نسخه اماکن استفاده از آن برای رایانه های فاقد واحد MMU[12] می باشد.

به دلیل مناسب نبودن ساختار رایانه های تعبیه شده جهت گسترش نرم افزاری نرم افزارهای کاربردی را بر روی رایانه های دیگر نوشته و کامپال می نمایند که به این عمل Cross Development می گویند. زبان مورد استفاده باید ویژگی هایی همچون امکان ارتباط با سخت افزار، پشتیبانی از کنترل موارد استثنا[13] و اجرای بلادرنگ را داشته باشد. زبان های مورد استفاده در موارد عمومی شامل C/C++، Java و ... می باشند در موارد تخصصی و حساس می توان از زبان های دیگر همچون Ada و یا مستقیماً از زبان ماشین استفاده نمود.

کاربردها

همانطور که دیدیم رایانه های تعبیه شده دارای تفاوت های سخت افزاری و نرم افزاری خاصی با رایانه های متداول دارند لذا جهت طراحی آن ها نیاز مند تخصص های مختلف الکترونیکی و کامپیوتری هستیم. این نوع خاص از رایانه ها در صورت طراحی مناسب و مهندسی می تواند به صورت چشمگیر سبب بهبود عملکرد سیستم مورد نظر و کاهش هزینه شوند. در این قسمت چند نمونه از استفاده ی رایانه های تعبیه شده در صنایع مختلف را برسی می نماییم.

1-     صنعت خودرو سازی

این صنعت از عمده ترین مصرف کننده های رایانه های تعبیه شده می باشد و رایانه به کار رفته می تواند کوچکترین بخش های خودرو را مدیریت و کنترل نماید. رایانه در خودرو های امروزی خودرو را جهت عملکرد مناسب در شرایط مختلف آماده می سازد. تنظیم سوخت رسانی مناسب به موتور، تنظیم نور چراغها، کنترل سامانه تهویه خودرو همه و همه مواردی هستند که توسط رایانه مرکزی کنترل می گردند.

2-     صنعت هوا فضا

در صنعت پرواز رایانه در دو نقش مدیریت وسیله پرنده مانند هواپیما و کنترل پرواز در برج مراقبت ظاهر می گردد. در هواپیما معمولاً چندین رایانه مختلف وظایف خاصی را بر عهده دارند به طور مثال یک رایانه مسئول کنترل وضعیت موتورهای هواپیما می باشد و رایانه ای دیگر وضعیت کنترل کابین و سایر اجزا را بر عهده دارد. در فرودگاه ها عملیات مربوط به برنامه پروازی سامانه های مدیریت باند جهت فرود و پرواز هواپیماها توسط رایانه خاصی صورت می پذیرد. در صنایع فضایی رایانه های تعبیه شده نقش های بسیار حساسی را ایفا می نمایند و دارای امکانات خاص جهت استفاده در آن شرایط را دارند.

3-     صنعت نظامی

در این صنعت رایانه های تعبیه شده از تجهیزات الکترونیکی نظامی ساخته می شوند تا آن ها برای به کارگیری در شرایط سخت مناسب سازد. از ویژگی تجهیزات مورد استفاده ماژولار بودن و امکان تعمیرات سریع و ساده دستگاه، مقاومت بالا در برابر نویز الکترومغناطیس و ضربات فیزیکی می باشد. در برخی موارد امنیت سامانه مورد استفاده دارای اهمیت بالایی می باشد. در این صنعت رایانه ها می توانند در تجهیزات راداری، هدایت موشک، مخابرات و بسیاری مورد دیگر کاربرد داشته باشد.

4-     صنعت پزشکی

برخی تجهیزات پزشکی نیازمند پردازش لحظه به لحظه اطلاعات مختلف می باشند تا پزشک بتواند وضعیت بیمار را تشخیص داده و طبق آن شیوه درمانی مناسب را به کار گیرد. در اتاق عمل دستگاه خاصی وضعیت تنفس و ضربان قلب بیمار را از الکترودهای متصل به بدن بیمار دریافت نموده و آنها را برسی می نماید. همچنین سامانه های نوار مغزی و سایر دستگاه های بیمارستانی همه نمونه هایی از کاربری رایانه های تعبیه شده در تجهیزا پزشکی می باشند.

5-     ساختمان های هوشمند

ساختمان ها فارغ از نوع کاربری می توانند توسط یک رایانه مرکزی کنترل و مدیریت گردند. توسط این رایانه سامانه تهویه، گرمایش و سرمایش را می توان به صورت مرکزی کنترل نمود تا از اتلاف انرژی جلوگیری کرد. سیستم روشنایی و الکتریسیته ساختمان را می توان با استفاده از یک رایانه تعبیه شده مدیرت نمود. همچنین جهت افزایش امنیت در ساختمان می توان سامانه های دزدگیر و اعلان خطر را به این رایانه متصل نمود.

6-      صنعت مخابرات

صنعت مخابرات از صنایع بسیار گسترده می باشد. رایانه های تعبیه شده در حوزه های مختلف این صنعت مانند مخابرات آنالوگ، مخابرات دیجیتال، مخابرات رادیویی و ... کاربرد دارد. مثالی از کاربرد رایانه ها در سامانه های تلفنی به عنوان مرکز تماس می باشد. دستگاه IP04 محصول شرکت ATcom یک مرکز تماس تحت شبکه می باشد. این مرکز تماس از سخت افزار خاصی متشکل از پردازنده BF532 رم SD با ظرفیت 64MB و حافظه فلش 256MB می باشد. سیستم عامل این دستگاه uClinux می باشد و نرم افزار کاربردی آن Asterisk است. این دستگاه دارای نرم افزارهای جانبی و سخت افزارهای لازم نیز می باشد.



[1] Embedded Computers

[2] Real time

[3] microprocessor

[4] microcontroller

[5] Advanced RISC Machine

[6] IBM Power PC

[7] Application Specified Integrated Circuit

[8] Digital Signal Processing

[9] Sensor

[10] In System Programing

[11] Kernel

[12] Memory Management Unit

[13] Exception Handling

 
Loading