RoboSim: a simulation environment for programming virtual robots

In this paper, the design of RoboSim, a simulation environment for programming virtual Linkbot and Lego Mindstorms NXT/EV3 robots, is described in detail. RoboSim integrates into the Ch programming environment, a C/C++ interpreter that provides the ability to remotely control robots through interpreted C/C++ code. The same Ch code can control either hardware or virtual robots without any modification. Open source software projects Open Dynamics Engine, OpenSceneGraph, and Qt are employed to produce the virtual environment and user interface which provide the capability of running on all major software platforms. The design of the software includes multiple modules each specific to a particular task; therefore, the simulation library and graphical user interface (GUI) utilize the common pieces. The GUI provides an interactive view of RoboSim to add robots, obstacles, and graphical objects to preview the environment before executing code for the robots. Execution of Ch code designed for the robots generates a new RoboSim window which has the identical scene from the GUI with dynamic simulation capabilities. The interpreted code controlling the simulation can be paused and resumed as necessary to fully understand how the robots are moving.

[1]  Mark Yim,et al.  PolyBot: a modular reconfigurable robot , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[2]  Robin Shoop,et al.  Students Learn Programming Faster through Robotic Simulation. , 2013 .

[3]  Christian D. Schunn,et al.  The role of physicality in rich programming environments , 2013, Comput. Sci. Educ..

[4]  Harry H. Cheng,et al.  Design of iMobot, an intelligent reconfigurable mobile robot with novel locomotion , 2010, 2010 IEEE International Conference on Robotics and Automation.

[5]  Qijun Chen,et al.  Walking control strategy for biped robots based on central pattern generator , 2012, 2012 IEEE International Conference on Robotics and Automation.

[6]  Paulo G. Costa,et al.  Realistic simulation of a Lego Mindstorms NXT based robot , 2009, 2009 IEEE Control Applications, (CCA) & Intelligent Control, (ISIC).

[7]  Christopher Goodin,et al.  High Fidelity Sensor Simulations for the Virtual Autonomous Navigation Environment , 2010, SIMPAR.

[8]  Harry H. Cheng Scientific Computing in the CH Programming Language , 1993, Sci. Program..

[9]  Nobuto Matsuhira,et al.  Virtual Robot Experimentation Platform V-REP: A Versatile 3D Robot Simulator , 2010, SIMPAR.

[10]  Harry H. Cheng,et al.  Programming Modular Robots in a Simulated Environment for Hardware Control Validation , 2013 .

[11]  Harry H. Cheng,et al.  Object-oriented interactive mechanism design and analysis , 2005, Engineering with Computers.

[12]  Harry H. Cheng Scientific Computing in the $C^H$ Programming Language , 1993 .

[13]  Richard T. Vaughan,et al.  The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems , 2003 .

[14]  Harry H. Cheng,et al.  ChMindstorms for Controlling Multi-Robot Systems , 2015 .

[15]  Harry H. Cheng,et al.  An Interactive Virtual Environment for Programming Modular Robots , 2015 .

[16]  Iman Awaad,et al.  XPERSim: A Simulator for Robot Learning by Experimentation , 2008, SIMPAR.

[17]  Eiichi Yoshida,et al.  M-TRAN: self-reconfigurable modular robotic system , 2002 .

[18]  Harry H. Cheng Handling of Complex Numbers in the CH Programming Language , 1993, Sci. Program..

[19]  Harry H. Cheng,et al.  RoboSim for Integrated Computing and STEM Education , 2014 .

[20]  Harry H. Cheng,et al.  Novel locomotion of iMobot, an intelligent reconfigurable mobile robot , 2010, 2010 IEEE International Conference on Robotics and Automation.

[21]  Harry H. Cheng,et al.  RoboSim: A simulated environment for programming modular robots , 2014, 2014 IEEE/ASME 10th International Conference on Mechatronic and Embedded Systems and Applications (MESA).

[22]  Harry H. Cheng Programming with dual numbers and its applications in mechanisms design , 1994, Engineering with Computers.

[23]  Frank Pasemann,et al.  YARS: A Physical 3D Simulator for Evolving Controllers for Real Robots , 2008, SIMPAR.