Vous êtes sur la page 1sur 8

Invention Journal of Research Technology in Engineering & Management (IJRTEM)

ISSN: 2455-3689
www.ijrtem.com Volume 1 Issue 4 ǁ June. 2016 ǁ PP 16-23

Contours Planning and Visual Servo Control of XXY Positioning System Using
NURBS Interpolation Approach
Syuan-Yi Chen1, Yu-Hsuan Lai2, Han-Ting Lu3
1,2,3
Department of Electrical Engineering, National Taiwan Normal University, Taiwan, R.O.C

ABSTRACT : This study aims to develop contours planning and visual servo control technologies for a XXY positioning stage for
tracking the two-dimensional contours precisely. First, the two-dimensional contours are planned by using the non-uniform rational
basis spline (NURBS) interpolation approach. Subsequently, the visual servo control mechanism, which involves five steps image
processing procedures, is further designed to perform the closed-loop motion control for high-precision positioning performance.
During the control process, the positioning error is monitored online. If the positioning error is larger than the pre-defined threshold,
a compensation control will be executed immediately to compensate the inaccurate motions. In addition, a friendly human-machine
interface (HMI), which can show the movement of the stage in real-time, is developed. Finally, the experimental results demonstrated
the favorable positioning performance of the XXY positioning system for tracking the two-dimensional contours.
Keywords: Image processing, NURBS, positioning control, XXY positioning stage.

1. Introduction
High-precision XXY positioning stage is competitive on the market due to its smaller dimensions, larger weight-carrying
capacity, and faster positioning speed comparing with the traditional XYθ stage [1]. Therefore, it has attracted increasing attentions
significantly for wide engineering, industrial, scientific and biomedical applications [2]. Because the positioning performance plays an
important role on the process of manufacturing, many advanced control technologies have been developed for the positioning and
auto-alignment of the XXY positioning stage [2]-[5]. On the other hand, because vision system is able to recognize the images just like
human’s eyes, it has been adopted popularly to improve the accuracy of the system and avoid the defect from manual operations
effectively [2], [5]. In this study, the trajectory planning and visual servo control technologies for the XXY positioning stage are
developed using NURBS interpolation approach [6]. The experimental results due to various two-dimensional contours show the stable
and high-precision positioning performance.

2. XXY Positioning System


The XXY positioning system is composed of a XXY positioning stage (AF-XXY-NR1-175-R28, Chiuan Yan Ltd.), a CMOS
camera (Lu375c, Lumenera), three drivers (EXD2020MB) and a personal computer (PC)-based control core as shown in Fig. 1. In the
system, the XXY positioning stage uses X1, X2 and Y axes step motors with coupling, ball screw, screw mount, crossed ball bearing, and
slide unit to carry out ±5mm available displacement and ±1.5 o available angle of the motion as shown in Fig. 2. When the motion of the
X1 and X2 axes motors are moved for the same displacements synchronously, the stage will be moved in X-direction. Moreover, when
only the motion of Y-axis motor is moved, the stage will be moved in Y-direction. Furthermore, if the motion of the X1 and X2 axes
motors are moved for the different displacements, the stage will be rotated in clockwise or counter-clockwise directions. Obviously,
XXY stage provides various motion modes to meet the requirements of the diverse industrial applications.
The PC includes one stepper motion control card (PCI-8144, Adlink) with 2.4MHz pulse output rate is used to realize the
control algorithm for controlling the three axes motors simultaneously. Thus, the stage can be controlled to track the reference contours
precisely. On the other hand, the image processing algorithm, reference contours planning, and visual servo mechanism are realized in
the PC via Visual Basic.NET language. Moreover, the adopted camera is with 3 million pixels and 2048*1536 resolution. Through the
Ethernet interface, the camera can feedback the practical stage position information to the PC in real-time. In addition, the HMI, on
which the users can easily design the path of the positioning stage, is also developed and will be introduced later.

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 16


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

Vision Servo System Drive and Control System

Ethernet
CMOS
Camera
Lu375C Step Motor Driver
EXD2020MB
Drive Signals
Y-axis

X2-axis
HMI and NURBS
Interpolation
X1-axis Software
PCI Bus

Control
AF-XXY-NR1-175-R28 Signals
XXY Positioning Stage

68-pin Cable
ACL-10569-2
Terminal Board 4-axis Motion Control
DIN-68S-01 Board PCI-8144

Fig. 1 Structure of XXY positioning system.

Work stage
Free-axis
X-direction
Y-direction
Y-axis
X2-axis
Y-axis motor
Base
X1-axis
X1-axis motor X2-axis motor

Fig. 2 XXY positioning stage.

3. Trajectory Planning Using NURBS Approach


