Trajectory Following Controller with Vibrational Motion Developed Based on ORiN Middleware Interface

Industrial robots with an open architecture have been applied to several tasks such as machining, sanding, polishing and so on. The open architecture allows system engineers to realize desirable teachingless operation. However, porting of an application software to other makers’ industrial robots is not easy even though having an open architecture, because the specifications of interface between a PC and robots differ respectively. In this paper, trajectory following control with vibrational motion is developed on ORiN (Open Robot/Resource interface for the Network) middleware interface for a small educational robot. The design with ORiN interface and its experimental results are shown.


Introduction
Activities for the standardization in industrial automation are reported in order to enhance reusability and compatibility of elaborate robotic applications (1)(2)(3) .Up to now, industrial robots with an open architecture have been applied to several high-skilled tasks such as machining, sanding, polishing and so on.The open architecture allows system engineers to realize desirable teachingless operation.However, transplantation, i.e., porting of an application software to other makers' industrial robots is not easy even though having an open architecture, because the specifications of interface between a PC and robots are different respectively.That is the reason why the standardization of industrial robots' interfaces is now being expected and desired from users.Recently, ORiN (Open Robot/Resource interface for the Network) is gathering attention as a promising middleware for the standardization of robotic interfaces (4)(5)(6) .
In this paper, trajectory following control using vibrational motion is developed on ORiN interface for a small−size educational robot VE026A with six−DOFs.The ORiN middleware is available on the robot.Trajectory following control of an end−effector attached to the flange of the robot is a basic but important strategy for a robotic application without using any robot languages.Here, a vibrational motion control is further considered to efficiently remove undesirable cusp marks which come out in machining process using a ball−end mill.The design with ORiN middleware interface and its experimental results are shown.

