پلتفرم نرم افزار یوبرد

پلتفرم یوبرد یک ساختار نرم افزاری برای تولید نرم افزار سیستم های مبتنی بر میکروکنترلر است. این ساختار متشکل از کدهایی به زبان های C و C++ برای راه اندازی واحدهای داخلی میکروکنترلرها و تجهیزات جانبی است. پلتفرم یوبرد از چهار لایۀ سخت افزار، عملکرد، OS و System service تشکیل شده و امکان پیاده سازی همۀ پروژه های مبتنی بر میکروکنترلر در آن وجود دارد. از مهمترین قابلیت های پلتفرم یوبرد این است که کدهای راه اندازی همۀ واحدهای داخلی میکروکنترلر و تجهیزات جانبی در آن موجود است و توسعه دهنده برنامۀ مورد نظر خود را تنها در لایۀ عملکرد (Function) می نویسد و نیازی به نوشتن برنامه برای راه اندازی واحدهای داخلی یا راه اندازی تجهیزات جانبی ندارد.

پلتفرم-نرم-افزاری-یوبرد

زیرساخت توسعۀ سیستم های دیجیتال مبتنی بر میکروکنترلر

BASIC, FUNCTION, OS, SYSTEM SERVICE

ویژگی های پلتفرم یوبرد

تمام پروژه ها در یک پروژه

پلتفرم یوبرد به گونه ای طراحی شده که بتوان تمامی سیستم های دیجیتال مبتنی بر میکروکنترلر را با آن توسعه داد.

انعطاف پذیر

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

استاندارد

کدهای نوشته شده برای راه اندازی واحدهای داخلی میکروکنترلر و تجهیزات جانبی منطبق بر استانداردهای MISRA C و MISRA C++ هستند.

شی گرا

پلتفرم یوبرد با زبان C++ نوشته شده و با بهره گیری از مفاهیم شی گرایی، توسعۀ پروژه های مبتنی بر میکروکنترلر را تسهیل کرده است.

توسعه تنها در لایۀ عملکرد

توسعه دهنده تنها با لایۀ عملکرد (Function) کار می کند و تمامی عملکردهای لازم را پیاده می کند. همۀ آنچه که برای پیکربندی و راه اندازی واحدهای داخلی میکروکنترلر و تجهیزات جانبی نیاز است، در پلتفرم موجود است.

قابل اطمینان

نرم افزار تحت این پلتفرم، می تواند سال ها بدون مشکل کار کند. کدهای نوشته شده در پلتفرم، منطبق بر استانداردهای MISRA C و MISRA C++ هستند. توسعه دهندگان این پلتفرم، با مطالعه و بررسی چندین پلتفرم با سابقه در صنعت، آن را توسعه داده اند.

یکپارچه

هر آنچه که برای تولید نرم افزار سیستم های دیجیتال مبتنی بر میکروکنترلر مورد نیاز باشد، در پلتفرم یوبرد وجود دارد.

سازگار با گذشته و آینده

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

سریع

توسعه دهنده تنها به نوشتن عملکرد می پردازد و نیازی به نوشتن کدهای راه اندازی و پیکربندی واحدهای داخلی و تجهیزات جانبی ندارد. بنابراین زمان توسعه کاهش پیدا می کند.

تعمیم پذیر

اگر میکروکنترلر یا تجهیزات جانبی جدیدی ساخته شود، می توان آن را به پلتفرم اضافه کرد.

کاربرپسند

توسعه دهنده با خیال راحت و بدون دغدغۀ تغییرات پروژه ها، آنها را توسعه می دهد. برخی ویژگی های موجود در پلتفرم، مثل نوشتن برنامه تنها در لایۀ عملکرد، قابلیت اضافه کردن بردهای متعدد به پلتفرم، تغییر راحت میکروکنترلر و تجهیزات جانبی و …، کار با آن را برای توسعه دهنده راحت می کنند.

راهنمای جامع

شامل مجموعه ای آموزشی برای کار با پلتفرم و روش های توسعۀ پروژه در پلتفرم است. سایر پیش نیازهای مرتبط با پلتفرم نیز ارائه می شود.

ویژگی های لایۀ سخت افزار یا Basic

لایۀ سخت افزار یا لایۀ Basic لایه ای است که کدهای مربوط به پیکربندی و راه اندازی واحدهای داخلی و تجهیزات جانبی در آن قرار دارند.

ثابت بودن توابع برای پروژه های مختلف

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

توابعی برای کار با تجهیزات جانبی

برای راه اندازی و استفاده از از اکثر تجهیزات جانبی، در صورت فعال کردن آنها، توابعی وجود دارد.

فراخوانی توابع در قسمت های مختلف پروژه

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

تجهیزات جانبی جدید در پلتفرم

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

راه اندازی استاندارد

مثلاً پروتکل CAN تحت استاندارد ISO 11898 راه اندازی می شود.

توابعی برای تمامی بخش های میکروکنترلر

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

هم سخت افزاری و هم نرم افزاری

مثلاً پروتکل ارتباطی I2C هم به صورت سخت افزاری و هم نرم افزاری در پلتفرم یوبرد راه اندازی شده است.

ویژگی های لایۀ عملکرد یا Function

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

قوانین لایه FUNCTION

