تحلیل و طراحی یک زبان خاص منظوره برای توصیف ساختار و حرکت لینکیجها
محورهای موضوعی : مهندسی برق و کامپیوترعلی نوراله 1 * , نوشین بهزادپور 2
1 - دانشگاه تربیت دبیرشهید رجایی
2 - دانشگاه تربیت دبیر شهید رجایی
کلید واژه: حرکت لینکیج زنجیرهباززبان خاصمنظورهلینکیج زنجیرهبازمدلسازی خاصمنظوره,
چکیده مقاله :
این مقاله در حوزه ساختار لینکیجها و حرکت آنها تدوین شده است. لینکیج مجموعهای از پارهخطهایی است که از دو انتهایشان قابل اتصال به یکدیگر میباشند و کاربردهای فراوانی در مدلکردن بازوهای روبات دارند. تاکنون زبان خاصمنظورهای که تنها مختص لینکیج باشد، طراحی و یا گزارش نشده است. زبانهای خاصمنظوره نرمافزارهایی هستند که بالارفتن سطح تجرید، قابلیت درک بهتر، تسریع روند توسعه و نیاز به تلاش کمتر برای یادگیری دانش مربوطه از امتیازاتی است که فراهم میآورند. بنابراین مانند همه نرمافزارها مراحل تحلیل، طراحی، پیادهسازی، تست، نگهداری و پشتیبانی دارند. در این مقاله به طراحی یک زبان خاصمنظوره برای بیان ساختار و حرکت لینکیجها پرداخته میشود و سپس تحلیلی بر روی این زبان انجام خواهد شد. با استفاده از زبان خاصمنظوره تعریفشده در این مقاله، محدودیتی در تعریف لینکیجهای ساده از نظر تعداد وجود نخواهد داشت. همچنین با تعریف ماژولهای حرکتی و ترکیب متوالی و موازی آنها حرکت نهایی لینکیجها تولید میشود و با استفاده از امکانات زبان ارائهشده شرطهای مورد نیاز برای شروع یا خاتمه هر یک از حرکتهای نهایی تعریف میشود. به کارگیری این نوع نگرش در مدلسازی خاصمنظوره، علاوه بر آن که موجب سهولت در تعریف ساختار لینکیجها و تنوع در چگونگی تعریف اولیه آنها است، این امکان را فراهم میآورد که بتوان هماهنگی و همکاری چندین روبات برای انجام یک وظیفه واحد را توصیف و در مرحله بعد پیادهسازی نمود.
This research has been prepared in the field of linkage structures and their movements. A linkage is a set of line segments that can be interconnected via their ends, which exhibits numerous usages in modeling robot arms. To date, various domain-specific languages have been introduced in the field of robot movements. In spite that some of the capabilities of these languages combined with general-purpose languages can be used to describe and create the movements of these linkages and their structures, yet they cannot be considered domain-specific languages for explaining the linkages and their movements. The domain-specific languages are programs that raise the level of abstraction, the ability to understand better, accelerating the development and requires less effort to learn relevant knowledge that will provide the same advantages. So like all software, have levels such as analysis, design, implementation, testing, maintenance and support. Therefore, in this paper, we attempt to analyze and design a domain-specific language and describe and create linkage movements and their structures. By using this domain specific language, there is no limit to the definition of simple linkages in terms of it’s number. Also, by defining the modules and their sequential and parallel combinations, the final movements of the linkages are generated, and by using the features of the language, the terms needed to start or terminate each final movements are defined. Applying this kind of attitude to specific general-purpose modeling, in addition to providing ease in defining the structure of linkages and diversity in their initial definition, allows for the coordination and collaboration of multiple robots to perform a single task and then implemented in the next step.
[1] J. E. Goodman, J. O'Rourke, and L. Guibas, Modeling Motion, pp. 1114-1132, 2004.
[2] M. Fowler, Domain Specific Languages, Addison-Wesley Professional, 1st Ed., 2010.
[3] J. P. Tolvanen and S. Kelly, "Metaedit+: defining and using integrated domain-specific modeling languages," in Proc. of the 24th ACM SIGPLAN Conf. Companion on Object Oriented Programming Systems Languages and Applications, OOPSLA'09, pp. 819-820, New York, NY, USA, 25-29 Oct. 2009.
[4] A. Nordmann, N. Hochgeschwender, and S. Wrede, A Survey on Domain-Specific Languages in Robotics, pp. 195-206, Cham: Springer International Publishing, 2014.
[5] R. Ryman-Kane, RhondaHughes Ryman, Benesh for Ballet, 1 Ed., 2014.
[6] B. M. Farnell, Movement Notation Systems, Oxford, 1996.
[7] O. Teitelbaum, et al., "Eshkol-Wachman movement notation in diagnosis: the early detection of asperger's syndrome," in Proc. of the National Academy of Sciences, United States of America, vol. 10132, pp. 11909-11914, 28 Jul. 2004.
[8] A. Nordmann, N. Hochgeschwender, D. L. Wigand, and S. Wrede, "A survey on domain-specific modeling and languages in robotics," J. of Software Engineering in Robotics, vol. 7, no. 1, pp. 75-99, 2016.
[9] E. D. Demaine and J. O'Rourke, Part I. Linkages, Cambridge University Press Cambridge, 2007.
[10] R. Connelly and E. D. Demaine, Geometry and Topology of Polygonal Linkages, pp. 213-235, 2004.
[11] S. Schneider, N. Hochgeschwender, and G. K. Kraetzschmar, "Declarative specification of task-based grasping with constraint validation," in Proc. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 919-926, Chicago, IL, USA, 14-18 Sep. 2014.
[12] D. Vanthienen, M. Klotzbucher, J. D. Schutter, T. D. Laet, and H. Bruyninckx, "Rapid application development of constrained-based task modelling and execution using domain specific languages," in Proc. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 1860-1866, Tokyo, Japan, 3-7 Nov. 2013.
[13] M. Frigerio, J. Buchli, and D. G. Caldwell, "Code generation of algebraic quantities for robot controllers," in Proc. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 2346-2351, Vilamoura, Portugal, 7-12 Oct. 2012.
[14] A. Nordmann, S. Wrede, and J. Steil, "Modeling of movement control architectures based on motion primitives using domain-specific languages," in Proc. IEEE Int. Conf. on Robotics and Automation, ICRA'15, pp. 5032-5039, Seattle, WA, USA, 26-30 May 2015.
[15] G. Borghesan, E. Scioni, A. Kheddar, and H. Bruyninckx, "Introducing geometric constraint expressions into robot constrained motion specification and control," IEEE Robotics and Automation Letters, vol. 1, no. 2, pp. 1140-1147, Jul. 2016.