Robotic Applications Developed in the Past
In this section, our past developed robotic systems using open architecture controllers are introduced (7) .The open architecture concept allows us to efficiently develop a robotic application software without using a conventional device called a teaching pendant and a robot language.∆ to the robotic servo system every sampling period of 4 ms.The matrix is written by is the joint angle vector [rad].In order to be able to set the sampling period shorter than 4 ms, Windows multimedia timer was used.The minimum resolution is 1 ms.In this system, the orientation of a ball−end abrasive tool, i.e., normalized direction vector, was always fixed to [0 0 −1] T as shown in Fig. 1 to efficiently abrade the contour.The radius of the ball−end tip was 5 mm.Cutter location data called CL data forming a zigzag path or a spiral one were generated by CAD/CAM Unigraphics, and which were used for desired trajectory of the tool to perform teachingless operation.
Figure 2 shows the robot sander for wooden workpieces with curved surface (8) .The system was developed based on FS20 with six−DOFs provided by KHI, LTD. in 2000, whose controller has almost the same software specification as JS10's one.In this system, the orientation of an air−driven sanding tool was controlled to be normal to surface by referring the direction components in CL data.In addition, the orientation could be manually controlled via a force feedback joystick.Also, Fig. 3 shows another mold polishing robot for PET bottle blow molds developed based on Motoman UP6 provided by Yaskawa Electric Corp. in 2002.Fortunately, the robotic controller had a similar concept as FS20's one, so that the porting of the robotic application was not difficult and complicated.The tip of the robot arm could be controlled by giving T ∆ to the technically opened servo system every sampling period of 10 ms.Further, Fig. 4 shows an industrial robot PA10 with seven−DOFs provided by Mitsubishi Heavy Industries, Ltd.When controlling this robot, the position and orientation matrix of the tool tip had to be given to the servo system, which was written by the following recursive equation.Next, a machining robot for foamed polystyrene materials is introduced (10) .Figure 5 shows the machining robot being developed based on an industrial robot RV1A which is provided by Mitsubishi Electric Corporation.RV1A is usually used in engineering education fields.The machining robot will be used for engraving foamed polystyrene materials.When the position and orientation of the arm tip are controlled, a command vector is transmitted to the robotic servo controller through Ethernet with UDP protocol.
[mm] is the position vector in robot absolute coordinate system.Also, [rad] is the orientation vector of the arm tip.Note that the arm tip's orientation is controlled with roll angle These robotic applications using articulated industrial robots have innovated a common important function for realizing the desired teachingless operation.The function is the position/orientation controller based on CL data called CAD/CAM−based trajectory following controller (8) .The trajectory following controller can be realized by simultaneously moving position and orientation of arm tip.As an instance, Fig. 6 shows the block diagram of the trajectory following controller incorporated in the robot sander shown in Fig. 2.
are velocities to control position/orientation, contact force and pick feed, respectively.
) (k are desired position vector, orientation vector and force norm, respectively.
) (k x and ) (k f are position/orientation vector and force vector measured by respective sensors.One of current problems is that transplantation of application software to other makers' industrial robots is not easy even though having an open architecture, because the software specifications of interfaces between a PC and robots are not identical.That is the reason why standardization of industrial robots' interfaces is now being expected and desired from users.

About ORiN
ORiN means Open Robot/Resource interface for the Network and provides a standard network interface for factory automations, robots and other devices (11) .After the Japan Robot Association established the ORiN in 2002, the ORiN Forum has produced unified methods for standardization.Recently, ISO20242-Part4 including applications based on ORiN was officially approved as an international standard.For example, a robotic application software developed based on ORiN is able to not only obtain sensor information easily but also transmit control input to the servo system, without considering the differences among robotic companies about the hardware type, the communication protocol between the PC and the robot, or other hardware specifications.
It is expected that if a robotic application, e.g., trajectory following controller, is developed using API functions provided by ORiN, the application can be straightforwardly ported on other industrial robots with ORiN middleware interface.Figure 7 illustrates the advantage of using ORiN, in which promising standardization can be seen.

Trajectory Following Control with Vibrational Motion
Trajectory following controller with vibrational motion is proposed to efficiently remove undesirable cusp marks which appear in machining process using a ball−end mill.Figure 8 illustrates the image of the cusp marks.Figure 9 shows the vibrational motion vectors v v v v v yielding in the orthogonal directions along original CL data.
) (i p is the position vector in CL data,   Here, how to generate are known in advance, can be determined by simultaneously solving Eqs. (3) and (4).Further by using a sign function , the vibrational motion vector is finally generated as where As can be seen, the length of the vibration vector depends on v K and r N .
is a velocity vector to yield small and ununiform vibrational motion, and which is given to a ball−end mill's tip alternately changing the direction with a given frequency.

p(i−1)
x d (k−1) x d (k+5) x d (k+7) x d (k+9) x d (k+10) x d (k+11) x d (k+12) x d (k+14) x d (k+15) x d (k+18) x d (k+20) Figure 10 shows machining results of a formed polystyrene material, in which zigzag paths without and with vibrational motion were given to the trajectory following controller in the machining robot.It is observed that undesirable cusp marks could be efficiently suppressed by using the proposed vibrational motion control.
In the next section, the trajectory following controller with vibrational motion is tried to be ported to an articulated robot with ORiN middleware interface.

Without vibrational motion
With vibrational motion Fig. 10.Machining results of foamed polystyrene material without and with the proposed vibrational motion control.

Transplantation of Trajectory Following Controller to VE026A with ORiN Interface
The robotic applications introduced up to here are developed based on each robot maker's interface, so that the transplantation among different makers' robots is complicated and time−consuming.Recently, ORiN is gathering attention as a promising middleware for standardization of robotic interface.
In this section, a transplantation, i.e. porting, of the CAD/CAM−based trajectory following controller with vibrational motion is tried to evaluate ORiN2 SDK. Figure 11 shows the small−sized educational articulated robot VE026A incorporated with ORiN2 SDK provided by DENSO WAVE Incorporated (12,13) .Standard programming interface called CAO (Controller Access Object) works as common interface and functions between the application and the robot.Among methods provided by CAO interface, CaoGetPose( ) was used to get the current position and orientation of the arm tip.Also, CaoMove( ) was used in order to give the desired position and orientation to the VE026A every sampling period.In other words, it seems that we have only to use CaoGetPose( ) and CaoMove( ) in order to transplant the trajectory following controller with vibrational motion into the VE026A.After the implementation on Windows Visual C++, it was confirmed that the tip of the robot arm could be successfully controlled with a command vector similar to the case of the machining robot based on RV1A.It should be noted that the orientation was dealt with [deg], i.e., not radian but degree in case of ORiN2 SDK. Figure 12 shows examples of the control results without and with vibrational motion control.It was further confirmed that the ORiN2 SDK enabled the application software, i.e., trajectory following controller with vibrational motion, to be easily transplanted into the VE026A.

Conclusions
Recently, ORiN is gathering attention as a promising middleware for the standardization of robotic interface.In this paper, CAD/CAM−based trajectory following controller using vibrational motion was introduced for a machining robot.Then, the controller was successfully ported into an educational small−sized robot VE026A by using ORiN middleware interface in a short period of time.Higher reusability and portability due to using ORiN2 SDK could be confirmed through the design and experiments.The proposed CAD/CAM−based trajectory following controller with vibrational motion will be able to be straightforwardly transplanted to other makers' robots incorporated with the ORiN middleware interface.

Fig. 1 .
Fig. 1.Polishing robot for PET bottle blow molds developed based on JS10 provided by Kawasaki Heavy Industries, LTD. in 1997.

Figure 1
Figure 1 shows the polishing robot for PET bottle blow molds developed based on JS10 with six-DOFs provided by

Fig. 2 .
Fig. 2. Robot sander for wooden workpieces developed based on FS20 provided by Kawasaki Heavy Industries, LTD. in 2000.

Fig. 3 .
Fig. 3. Mold polishing robot for PET bottle blow molds developed based on Motoman UP6 provided by Yaskawa Electric Corp. in 2002.

Fig. 4 .
Fig. 4. Open architectural industrial robot PA10 provided by Mitsubishi Heavy Industries, Ltd. for painting of relief wall in 2005.

Fig. 5 .
Fig. 5. Machining robot developed based on an industrial robot RV1A provided by Mitsubishi Electric Corp. in 2014.
matrix to set an active direction of position feedback control for accurate pick feed.

Fig. 6 .
Fig. 6.Block diagram of CAD/CAM−based trajectory following controller and force controller used in the robot sander shown in Fig. 2.

Fig. 7 .
Fig. 7. Advantage of portability of robotic application through ORiN middleware interface.

Fig. 8 .
Fig. 8. Image of cusp marks caused by the trajectory of a ball−end mill in removal machining process.

Fig. 12 .
Fig. 12. Example of control results without and with vibrational motion along a spiral path.