محبوبیت دستگاههای اندرویدی به قابلیتهای قدرتمند آنها مربوط میشود که شامل اتصال به اینترنت، معماری باز و چندین نوع دیگر از سنسورهای داخلی است. دانشجویان و سایر توسعه دهندگان نرم افزار به طور فزاینده ای از پلت فرم اندروید استفاده می کنند زیرا از زبان برنامه نویسی جاوا استفاده می کند که به راحتی می تواند در دانشگاه ها و سایر موسسات آموزشی LPCCA اعمال شود. Android API نه تنها باز و آسان برای استفاده است، بلکه به توسعه دهندگان اجازه می دهد تا به اجزای سخت افزاری مختلف و عملکردهای مختلف سطح پایین دسترسی داشته باشند. اکثر عملکردهای رباتیک به دلیل وجود چندین رابط ارتباطی مانند بلوتوث ، WiFi، USB، GSM/UMTS و حسگرهای یکپارچه مانند ژیروسکوپ، شتاب سنج، قطب نما و GPS توسط پلتفرم اندروید قابل کنترل هستند.
اگرچه این دستگاه ها برای بازار انبوه تولید می شوند، اما پلتفرم اندروید ظرفیت گسترش فیزیکی را ندارد تا بتواند حسگرها و محرک های اضافی را کنترل کند. توسعه دهندگان استدلال می کنند که اگر قرار است از دستگاه های اندرویدی برای کنترل رباتیک استفاده شود، این یک ضرورت مهم است. کارشناسان بر این باورند که بسیاری از چالش ها را می توان با ملموس تر ساختن ساختارهای داده، الگوریتم ها و رفتار نرم افزاری حل کرد. به عنوان مثال، ربات ها را می توان به راحتی با LEGO Mindstorms RCX و با NXT دومی ساخت. با این حال، قابلیت های NXT برای اجرای برنامه های پیچیده ای که مبتنی بر جاوا هستند کافی نیست. برای رفع این مشکل از رویکرد دو لایه استفاده میشود، در حالی که متخصصان قصد دارند لایه پایینتری را در نسخههای روباتیک آینده با یک پلت فرم میکروکنترلر مانند برد محبوب آردوینو جایگزین کنند.
کارشناسان کتابخانه LPCCA را طراحی کردند که از اتصال مستقیم بین NXT و Android به اندروید و میکروکنترلرها منحرف می شود. چندین نوع طراحی برد معرفی شده است، مانند آردوینو مگا برد که دارای پردازنده مرکزی بزرگتر و پورت های اضافی نسبت به آردوینو استاندارد است. تعدادی از رویکردها قبلاً معرفی شده اند. اول، Microbridge یک پروژه نرم افزاری است که بر روی یک USB Host Shield و یک برد میکروکنترلر آردوینو ساخته شده است (Gobel, et al., nd). دوم، برد IOIO یک برد مدار سخت افزاری است که به عنوان پسوند مستقیم برای پلتفرم اندروید استفاده می شود. روشهای دیگری که قبلاً روی آنها آزمایش شدهاند عبارتند از Google ADK، Cellbots، Amarino، و le JOS 0.9/Android.
محبوبیت سیستم LEGO Mindstorms NXT به سرعت در مؤسسات آموزشی افزایش یافته است زیرا در مقایسه با سایر پلت فرم های ربات برای حرفه ای ها هزینه کمتری دارد. همچنین به دلیل چندین عنصر مکانیکی که امکان توسعه ربات های مختلف را فراهم می کند، انعطاف پذیر است، در حالی که نرم افزار برنامه نویسی گرافیکی آن به راحتی قابل درک است.
شکل 1: Lego Mindstorms NXT (منبع: http://www.jataka.hu/rics/lego/ )
کارشناسان کتابخانه ای ایجاد کردند تا ارتباط کافی بین NXT و Android ایجاد شود. ملاحظات اتصال مورد استفاده شامل مستقیم از طریق USB، غیر مستقیم از طریق میکروکنترلر و بلوتوث است. اجرای فعلی کتابخانه دارای یک سرویس از راه دور به نام LPCCARemoteService است . این یک رابط اندروید است که اتصالات بین برنامه های Android و NXT را کنترل می کند. یک مثال WebMoteRobot است که می تواند برای راه اندازی اتصال زمانی که شخصی یک دستگاه Android دارد استفاده شود.
شکل 2: WebMoteRobot (منبع: http://www.innoc.at/fileadmin/user_upload/_temp_/RiE/Proceedings/65.pdf )
اساساً، این سند کتابخانه کاملاً کاربردی LPCCA را تجزیه و تحلیل کرده است که کارشناسان را قادر میسازد تا برنامههای Android را با توانایی کنترل از راه دور رباتهای NXT توسعه دهند. در حالی که بیشتر این اطلاعات در actuatorzone.com قابل دسترسی هستند ، بنابراین علاقه مندان به Android از کتابخانه ای که در آن برنامه ها می توانند برای تأیید توالی های کنترل پیچیده برای NXT استفاده شوند، سود خواهند برد. همچنین دسترسی آسان به حسگرها و محرک های ربات LEGO برای دانش آموزان فراهم می شود که نه تنها ساده و انعطاف پذیر هستند، بلکه هزینه کمتری نیز دارند.
در ادامه، متن انگلیسی این مطلب را میتوانید مشاهده نمایید:
The popularity of android devices is attributed to their powerful capabilities which include internet connectivity, open architecture, and several other kinds of built-in sensors. Students and other software developers are increasingly using the android platform since it utilizes Java programming language which can easily be applied in universities and other learning institutions LPCCA. Not only is Android API open and easy to use, it also allows developers to access various hardware components and different low-level functions. Most robotic functions can be controlled by the Android platform due to presence of several communication interfaces such as Bluetooth, WiFi, USB, GSM/UMTS, and integrated sensors like the gyroscope, accelerometer, compass and GPS.
Although the devices are produced for the mass market, the Android platform does not have the capacity of physically extending so that it can be able to control additional sensors and actuators. Developers argue that this is an important necessity if Android devices are to be used for robotic control. Experts believe that most of the challenges can be solved by making data structures, algorithms, and software behavior more concrete. For instance, robots can be built easily with LEGO Mindstorms RCX and with the latter NXT. However, the NXT capabilities are not sufficient for running complex programs that are based on Java. A two-layer approach is used to address this problem, while experts intend to replace the lower layer in the future robotic versions with a microcontroller platform, such as the popular Arduino board.