1. Trang chủ
  2. » Thể loại khác

A Windows PC based robot controller - An open architecture

6 263 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề A Windows PC based robot controller - an open architecture
Tác giả Mohamed Bouri, Reymond Clavel
Trường học École Polytechnique Fédérale de Lausanne (EPFL)
Chuyên ngành Robotics
Thể loại Conference paper
Thành phố Lausanne
Định dạng
Số trang 6
Dung lượng 651,48 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

A Windows PC based robot controller An open architecture M.. **Moveit automation, Avenue du château, 31, CH-1008, Prilly Mohamed.Bouri@epfl.ch, Reymond.Clavel@epfl.ch KEYWORDS PC based

Trang 1

A Windows PC based robot controller

An open architecture

M Bouri*, **, R Clavel*

*Laboratoire des Systèmes Robotiques, Ecole Polytechnique Fédérale de Lausanne, CH-1015, Lausanne

**Moveit automation, Avenue du château, 31, CH-1008, Prilly Mohamed.Bouri@epfl.ch, Reymond.Clavel@epfl.ch

KEYWORDS

PC based control, robot control, open architecture, flexible control, real time, Field bus control, fire wire, IEEE

1394, Profibus control, asynchronous communication

ABSTRACT

Robot motion controllers consist of a very important component in a robotic infrastructure The flexibility

is more and more needed to allow fastness in development and adaptation from one robot to another

The laboratory of robotic systems of the Ecole Polytechnique Fédérale de Lausanne (LSRO-EPFL) has initiated the work presented in this paper to propose a PC based architecture that is both flexible and open

This motion controller is industrialized and proposed now as a commercial product (called FlexCom®) by

a Swiss company: Moveit Automation

This paper will present this architecture, how it can be open for a use with any robot structure even in industry or for laboratories We will stress on its safety and flexibility to add more components

The flexibility of this control has been proven with the different applications that run based on the same control kernel With easiness and fastness different field buses have been implemented (Firewire, profibus and now USB)

1 INTRODUCTION

Different industrial controllers exist in the industry Some of

them are proposed by the huge specification “OPEN” But

what is open? In most cases, the providers of such controllers

give the possibility to open the graphical user interface (GUI)

and hence the controller is open because you are not blocked

with the GUI provided by this provider You can have your

proper interface that is oriented to your proper application

Others like Staübli [1] have done more effort and propose a

control abstraction layer that works on the Staübli controllers

and obviously on Staübli robots This controller gives the

possibility to change the control parameters This can be very

helpful in the case you change the operation condition of the

robot: No need to contact Staübli and loss time and money

This characteristic is interesting However, there is no way to

change the control algorithm No way to change the

geometric or the dynamic models

Actually the principal reason for that is due to the fact the

most of these providers propose the controllers for their own

robot structures

At the laboratory of robotic systems (LSRO-EPFL) lots of

robots are designed and proposed each year ([2][3][4][5])

This needs a really open controller to be adapted to each

robot with as easiness as possible

In the first part of this paper we will present the principal

needs for an open control architecture to control a robot In

the second step, the developed architecture is presented within a chosen OS and a development environment Finally the security and some case studies are presented The easiness of the development and customization is pointed out

Figure 1 Robot controller components

2 Needs for an open controller

A robot is a poly-articulated structure with motors and sensors A robot works in a certain environment and has its proper workspace Each robot is defined by dynamics and geometry These characteristics are in the center of interests to synthesize a robot controller The objective

Trang 2

is to synthesize a robot controller that can be adapted without

difficulty to the robot and its application (figure 1 in previous

page) The adaptation must be as simple as possible related to

the degree of customization (Only GUI or sensor parameters,

motor parameters, loads, trajectory dynamics …)

By analysing this basic robot controller architecture (Figure

1), one can observe that we can have three levels of control

customisation to have it open:

• Application level In this level the operator may

customize the GUI and hence have its own application

oriented GUI

• Parameter level Access to this level of

