Keywords

1 Introduction

With the prevalent use of robots in industry, manufacturing, military, space exploration, medical applications, etc., fundamental and advanced courses on robot mechanics are being offered at undergraduate and graduate level. Majority of the introductory textbooks and courses on robot mechanics and control, focus on serial-chain manipulators. A holistic approach towards teaching robot mechanics is to explain the concepts using an actual serial or parallel robot manipulator. However, not all engineering departments in Indian universities have access to a real industrial robot. One approach towards tackling this issue in robotics education in India is to use a teaching-learning software in a robot mechanics course. The primary design philosophy behind such a software must be such that it would facilitate the instructors and students to learn and teach robot mechanics intuitively. There exists full-fledged software to allow dynamic simulation, path planning, real-time control, etc. of robot manipulators. However, majority of them do not cater towards intuitive learning of the concepts in robot mechanics. For a comprehensive learning, a robotics teaching software must complement the theoretical material prescribed in the syllabus; simultaneously, it must also provide students and teachers with the capability of simulating robots in a virtual environment. Implementing virtual experiments with such software in curriculum would overcome the limitation of not having an actual robot, to a great extent.

Software that aid robotics education have been reported in literature. The commonly used ones are Robotics Toolbox for MATLAB (Corke 1996), V-REP (Freese et al. 2010), RoKiSim (2015), Webots (Michel 2004; Guylot et al. 2011), ARTE (2015), etc. RoboAnalyzer (Rajeevlochana and Saha 2011) is another attempt at a 3D model based virtual learning and experimentation platform for mechanics of serial-chain robots. It has been developed since 2009. The core design philosophy behind RoboAnalyzer is to have a virtual learning environment that would aid in teaching and learning the geometry, kinematics and dynamics of serial-chain robots. Concepts like Denavit-Hartenberg (DH) parameters (Denavit and Hartenberg 1955), homogeneous transformation matrices (HTMs), etc. can be explained lucidly using features in RoboAnalyzer. While there are provisions for kinematic and dynamic simulations, RoboAnalyzer emphasizes on explaining the concepts in a more elegant manner and is primarily meant as a robotics education tool. The main graphical-user-interface (GUI) of RoboAnalyzer is shown in Fig. 1. A brief comparison of relevant features of different robotics teaching/learning software is given in Table 1.

Fig. 1
figure 1figure 1

RoboAnalyzer user interface. a Main user interface. b Graph plotting module

Table 1 Comparison of features of different robotics teaching/learning software

This paper discusses how RoboAnalyzer can be effectively used for teaching and learning, in a course of robot mechanics. An overview of RoboAnalyzer and its functionalities are discussed in Sect. 2. Section 3 gives an overview of the different problems faced while teaching and learning robot mechanics, and how RoboAnalyzer is designed to tackle majority of them. This highlights the features of RoboAnalyzer that makes it a good fit for robotics education at a fundamental level. Section 4 details how virtual experiments can be conducted using RoboAnalyzer for a course in robot mechanics, and incorporating them into coursework. The implementation of the same at IIT Delhi is also discussed. The conclusions are discussed in Sect. 5.

2 Overview of RoboAnalyzer

RoboAnalyzer is a 3D model based robotics learning software developed as a Windows desktop application. The main aim here is to provide students and teachers with a platform to learn concepts in robot mechanics. RoboAnalyzer is modular in nature—each functionality like kinematics, visualization, etc. have been developed as a separate module and integrated together. A brief description of the main modules and the features are described below in Table 2.

Table 2 Main modules and features of RoboAnalyzer software

3 Issues in Teaching and Learning Robot Mechanics

The task of teaching robot mechanics to beginner level engineering students is not an easy task—nor is learning the concepts. The relevant problems in teaching and learning robotics, along with the solution strategy employed by RoboAnalyzer in tackling them are mentioned below.

3.1 Limited Access to an Actual Robot

Not all engineering schools have the facility of a real industrial robot. Even in those schools which do possess a serial robot, beginner students of robotics can avail only a limited access due to constraints like prior training and programming experience required to operate the robot, robot being engaged for other research purposes, etc. In such a case, a virtual environment in which the robot motion can be simulated can be of key importance. RoboAnalyzer presents the user with an array of serial-chain robot models in a 3D environment that can be selected and modified by the user. This would let the user perform the kinematic and dynamic simulations offline and compare the results with the actual robot. For more realistic simulations of joint-level and Cartesian-level motions, the VRM of the RoboAnalyzer can be used.

3.2 Difficulty to Understand the DH Parameters and Coordinate Transformations

Each of the four DH parameter corresponding to a robot joint has an associated coordinate transformation, which has a corresponding 4 × 4 HTM. However, the 3D transformations are not easy to visualize from a book and are difficult to explain using conventional teaching medium. The DH parameter visualization feature will allow the students to see and understand the coordinate transformations associated with a particular DH parameter. This feature is shown below in Fig. 2. The ‘Start Frame’ is transformed into the ‘Moving DH Frame’ until it coincides with the next DH frame.

Fig. 2
figure 2figure 2

Visualizing DH parameters in RoboAnalyzer

3.3 Visualizing Simulations

