Paper received: 27.1.2009 Paper accepted: 27.1.2011 Position Control with Parameter Adaptation for a Nano-Robotic Cell Gregor Škorc1* - Jure Čas2 - Simon Brezovnik3 - Riko Šafarič2 !Resistec UPR d.o.o. & Co. k.d., Slovenia 2University of Maribor, Faculty of Electrical Engineering and Computer Science, Slovenia 3University of Maribor, Faculty of Mechanical Engineering, Slovenia This paper describes the development of a nano-assembly system, built up using linear piezo motors. The so-called nano-robotic cell is based on an X/Y manipulator, supported by three serving tables, movable within a Z axis, and a position controlled using two different types of a bang-bang control methods. The presented application has been developed as a stand-alone application with the LabVIEW Real Time software package, a PCI-7356 servo controller card and a TMCM-090 stepper driver. Our experiments focused on two major problems present during the construction of nano-robotic assembly cells. The first one is a nonlinear characteristic of a linear piezo motor, which makes the use of classical control methods very limited. The second problem appears when a nano-robotic cell needs a bigger working space and at the same time, production demands that the manipulator moves more often over longer distances. In order to position in nano-resolution, the motors have to run at higher resolutions with smaller speeds. Therefore, long distance moves slow down the entire production process. Experiments on this system have shown that positioning within the nano-scale is possible, using a simple control method such as the bang-bang control method. Although positioning using this method is possible, certain limitations and weaknesses exists, making this simple method useless in nano-scale if higher speeds and longer move distances are needed. Certain changes in the basic control algorithm are proposed, which will ensure that the bangbang control method becomes useful within higher speeds and over longer distances. All recommendations are supported and backed- up by practical experimental results. ©2011 Journal of Mechanical Engineering. All rights reserved. Keywords: nano-robot cell, nano-positioning, bang-bang controller, MEMS assembly, LabVIEW real time 0 INTRODUCTION Engineers are constantly confronted with greater demands for achieving a higher level of miniaturization regarding their products. Today's production systems have already reached micro-scale regarding production and a lot of work has already been done within this scale. The authors have presented a micro-movement principle in [1] and [2], which is similar to ours in nano-scale. Intelligent control techniques [3] have already been implemented on micro-manipulators [4]. It is clear that the world expects science, productions systems and products to take one step further and achieve nano-scale solutions. It is well known that for the production of products with nano-scale measurements, the profession will have to develop completely new tools and devices. Authors have presented a novel kinematic scheme that leads to a compact, integrated multi-axis, translational flexure structure for producing a pure spatial (X/Y/Z) movement in [5]. In our case linear piezo motors, mounted within each axis, to ensure an X/Y/Z spatial movement have been used. It is assumed that the nano-scale production system will overtake the nature of today's production systems, which are often arranged into chains of separate working cells, each one with its own production purpose (assembling, gluing, welding, etc.). This paper introduces a practical development of one working cell, from the whole chain of a nano-production system, with priority in assembling with nano-scale resolution. Authors have presented a robotic solution for the use in medicine in [6], built on the modules presented in [7], where the same actuators have been used, as in the present case. The presented system is controlled using the bang-bang control *Corr. Author's Address: Resistec UPR d.o.o.& Co. k.d., Krška cesta 8, SI-8311 Kostanjevica na Krki, Slovenia, gregor.skorc@resistec.si method, with the possibility of positioning with 100 ^m accuracy. A solution for using the same control method (with some extensions) for positioning using nanometer accuracy is presented here. A working cell is actuated with five linear motors, which are assembled so that two of them act as X/Y manipulator and the other three as serving tables within the Z axis. A special gripper, which is used for gripping the objects, is placed at the top of the Y axis. The basic model of a nano-robotic cell is shown in Fig. 1 [8]. Fig. 1. A model of the nano-robotic cell Our experiments focused on two major problems present during the construction of nano-robotic assembly cells. The first one is a nonlinear characteristic of a linear piezo motor. The main reason for this nonlinearity is the nature of the motor, which is based on piezo actuators. The use of classical control methods is very limited, due to the wide hystereses which are well known regarding piezo actuators. The second problem appears when a nano-robotic cell has to have a bigger working space and at the same time, production demands that the manipulator moves more often over longer distances. If positioning in nano-resolution, the motors have to run at higher resolutions with smaller speeds. Therefore, long distance moves are slowing down the whole production process. A solution based on two separate controllers is presented in [9]. The results from our experiments show that it is possible to solve this problem with just one controller. Our solution is presented in continuation. Section 1 describes the system equipment which was used for the development and implementation of this nano-robotic controller. A detailed description, with the characteristics of the nano-robotic cell and all of the components included in it, are given in 2. Section 3 describes the tested control methods and results of the experiments. Section 4 shows the practical application for the developed assembly cell. Section 5 provides the conclusions from the work. 1 SYSTEM COMPONENTS The control system can be divided into five main elements, as shown in Fig. 2. The development machine marked as number 1, is a common notebook, based on Windows XP platform, supported by Lab View 8.5 and C++ software packages. It is used for developing control algorithms and user interfaces. This machine can also be used for the execution of the control algorithms, but the limited frequencies of the program routines scan cycles, which cannot achieve higher frequencies than 1 KHz must be taken into account. Control of real time and time critical applications at a frequency of 1 KHz is impossible. A better solution for real time control can be achieved if a separate computer is added into this system, which would only be used for the execution of control algorithms. Such a computer is presented in Fig. 2 and marked as no. 2. A RealTime Desktop Target based on a Labview Real Time (Fig. 2, no. 5), which is totally independent operating system, has been built. The execution times of the control algorithms are much shorter, and execution frequencies of up to 1 MHz can be achieved. A desktop PC with a built-in processor with two cores was used, which allowed an execution of separate control tasks between two independent processor cores. Our Real Time target is supported by a PCI motion controller card 7356 from NI [10]. This card is used as an interface between the control algorithm and the power drivers of the motors. According to signals from the position feedback inputs and control algorithm, it produces a separate reference signal for each axis of the controlled system. This card has been configured in such a way that it acts Fig. 2. System components as a stepper driver, therefore, all axis outputs act as a STEP/DIRECTON outputs. Position feedback is assured with encoders, through encoder inputs. An alternative configuration of this card, as a servo driver, is also possible. The reference signal mentioned above is then guided to the power driver of our system. The power driver marked as no. 3 and presented in Fig. 2, is assembled from five TMCM-090 power stepper units from Trinamic [11]. These power units are developed especially for the linear PiezoLEGS motors [12] assembled in our nano-robotic cell. They convert the STEP/DIRECTION reference signal at TTL level, into an appropriate waveform signal with an amplitude of 50 V. TMCM-090 allows us to set different waveform settings and different step resolutions. The changed waveform settings and step resolutions, result changed force of the motor and changed length of the separate motor step. From here on power and feedback cords are connected directly to the nano-robotic cell. In addition to the already mentioned basic components, some other peripheral and power components, which are assembled in the nano-robotic controller were used. Fig. 3 shows all the components used in the controller. Fig. 3. Nano-robotic controller The controller is assembled on two platforms, constructed from acrylic glass. The placements of the components allow easy access in case of the potential need for changes due to experiments. On the upper platform there are five TMCM-090 cards, which are attached onto five BB035 basic boards from Trinamic [13]. They are used for an easier connection of power and signal cords. The basic boards are supplied with a DC voltage of 50 V from the switching power supply, mounted on the upper left corner of the same platform. At the upper right-hand corner of controller there is a cord connection box where all connections for power and signal lines were established. The platform underneath consists of a switching card, temperature measuring card, and gripper power module. The switching card is made from TLP521-4 optocouplers. Half of the card's capacity is used for automated selection of the waveform and resolution settings. These optocouplers are directly connected to BB035 selection jumpers. The reference signal from the encoders (also called Z channel or Index signal) is passed through the other half of the optocouplers. The encoder reference is directly connected through optocouplers to HOME input of PCI-7356 motion controller. These inputs are only used during the referencing phase of the robotic cell when the power supply is switched-on. After referencing has been completed, the home signals are no longer needed and they are switched off. A temperature measuring card was created with PT1000, and a source of constant current. We assume that the temperature influences positioning accuracy within nano-scale. This temperature card will give us another feedback signal, which will be included in our control algorithm of the near future. A gripper power module is used to supply the piezo actuator of the gripper, with voltage of ±100 V 2 DESCRIPTION OF THE NANO-ROBOTIC CELL The nano-robotic cell has five axes. Each axis is driven by a linear piezo motor produced by the PiezoMotor Upsala AB company. The so-called PiezoLEGS motor is based on four piezoceramic drive legs. Each drive leg consists of two piezo actuators, therefore, it can be considered as a piezoceramic bimorph. Using special electronic drive, each actuator can be activated separately and thus a rhombic working space of the tip of the drive leg is achieved. Fig. 4 shows four different states of leg movement. Each state in Fig. 4 is described using letters from a to d. The state marked with a represents the lowest point of drive leg movement if none of the piezo actuators is activated. State b shows the situation of a leg when voltage is applied to the right piezo actuator. Since the left piezo actuator is not supplied with voltage, the entire piezo leg bends to the left side. An extreme left position of the rhomb is achieved. Bending in the opposite direction is achieved applying voltage to the left piezo actuator, while at the same time, the right actuator is not supplied. This situation is represented by letter d. The situation marked with the letter c shows the upper extreme of the working space, which is achieved when both piezo actuators are supplied. s b c d c 3 Fig. 4. Four different states of leg movement All four piezo legs are built in motor housing in such way that the working spaces of each leg corresponds with the drive rod of motor. The drive electronics activates two of four piezo legs at the same time with the same voltage waveform. Drive rod movement is achieved when one pair of the legs is bending while the second one is extended (pushes the drive rod). The bending of piezo legs in the X direction can be represented by Eq. (1), where x(t) represents the achieved bending point in the X direction, k1 a constant of variable parameters (influence of friction, load, drive conditions, etc.), and uj(t) with u2(t) voltages applied to each piezoelectric of one leg. x(t) = k [uj(t) - U2(t)] . (1) Using almost the same Eq. (2) the extensions and contractions in the Z direction, where z(t) represents the achieved extension or contraction in the Z direction, and k2 a constant of variable parameters, can be described. Voltages u1(t) and u2(t) have the same meaning as in Eq. (1). z(t) = *2 [«l(0 + u2(t)] . (2) If the cycles of bending and extending the piezo legs are continuously repeated, a linear movement is achieved in the form of little steps. According to the technical specification of the motor, movement in steps length from 2 nm to 8 ^m can be achieved, with speeds up to 12.5 mm/s (with a factory delivered demo drive electronic). Standard motors are delivered with a drive rod of length 50 mm. A stroke up to 35 mm can be achieved with this length of rod [14]. Position feedbacks of the axes are achieved using linear encoders from NANOS instruments, which work on an electro-magnetic principle. Each encoder set consists of a magnetic scale and sensor electronics. The magnetic scale is standard delivered over a length of 50 mm, and has a division of 500 ^m. Each increment of scale is interpolated with 13 Bits to achieve a maximal resolution of encoder system. The chosen system guaranties a resolution of 61 nm, with precision of ± 0.15% [15]. Fig. 5. Mechanism of the nano-robotic cell Fig. 5 shows the basic mechanical assembly of the nano-robotic cell. All five motors together with linear encoders are attached to the metal base. Two motors at the top of the base form an X/Y manipulator. Both motors of the manipulator are mounted right-angled to each other using elastic joint. This elastic joint is used to reduce those forces, which are the result of big parallel tolerance between motors, the drive rod, and a linear rail system. The Y motor of the manipulator is mounted on a special linear rail system and is therefore, movable. The other four motors are fixed mounted (one in the X direction and three in the Z direction). A special serving table is attached to each motor of the Z axis. A gripping device is needed to form a positioning application. In this case a gripper developed by Fraunhofer-Institute of Reliability and Microintegration from Germany was used. This microgripper was fabricated by means of a UV-lithographic process and chemical wet etching technology from microstructurable photosensitive glass [16]. With little changes in the basic form of the gripper, gripper movement of approximately ±10 ^m was achieved. The neutral opening of the gripper tip is 200 ^m. By activating the piezo actuator in both directions (piezo actuator is used to move gripper tip), it is possible to grip objects of sizes from 190 to 210 ^m. Fig. 6 shows the original basic form of the used gripper. Fig. 6. Original form of the used gripper 3 RESULTS OF THE EXPERIMENTS First in the series of our experiments was conducted with the bang-bang control technique. This technique is probably one of the first and simplest control techniques. The easiest way to demonstrate its functionality is a practical example of heating water. Electrical cookers use bimetal thermostats for switching a heater ON and OFF. Water temperature is constantly measured and compared with a set temperature. The heater is switched ON if the actual temperature has a lower value than set temperature and OFF if it is greater. Water temperature oscillates around set temperature with a frequency dependent of the hysteresis of bimetal (big hysteresis causes small switching frequency and vice versa). This principle for position control, where motors were switched ON/OFF according to the result of the comparison between the actual and target position (positional error) was borrowed. In this case, the hysteresis was set to zero to achieve positioning as accurately as possible. The goal of the first experiment was to discover any limitations of the classical bangbang control method. Different step-lengths and different motor speeds were set manually. In the second part of this section the results concerning the extended bang-bang control method, when the motor step lengths and motor speeds were set automatically are presented. Each experiment is presented on the basis of position overshot. Position error was measured with the linear encoder system, which guaranties a resolution of 61 nm, with precision of ±0.15% [15]. The supplier had individually calibrated each encoder system to reach our needs. Functionality of the measuring system was tested and compared with the microscopic vision system in [17]. The results were recorded for one axis of the nano-robotic cell, where a longer distance move was repeated 10 times within each set point. Figs.7 and 8 present the dependences between the average overshot (calculated from 10 repetitions of experiment with same parameters) and motor speed. Motor step length in the first experiment was set at ~250 nm and in the second at ~3.9 nm. The target points for both experiments were set at 10000 increments away from the reference point, which means a move distance of 0.61 mm. The motor speed was changed from 1 to 3000 steps/s over 300 steps/s. The hysteresis of the bang-bang control method was set to 0. This meant that by reaching the target point, maximal acceleration of the motor in the opposite direction was set. Overshot is defined as the difference between the target point and the point where the top of the axis completely stops. The results of the experiment with a 250 nm step length show that positioning with an accuracy of 100 ^m is not possible if the motor speed is higher than approximately 1400 steps/s. Although a better measuring system than in [7] was used, system dynamics did not allow us to achieve better resolutions over the whole speed range. Positioning within nanometer scale was very speed limited with this set-up. Motor speeds of up to 21 steps/s can be used for nano-positioning. The results of the experiments with a reduced step length of 3.9 nm show that a reduction in step length causes a reduction in the overshot. When the motor was set up to a maximal speed of 3000 steps/s, the size of the average overshoot was lower than 40 ^m. 41-1-1-1-1-1- 3 5 - / 3 / - "o / / ^ 1 5 - S 0 5 °0 500 1 000 1 500 2000 2500 3000 Speed [step/s] Fig. 7. The results of the experiment with 250 nm step length Fig. 8. Results of experiment with 3.9 nm step length Table 1. Numerical values of average overshot Speed [steps/s] 1 300 600 900 1200 1500 1800 2100 2400 2700 3000 Overshot by 250 nm step [nm] 244 11407 24156 45323 73139 105835 141093 181841 242658 304512 358558 Overshot by 3.9 nm step [nm] 61 1037 3538 4453 8174 9333 15860 19459 27206 31781 38430 The reduction of step length caused a drastic reduction in motor speed. In this case, positioning in the nanometer scale was possible with motor speeds of up to 289 steps/s. More hours are needed to achieve an experimentally given target point with nano-scale resolution. The presented results show that positioning with this system and classical bang-bang control method is possible although it is considerably speed-limited. These speed limitations render the presented method not useful for productions processes, where long distance moves are needed. The conclusions from the first two experiments can help solve the problem of speed limitations within the presented method. Motor speeds and motor step lengths have been set up as fixed due to the whole positioning process. Better results can be achieved if this method is extended in such way that different step lengths and motor speeds are set automatically according to the travelling distance of the axis. The basic idea is to make the classical bang-bang control method adaptive in this way so that long distance moves are done using higher speeds and longer step lengths, while shorter distance moves are done using lower speeds and shorter step lengths. In order to improve the accuracy of longer distance moves, automatic control of motor speed and step length switches to lower speeds and shorter step lengths, as soon as the driven axis comes within the surroundings of the target point. In this way, the time needed to reach the target point is reduced, using the nano-scale resolution, by long distance moves. During the first two experiments a common bang-bang control method with one hysteresis was used. In this case, the basic hysteresis was extended to five different levels, where each level forms a new hysteresis. Hystereses 1 to 4 are used for speed reduction depending on the distance to the target point. The step length is set fixed to 250 nm due to all four hysteresis. As soon as hysteresis 5 is reached, the step length is reduced to 3.9 nm and the speed increased. Hysteresis limits are determined using practical experiments on all five axes of the nano-robotic cell. Table 2 shows the limits, which guarantee stable positioning. Table 2. Parameters of adaptive bang-bang regulation Hysteresis Upper lim. Lower lim. Speed Step number increments increments [steps/s] [nm] 1 œ 6000 3000 250 2 5999 1000 1000 250 3 999 300 500 250 4 299 10 100 250 5 10 0 1000 3.9 Fig. 9 shows the recommended control principle and the extended method. Fig. 10 shows a step response for adaptive bang-bang control. Travelling distance was set to 10000 increments, as in the first two examples. Speed and steep length was switched automatically according to Table 2. Three screenshots at different time moments were established. Each screenshot presents the dependence of position and time from different viewing aspects. The black line on graph A (Fig. 10) shows the step response of our system depending on the reference represented by red line. Graph B (Fig. 10) shows the difference between the actual and target positions from the time when the first overshoot appears. The graph marked with letter C (Fig. 10) shows oscillation around the target point, which is typical for the bang-bang control method (can also be seen on the second half of graph B - Fig. 10). The use of this method reduces the dependence on overshot regarding travel speed and move distance. Maximum averages (calculated from 10 repetitions of experiment) overshot when travelling a longer distance was in this case never bigger than 1586 nm. In the first experiment, a maximal average overshot of 358558 nm and in the second 38430 nm. The size of the maximal average oscillation around the target point was Fig. 9. Extended bang-bang control method Fig. 10: Step response of the adaptive bang-bang control method; a) step response of the adaptive bang-bang control method, b) Difference between the actual and target positions, c) Oscillation around the target point constant within one encoder increment or 61 nm. In the first two experiments this oscillation was always as big as the overshot. The time needed to accomplish longer distance moves is therefore, reduced drastically. 4 PRACTICAL USE OF THE NANO-ROBOTIC CELL Temporarily the nano-robotic cell is still in the development phase. Final application for this project can be seen in MEMS assembly. Fig. 11: Practical application with nano-robotic A level that can be used for the positioning of micro-parts has been reached. An anti-dust chamber was assembled for these purposes. Complete application presented in Figs. 11 and 12 shows user interface developed for a simpler use of the application. The developed software supports the implementation of different firewire cameras, which can be added to anti-dust chamber. In this case, a special camera attachment system must be mounted onto the nano-robotic cell. In the upper right-hand corner of Fig. 12, a camera screenshot can be seen due to the process of positioning. For test purposes, a camera system was mounted so that it covered the middle serving table. Fig. 10: User interface of the nano-robotic cell 5 CONCLUSION In this paper the development of the nano-robotic cell which will in the near future be used for MEMS assembly, has been described. The entire application was built within LabVIEW Real Time and is therefore, very flexible. The developed platform has been created for the implementation of different control methods. We have presented the implementation of a classical bang-bang control method and on the basis of the experimental results, proposed certain changes to the basic method. These proposed changes reduce the limitations of the classical bang-bang control method to a minimum, which makes the extended bang-bang control method useful within MEMS production processes. We have proved that a simple bang-bang control method with certain extensions can be used for positioning within nano-scale. Although good results have already been achieved, our future work will focus on further investigations into control methods for nano-positioning. Further implementations and experiments regarding different control methods for our system will provide us with an answer as to which method is more appropriate for MEMS assembly processes. 6 ACKNOWLEDGEMET Operation part financed by the European Union, European Social Fund. 7 REFERENCES [1] Juhas, L., Vujanic, A., Adamovic, N., Nagy, L., Borovac, B. (2000). Development of platform for micro-positioning actuated by piezo-legs. ICRA IEEE International Conference on Robotics and Automation, San Francisco, vol. 4, p. 3647-3653. [2] Fahlbusch, S., Fatikow S. (2001). Implementation of self-sensing SPM cantilevers for nano-force measurement in microrobotics. Ultramicroscopy, vol. 86, no. 1, p. 181-190. [3] Čas, J., Klobučar, R., Šafarič, R. (2008). Neural network based control of micromanipulator. 10th International workshop on advanced motion control, Trento, AMC, IEEE proceedings, vol. 2, p. 444-449. [4] Čas, J., Škorc, G., Šafarič, R., Milanovič, M. (2008). Planar manipulator for micro-sized object. International Electrotechnical and Computer Science Conference, ERK proceedings, Portorož, , vol. B, p. 207-210. [5] Qing, Y., Jingyan, D., Ferreira, P.M. (2008). A novel parallel-kinematics mechanisms for integrated, multi-axis nanopositioning: Part 1, Kinematics and design for fabrication. Precision Engineering, vol. 32, no. 1, p. 7-19. [6] Rea, M., McRobbie, D., Elhawary, H., Zion, T., Lamperth, M., Young, I. (2008). System for 3-D real-time tracking of MRI-compatible devices by image processing. IEEE/ASME Transactions on Mechatronics, vol. 13, no. 3, p. 379-382. [7] Elhawary, H., Zivanovic, A., Rea, M., Davies, B.L., Besant, C., Young, I., Lamperth, M.U. (2008). A modular approach to MRI-compatible robotics. Engineering in Medicine and Biology Magazine, IEEE, vol. 27, no. 3, p. 35-41. [8] Škorc, G., Čas, J., Brezovnik, S., Šafarič, R. (2008). Simulation of nano robotic cell with support for 6D - HID. International Electrotechnical and Computer Science Conference, ERK Proceedings, Portorož, vol. A, p. 245-248. [9] Perng, M.H., Wua, S.H. (2006). A fast control law for nano-positioning. International Journal of Machine Tools and Manufacture, vol. 46, no. 14, p. 1753-1763. [10] National Instruments, Motion controller 7356 datasheet, from http://www.ni.com/pdf/ products/us/735x.pdf accessed on 2009-0105. [11] Trinamic, TMCM 090 manual, from http:// www.trinamic.com/tmc/media/Downloads/ modules/TMCM090/TMCM-090_manual. pdf, accessed on 2009-01-05 [12] PiezoMotor Upsala AB, PiezoLEGS, from http://www.piezomotor. se/pages/ PLtechnology.html, accessed on 2009-01-05. [13] Trinamic, BB-035 from http://www.trinamic. com/tmc/ media/Downloads/modules/ Baseboards/BB-035_manual.pdf accessed on 2009-01-05. [14] Piezomotor Upsala AB: PiezoLEGS data and user instructions, (2003). 3rd ed., p. 3-15, retrieved on 05.01.2009 from nanos instruments web page: http://www.nanos-instruments.de/. [15] Keoschkerjan R., Wurmus, H. (2002). A novel microgripper with parallel movement of gripping arms. Actuator, 8th International Conference on New Actuators, Bremen, p. 321-324. [16] Čas, J., Škorc, G., Šafarič R. (2009). Micro positioning of planar mechanism - position measuring with submicron resolution, International Electrotechnical and Computer Science Conference, ERK 2009 proceedings, Portorož, vol. B, p. 217-220.