customization is a minimal need for modifying each of

the parameters of kinematics, control, loads, sensors,…

This can allow operator or developer to modify the

controller without a need to lots of investment of time

and money This level is available on the most open

controllers (at least through a configuration file)

• Operation level The operation level allows the

customization of the principal operation of the control

We mean,

o Kinematics,

o Robot dynamics,

o Control algorithm

o Trajectory generation

Accessing to these operations may be very interesting

and means the possibility of modifying the entire

controller In this case, what it is remaining? Only the

architecture, the protocol and the inter operation

communication mechanisms

The degree of openness of the robot motion controller

defines its flexibility to be adapted to one robot or another

3 FlexCom®: an open Flexible control

To choose a motion controller, three type of hardware

development environment are offered Let us classify them as

follows:

1 Standalone hardware that is principally DSP or

Microcontroller based hardware,

2 Integrating bus based solution with PCI, Compact PCI

or VME busses

Actually each type of solution is offered with a kind of

software development tools and environment One can

choose the proprietary software development available from

the hardware provider or a standard operating system (OS)

available from well known OS companies like VxWorks

from Windriver, QNX, Lynx from LynuxWorks, CE from

Microsoft, and others

Now that you have the hardware and the software, there are

two types of development methodologies:

1 Cross development, in which the programmer develops

the code on a host and build it for a target than download it to

the target for execution (Figure 3)

2 On target development, where the host and the target

are identical We gain in the development However, we must

care because the target must support to run the development

environment

Figure 2 Classical cross development platform

The presented motion controller FlexCom® has been developed to respond to the needs of an open architecture with a minimum time development The FLEXible COMmand FlexCom® for robot motion control has the aim to be adapted to any type of robots: serial (cartesian or not), or parallel with as much easiness as possible

To design this open controller, the LSRO has chosen to work on Microsoft Windows because of the availability

of standard development softwares (programming softwares, CAD/CAM, CFAO …) This also allows working with standard axis and input/output boards available for PCI or Compact PCI architectures

Figure 3 Microsoft windows robot control integration

To guarantee the real time capabilities, especially for the control loop, a real time preemptive extension has been added to Microsoft Windows (figure 3) This real time extension works either with Microsoft NT/2000/ XP or XPe

FlexCom® (figure 4) is based on:

• two layers: a real time layer(RTL threads) and a non real time layer (win32 threads),

• a multitasked architecture, with inter communicating prioritized tasks,

• real time board drivers,

• libraries,

• dynamic link library to communicate between the two environement (RTL and win32)

Figure 4, Microsoft windows robot control integration

Trang 3

FlexCom® has been developed using a standard C/C++

code under Visual C++ Its composition by static libraries

and real time processes allows modifying with no difficulties

a lot of parts of the motion controller

The GUI communicates with the controller kernel via a real

time channel using a motion server implemented as a DLL

(Dynamically linked library) The use of real time

mechanisms is a unique manner to communicate between

real time and non real time applications This DLL allows

customizing the application layer and building its own

interface to configure and control the robot FlexCom® is

provided with two types of GUI :

• FlexWare®, is a robot programming interface and

uses its proper language for motion planning and

input/output steering,

• FlexCncSoft® that uses a GCode machine tool

programming

Both the interfaces use the same DLL and the same

following configuration and programming tools:

• XConfig to configure the robot and control

parameters as the number of axis, sensor

parameters…

• ScopiX® a graphical debugger to visualize the

motion control performances

Figure 5, FlexCom® components The controller kernel is principally composed by:

1 a real time motion server (Supervisor) that receives

orders via the real time channel through the api (DLL),

2 the interpolator (trajectory generation) that

generates the interpolated and synchronized movements,

3 the controller that integrates control configuration

and the control loop,

4 IO manipulation library,

FlexCom® is provided with a Motion Control Development

Kit (Motion CDK) to allow a complete customization of the

robot control software This motion CDK is presented as a