The two-dimensional contours are produced using NURBS curve interpolator in this study. The NURBS interpolator can
create free-form curves easily by manipulating the values of control points, weight and knot vectors. The mathematical formulation of
NURBS curve is described as follows [6]:
n

 i ,k ( p) iVi n
C ( p)  i 0
n
  Ri ,k ( p)Vi (1)
  i,k ( p)Wi
i 0
i 0

and
i ,k ( p) i
Ri ,k ( p)  n


(2)
i ,k ( p) i
i 0
where Vi is the control points; ψi is the corresponding weights of Vi ; n+1 is the number of control points; k is the order of the NURBS
curve; Zi,k(p) is the kth order B-spline basis function; Ri,k(p) is the rational basis function. The recursive formulae for computing
Zi,k(p) can be found as

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 17


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

1 for pi  p  pi 1 
 i ,1 ( p)    (3)
0 otherwise 
p  pi p p
 i ,k ( p )  i ,k 1 ( p)  i k i 1,k 1 ( p) (4)
pi k 1  pi pi k  pi1
where P=[pi ,…, pi+k] represents the knot vector.
Theoretically, by manipulating the values of control points, weights, and knots, the NURBS can produce arbitrary reference
contour. With the NURBS, the users could set up the curved path instead of the straight line. Traditionally, the curved path is made up
of the short straight line. It is hard to generate the command about the curved path. In addition, there is the unavoidable error between
the real path and the path we set. Another problem of the traditional way is that the platform need to stop or accelerate in the process of
move. Therefore, the platform didn’t move smoothly. In this study, we can improve the disadvantage of traditional way. The use of the
NURBS could let the path of the platform more flexible and changeable.
By using the NURBS interpolation approach, the new curve is totally different from the original curve as shown in Fig. 3(a)
when the control point V2 is moved to the new V2. In addition, the curve becomes sharper if the weight of the corresponding control
point is increased as shown in Fig. 3(b). Obviously, the shape of the contours can be determined via the designs of the control points and
their weights.

(a) Change the location of the control point (b) Regulate the weight of control point
Fig. 3 Illustrations of NURBS interpolation approach.

4. Image processing Algorithm


The object of the image processing is to obtain the position and angle information of the stage from the image captured by the
camera. After calculating the difference between the practical position and demand contour, the control core will calculate the
appropriate control signals for controlling the stage position accurately. The flowchart of the image processing, which include five steps
majorly, is shown in Fig.4.
In the image processing algorithm, the binarization is firstly used to transform the grayscale picture into black and white
colors. If the pixel’s grayscale is higher than the predefined threshold, it is transferred into black color. Otherwise, it is transferred into
white color. Subsequently, the dilation and erosion methods of morphological operation are adopted to filter the structure of the image.
Moreover, to find the position of the stage accurately, a Canny edge detection method is utilized to find the edge, which means the most
amount of change about the image’s grayscale , of the image. The Canny edge detection performs convolutioon for the four directions
of the binary image. They are horizontal, vertical and two diagonals directions. Thus, the gradient with direction informations of the
image’s grayscal can be obtained. After convolution, two thresholds are set to contruct a band pass filter for filtering the image.
Afterward, a binary image with clear edge can be obtained. Furthermore, the best circle method, which was developed in [1], is further
used to find accurate position of the stage. Finally, labeling procedure marks the pixels which connect with others the same label.
Because disconnected pixels are labelled with different labels, one can get clear edge of cross target. Thereafter, the target’s angle can
be calculated via the rectangle surround method.
Image Canny Best
Morphological
Image Binarization Binarization Edge Circle Labeling
Image Operations
Detection Method

Fig. 4 Image processing flowchart.

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 18


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

5. Visual Servo Control Method


First, the user can design the NURBS curve through the HMI. Subsequently, the software developed in the PC will transfer the
NURBS contour to the three axes motion commands and then control the XXY positioning stage to track the contour via the drivers.
During the control process, the camera will monitor the stage position meanwhile the control core will regulate the speed and position
control signals immediately for compensating the positioning error. All the process can be monitored online via the HMI. The main
procedures are listed as follows:
(1) Get coordinate and angle information of the target on the stage: The CMOS camera is used to capture the alignment target’s image
firstly. Then, the image processing algorithm is utilized to derive the target’s coordinate (x1, y1) and angle. These data are defined
as the practical stage position.
(2) Initial position alignment: Calculate the displacement and angle differences between practical stage position and predefined initial
position. Control the stage to the predefined initial position by the developed reset function.
(3) NURBS trajectory planning: Design the NURBS trajectory by adjusting the control points and corresponding weights on the HMI.
Then use its preview function to preview the contour.
(4) Motion control: Transferring the contour information to three axis motion commands. While the stage is moving, feedback the
stage position by the visual servo system and calculate the positioning errors, which are horizontal error ex, vertical error ey and
average error ea, by the PC as shown in Eq. (5).