• تقسیم بندی فایل ها که تقسیم بندی فایل های زیرمجموعۀ این لایه و لایۀ سخت افزار، مانند هم هستند و فایل های لایۀ عملکرد باید مطابق لایۀ سخت افزار قرار گیرند.
• مکان مناسب قرارگیری defineها، توابع، تعریف داده ها، فراخوانی کتابخانه ها و … .

ویژگی های لایه FUNCTION

• تعدادی عملکرد وجود دارند که برای همۀ پروژه ها قابل استفاده اند. عملکردهایی مثل مدیریت خطاها و مانیتور وضعیت سیستم.
• با توجه به این که توسعه دهنده با لایه های دیگر کاری ندارد، می تواند عملکردهای پروژه را زیاد کند و یک وجه تمایز رقابتی ایجاد کند.

ویژگی های لایۀ OS

این لایه شامل الزامات مدیریت زمانی سیستم است. در پلتفرم یوبرد، OS به سه روش سوپرلوپ (بدون استفاده از OS استاندارد)، FreeRTOS و RTEMS وجود دارد. توسعه دهنده تنها از لایۀ OS استفاده می کند و تغییرات در لایۀ OS، به عهدۀ یوبرد است.

قابلیت انتخاب OS مورد استفاده

قابل استفاده برای همۀ پروژه ها

وجود سیستم عامل FreeRTOS در پلتفرم

امکان تغییر در تنظیمات OS

وجود سیستم عامل RTEMS در پلتفرم

تنظیم OS برای بیشترین بهره و کمترین خطا

وجود Super loop برای تست کدهای خارج از OS

امکان افزودن OSهای دیگر به پلتفرم

ویژگی های لایۀ System Service

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

os-پلتفرم-یوبرد

1. تغییر میکروکنترلر پروژه تنها با تغییر یک define

2. فعال و غیرفعال کردن هر یک از واحدهای داخلی میکروکنترلر یا تجهیزات جانبی تنها با تغییر defineها

3. تغییر ویژگی ها و رفتارهای لایۀ سخت افزار با تغییر defineها، بدون درگیر شدن با سخت افزار میکروکنترلر

4. قابلیت استفاده از در هر نرم افزار IDE و امکان به کارگیری دیباگرها و قابلیت های دیگر آن

5. کامپایل شدن پروژه در کمترین زمان با توجه به نحوۀ فراخوانی ها و پیکربندی سیستم

6. تدارک قابلیت افزودن فایل های دیگر به هر یک از لایه های پلتفرم

7. سیستم دیباگ مستقل از دیباگ نرم افزارها بر روی یکی از پروتکل های ارتباطی (سخت افزاری یا نرم افزاری) میکروکنترلر

8. سیستم تجمیع خطاهای لایۀ سخت افزار و یک عملکرد برای رسیدگی به آن

9. سیستم حرفه ای مانیتور وضعیت سیستم که خروجی آن می تواند در روش های مختلف دیباگ و همچنین نمایشگرهای به کار رفته در پروژه قابل مشاهده باشد.

اثرات پلتفرم یوبرد

پلتفرم نرم افزار یوبرد ویژگی های متعددی دارد. هر یک از این ویژگی ها تأثیراتی بر روند پروژه و محصول نهایی می گذارد.

افزایش سرعت و کاهش زمان توسعۀ پروژه

کاهش وابستگی پروژه به عوامل تغییر پذیر

ایجاد محصولی با قابلیت اطمینان بالا و ایمن

ایجاد محصولی استاندارد و حرفه ای

خدمات یوبرد پیرامون پلتفرم

یوبرد برای رفع نیازهای صنعت و هموار کردن مسیر برای استفاده کنندگان پلتفرم، خدماتی را ارئه می دهد.

پشتیبانی با اولویت بالا برای توسعه دهندگان پلتفرم یوبرد

بروزرسانی مداوم قابلیت های لایه های مختلف و به ویژه لایۀ عملکرد

تلاش در پرورش و معرفی نیروی انسانی بالقوه در توسعۀ پلتفرم

انتقال کدهای قبلی نوشته شده توسعه دهندگان، به پلتفرم یوبرد

تعهد حفظ حریم خصوصی لایۀ عملکرد استفاده کنندگان پلتفرم

ارائۀ کدهای آماده قسمت های مختلف پلتفرم در حالات مختلف

آموزش پلتفرم و پیش نیازها به کاربران آن

سیستم-عامل-پلتفرم-یوبرد

تضمین عملکرد صحیح پلتفرم

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

پلتفرم یوبرد چقدر زمان توسعۀ پروژه را کم می کند؟

پلتفرم-سریع-یوبرد

در صورت عدم استفاده از پلتفرم یوبرد،

  • بخش Document حدود 5 درصد،
  • بخش تست حدود 8 درصد،
  • بخش عملکرد حدود 37 درصد،
  • بخش OS حدود 10 درصد،
  • و بخش Basic حدود 40 درصد

در صورت استفاده از پلتفرم یوبرد،

  • بخش Document حدود 5 درصد،
  • بخش تست حدود 8 درصد،
  • بخش عملکرد حدود 30 درصد،
  • بخش OS حدود 0 درصد،
  • و بخش Basic حدود 0 درصد

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

دانلود

لطفا برای دریافت لینک دانلود اطلاعات خواسته شده را وارد نمایید
ضبط پیام صوتی

زمان هر پیام صوتی 4 دقیقه است