Visual C++ workspace (Figure 6)

Using this motion CDK one can also customize the Dynamic

model and the control algorithm The developer has only to

enter the code of the control strategy routine and recompile

the project to generate the executable files

Figure 6, Motion CDK workspace, Geometric model customization through a library modification

Figure 7, control algorithm customization

Each user defined controller (Figure 7) accepts up to 5 parameters that can be exploited to define a wide range

of controllers These parameters are set up via the DLL

or the configuration file This possibility is very suitable

to develop new robot control algorithms and create

customized working modes By the use of the user defined controller the developer may short circuit the

trajectory generator and be free to work as he wants (i.e using his own rules and generating his own profiles)

4 FlexCom®: security aspect

FlexCom controller is used with a lot of type of robot structures even in pick and place operation, fibre alignment processes (figure 8) and for medical rehabilitation robots [6] (figure 9)

Figure 8, sigma6, 6dof robot

Trang 4

Figure 9, rehabilitation robot “MotionMaker®” with two of 3

degree of freedom serial robots

To ensure the maximum safety of the mechanical system and

its environment, different tests are carried out upon the

variables of the system Actually, the controller tests

• the belonging of the position and velocity variables

(measured and desired) to their respective workspaces,

• the validity of control errors with respect to maximum

authorized errors

In the case of the rehabilitation robot redundant position

sensors are used to check the validity of the measurements

and the consistency of the sensors or their connected cables

5 Use cases:

FlexCom is a real flexible controller It can be easily adapted

to different robot structures and different input output layers

(IO) At the LSRO, different IO communications has been

tested: Profibus, FireWire and now USB

5.1 Profibus with a 5 degree of freedom structure

Figure 10 shows a 5 d.o.f parallel structure developed at the

LSRO (Laboratory of Robotic Systems) and called Alpha5

[3] [4] This totally parallel kinematics has 5 rotational

motors and 5 operational outputs (x, y, z and 2 orientations

+/- 90 degrees around the horizontal plan) The servodrives

of the motors are connected using profibus to the PC based

controller Each servo drive controller embeds an internal

velocity control loop (Figure 11)

Figure 10, Alpha5, 5 dof parallel

robot

based topology The control is based upon two cascaded loops: the velocity control loop and the position control loop (figure 12) The input is the position profile which provides the velocity feed-forward to send to the drives which are working in velocity control-mode The velocity-control loop is closed in the drive itself It is

working with 500µs cycle time This whole velocity

control loop is transparent for the user The only visible parts are the control parameters that can be changed via the GUI A position loop with a P/ PI motion controller

is cascaded via the profibus

Figure 12, cascaded velocity, position control loop The advantage provided by FlexCom to support such kind of bus based solution is shown in the figure 13

Figure 13, Flexible IO layer customization

Trang 5

Actually, the IO Layer is totally customizable through

function prototypes that are called by the control loop

The possibility to modify the control loop and the Input

Output Layer make FlexCom very suitable for Robotic and

control research laboratories

5.2 FireWire (IEEE 1394) integration

In collaboration with a french company “Centralp

Automatismes”, the Firewire bus (IEEE 1394) has been

integrated in the same way to FlexCom (figure 14)

Figure 14, Flexible IO layer customization

In this application, the remote 1394 modules only provides

basic input output functions Quadrature counter functions to

read the incremental encoders and Analog outputs to steer the

amplifiers Both, the position loop and security functions are

on the Microsoft Windows based PC [7]

5.3 Stick slip piezzo robot control

The stick slip piezzo actuators [8] [9] need a special

generator to be controlled in position The LSRO has

developed an RS232 serial controlled interface to steer this

type of actuators [5] Different robotic structures have been

built using these actuators for micro positioning applications

with up to 50 nm resolution (figure 15)

Figure 15, Stick slip XY table The figure below shows a 5dof structure with one serial XY

table and a 3 dof tilt plate structure assuring (one translation

in the z axis and 2 orientations) FlexCom was easily adapted