Although conventional teaching aids can be used for visualizing planar robots, motion of robots in 3D space is difficult to understand without the help of a simulation software. Some robot manufacturers supply proprietary software for robot simulations and offline programming, but these are often available for a higher cost. RoboAnalyzer and its modules help in understanding the robot motion using animations. Users are also provided with the capability to specify the motion trajectories. The virtual robots can be programmed and simulated from MATLAB environment using the VRM visualization addin for MATLAB, as shown in Fig. 3.

Fig. 3
figure 3figure 3

Offline simulation using VRM addin for MATLAB

3.4 Advanced Calculations and Programming

As the number of degrees-of-freedom of the serial-chain robot increases, the computations involved in the kinematic and dynamic analyses may become complicated. Performing the same computations in MATLAB or other programming environment will require the user to create a program from scratch, which may be tedious. Although this maybe preferred for advanced research, it is not recommended for classroom education as it consumes a lot of time, which can otherwise be utilized for learning the concepts. RoboAnalyzer, with its readymade module can help solve a variety of analyses in robot mechanics, thus facilitating the students in problem solving, verification and basic offline motion simulation.

4 Structured Curriculum in Robotics with Practical and Simulation Sessions

A comprehensive learning experience is achieved when the theory taught in classroom is absorbed by the students at a conceptual level and is put into practice using a device or an experiment. However, as mentioned previously in Sect. 3, the lack of access to a robot or associated hardware can limit the practical learning experience in robot mechanics. RoboAnalyzer offers a possible solution in this scenario. The different modules of it can be used to perform virtual experiments using different kinds of robot models.

4.1 Virtual Experiments for an Introductory Coursework in Robotics

The authors have developed a list of virtual experiments using RoboAnalyzer. Due to the space constraints, only an overview of the experiments is listed in Table 3. Detailed report can be found in Sadanand and Saha (2015). The virtual experiments have been designed such that they can be completed as a part of a semester long course in robot mechanics. They have been structured to augment the classroom lectures. The different modules of RoboAnalyzer software can be used to complete the subtasks in the experiments, which cover different topics in robot mechanics. About 11 practical experiments have been proposed, which can be done on a weekly basis over a semester. Following this, a week or two may be utilized for conducting presentations based on the course material that has been already taught or for project presentations (as shown in Table 4). The course instructors familiar with the theory of robot mechanics can acquaint themselves with the RoboAnalyzer software using a user manual. Following this, the mentioned virtual experiments can be utilized in the coursework.

Table 3 Virtual experiments using RoboAnalyzer
Table 4 List of suggested projects using RoboAnalyzer

4.2 Implementation at IIT Delhi

At IIT Delhi, the above virtual experiments were employed for learning robot mechanics using practical coursework and put into practice in the course ‘Mechanics of Robots (MEL-739)’. In the course, RoboAnalyzer was used for virtual experimentation along with other computational tools like MATLAB and RecurDyn. The weekly practical experiments in the course were coherent with the classroom coursework, and the theory developed in class is applied in laboratory sessions using RoboAnalyzer. This ensured that students get an opportunity to use the knowledge acquired in classroom to analyze and design serial-chain robots. An introductory textbook in robot mechanics (Saha 2014) integrates RoboAnalyzer in the explanatory problems as well as end-of-chapter exercises.

Apart from this, RoboAnalyzer can be used to solve problems in any fundamental textbook in robot mechanics. Thus, RoboAnalyzer coupled with a textbook, can serve as an inclusive package for teaching and learning robot mechanics. It was also observed that various difficulties mentioned in Sect. 3 could be overcome with the use of RoboAnalyzer, during the coursework. These virtual experiments were also used in a robotics workshop for beginner level students in robotics and favorable feedback was received. The salient points of the user feedback are listed in Table 5, where the average rating consists of mean and standard deviation.

Table 5 RoboAnalyzer: user feedback results (sample size = 35)

The use of RoboAnalyzer for different robotics based courses was discussed in the workshop on Teaching Trends in Robotics (Saha 2012). The possible advantages derived from using a software like RoboAnalyzer is that, quick analyses can be performed, which would allow the students to easily progress through the course material. While RoboAnalyzer can definitely aid in class assignments, it is not meant as a tool to spoon-feed the students; rather it helps them to understand the concepts at a fundamental level. Having stated the above advantages, it should be noted that simulation/visualization software is no replacement for an actual robot for learning robotics. A possible way to address this limitation is to develop robust and low cost serial-robots that are tailor-made for educational purposes.

5 Conclusions

In this paper the use of RoboAnalyzer for robotics education and its possible integration in robotics courses for enhanced teaching and learning experience are discussed. The possible problems encountered in teaching and learning robotics at a beginner level are discussed and the use of RoboAnalyzer to solve most of them in an innovative manner is explained. A comprehensive course on robot mechanics can be achieved by integrating educational aids in the curriculum. RoboAnalyzer can serve as an effective 3D model based robotics learning software by allowing virtual experimentation and analysis. Supplementing the course syllabus with RoboAnalyzer will help the students to apply and verify the theoretical knowledge on robot mechanics to practical problems. A sample list of experiments using RoboAnalyzer is also provided for the benefit of teachers of robot mechanics courses. RoboAnalyzer can be accessed from http://www.roboanalyzer.com and is freely available for educational use. It is getting evolved by incorporation of new modules and interfacing with other computational platforms.