REMS Middleware for Robotics Education and Development Yusuke Tanakay Ankur Mehtay Abstract This paper introduces REMS a robotics middle-

2025-04-26 0 0 2.48MB 7 页 10玖币
侵权投诉
REMS: Middleware for Robotics Education and Development
Yusuke Tanaka, Ankur Mehta
Abstract This paper introduces REMS, a robotics middle-
ware and control framework that is designed to introduce the
Zen of Python to robotics and to improve robotics education
and development flow. Although existing middleware can serve
hardware abstraction and modularity, setting up environments
and learning middleware-specific syntax and procedures are
less viable in education. They can curb opportunities to under-
stand robotics concepts, theories, and algorithms. Robotics is
a field of integration; students and developers from various
backgrounds will be involved in programming. Establishing
Pythonic and object-oriented robotic framework in a natural
way can enhance modular and abstracted programming for
better readability, reusability, and simplicity, but also supports
useful and practical skills generally in coding. REMS is to be
a valuable robot educational medium not just as a tool and to
be a platform from one robot to multi-agent across hardware,
simulation, and analytical model implementations.
I. INTRODUCTION
Robotics platforms have been proposed to simplify and
generalize programming and integration of robotics tech-
nologies across various areas of study. Popular middleware
ROS [1] enables developers to create a package that can run
cross-platform with a unified data communication protocol.
OROCOS intends to provide a robot control system with
a soft real-time capability and built-in robotics libraries.
However, such middleware systems require a handful of
setup procedures and compiling packages, and the users
often should spend efforts to start using them [2]. This can
be a considerable disadvantage when the primary focus is
education since students are forced to spare time learning
an uncommon language, syntax, and technologies elsewhere.
Programming for an integrated system such as a robot can
become complex and abstract thinking may not be as intu-
itive [3]. LEGO Mindstorms has been a successful tool for
elementary to college level classrooms thanks to interactive
and fun infrastructure [3], [4]. Although its primary graphical
programming makes robot controls more accessible, there is
still a gap from LEGO to more advanced or custom robots
since Mindstorms is a proprietary system, and all hardware
and software are designed to be integrated.
Python has been gaining popularity because of its sim-
ple ecosystem and readability. The Zen of Python is all
about simplicity: "Beautiful is better than ugly." and "If
the implementation is easy to explain, it may be a good
idea." [5]. Introducing the Zen of Python into robotics can
philosophically reinforce robotics software and architectures
to be better readable and sharable. Adapting Python can
All authors are with the Department of Mechanical and Aerospace
Engineering, University of California, Los Angeles, CA, USA 90095
{yusuketanaka, mehtank}@ucla.edu.
Fig. 1: REMS: robotics middleware and framework. A total of 32 robot
implementations were demonstrated, including simulations in a) and d), and
hardware in b) and c), and analytical models. a) Webots physics simulator
robots: Woodbot, E-puck, Create 2, Youbot, arm, base only, Pioneer DX,
AT, and Moose. b) hardware: Create 2 (top), Dynabot (left) and Woodbot
(right). c) Two-arm 6-DoF manipulator hardware, SCALER Manipulator[25]
and d) Pybullet physics simulation.
benefit users with and without a programming background
due to its simple installation mechanisms, interactive no-
compilation interpreter, and scientific or machine learning
libraries. Object-oriented structures benefit and accelerate
robotics development with abstracted and modular codes that
can be inherited or merged to create a new system. Such
scalable and coherent designs have the potential to enhance
robotics education and development.
In this paper, we propose REMS: Robotics Education Mid-
dleware System, a robotics middleware and control frame-
work that employs the zen of Python and are designed for
educational and research purpose.
Our contributions are summarized as follows:
1) We develop REMS: a Pythonic robotics middleware
and framework for education and development purpose
2) Object-oriented design to allow users to swap, extend
and combine for a new robot or a functionality
3) Enable simultaneous run of multiple robots and im-
plementations for a multi-agent system and debug-
ging/comparisons
4) Case studies running 32 robot implementations, and
applications in an academic class and research
II. RELATED WORKS
A. Middleware in Robotics
Robot Operation System (ROS and ROS2) is one of the
most well-known and widespread middleware for robotics
[1]. ROS provides a hardware abstraction layer (HAL) and
arXiv:2210.05784v1 [cs.RO] 11 Oct 2022
allows graph node-edge-based generalized communications.
HAL modulates the system’s actual implementation, which
may depend on specific hardware or programming language,
and improves compatibility with other systems and reusabil-
ity. Node connections can be inter-device since ROS 1
uses a custom TCP/IP protocol, and ROS 2 is based on
Data Distribution Service (DDS), which is more secure and
appropriate for industrial use cases [1]. However, ROS itself
does not provide robotic system architectures, and the user
should design graph communications. Even though a robot is
compatible with ROS, it does not mean it is indeed developed
using ROS inside, but the ROS node is prepared for a generic
external communication medium.
Yet Another Robot Platform (YARP) is an open-sourced
middleware to provide HAL and unified communications
between modules along with robotics libraries to provide
control infrastructure of the robots [6].
In industry, proprietary platforms and programming lan-
guages are developed for a particular family of products, such
as KUKA Robot Language (KRL) for KUKA robot arms [7],
and B&R Automation Studio for their programmable logic
controllers (PLC) [8]. They provide uniform and abstracted
access to devices with integrated robotics API libraries
and safety systems, although proprietary systems require
licensing and specific hardware.
B. Hardware Oriented Middleware
Open Robot Control Software (OROCOS) is an open-
sourced robotic control framework focused on real-time
performance [9]. Although ROS 2 has enhanced real-time
capability, OROCOS has superior latency and jitters in Inter-
Process Communication (IPC), particularly with modified
Linux kernels such as Xenomai [10]. OROCOS framework
includes standard APIs for robotics in C++, such as kine-
matics, Bayesian filtering, state machines, etc.
IPC can restrict the system’s real-time operation and cyclic
speed since data cannot be referred by memory address, and
the data must be copied and serialized to another process
[11]. Hard real-time system guarantee a response time with
a certain maximum deviation, while soft real-time system
bounds average response time [12]. Many attempts toward
soft real-time requirements, including OROCOS, have been
done in RT-Middleware [13] and TZC [11].
Hard real-time is significantly strict and requires low
latency hardware, a real-time operating system (RT-OS),
and strict time synchronization, primary for safety purpose
[12]. The automation industry has developed proprietary
PLC to achieve low-latency hard real-time programming
environments by custom designing from hardware to RTOS,
such as B&R Automation studio [8]. XBotCore is an open-
sourced hard real-time software platform for EtherCAT-based
robots [14].
One of the most successful educational purpose middle-
ware is the LEGO Mindstorms series [3]. Their Graphical
Programming Language (GPL) is suitable for students and
beginners unfamiliar with programming. The GPL grants a
coding environment as if the users are assembling bricks. For
more advanced users, LEGO Mindstorms supports C++ and
Python. However, their costs, limited simulation, and propri-
etary hardware barriers introducing them into classrooms or
moving onto different or custom hardware.
C. Middleware for Multi-Agent and Cloud Robotic
Various middleware has targeted to enhance HAL into
a robot, task or team scale to simplify programming at
different levels and modulate them to reuse. Task-level GPLs,
RAZER, etc., are toward end-users so they can program
a robot during operations and without an engineer [15].
They can help facilitate automation and robotics technolo-
gies to lesser-technical creative industries with human-robot
interaction in mind [16]. ManiWare is dedicated to team-
level abstraction and synchronization for manipulators to
conduct teamwork operations among different arms [17].
CORNET integrates unmanned aerial vehicle physics and
network simulators to realize a cyber-physical system of
multi-agent drones [18].
Cloud robotics offers offloading computation-intensive
tasks and access to cloud resources such as CPU, GPU,
storage, and a global map [19]. Multi-agent and collaborative
robots can benefit from cloud infrastructure. XbotCloud is
a cloud-integrated system designed for XbotCore-operated
robots [20].
III. REMS CONCEPT AND PRINCIPLE
A. Concepts
Our middleware , REMS, design primary concepts are the
following:
The Zen of Python to robotics
Provide robotic framework off-the-shelve
Moduled robot definitions and implementations
Scalable from one to multi-agent
The concept of Pythonic programming is about simple,
concise, and readable coding. Each class and method have a
clear role in the system. With other common middleware,
learning curves are steep at the beginning because users
should learn the specific syntax, language, process, etc. of the
middleware that are not standard or uncommon elsewhere,
i.e., IDL in ROS. Even setting up and installing a ROS pack-
age is already a significant achievement due to complicated
version dependencies [2]. The robotics domain spreads not
merely to computer science but to people with a mechanical
or electrical engineering background. In education settings, it
can take away vital opportunities to learn more about theories
and algorithms by spending time on technical details that are
only applicable in a limited field area.
Developers should put considerable design efforts into
software architecture to integrate various components in
robotics. Providing a robot control pipeline simplifies the
initial setup and implementation time. The architecture itself
can educate learners on what parts should be in the robot
system as well as basic concepts of programming, such as
abstraction and modularity.
Abstraction in a robot is more complex than said. What
defines a robot to be and what does not, are not clear
摘要:

REMS:MiddlewareforRoboticsEducationandDevelopmentYusukeTanakay,AnkurMehtayAbstract—ThispaperintroducesREMS,aroboticsmiddle-wareandcontrolframeworkthatisdesignedtointroducetheZenofPythontoroboticsandtoimproveroboticseducationanddevelopmentow.Althoughexistingmiddlewarecanservehardwareabstractionandmo...

展开>> 收起<<
REMS Middleware for Robotics Education and Development Yusuke Tanakay Ankur Mehtay Abstract This paper introduces REMS a robotics middle-.pdf

共7页,预览2页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:图书资源 价格:10玖币 属性:7 页 大小:2.48MB 格式:PDF 时间:2025-04-26

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 7
客服
关注