to control such structures by customizing both the

kinematics’ models and the input output layer The positions

are measured through a standard quadrature counter board

and the control is sent through a real time implementation of

the serial RS232 communication

stick and slip hybrid robot

Figure 17, PosiFlex Motion controller

for upto 6 stick slip axis This controller has been easily adapted to different other applications As another example, the Figure 18 shows

an Hita STT [10][11] parallel kinematics This parallel kinematics is a 4 degree of freedom structure with a 5th serial rotational axis developed for tool machining operations This application has been tested with the GCode interpreter FlexCNCSoft and is now in the phase

of calibration

Figure 18, 5 dof Hita parallel STT (EPFL Prototype)

6 Conclusion

This paper has presented a robot motion controller FlexCom® that is now commercialized by a swiss company Moveit Automation ( www.moveit-automation.com) To guarantee the determinism of the control loop and time critical tasks, FlexCom runs on a Windows based PC with a commercial real time extension FlexCom is different from other solutions because it is based on Microsoft Windows and because it offers a commercial open solution for fast robot motion control development FlexCom is open without being open source

Trang 6

The paper has shown that FlexCom is accessible for

modification in different ways First, it allows modifying the

application dependant GUI and different control and

trajectory parameters from a configuration tool or via the

DLL FlexCom® also provides expert type modification as

the geometrical model customization, user defined control

loop algorithms, robot dynamic model and the input output

layer

The different tests that have been carried out with different

robots and different hardware show that the presented

solution can be a suitable controller for laboratories and R&D

robot investigations

Acknowledgements

The author would like to acknowledge all the persons that

help to the elaboration of FlexCom

Special thanks to Dr L Rey designer of the parallel Occam

based robot controller at the LSRO from which FlexCom has

been inspired [12]

Bibliography:

[1] J M Bonnet, Staübli, Real time controller

abstraction layer, ISR 2004, Paris

[2] L E Rey, R Clavel, 1998 A general overview

history of parallel robots International

Parallelkinematik – Kolloquium (Zurich, June)

[3] M Thurneysen, Développement de structures

parallèles 4 et 5 ddl CTI 5146 intermediate

report, 1998, EPFL Lausanne, Laboratoire de

systèmes robotiques

[4] P Pham, M Bouri, M Thurneysen, R Clavel,

Profibus PC based motion control with

application to a new 5 axes parallel kinematics,

ISR 2004, Paris

[6] C Schmitt, P Métrailler, A Al-Khodairy, R

Brodard, J Fournier, M Bouri, R Clavel, A

Study of a Knee Extension Controlled by a

Closed Loop Functional Electrical Stimulation,

9th Annual Conference of the International FES

Society, 2004 Bournemouth, UK

[7] M Bouri, R Clavel, M Y Zerrouki, W Maeder,

Towards a new Delta robot: an inverted Delta,

ISR 2004, Paris

[8] J M Breguet R Clavel, Stick and Slip

Actuators: design,control, performances and

applications, International Symposium on

Micromechatronics and Human Science, Japan,

pp 89-95, November 25-28, 1998, Nagoya

[9] S Mazerolle, R Rabe, S Fahlbusch, J Michler,

J.-M Breguet, High Precision Robotics System

for Scanning Electron Microscopes,

Microfactory, 4th International Workshop on Microfactories, October 15-17, 2004, Shanghai,

China

[10] M Thurneysen and others, A new parallel kinematics for high-speed machine tools Hita STT 3rd Chemnitzer Parallelkinematik Seminar, pages 553-562, Chemnitz, 23-25 Avril

2002

[11] M Thurneysen, Méthode systématique de conception de cinématiques parallèles, Thesis sciences EPFL, no 3009 (2004), Faculté STI,

Section de microtechnique

[12] L E Rey, Environnement pour la conception de commandes de robots Phd thesis EPFL, no

1663 (1997), Département de microtechnique

Ngày đăng: 16/02/2014, 09:13

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w