In the monitoring working mode, the real-time system works as a client that is implemented within the Servo_Controller component。 It connects to the server that runs on Android device and sends the current robot positions in internal coordinates。 Positions are sent to the Android server at 15 ms time interval and it is sufficient because the frame rate on Android device is about 60 fps。 The 3D model simulation arises as the result of adjustment of those values at the virtual robot model。 In that way an approximate continuous virtual robot motions which simulates the motions of the real machine is obtained。 In case where the remote monitoring is performed through the end effector’s positions, the simulation is executed in similar manner。 Only difference is that obtained values for robot positions must be transformed into the external coordinates。 This is done by using forward kinematics equations for robot Lola 50 [6]。
4 USAGE AND RESULTS
The main page of Android application is shown in Fig。 3。 The application contains options for robot control (Start Robot, Stop Robot, Remote Robot Control and Manual Robot Control), option for defining and redefining new robot motion tasks (Tasks Programming) and option for monitoring of robot’s work remotely and wireless (Remote Robot Monitoring)。
By clicking on the option for remote (speed dial) robot control or option for manual mode control, application opens new screen content and the client connects to the server through a specified IP address。 Lola 50 [6] movement can be monitored using 3D virtual model or using the representation of motion path of its end effector in 3D space。 The execution of defined robot’s motion tasks can be achieved by clicking on the one of the defined motion commands within the application page for remote, “speed dial”, robot control shown in Fig。 4。 The new robot motion
Fig。 3。 Main page of Android application
tasks can be defined within the application page shown in Fig。 4。 There is possibility to define or redefine motion instructions with specified motion type (PTP – point to point, LIN - linear or CIR - circle) within the drop-down menu, and specified speed, acceleration and target positions in external coordinates (position and orientation)。 Only for CIR motion type the user must specify an auxiliary position。 Motion instructions are executed sequentially in the order in which they were listed。 After defining or redefining motion task, it can be associated with the desired button and name within the speed dial control interface。
The testing of remote robot control is performed through the combined motion task of industrial robot Lola 50。 Robot movement is generated by executing the run file within the real-time control system and the obtained motion path of its end effector in 3D space is monitored in right part of the GUI shown in Fig。 4。 Figure 6 presents graph which describes the change of angle values, for six robot axis (ang1-ang6), during the robot’s movement that is defined within the motion program shown in Fig。 5。 The angle values are measured in radians。
Fig。 4。 Remote robot control in “speed dial” mode with monitoring using robot’s end effector trajectory in 3D coordinate system
The content of an application page for robot control in manual operating mode with 3D virtual model of robot Lola 50 is given in Fig。 7。 The graphical user interface contains options for manual guiding for each axis of an industrial robot。 The industrial robot Lola 50 has 6 degree of freedom, which means that it contains the possibility of movement in 6 different axes。 The axes are marked with Axisi where i denotes the number of axis。 Each axis can be moved in a positive direction (+) and in a negative direction (-)。 The axes can be moved until they reach the limit positions。 Once the command is received from the client and motion information is processed, the real-time system returns notification if the motion can be executed properly or not, and if it can, the real-time system starts returning angles values for each robot axis。 In case of that there is a barrier