ea  ex  ey
2 2
(5)
(5) Positioning error compensation: If the average error ea is higher than the predefined threshold, the control core will regulate the
speed and position control signals immediately for positioning error reduction.
By the above steps, the high-precision positioning performance can be achieved.

6. Experimental Results
6.1 Software development
In this study, Visual Basic.NET with the Emgu CV library was utilized to develop the software of the XXY positioning system. The
control object of this study is to realize the high-precision contour tracking by using the NURBS interpolation approach. There’s two
ways for changing the contour demand which are change the location of control point and regulate the weight of each control point as
shown in Fig.3. The users could set up the contour via the HMI directly. In addition, the users could monitor the motion of the stage
online.

6.2 The developed HMI


The developed HMI of this study is shown in Fig.5. The function of each block is introduced in the following:
(1) Inputs for the control points’ coordinates and weights: The user can type the coordinates and corresponding weights of the seven
control points arbitrarily. For example, the coordinates and corresponding weights of the control points for a bow contour are
shown in Eq. (8) and Eq. (9), respectively.
(2) Preset contours: The HMI provides five preset contours for the users which are arrow, bow, heart, circle, and tick. The user can
choose one of them for further modification and preview them below. As shown in Fig. 5, a bow contour is chosen and previewed.
(3) Preview of the contour: After clicking the NURBS button, the user can preview the designed contour on this window.
(4) X and Y axes commands of contour: After clicking the NURBS button, this window will show the required displacement
commands of the X and Y axes, respectively. Thereafter, these control commands will be sent for the drivers via the motion control
board.
(5) Function buttons: Reset: Reset the position and angle of the stage; NURBS: Plan the contour using NURBS interpolation approach
and determine the X and Y axes commands of the contour; Draw: Detect the position of the stage by using the camera and draw it
on the HMI; Work: The stage starts to track the contour; Stop: The stage stops moving immediately; Clear: Clean the existent
contour and the user can plan a new contour instead.
(6) Real-time monitoring window: The motion of the stage will be shown on this window so that the user can observe it at the same
time.
(7) Center of positioning stage: The CMOS camera feedback the position of stage. The system deal with it to determine the coordinate
of center.
(8) The status of stage and positioning error: This window shows the status of the stage such as stop and working. Moreover, this
window also shows the positioning errors which include the instantaneous positioning error and average positioning error.
(9) X and Y axes positions: Through the camera, the system turns the coordinate of center into X-axis position and Y-axis position.
(10) Performance measure: The system calculates the positioning error via the Eq. (5) and shows the performance measure on this
window.

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 19


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

(6)
(1) (2)
V ψ
V ψ
V ψ
V ψ
V ψ
V ψ
V ψ

(4) (8) (7)


Y
(9) (3)

(10)
(5)

Fig. 5 The developed HMI.

6.3 Trajectory planning


In this study, three two-dimensional reference contours were demonstrated for the visual servo control based XXY positioning
system. The order of the NURBS curve, knot vector, control points and weights of the bow contour are given as follows:
k 6 (6)
P  [ p0 , p1 , p2 , p3 , p4 , p5 , p6 , p7 , p8 , p9 ]  [0, 0, 0, 0.25, 0.5, 0.5, 0.75, 1, 1, 1] (7)
V  [V0 , V1 , V2 , V3 , V4 , V5 , V6 ]  [(0,0), (2,2), (2,2), (0,0), (2,2), (2,2), (0,0)] (8)
ψ  [ 0 , 1 , 2 , 3,  4 , 5 , 6 ]  [1, 2.5, 2.5,1, 2.5, 2.5,1] (9)

The order of the NURBS curve, the knot vector, control points and weights of the heart contour are given as follows:
k 6 (10)
P  [ p0 , p1 , p2 , p3 , p4 , p5 , p6 , p7 , p8 , p9 ]  [0, 0, 0, 0.25, 0.5, 0.5, 0.75, 1, 1, 1] (11)
V  [V0 , V1 , V2 , V3 , V4 , V5 , V6 ]  [(0,0), (3,2), (2,5), (0,3.6), (2,5), (3,2), (0,0)] (12)
ψ  [ 0 , 1 , 2 , 3,  4 , 5 , 6 ]  [1,1,1,1,1,1,1] (13)

