Expanding the Impact of the EEROS Open Source Robotics

Total Page:16

File Type:pdf, Size:1020Kb

Expanding the Impact of the EEROS Open Source Robotics Expanding the Impact of the EEROS Open Source Robotics Framework An Interactive Qualifying Project submitted to the Faculty of WORCESTER POLYTECHNIC INSTITUTE in partial fulfilment of the requirements for the degree of Bachelor of Science by Nicholas Brown Nicholas Hassan Nathan Hughes Ryan Lang Date: 1 May 2015 Report Submitted to: Professor Einar Nielsen NTB Buchs Professor Scott Jiusto Professor Ruth Smith Worcester Polytechnic Institute This report represents work of WPI undergraduate students submitted to the faculty as evidence of a degree requirement. WPI routinely publishes these reports on its web site without editorial or peer review. For more information about the projects program at WPI, see http://www.wpi.edu/Academics/Projects. Abstract This report, prepared for the developers of the EEROS Real Time Robotics Software Framework, explored options to expand the impact that EEROS would have on the open source robotics community. This open source framework was examined to discover how a healthy development community might grow in a new project. Through increasing EEROS’s presence, analyzing its community, exploring sustainable funding options, organizing and streamlining development and identifying new partners, we gained an understanding of the birth of an open source project. ii Table of Contents Abstract ........................................................................................................................................... ii Table of Figures .............................................................................................................................. v Table of Tables ............................................................................................................................... v Chapter 1: Introduction ................................................................................................................... 1 Chapter 2: Background ................................................................................................................... 3 2.1 Free Software, the Open Source Movement and Open Source Communities ...................... 3 2.1.1 What Is the Open Source Movement? ........................................................................... 3 2.1.2 History of the Open Source Movement ......................................................................... 4 2.1.3 Ideologies of the Open Source Movement..................................................................... 5 2.1.4 Why the Open Source Movement Is Successful ............................................................ 6 2.1.5 Why People Contribute to the Open Source Movement ................................................ 7 2.1.6 Security Concerns and Quality Control of Open Source Software................................ 7 2.2 Creating and Managing Open Source Software.................................................................... 8 2.2.1 Tools and Community Involvement .............................................................................. 8 2.2.2 Licenses........................................................................................................................ 10 2.2.3 Ethics of Licenses ........................................................................................................ 10 2.2.4 Examples of Licenses .................................................................................................. 11 2.3 What makes an Open Source Software Project Successful? .............................................. 11 2.3.1 Case Study: Red Hat .................................................................................................... 11 2.3.2 Other Open Source Business Models .......................................................................... 13 2.3.3 Crowdfunding and Open Source Software .................................................................. 15 2.4 The Robotics Community ................................................................................................... 15 2.4.1 The History of the Robot ............................................................................................. 16 2.4.2 Social Aspects of the Robotics Community ................................................................ 17 2.4.3 Differences Between Education and Industry.............................................................. 17 2.5 Open Source Robotics Frameworks.................................................................................... 18 2.5.1 ROS .............................................................................................................................. 19 2.5.2 ROS-Industrial, Urbi, and The Player Project ............................................................. 20 2.5.3 The Orocos Project ...................................................................................................... 21 2.6 EEROS ................................................................................................................................ 22 2.6.1 Introduction to EEROS ................................................................................................ 22 2.6.2 Problems EEROS Attempts to Solve ........................................................................... 23 2.6.3 Current State of Development ..................................................................................... 24 2.7 Building a Community for EEROS .................................................................................... 25 2.7.1 EEROS and the Robotics Industry ............................................................................... 25 2.7.2 Potential Funding Options in Industry ......................................................................... 26 2.7.3 EEROS and the World of Educational Robotics ......................................................... 27 2.7.4 Potential Funding Options in Education ...................................................................... 27 Chapter 3: Methodology ............................................................................................................... 30 3.1 Increasing EEROS Presence in the Robotics Community .................................................. 31 3.1.1 EEROS Website ........................................................................................................... 31 3.1.2 EEROS Wiki ................................................................................................................ 32 3.1.3 Social Media ................................................................................................................ 32 iii 3.1.4 Other Materials ............................................................................................................ 32 3.2 Providing access to Sustainable Funding ............................................................................ 33 3.3 Organizing and Streamlining EEROS Development .......................................................... 34 3.4 Maintaining a Healthy Open Source Community ............................................................... 35 3.5 Identifying New Partners .................................................................................................... 36 Chapter 4: Results and Findings ................................................................................................... 38 4.1 Presence .............................................................................................................................. 38 4.1.1 EEROS Website ........................................................................................................... 38 4.1.2 EEROS Wiki ................................................................................................................ 40 4.1.3 Social Media ................................................................................................................ 41 4.1.4 Wikipedia Page ............................................................................................................ 41 4.1.5 Informational Brochure ................................................................................................ 42 4.2 Funding Proposal ................................................................................................................ 42 4.3 Organizing and Streamlining EEROS Development .......................................................... 43 4.4 Maintaining a Healthy Open Source Community ............................................................... 44 4.5 Identifying New Partners .................................................................................................... 46 Chapter 5: Recommendations and Conclusions ........................................................................... 47 5.1 EEROS Presence ................................................................................................................. 47 5.2 Sustainable Funding ............................................................................................................ 48 5.3 Streamlined Development ................................................................................................... 48 5.4 Healthy Community ............................................................................................................ 49 5.5 New Partners ....................................................................................................................... 50 5.6 Conclusions ........................................................................................................................
Recommended publications
  • Survey of Robot Programming Languages
    Survey of Robot Programming Languages Seminar Report Submitted in partial fulfilment of the requirements for the degree of Master of Technology by Anirban Basumallik Roll No : 09305008 under the guidance of Prof. Kavi Arya Department of Computer Science and Engineering Indian Institute of Technology, Bombay April 2010 Abstract At the present moment the field of Robotics is extremely varied. The nature of tasks that robots can perform are very distributed and hence controlling or programming different robots need different methods. Many vendors have tried to provide a common platform by abstracting out the differences. In this report we carry out a survey of the different Robot Programming Languages available in the market and assess their pros and cons. Finally, we come up with the needs of a desirable robotics platform that can ease the task of programmers in programming a class of robots more succinctly and effectively. 1 CONTENTS CONTENTS Contents 1 Introduction 3 1.1 Robot Programming Platform . 3 1.2 Need for a Platform . 3 2 Microsoft Robotics Developer Studio 3 2.1 DSS . 4 2.2 CCR . 5 2.3 VPL . 6 2.4 VSE . 7 2.5 Others . 8 2.6 Pros, Cons and buzz . 8 3 Player/Stage 9 3.1 Player Goals and Design . 9 3.2 Stage simulation environment . 10 3.3 Working . 11 3.4 Pros, Cons and buzz . 12 4 URBI 12 4.1 Design philosophy . 12 4.2 URBI Technology . 13 4.3 Pros, Cons and buzz . 14 5 OROCOS 15 5.1 Design philosophy . 15 5.2 Pros, Cons and buzz .
    [Show full text]
  • GNU/Linux AI & Alife HOWTO
    GNU/Linux AI & Alife HOWTO GNU/Linux AI & Alife HOWTO Table of Contents GNU/Linux AI & Alife HOWTO......................................................................................................................1 by John Eikenberry..................................................................................................................................1 1. Introduction..........................................................................................................................................1 2. Symbolic Systems (GOFAI)................................................................................................................1 3. Connectionism.....................................................................................................................................1 4. Evolutionary Computing......................................................................................................................1 5. Alife & Complex Systems...................................................................................................................1 6. Agents & Robotics...............................................................................................................................1 7. Statistical & Machine Learning...........................................................................................................2 8. Missing & Dead...................................................................................................................................2 1. Introduction.........................................................................................................................................2
    [Show full text]
  • An Application Programming Interface for the MORSE Simulator
    Bachelor’s Thesis Czech Technical University in Prague Faculty of Electrical Engineering F3 Department of Control Engineering An application programming interface for the MORSE simulator Lukáš Bertl Cybernetics and Robotics: Systems and Control [email protected] January 2017 Supervisor: RNDr. Miroslav Kulich, Ph.D. Acknowledgement / Declaration I would like to express my gratitude to I hereby declare that I have complet- my supervisor RNDr. Miroslav Kulich, ed this thesis with the topic ”An ap- Ph.D. for a great mentorship, patience plication programming interface for the and wise comments that helped me com- MORSE simulator” independently and plete this project. that I have listed all sources of informa- I would like to thank my girlfriend tion used within it in accordance with and my parents for their unlimited men- the methodical instructions for observ- tal support throughout my whole stud- ing the ethical principles in the prepara- ies. tion of university theses. Finally, I thank my brother and Kač- In Prague, January ...., 2017 ka Janatková for the proofreading of this thesis. ........................................ Lukáš Bertl iii Abstrakt / Abstract Práce představuje CCMorse, což je Thesis presents the CCMorse, a simu- knihovna pro komunikaci se simuláto- lator communication library, that I have rem, kterou jsem vytvořil. Práce dále created. The thesis also describes the popisuje proces vývoje simulačního pro development process of a MORSE sim- simulátor MORSE. ulation environment. Teze probírá nejprve teorii robotic- The thesis
    [Show full text]
  • Flexible Modular Robotic Simulation Environment for Research and Education
    FLEXIBLE MODULAR ROBOTIC SIMULATION ENVIRONMENT FOR RESEARCH AND EDUCATION Dennis Krupke∗, Guoyuan Li and Jianwei Zhang Houxiang Zhang and Hans Petter Hildre Department of Computer Science Faculty of Maritime Technology and Operations University of Hamburg Aalesund University College Email: f3krupke, li, [email protected] Email: fhozh, [email protected] ∗corresponding author knowledge there is no special purpose simulation soft- ware for modular robots that allows for fast and easy cre- KEYWORDS ation of a simulation setup while being easy to use and easy to understand. Modular robots control, educational software, Open- A modular robot GUI has been developed that enables RAVE, interactive simulation the user to focus on robotics while most of the program- ming part is hidden. This idea is also described in (Zhang ABSTRACT et al., 2006). In contrast to other powerful systems only In this paper a novel GUI for a modular robots simula- few rules have to be learned for proper use of our sys- tion environment is introduced. The GUI is intended to tem. Motivation is the most important aspect for peo- be used by unexperienced users that take part in an edu- ple who have just begun with something new to proceed cational workshop as well as by experienced researchers and succeed. The GUI enables the user to get results who want to work on the topic of control algorithms of very quickly because only some basic knowledge about modular robots with the help of a framework. It offers the application space of modular robotics is needed. This two modes for the two kinds of users.
    [Show full text]
  • Getting Started
    Getting started Note: This Help file explains the features available in RecordNow! and RecordNow! Deluxe. Some of the features and projects detailed in the Help are only available in RecordNow! Deluxe. Click here to connect to a Web site where you can learn more about upgrading to RecordNow! Deluxe. Welcome to RecordNow! by Sonic, your gateway to the world of digital music, video, and data recording. With RecordNow! you can make perfect copies of your CDs and DVDs, transfer music from your CD collection to your computer, create personalized audio CDs containing all of your favorite songs, and much more. In addition, a full suite of data and video recording programs by Sonic can be started from within RecordNow! to back up your computer, create drag-and-drop discs, watch movies, edit digital video, and create your own DVDs. Some of these programs may already be installed on your computer. Others are available for purchase. This Help file is divided into the following sections to help you quickly find the information you need: Getting started — Learn about System requirements, Getting help, Accessibility, and Removing RecordNow!. Things you should know — Useful information for newcomers to digital recording. Exploring RecordNow! — Learn to use RecordNow! and find out more about associated programs and upgrade options. Audio Projects — Step-by-step instructions for every type of audio project. Data projects — Step-by-step instructions for every type of data project. Backup projects — Step-by-step instructions for backup projects. Video projects — Step-by-step instructions for video projects. Utilities — Instructions on how to erase and finalize a disc, how to display detailed information about your discs and drives, and how to create disc labels.
    [Show full text]
  • 28Th Daaam International Symposium on Intelligent Manufacturing and Automation
    28TH DAAAM INTERNATIONAL SYMPOSIUM ON INTELLIGENT MANUFACTURING AND AUTOMATION DOI: 10.2507/28th.daaam.proceedings.172 SERVICE ROBOTS INTEGRATING SOFTWARE AND REMOTE REPROGRAMMING Davydov D.V., Eprikov S.R., Kirsanov K.B., Pryanichnikov V.E. This Publication has to be referred as: Davydov, D[enis]; Eprikov, S[tanislav]; Kirsanov, K[irll] & Pryanichnikov, V[alentin] (2017). Service Robots Integrating Software 4nd Remote Reprogramming, Proceedings of the 28th DAAAM International Symposium, pp.1234-1240, B. Katalinic (Ed.), Published by DAAAM International, ISBN 978-3-902734- 11-2, ISSN 1726-9679, Vienna, Austria DOI: 10.2507/28th.daaam.proceedings.172 Abstract This paper presents a solution to the problems of redundancy and organisation of the software architecture inherent in robotic systems and its' simulators. The analysis and comparison of these solutions with the existing ones are given. It was designed a new software architecture for controlling mobile robotic complexes on the base of two models. Developed simulators and usage of the actor model were the base for creating the technological platforms for distributed software control, providing the simultaneous access of several users to a group of mobile robots and their virtual models. Keywords: building a network of robotarium; distributed control of mobile robots and their simulation software for mobile robot; reservation methods in robotics; dynamic reprogramming 1. Main problems When developing intelligent robots, one of the problems is the lack of effective software to create systems of group control. For example, in the well-known software packages (ROS, MRS, and others) does not included specific development tools for control of distributed mechatronic systems, especially in remote mode.
    [Show full text]
  • Openrave: a Planning Architecture for Autonomous Robotics
    OpenRAVE: A Planning Architecture for Autonomous Robotics Rosen Diankov James Kuffner [email protected] [email protected] CMU-RI-TR-08-34 July 2008 Robotics Institute Carnegie Mellon University Pittsburgh, Pennsylvania 15213 Copyright c 2008 by Rosen Diankov and James Kuffner. All rights reserved. Abstract One of the challenges in developing real-world autonomous robots is the need for integrating and rigorously test- ing high-level scripting, motion planning, perception, and control algorithms. For this purpose, we introduce an open-source cross-platform software architecture called OpenRAVE, the Open Robotics and Animation Virtual Envi- ronment. OpenRAVE is targeted for real-world autonomous robot applications, and includes a seamless integration of 3-D simulation, visualization, planning, scripting and control. A plugin architecture allows users to easily write cus- tom controllers or extend functionality. With OpenRAVE plugins, any planning algorithm, robot controller, or sensing subsystem can be distributed and dynamically loaded at run-time, which frees developers from struggling with mono- lithic code-bases. Users of OpenRAVE can concentrate on the development of planning and scripting aspects of a problem without having to explicitly manage the details of robot kinematics and dynamics, collision detection, world updates, and robot control. The OpenRAVE architecture provides a flexible interface that can be used in conjunction with other popular robotics packages such as Player and ROS because it is focused on autonomous motion planning and high-level scripting rather than low-level control and message protocols. OpenRAVE also supports a powerful network scripting environment which makes it simple to control and monitor robots and change execution flow dur- ing run-time.
    [Show full text]
  • Chi Lin Chang Taiwan (R.O.C.) +886-9-3038-6000 (張祺崙/Alan Chang) [email protected] Homepage
    7F, No.233, Bade Rd. East Dist., Hsinchu City 30069 Chi Lin Chang Taiwan (R.O.C.) +886-9-3038-6000 (張祺崙/Alan Chang) [email protected] Homepage: http://qi1002.github.io/ EXPERIENCE SKILLS Mentor Graphics, LINK, Taiwan/Hsinchu— Senior Software Engineer C and C++ June 2019 - PRESENT (AMS BU) Java, C# and Python ➢ Model extractor QT Tool development and common model interface with simulator. Android framework in java/native/kernel layers Mediatek, LINK, Taiwan/Hsinchu— Manager/ Technical Manager Linux Kernel and FPGA emulation 1. June 2012 - January 2019 (CTO BU) (more than 3 years’ team management experience) ➢ Camera team for smart phone project 8032 and ARM RISC - Manage the team for camera 3A & ISP flow and support image quality tuning flows on OpenCL, OpenVX, OpenCV our camera C++ modules. Familiar to android camera interface, camera ISP/3A on OpenGLES, GPU android C++ native framework and our bit-True flow with CModel by python scripts. DNN - Caffe - Involved in the CV algorithm survey for ADAS based OpenCL + OpenVX or OpenCL + ASP, JSP, CSS and HTML openCV or Halide. (ex: canny edge, pedestrian/face detection) and survey DNN – Caffe for the possibility of ADAS application. Caffe, OpenCV, Halide are all based on C++. - Hands on IQ tuning tool development. Use Python .NET to integrate with C# and python CERTIFICATION work together seamlessly in tool. Familiar to C# and Python. ➢ GPU team for smart phone project ISO 26262 Basic Training Course (Tuv Nord) - Hands on to develop the GPU driver (based on mesa 9.0) in the multiple environments, (ex: windows, Linux, android emulator, FPGA with Linux console, FPGA with android K, Tablet with android L) and be charge of the IP bring up in the first IC.
    [Show full text]
  • Architecture of a Software System for Robotics Control
    Architecture of a software system for robotics control Aleksey V. Shevchenko Oksana S. Mezentseva Information Systems Technologies Dept. Information Systems Technologies Dept. Stavropol City, NCFU Stavropol City, NCFU [email protected] [email protected] Dmitriy V. Mezentsev Konstantin Y. Ganshin Information Systems Technologies Dept. Information Systems Technologies Dept. Stavropol City, NCFU Stavropol City, NCFU [email protected] [email protected] Abstract This paper describes the architecture and features of RoboStudio, a software system for robotics control that allows complete and simulta- neous monitoring of all electronic components of a robotic system. This increases the safety of operating expensive equipment and allows for flexible configuration of different robotics components without changes to the source code. 1 Introduction Today, there are no clear standards for robotics programming. Each manufacturer creates their own software and hardware architecture based on their own ideas for optimizing the development process. Large manufacturers often buy their software systems from third parties, while small ones create theirs independently. As a result, the software often targets a specific platform (more often, a specific modification of a given platform). Thus, even minor upgrades of an existing robotic system often require a complete software rewrite. The lack of universal software products imposes large time and resource costs on developers, and often leads to the curtailment of promising projects. Some developers of robotic systems software partially solve the problem of universal software using the free Robotics Operation System (ROS), which also has limitations and is not always able to satisfy all the requirements of the manufacturers. 2 Equipment The research was conducted using two robots produced by the SPA "Android Technics" the "Mechatronics" stand and the full-size anthropomorphic robot AR-601E (figure 1).
    [Show full text]
  • Improvements in the Native Development Environment for Sony AIBO
    Special Issue on Improvements in Information Systems and Technologies Improvements in the native development environment for Sony AIBO Csaba Kertész Tampere University of Applied Sciences (TAMK), Research Department, Tampere, Finland Vincit Oy, Tampere, Finland installing a new bootloader. With these changes, i-Cybie can Abstract — The entertainment robotics have been on a peak be programmed in C under Windows and the sensors are with AIBO, but this robot brand has been discontinued by the accessible, but the SDK was abandoned in pre-alpha state with Sony in 2006 to help its financial position. Among other reasons, frequent freezes and almost no documentation. the robot failed to enter into both the mainstream and the robotics research labs besides the RoboCup competitions, A South Korean company (Dongbu Robot) sells a robot dog however, there were some attempts to use the robot for [3], which has a similar hardware configuration to AIBO, but rehabilitation and emotional medical treatments. A native Genibo does not have an open, low level software software development environment (Open-R SDK) was provided development environment, making impractical for researches. to program AIBO, nevertheless, the operating system (Aperios) Currently, there is no such an advanced and highly induced difficulties for the students and the researchers in the sophisticated quadruped system on the market like AIBO. If software development. The author of this paper made efforts to update the Open-R and overcome the problems. More the shortcomings of the software environment can be fixed, the enhancements have been implemented in the core components, robot can be used for upcoming research topics.
    [Show full text]
  • Design and Implementation of an Autonomous Robotics Simulator
    DESIGN AND IMPLEMENTATION OF AN AUTONOMOUS ROBOTICS SIMULATOR by Adam Carlton Harris A thesis submitted to the faculty of The University of North Carolina at Charlotte in partial fulfillment of the requirements for the degree of Master of Science in Electrical Engineering Charlotte 2011 Approved by: _______________________________ Dr. James M. Conrad _______________________________ Dr. Ronald R. Sass _______________________________ Dr. Bharat Joshi ii © 2011 Adam Carlton Harris ALL RIGHTS RESERVED iii ABSTRACT ADAM CARLTON HARRIS. Design and implementation of an autonomous robotics simulator. (Under the direction of DR. JAMES M. CONRAD) Robotics simulators are important tools that can save both time and money for developers. Being able to accurately and easily simulate robotic vehicles is invaluable. In the past two decades, corporations, robotics labs, and software development groups have released many robotics simulators to developers. Commercial simulators have proven to be very accurate and many are easy to use, however they are closed source and generally expensive. Open source simulators have recently had an explosion of popularity, but most are not easy to use. This thesis describes the design criteria and implementation of an easy to use open source robotics simulator. SEAR (Simulation Environment for Autonomous Robots) is designed to be an open source cross-platform 3D (3 dimensional) robotics simulator written in Java using jMonkeyEngine3 and the Bullet Physics engine. Users can import custom-designed 3D models of robotic vehicles and terrains to be used in testing their own robotics control code. Several sensor types (GPS, triple-axis accelerometer, triple-axis gyroscope, and a compass) have been simulated and early work on infrared and ultrasonic distance sensors as well as LIDAR simulators has been undertaken.
    [Show full text]
  • And All the Robots Merely Players Geoffrey Biggs, Radu Bodgan Rusu, Toby Collett, Brian Gerkey and Richard Vaughan
    1 And all the robots merely Players Geoffrey Biggs, Radu Bodgan Rusu, Toby Collett, Brian Gerkey and Richard Vaughan Abstract—When robot researchers talk about robot middle- known as MobileRobots). These robots ran on the Ayllu wares, inevitably Player will enter the discussion. This piece middleware [1]. Ayllu is a behaviour-based architecture tar- of software and its related tools have become one of the most geted at distributed multi-robot systems. It builds on the popular software tools in robotics research. Its range of hardware support and the flexibility it offers users, as well as its ease of use design of single-robot behaviour-based control architectures, and shallow learning curve, have ensured its success. It is now in particular the Subsumption[2] style of controller. However, over a decade since Player was conceived, and yet its popularity programming robots using it requires following its controller continues. In this article, we take a retrospective look at Player. design. This was quite limiting for researchers who wanted to We discuss its origins, the history of its development, and consider try different controller styles. It also required the use of its own why it became so popular. C-like custom language, adding another hurdle for developers. Index Terms—Robotic software engineering, robot architec- What eventually became Player was developed both to tures, Player replace this somewhat-restrictive control architecture and to allow controllers written for the new simulator developed in I. INTRODUCTION the lab, named “Arena,” to be executed on real robots without All the world’s a stage changes. and all the men and women merely players At first, controllers written for Arena were compiled in directly, but it soon gained a socket interface.
    [Show full text]