The order of the NURBS curve, the knot vector, control points and weights of the circle contour are given as follows:
k 6 (14)
P  [ p0 , p1 , p2 , p3 , p4 , p5 , p6 , p7 , p8 , p9 ]  [0, 0, 0, 0.25, 0.5, 0.5, 0.75, 1, 1, 1] (15)
V  [V0 , V1 , V2 , V3 , V4 , V5 , V6 ]  [(0,0), (0,2), (4,2), (4,0), (4,2), (0,2), (0,0)] (16)
ψ  [ 0 , 1 , 2 , 3,  4 , 5 , 6 ]  [1, 0.5, 0.5,1, 0.5, 0.5,1] (17)

By using the parameters as shown in Eq. (6)-(9), Eq. (10)-(13), and Eq. (14)-(17), the designed bow, heart, and circle contours were
shown in Fig. 6, Fig. 7, and Fig. 8, respectively.

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 20


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

(a)

(b) (C)
Fig. 6 Designed bow contour. (a) X-axis command, (b) Y-axis command, (c) Two-dimentional bow
contour.

(a)

(b) (C)
Fig. 7 Designed heart contour. (a) X-axis command, (b) Y-axis command, (c) Two-dimentional heart
contour.

(a)

(b) (C)
Fig. 8 Designed circle contour. (a) X-axis command, (b) Y-axis command, (c) Two-dimentional circle
contour.

6.4 Experimental result


The practical experimental setup of the XXY positioning system is shown in Fig. 9.The positioning responses due to bow, heart,
and circle contours of the XXY positioning system are shown in Fig. 10, Fig. 11, and Fig. 12, respectively. From the experimental
results, the favorable accuracy and validity of visual servo control for the XXY positioning system can be clearly observed. Moreover,
the performance measures of the proposed visual servo control for tracking the bow, heart, and circle contours are shown in Table 1. The
average positioning errors can be controlled within 90µm. Thus, the validities and performances of the proposed trajectory planning and
visual servo control for the XXY positioning system using NURBS interpolation approach can be verified obviously.

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 21


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

Camera

Step Motor HMI and NURBS


Driver Interpolation Software

Terminal Board

XXY Positioning Stage

Fig. 9 Practical experimental setup of the XXY positioning system.

(a) (b)
Fig. 10 Positioning performance due to bow contour. (a) Positioning response, (b) Positioning error.

(a) (b)
Fig. 11 Positioning performance due to heart contour. (a) Positioning response, (b) Positioning error.

(a) (b)
Fig. 12 Positioning performance due to circle contour. (a) Positioning response, (b) Positioning error.

Table 1 Performance measures.


Control Points Complete Time (sec) Average Error (µm)
Bow Shape 334 111.23 89.06
Heart Shape 334 110.76 65.66
Round Shape 334 109.72 59.55

7. Conclusions
In this study, the contours planning and visual servo control technologies for a XXY positioning stage are developed
successfully. According to the developed HMI, the users can control the stage for tracking the two-dimensional contours very easily and

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 22


Contours Planning and Visual Servo Control of XXY Positioning System Using NURBS Interpolation Approach

arbitrarily. With the CMOS camera, the proposed compensation control mechanism performs precise positioning performances. The
experimental results due to various contours planning and tracking demonstrated the favorable performances for the XXY positioning
system.

REFERENCES
[1] C.Y. Nian, S.F. Chuang, Y.S. Tarng. (2006) A new algorithm for a three-axis auto-alignment system using vision inspection,
Journal of Materials Processing Technology, 171. pp. 319–329.
[2] H.W. Lee, C.H. Liu. (2013) Vision servo motion control and error analysis of a coplanar XXY stage for image alignment
motion, Mathematical Problems in Engineering, vol. 2013, article ID 592312, 12 pages.
[3] A. Yu, I.A. Bonev, P. Zsombor-Murray. (2008) Geometric approach to the accuracy analysis of a class of 3-DOF planar
parallel robots, Mechanism and Machine Theory, 43. pp. 364–375.
[4] A. Joubair, M. Slamani, I.A. Bonev. (2012) A novel XY-Theta precision table and a geometric procedure for its kinematic
calibration, Robotics and Computer-Integrated Manufacturing, 28, pp. 57-65.
[5] H.M. Chen, T.E. Lee, J.P. Su, C.L. Lin. (2014) Realization of an image-based XXY positioning platform control, 2014
International Symposium on Computer, Consumer and Control .
[6] F.J. Lin, S.Y. Chen, P.H. Chou, P.H. Shieh. (2009) Interval type-2 fuzzy neural network control for X-Y-Theta motion
control stage using linear ultrasonic motors, Neurocomputing, 72, pp. 1138-1151.

| Volume 1| Issue 4 | www.ijrtem.com | June 2016| 23

Vous aimerez peut-être aussi