Pomiary Automatyka Robotyka 2/2020

Page 1

PAR P O M I A RY • A U T O M AT Y K A • R O B O T Y K A

2/2020 ISSN 1427-9126 Indeks 339512

Cena 25,00 zł w tym 8% VAT

Technical Sciences Quarterly | Measurements Automation Robotics

W numerze:

3 5

Od Redakcji Krzysztof Malinowski

Control System Design: Think Broad and Be Inquisitive

11

17

23 31 39

O znaczeniu odwrotnej notacji polskiej dla rozwoju technik informatycznych

The Research on Exoskeletons with Focus on the Locomotion Support

! "

Design of Agricultural Type Coconut Climbing and Plucking Robot

" # $ %

& " ' " !( ! )"

! ! " # "

* + Informacje dla Autorów – 91 | 95 | ! " 96 | # $ %&%& 98


Rada Naukowa Rok 24 (2020) Nr 2(236) ISSN 1427-9126, Indeks 339512

Redaktor naczelny 8 #(

& :"

;( % :"

;(

< :" 8 #( =% % > 8 #( " # " " ;( % :" > % ?" " %

8 #( " $ " > 8 #(

& :" > '

Korekta ;( " ="

$ % ! @ "

Druk &

A% $ " ! " "%

8( ( ( B CDD (

Wydawca

&' ( ) H < % %

* % FL &' * Y "

# Z [ %= \ &' + , G " @ % G # * % ] )" &' -. /' 0 & B $ % % Y "

# H " [ %= \ 1 2. . Y "

# < [B % \ &' $ 3 E < % F " % > * "

G " H * L *GH* " &' 4 )' 3 ! . B

Y " % [Y \ &' 2 ' 3 8 " Y% * :" ( ( ( * % &' (' + ! * % % G " # * [* \ &' ( Y "

[ %= \ &' ) B H % E 8 " / ' Y "

# * " [ %= \ &' ( 5 & ) * % < " %

E < % F " % > * "

G " H J* L *GH* H ( " ODO DOPQTU "

Kontakt

&' * )' 5 . . G " # % % " " [! "= \ &' $ ! ! ^ * % %_ B Y "

[Y \

! %= P % % *

H ! ' H ( " ODO DOPQTU " ( OO TVQ DW QU X8 (8 (8 (8

&' - 6 G ; & ) ;" @

& ) "

Pomiary Automatyka Robotyka = " % " 8 " P % % ' %P WggV ( * WT " h = " h% ( H

% 8 =)% % J8 % 8 % 8 % P' % % " "

= ' (

&' 6 $ ! ` Y "

[ < \

P % %

*

H ! ' = " "

J' % <H&$@ c % GBj@m b*@!BG Y [G p

ODWT+ Vq Ug\ J ; J' % ' ; % 8 " % % " 8 " % % H!GHB$H(

* )% =)% " h %= b = B " h8

' 8 " "

8 ' J P % % *

H ! ' ( "=) 8 ) [ # % = )\ = " "= 8 8 (

* $ H$< > G " # H88 " " $ %

< 'c

[B % \

* %= B 8 ' %= *

H

! ' " ' % OD 8 ( [ % " 8 " % % %

L # %= h % qW 8% ODWg ( 8 ( OVgDO\(

* 8 " "% 8

P % (

&' ;. H%

# % % " [ %= \

*

H ! ' > A "

J %

gDV?*PjYB?ODWg L " B %

;" 8 % % E 8 " % =)%) h(

&' ( $" Y "

[ \

&' 7

$ G ; * %= " * % b8 "

&' - 8 9 % %

$ % % * % ] )"

&' 3 & + ! 9 G " G # H ! ' * %

% " &' 7 ! 7 ! G$ Y " ' [H " \ &' - +' / ^ * % %_ B Y "

[Y \


*

H ! ' G B WQOVPgWOU !( OQ B O?ODOD

3

Od Redakcji

5

Krzysztof Malinowski Control System Design: Think Broad and Be Inquisitive * = " " " + " ' ') u %

11

17

23

31

O znaczeniu odwrotnej notacji polskiej dla rozwoju technik informatycznych b G 8 % # ! " * " B # j 8 # 8

% % The Research on Exoskeletons with Focus on the Locomotion Support < " "8 % % % %

! " Design of Agricultural Type Coconut Climbing and Plucking Robot * = "8 =)% " h 8 % ' % % L

" %

" # $ % Zastosowanie metody Monte Carlo do parametrycznej identyfikacji H88 % # # * % G # % #

H%% " v x %

j

39

& " ' " !( ! )" " ! # " b8 "

45

G * " " % $ " * B c v x %

G % $ ' v % # j H" $ 8

51

&' % % " H = < : Energy Saving LED and CFL Lamps – Rated vs. True Power and Current Consumption @ " % h 8

@j G v > % " % 8 'L

8 )

59

63

* " The Use of IR Soldering Stations in the Process of Disassembling Circuits in BGA Packaging & " " " %= % % G! 8 % " ; L

' % < H j " ' % * * ! zrobotyzowanych $ Y" # p !

j " # ! ' % "

1


*G $!@] G

69

O

= " #$%# Wprowadzenie teoretyczne G 8 % # % # G " * " # {

* " #

@ % %

88

# cp? p $ % G %

77

% j = < = & &'( " # G " ! ' Y" v H88 %

91

Informacje dla Autorรณw

95

Awans naukowy Dynamika i sterowanie wybranymi procesami biochemicznymi > '( ;( * 8

96

"

! %= )* + + % , -

98

" & * /0/0

P

O

M

I

A

R

Y

โ ข

A

U

T

O

M

A

T

Y

K

A

โ ข

R

O

B

O

T

Y

K

A

NR 2/ 20 20


bj !@jH G

Drodzy Czytelnicy, " " " h " 8

8 =

" h % % ( H " "

"8 " bpGjPWg >

% 8 " " &

' " ( ( % E %

' 8 % " " "8 %

" " " ( " h%

% 8 ; 8 %

= " ' ) ") ;

"

) ( j "L'

:% )% " h 8 % >

" h

% h

% " 8 %

% "

( 8 8 % " 8 " " % L L

L % 8 % = " ' ( &

% ; %

"8 % % h" " h " ;' % (

H % " ' 8 ) (

* % % ) ' ;)% ' ( " h E

% % % L % ( B 'h h E E

> ;

* :" = %

(

B 8 % =) % " %

mGG " G % = ODOD(

& " %

= %= ( *

' E " 8 % " # %=

ODOD (((

%

> % < % = F " % > * " G "

H * L *GH* " > )% 8 "

= "

numeru.

Redaktor naczelny kwartalnika Pomiary Automatyka Robotyka 8 #( '( ;(

& :"

3


4

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 5–10, DOI: 10.14313/PAR_236/5

- . / 0 4 ' ' 4 6 8 Krzysztof Malinowski ; # 0 . % < # = ' 6 # 0 . % > ?@A?B% !!E++@ ;

Abstract: In this paper two examples, of a different nature, are presented to demonstrate, basing upon the author’s experience from the past, that the control engineer facing a design problem must think in broad terms, be careful when design supporting tools are used and do not neglect theory related to the considered design problem. 3 V control system, optimization

1. Introduction This paper has been written basing upon the author’s experience from the remote past. About forty years ago, just after obtaining the DSc degree (habilitation) from the Warsaw University of Technology, I have become involved, as a senior visiting fellow of SERC (Science Engineering Research Council) at UMIST, a leading institute of technology in England, in a number of research projects. The main involvement was in special projects concerned with parallel and/or decentralized/hierarchical simulation of coolant systems of pressurized water nuclear reactors and with optimization of the complex systems. Apart of those main research directions I have also become involved, as a consultant, in design of two regulatory control systems. It never has occurred to me, until now, that my contribution to solving these two design problems was really worth to write about. It just happened a few weeks ago that I have been talking about these problems with my former PhD student, Cezary Zieliński, now a senior Professor at the Warsaw University of Technology and my successor as the head of the Control Systems Division at the Faculty of Electronics and Information Technology of WUT. He had found the story interesting and of long lasting value and then has encouraged me to write about it. So be it; I hope that the reader will enjoy reading this short text. The main purpose of this paper is to illustrate, through the two following examples, that a design engineer should always be inquisitive, think in broad terms and both know and be ready to use the theory related to the design problem under consideration – no matter what supporting software she or he has at the disposal.

) " V " # $ % & ' ) ' () !* (!(! % ' ' (( !+ (!(!

!

The first design problem was related to computation of a state feedback stabilizing controller for large – for that time – linear system with sixteen state variables, by solving well defined linear-quadratic optimization problem. Actually, the final objective was to design an optimal control feedback using the state feedback controller in which the state estimates from the optimal observer (Bucy-Kalman Filter) were to be plugged into the state feedback control law. Yet it happened, somewhat surprisingly, that it was the design of the state feedback matrix that for a considerable time became a major problem. In this case good grasp of theory proved to offer a solution, to find deficiency of a specialized routine from then current version of the NAG (Numerical Algorithms Group ) library of numerical routines – which library, first released in 1971, was ten years later considered to be the top numerical library. The second example presents a real life regulatory control design problem that, surprisingly enough, for a considerable time denied all efforts spent on finding a satisfactory controller for the considered important MIMO plant. The solution, almost trivial after being found and explained, has lied beyond the regulatory controller design itself; it required structural changes as far as the set of the controlled variables was concerned. In this case a broader view of the problem, above the controller design itself, proved to be essential. Cited references to the text below are few; the examples considered do not seem to require more.

X' * & # ! ! & !

Y . & Y! YZ #

The objective of the case study design, as considered in this section, was to find satisfactory stabilizing controller for a linear system, x (t ) = Ax (t ) + Bu(t )

(1)

with x(t) ∈ R16, u(t) ∈ Rm and given time-invariant matrices A and B of dimension, respectively, 16 Ă— 16 and 16 Ă— m.

5


Control System Design: Think Broad and Be Inquisitive The actual value of m, where dim(m) ≤ dim(x), is not relevant for further considerations. The task was to compute the state-feedback controller u(t) = –Fx(t)

Feedback law defined in eqn.(5), with F = F, F given by eq. (6) with P being the positive-definite solution of eq. (7), provides for asymptotic stability of the closed-loop system x (t ) = (A − BF )x (t )

(2)

with poles of system (8) placed in the left hand (negative real parts) sub-plane of the complex numbers. The pole locations depend in a transparent way on the design parameters, i.e. on the elements of, in most cases diagonal, weight matrices Q and R.

with time-invariant gain feedback matrix, such that the closed-loop system x (t ) = (A − BF )x (t )

(3)

was asymptotically stable, with a reasonable placement of the closed-loop poles. The computation of the gain matrix F was approached by solving the time-invariant infinite-horizon linear-quadratic optimal control problem (for convenience marked as the LQIH Problem), i.e. by minimizing the criterion lim

t1

t1 →+∞ 0

⎡x T (t )Qx (t ) + u T (t )Ru(t )⎤dt ⎣ ⎦

In the case under consideration the matrix equation (7) with dim(x(t) = 16) defined a set of 256 nonlinear equations. Due to matrices Q, R and P being symmetric the matrix on the left hand side of eq. (7) was also symmetric and so the number of independent nonlinear equations to be solved in order to compute P was equal to 136 (120 off-diagonal entries plus 16 entries on the diagonal). The remaining equations could be used, and actually were used, to check whether the computed matrix P did satisfy all of them. For computing a solution of this set of 136 nonlinear equations (which forty years ago represented quite large set of nonlinear equations to be dealt with) the appropriate NAG library routine was used. The routine returned matrix P as a solution of the matrix Riccati equation (7). This matrix has been then used for computing, according to eqn. (6), the feedback gain matrix F = R −1B TP and for setting up the controller

(4)

where matrices, in this case design parameters, Q and R satisfied the conditions: Q = QT > 0, R = RT > 0, i.e. both Q and R were symmetric positive-definite matrices. It should be observed that it would have been sufficient to assume that Q = QT ≥ 0 (i.e. Q nonnegative-definite) with Q = DTQ1D, Q1 = Q1T , Q1 > 0 and with system (1) being observable (or just reconstructible) through the time-invariant “output” equation z(t) = Dx(t). Such generalization, however, is not needed in most real-life cases, in which Q as the design matrix parameter is defined as positive definite and, usually, just as a diagonal matrix with positive entries on the diagonal. Similarly, R is usually defined as a diagonal matrix with positive elements on the diagonal. So it has been in the case considered. When, instead of x(t), the only information available on-line is given by observing the measurement vector y(t), where y(t) = Cx(t), providing for observability of the state, then the estimate xˆ(t ) may be plugged into the control law (2) instead of the actual state value x(t). In fact, in case of white-noise type disturbances added to the right hand side of equation (1) and to the above observation equation y(t) = Cx(t), the steady-state Kalman-Bucy Filter, as an optimal observer, allows to compute the state estimate x (t ), which – when used in (1) – provides for an optimal closed-loop control law (i.e. law minimizing criterion (4)). Nevertheless, in this section we are concerned only with computation of the optimal gain matrix F, to be used in control law (2). Assuming that the system (1) is controllable, the solution of the above LQIH Problem is given (see e.g. Kwakernak and Sivan 1972) as u(t ) = −Fx (t ),

(5)

F = R −1B TP

(6)

(t ), u(t ) = −Fx

ˆ(t ) x (t ) = Ax (t ) − BFx

x (t ) = (A − BF )x (t )

O

M

I

A

R

Y

(7)

A

U

T

O

M

(11)

System (11) appeared to be unstable! All equations and data were checked and rechecked; nothing was achieved. It was postulated then that, perhaps, system (1) was uncontrollable – against all expectations and relation to physical properties and behavior of the system that eq. (1) did in fact represented – with an uncontrollable mode (or modes) being unstable. This issue has been investigated and it was confirmed that system (1) was controllable. So, if everything was properly set up, why the closed-loop system (11) was unstable? Only after considerable time it has been suggested that, perhaps, the library routine for solving eq. (7) was not returning the required solution, i.e. a positive-definite matrix P satisfying eq. (7). As a first reaction to this postulate the majority of the design engineers involved – and there were quite many at this stage – have been adamant; it seemed impossible to them that a routine from the best library, used with success in many cases before, could return an improper solution. Then, some engineers

where 0 is a matrix with all entries equal to 0. (In case of relaxed assumptions of nonnegative-definite symmetric matrix Q, i.e. Q = QT ≥ 0 with Q = DTQ1D, Q1 = Q1T , Q1 > 0, system (1) being just stabilizable and, with the “output” z(t) = Dx(t), being reconstructible, matrix P may be proved to be single nonnegative-definite solution of eq. (7). P

(10)

was tested through the computer simulation. Against all expectations this system, quite unfortunately, appeared to be very unstable! Why? The first guess regarding the source of this instability was that something had gone wrong as far as the coupling of the observer and the controller was concerned. Yet, the observer was, on itself, working very well, proving in fact that the system under control was beyond any doubt observable. The simulation was then used to check the behavior of the closed-loop system with full state feedback

and where a symmetric matrix P, positive-definite under the assumptions made above about system (1) being controllable and Q = QT > 0, is the single solution of the matrix algebraic Riccati equation

6

(9)

Then, if I well remember, an observer, working properly on its own, was developed to compute the estimates xˆ(t ) of x(t) for t > 0. Finally, the closed-loop system

where

Q – PBR–1BTP + ATP + PA = 0

(8)

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Krzysztof Malinowski decided to explore the fact that, according to linear-quadratic optimal control problem, matrix P was originally defined as the limit value of the solution of differential Riccati dynamic equation, for t < t1 and P(t1) = P1, P1 = P1T ≼ 0, −P (t ) = Q − P(t )BR −1B TP(t ) + ATP(t ) + P(t )A (12)

problem, the designer should always be careful and know what this routine is doing and be able to detect and understand an eventual routine failure, and – if such failure does indeed happen – to be able to find a solution to the problem.

Let us denote the solution as Pt1 (t ), with t < t1 Then, for any fixed real number t ∈ R, there exists, under the assumptions made, an actual limit P matrix when t1 → +∞, it can be computed as

[' 6 #

& &

P = lim Pt1 (t ) t1 →+∞

(13)

where Pt1 (t ) is symmetric and nonnegative definite, and so P is a nonnegative-definite solution of eq. (7). P can also be obtained through solving the set of differential equations (12) (in the considered case 136 equations) backwards in time, assuming that P(t1) = P1 where P1 is any nonnegative-definite symmetric matrix; then, given fixed t1, seeking a limit

P = lim P(t ) t →−∞

(14)

In the case considered, due to controllability of (1) and due to matrix Q being positive-definite, P should be positive-definite and the matrix obtained from eq. (13), as well as, more effectively as far as the computing effort was required, from eq. (14), was indeed positive definite. In fact P appeared to be largely different from P. Matrix P obtained in the way described above, from eq. (13) or from eq. (14), is the sought-after nonnegative-definite (in our case positive-definite) matrix solution of the algebraic Riccati equation (7), which, when used in eq. (6) to define gain matrix F, according to theory, provides asymptotically stable (in fact exponentially stable) closed-loop system x (t ) = (A − BF )x (t )

(15)

Now, the method presented above, using formula (13) or (14) to compute P was, and for large dimension of state vector x still is, time consuming. Thus another method was and is up to now most often applied: P is computed by solving the nonlinear algebraic Riccati equation (7), i.e. the set of nonlinear algebraic equations, using, in most cases, Newton method, or a similar one. In such case, however, it appears that there might exist a possibility to find other than P solution of eq. (8), a solution that is not positive-definite or even nonnegative-definite. Using such solution, say P, in equation (6) may very well result in the closed-loop system x (t ) = (A − BF )x (t ) with

F = R −1B TP

(16)

being unstable. This was, in fact, exactly what has happened in the considered case and which was due to the fact that well regarded library routine, providing proper solutions of algebraic matrix Riccati equation in many other cases, had in this case failed. It was only after a considerable effort spent on examining this problem that, due to understanding of the theory concerning LQIH, this failure was detected and the reason of it has been understood, and then the required proper solution computed. The reader, interested in deeper insight into the theory of linear-quadratic problem as a tool for closed-loop control design may consult many excellent texts. One, especially worth mentioning, is the book “Linear Optimal Control Systems� by H. Kwakernaak and R. Sivan (Wiley-Interscience, 1972). The lesson that can be drawn from this example is that even when using best possible software tool, e.g. a library routine supposed of returning us a solution of the actually considered

The second example, or a case study, is of a different nature; not directly related to a particular design procedure but to a much broader issue concerned with the controller design. One of the largest firms procuring crude oil and natural gas, transporting those media and then processing them in the company refineries, reported the following problem concerning transportation of the natural gas through the undersea pipeline, asking several research institutions for a solution. The problem was as follows. At one of the sites in North Africa, belonging to this firm – call it firm TT – and situated close to the southern shore of the Mediterranean Sea, the well was established providing large quantities of natural gas with a residue of crude. The well was then to be connected to large tanks as shown in fig. 1, the purpose of those tanks being to separate the gas, coming from the well at the fluctuating pressure and quantity, from the residue crude and to make this gas ready for being pumped into the undersee pipe of a large dimension and capacity, transporting the gas to the recipient station in Europe. Three separator tanks were bought and connected to a large pump via much smaller header tank. Pump operation allowed for changing the pump rotational speed and the objective of the regulation was to provide for a desired constant pressure of gas at the outlet of the pump. Maintaining constant pressure at the pump outlet, i.e. the inlet to the undersea pipe, was most important task required to allow for smooth gas transmission, without pressure waves and chocks, i.e. without flow disturbances in the pipe being induced by changes of the pump outlet pressure. Now, each separator tank, referred to as the separator, in which the natural gas has been separated from the residue crude, was provided by its producer with two regulatory loops. The first, the main loop, was designed to stabilize the gas pressure within the tank by manipulating the valve at the tank gas outlet. The second loop was supposed to stabilize the level of crude at the bottom of the tank. Both this latter loop and its task were very simple and not relevant to the main tank purpose; they will not be taken into account further on and will not be depicted on the diagrams below. The pump, provided by another manufacturer, together with the header tank, was also endowed with the main control loop: the controller being responsible for maintaining constant desired pressure at the outlet by manipulating the pump angular speed. Thus, the configuration of the considered plant was as depicted in fig. 1. As mentioned above, the auxiliary controllers, in particular those concerned with maintaining the desired levels of crude in separator tanks, are not shown in fig. 1. The four main controlled variables were pressure levels in the separators, respectively p1, p2, p3, and the pump outlet pressure pout; the main controls, manipulated variables, were three valve settings u1, u2, u3 and signal u4 setting the pump rotational speed. After all components of the system were put into place, with, as it seemed, properly tuned controllers (if I well remember the PID controllers) – each, however, tuned when taking into account the individual perspective – it has immediately appeared that the operation of the system as a whole was absolutely unacceptable. Namely, the pressure pout at the outlet of the pump and the inlet to the undersea pipe was rapidly changing

7


Control System Design: Think Broad and Be Inquisitive

It was suggested then, after much effort was spent on tackling the regulator design problem, that a similar approach, namely changing the set of the controlled (regulated) variables, might also be helpful in achieving the improved dynamical behavior of the controlled system as a whole. Indeed, consider what happens in case of the system depicted in fig. 1, with the components of this system endowed with their controllers introduced on an individual basis. The pressure and, therefore, the flow of gas and crude mixture from the well, may and does change rapidly (fluctuates). Each separator pressure controller reacts to these changes and by stabilizing gas pressure in the separator at the desired level, passes in fact the flow fluctuations to the small header tank at the inlet to a huge pump with large inertia associated with the angular speed. When the pressure in the header changes rapidly, which it must, the pump controller cannot cope by changing the speed of the pump – there is far too much inertia to allow for it. Therefore, as far as one insists on keeping the original set p1, p2, p3, pout of the controlled variables and attempting regulation of those variables to their desired set-point values, respectively, p1,d, p2,d, p3,d and pout,d, there is no chance to maintain pout at the desired level under realistic operational conditions.

in a significant way – the amplitude of changes was very large and this could not be accepted and allowed for. So, then much time and effort were devoted to re-tune the controllers so as to eliminate those variations of pout. It did not do much good. Then a design of a multiple-input – multiple-output (MIMO) controller (4 × 4) was tried; this also did not result in any significant improvement of the system behavior. Several research groups were consulted and asked for help but the problem still seemed to be unsolvable, after being extensively investigated. Yet, the solution was simple and, in fact, almost apparent, one could say: “lying on the table”. In the book “Wielopoziomowe układy sterowania” by W. Findeisen, published in 1974 and then in the book “Control and Coordination in Hierarchical Systems” by W. Findeisen et al., published in 1980, it was shown that often much improved behavior of a system operating in steady-state is possible to be achieved by a clever choice of the controlled variables; such choice may even lead to self-optimizing operation of a plant at steady-state. The choice of a good set of control variables may depend on the overall system configuration and the joint constraints imposed on the system variables.

Fig. 1. Layout of the original control structure, case of four independent loops; only main elements of the plant are shown. Significant fast variations of header pressure ph, unacceptable variations of pout at the pump outlet Rys. 1. Schemat oryginalnej struktury układu sterowania, z czterema niezależnymi pętlami; pokazane są tylko główne elementy instalacji. Znaczące szybkie zmiany ciśnienia w kolektorze ph, niedopuszczalne zmiany wydmuchu pout na wylocie pompy

8

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Krzysztof Malinowski

Fig. 2. New control structure (the elements not shown in fig. 1). New controlled variables: ph, p2, p3 and pout. Variations in unregulated pressure p1, small variations of header pressure ph, acceptable changes of pout Rys. 2. Nowa struktura układu sterowania (elementy nie pokazane na rys. 1). Nowe zmienne kontrolowane: ph, p2, p3 i pout. Zmiany w nieregulowanym ciśnieniu p1, małe zmiany w ciśnieniu w głowicy ph, dopuszczalne zmiany pout

Now, in the considered case the really important controlled variable is actually pout as it is this pressure at the output of the pump that must be kept as being equal to the desired value pout,d and to fluctuate as little as possible so as to provide the best possible conditions for gas transmission under the sea. The remaining three controlled variables are not that important. Since it may be easily observed that a smooth pump operation depends upon the header pressure ph being constant one may remove one of the three separator pressures from the set of the controlled variables and introduce another controlled variable – ph. One might remove, say, p1 pressure and replace it with ph. The fluctuations present in flow from the well will now be absorbed by separator no. 1 and will not be passed to the header. In addition to this the desired value of ph, i.e. ph,d, may be chosen such as to make the pump work at operating point of the best possible efficiency; thus, apart of creating the conditions for good regulation of ph, one may also optimize the system operation at steady-state. The new configuration of the control structure is shown in fig. 2. There are of course some problems to take care of; in particular it may happen that the no longer controlled pressure p1 in separator no. 1 could be getting too big; then it might be necessary to choke the flow from the well using valve Vin, which action one usually would like to avoid at the basic regulation level as the flow going through this valve is a mixture of gas and crude, and since changing the position of Vin may disturb the operation of the well itself. Yet it is a fair price for being able to precisely control ph and optimize the value of ph,d. Actually it proved then quite easy to tune the controllers to provide satisfactory and power efficient operation of the considered plant with the new set ph, p2, p3, poutof the controlled variables. Therefore in order to solve the problem, to meet the requirements set by firm TT, it was only necessary to think in broader terms, to be not “enslaved” by the given set of the controlled

variables. The truth that changing the set of the controlled variables may be the best solution to eliminate the dysfunctions of a regulatory controller is often lost on the specialists in regulatory control design.

4. The conclusions that can be drawn from the above examples were already presented in detail. In general terms they are: when facing a control design problem think broad, use available support tools with care and try to understand in all detail the theory relevant to your problem. This general conclusion most likely applies to all engineering design problems, not only to control design.

References 1. Findeisen W., Wielopoziomowe układy sterowania [Multilevel Control Systems]. PWN, Warsaw 1974. German translation: Hierarchische Steureungssysteme. Verlag technik, Berlin 1977. 2. Findeisen W., Bailey F.N., Brdyś M., Malinowski K., Tatjewski P., Woźniak A., Control and Coordination in Hierarchical Systems. John Wiley & Sons, Wiley Interscience Publication 1980. 3. Kwakernaak H., Sivan R., Linear Optimal Control Systems. John Wiley & Sons, Wiley-Interscience 1972.

9


Control System Design: Think Broad and Be Inquisitive

F / G GH'I ' Streszczenie: W niniejszym artykule przedstawiono dwa przykĹ‚ady o róşnym charakterze, dla wykazania, w oparciu o doĹ›wiadczenie autora, Ĺźe inĹźynier systemĂłw sterowania napotykajÄ…cy problem projektowy musi myĹ›leć nieszablonowo, stosować roztropnie narzÄ™dzia wspomagajÄ…ce projektowanie i nie moĹźe zaniedbywać teorii zwiÄ…zanej z rozwaĹźanym problemem projektowym. % V %

' $ $ $ PAN Krzysztof Malinowski & ' ORCID: 0000-0002-7655-2050

H J # % % G E 'J . K ' L E ' F M ' > ' ?BB) % E ' (!?+ N J O ; . 0 > . F ; ' = 0 6 # 6 M 6 # F ; % > M ' " P F Q . 6 4 ' .

10

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 11–16, DOI: 10.14313/PAR_236/11

S ' ' # ( ) *+ , - ( # F % ; ' = % M M " ?T% *(E(?)

$ $ . ArtykuĹ‚ dotyczy wpĹ‚ywu beznawiasowej notacji polskiej na rozwĂłj współczesnej informatyki i innych, pokrewnych dyscyplin naukowych korzystajÄ…cych z technik informatycznych, m.in. matematyki, elektroniki, automatyki czy robotyki. W niniejszym artykule podano przykĹ‚ady współczesnych zastosowaĹ„ ONP w informatyce, m.in. w jÄ™zykach Forth, Postscript i parserach jÄ™zykĂłw wysokiego poziomu. RozwaĹźania zilustrowano przykĹ‚adami konwersji wyraĹźeĹ„ z klasycznej notacji do notacji przyrostkowej oraz ich przetwarzania przez komputer z uĹźyciem modelu zarzÄ…dzania pamiÄ™ciÄ… zorganizowanÄ… w stos, dziÄ™ki czemu uzyskuje siÄ™ skrĂłcenie czasu wykonania algorytmu i mniejszÄ… zajÄ™tość pamiÄ™ci. Celem tej publikacji byĹ‚o takĹźe upamiÄ™tnienie osiÄ…gnięć polskich naukowcĂłw w zakresie współczesnych technik komputerowych, a w szczegĂłlnoĹ›ci Jana Ĺ ukasiewicza – twĂłrcy znanej na caĹ‚ym Ĺ›wiecie Odwrotnej Notacji Polskiej. Stworzona obecnie w Polsce sieć badawcza obejmujÄ…ca wiodÄ…ce krajowe instytuty naukowo-badawcze przyjęła patronat innego badacza: Ignacego Ĺ ukasiewicza – znanego gĹ‚Ăłwnie z wynalezienia lampy naftowej i rozwoju polskiego przemysĹ‚u naftowego. Warto pamiÄ™tać, Ĺźe sÄ… to róşni naukowcy zasĹ‚uĹźeni w róşnych obszarach badawczych. $ V # % U % S' > F % O . . G % % .

1. Wprowadzenie Odwrotna Notacja Polska została opracowana i upowszechniona przez australijskiego naukowca Charlesa Hamblina [1] jako „odwrócenie� beznawiasowej notacji polskiej, opracowanej około 1920 r. przez polskiego matematyka Jana Šukasiewicza. Zarówno odkrycie, jak i jego fundamentalne znaczenie dla rozwoju technologii cyfrowej nie są powszechnie znane nawet wśród osób z wykształceniem akademickim. Działanie wszelkich urządzeń zawierających procesory – kalkulatory, komputery, urządzenia sieciowe i telekomunikacyjne, telefony komórkowe, sprzęt AGD, cyfrowa telewizja naziemna i satelitarna i inne urządzenia – byłoby bardzo utrudnione, gdyby nie stosowano tej notacji. Jej znaczenie doceniono dopiero po wielu dekadach w epoce komputerów wyposaşonych w programowalny procesor i wykorzystujących języki wysokiego poziomu. Zaletą tej notacji jest brak nawiasów oraz konieczności wstępnej analizy całego wyraşenia arytmetycznego, aby ustalić kolejność działań. Taki sposób zapisu ułatwia przygotowanie kodu wynikowego dla procesora. Notacja moşe być stosowana do zapisu dowolnych wyraşeń złoşonych z symboli reprezentujących zmienne wejściowe oraz operatorów,

) " V R % . & ) ' !) !@ (!(! % ' ' (+ !+ (!(!

!

a więc w logice zdań, teorii zbiorów, algebrze, logice dwuwartościowej będącej podstawą działania układów cyfrowych i komputerów, a takşe w translatorach języków wysokiego poziomu. W przypisie do pracy [2] Jan Šukasiewicz po raz pierwszy podał reguły stosowanego przez siebie zapisu, zwanego takşe zapisem przedrostkowym, a w literaturze anglojęzycznej określanego jako Polish Notation (PN), Normal Polish Notation (NPN), Šukasiewicz Notation (ŠN), Warsaw Notation (WN), Polish Prefix Notation (PPN), Simply Prefix Notation (SPN). Hamblin sugerował, aby notację tę nazwać „Azciweisakul notation� (od nazwiska pisanego od tyłu). Ta propozycja nie przyjęła się prawdopodobnie ze względu na trudności językowe. Przyblişmy sylwetkę prof. Jana Šukasiewicza. Urodził się 21 grudnia 1878 r. we Lwowie, a zmarł 13 lutego 1956 r. w Dublinie. Zajmował się zawodowo logiką, matematyką i filozofią, pracując na Uniwersytecie Jana Kazimierza we Lwowie, Uniwersytecie Warszawskim, a za granicą – na Uniwersytecie Dublińskim od 1946 r. Pełnił funkcję rektora Uniwersytetu Warszawskiego (1922–23 i 1931–32) oraz ministra oświaty w rządzie Ignacego Paderewskiego. Jest wymieniony wśród grona twórców tzw. polskiej lwowsko-warszawskiej szkoły matematycznej. Do jego osiągnięć zalicza się połoşenie podwalin teoretycznych pod logikę trójwartościową, w której oprócz dwóch klasycznych stanów prawda i fałsz trzeci stan oznaczono jako nie wiem. Choć współczesne komputery nie korzystają dziś z zalet takiej konwencji, warto wspomnieć, şe w drugiej połowie XX wieku w Związku Radzieckim produkowano maszyny cyfrowe SETUN (1958), oparte na podobnym pomyśle, oznaczając symbolicznie stany 1, 0, –1, co nadało im znaczenie arytmetyczne [3].

11


O znaczeniu odwrotnej notacji polskiej dla rozwoju technik informatycznych czesną jednokrotną analizą w fazie kompilacji programu każdego z symboli tworzących wyrażenie. Przykładowy zapis działania: (4+7)·2 w notacji klasycznej – wrostkowej (operator umieszczony między liczbami), w zapisie zgodnym z notacją polską wygląda następująco: · + 4 7 2. Taki zapis jest bliski naturalnemu sposobowi wyrażania opisanych działań, w którym to sposobie zazwyczaj najpierw podaje się czynność, a następnie dopełnia wyrażenie wskazaniem rzeczy, do których czynność się odnosi. Mówimy wówczas: „pomnóż sumę 4 i 7 przez 2”. Taka interpretacja językowa rozwiewa też wątpliwości, co do kolejności argumentów w przypadku operatorów nieprzemiennych, typu odejmowanie czy dzielenie. Wyżej wymienione cechy naturalności języka przeniesiono również na poziom konstruowania programów dla komputerów w językach niskiego poziomu. Każdy procesor wykonuje program będący sekwencją elementarnych rozkazów zdefiniowanych przez właściwą dla niego listę rozkazów ISA (ang. Instruction Set Architecture). Przykładowo, zgodnie z konwencją zaproponowaną przez firmę Intel składnię rozkazu MOV A, B czytamy jako „prześlij kopię danych z B do A”. Inny rozkaz ADD A, B oznacza: „zapisz w A sumę zawartości z A i B”, czyli wskazuje na zapis algebraiczny oznaczany jako A = A + B. Na rysunku 2 przedstawiono fragment rzeczywistego kodu wykonywanego przez koprocesor arytmetyczny x87 zaczerpnięty z dokumentacji technicznej [5]. Koprocesor oblicza wyrażenie (5,6·2,4) + (3,8·10,3). Odpowiadający mu zapis w notacji polskiej ma postać: + · 5,6 2,4 · 3,8 10,3, który jednak nie jest już taki intuicyjny. Zadanie staje się łatwiejsze, jeśli korzysta się ze stosu zorganizowanego z fizycznych rejestrów o symbolach R0–R7, jak w przykładzie poniżej. Wówczas wystarczy w rozkazie podać drugi argument działania, a zarówno jego wynik, jak i pierwszy argument jest wskazywany przez wierzchołek stosu oznaczony tu jako ST(0), co oznacza adresowanie z zerowym przesunięciem względem rejestru pełniącego rolę wierzchołka stosu. Użycie organizacji pamięci w stos przynosi korzyści, gdyż program przetwarza wówczas liczby w naturalnej kolejności zaczynając od liczby 5,6 i zajmuje stosunkowo niewiele zasobów pamięciowych – tylko dwa rejestry! Jako ostatnie jest wykonywane dodawanie, rozkazem FADD, na argumencie przechowywanym na wierzchołku stosu ST(0) i leżącym bezpośrednio pod nim, czyli w lokacji ST(1). Należy dodać, że stos w tym przypadku jest zorganizowany w stronę malejących adresów, czyli „rośnie w dół”. Cecha przetwarzania dwóch argumentów leżących najbliżej wierzchołka stosu, wraz z jego zastosowaniem do przechowywania pośrednich wyników obliczeń, przyczyniła się do upowszechnienia odwrotnej notacji polskiej, o której piszemy w kolejnym rozdziale. Więcej rozważań na temat klasycznej arytmetyki komputera, w tym obliczeń zmiennopozycyjnych wraz z wyjaśnieniem podstawowych pojęć związanych z architekturą komputera można znaleźć między innymi w pracach [6, 7].

Rys. 1. Fragment sprawozdania z 13 kwietnia 1817 r. Towarzystwa Przyjaciół Nauk [4] Fig. 1. Excerpt from the report of April 13, 1817 of the Society of Friends of Sciences [4]

Poruszając wątek wpływu naszych rodaków na rozwój informatyki, nie wypada przemilczeć wynalazców żyjących w XIX wieku, inspirujących kolejne pokolenia inżynierów. Przeszli oni do historii techniki jako twórcy mechanicznych maszyn liczących. Byli to Abraham Stern (176?–1842), Izrael Abraham Staffel (1814–1884) i Jewna Jakobson żyjący w drugiej połowie XIX wieku. Na rys. 1 przedstawiono fragment sprawozdania z posiedzenia Towarzystwa Przyjaciół Nauk z dnia 13 kwietnia 1817 r., na którym dyskutowano o znaczeniu maszyny pierwiastkującej Sterna [4]. Czytamy w nim: „…”IX. Raport o Machinie Kollegi Sterna Czytany był Rapport Kollegi Dąbrowskiego w imieniu Deputacyi o machinie wynalazku Kollegi Sterna służącej do wyciągania pierwiastków kwadratowych tak prawdziwych jak przybliżonych, w którym wyłożywszy ‚obozennie’ różne działania za pomocą tej machiny i skutki z tych wypadające zdanie Deputacya wyraża, że machina ta, równie jak arytmetyczna zupełnie odpowiada zamierzonemu celowi w zastąpieniu silenia się władz umysłowych siłami ciała, i że wiadomość o tym pięknym i ‘…’ wynalazku, równie Kolledze Sternowi, jak narodowi naszemu zaszczyt przynoszącym powinna być udzielona Publiczności. Przyjęło Towarzystwo ten wniosek, i zezwoliło, aby Raport niniejszy był umieszczony w Gazetach krajowych, albo w Pamiętniku Warszawskim.” Warto przypomnieć, że komputery uzyskały zdolność obliczania pierwiastka kwadratowego dopiero nieco ponad pół wieku temu. W latach 60. XX wieku były dostępne m.in. maszyny IBM 360/370, DEC VAX czy polska ODRA 1003/1013. Jednak pierwiastkowanie stało się podstawową funkcjonalnością komputera wraz z opracowaniem w 1982 r. przez firmę Intel układu koprocesora arytmetycznego, zwanego też jednostką zmiennopozycyjną, a trzy lata późnej wprowadzono światowy standard IEEE Standard for Floating-Point Arithmetic (IEEE 754 – 1985). W 2008 r. wprowadzono zmiany do tej normy, dostosowując jej zapisy do współczesnych potrzeb. Zastosowano m.in. format 128-bitowy dla zadań o wymaganej przez środowisko naukowców bardzo wysokiej rozdzielczości (precyzji) zapisu liczb. Mając na uwadze rynek tanich procesorów zalegalizowano format 16-bitowy, w pełni wystarczający dla przenośnych urządzeń rejestrująco-fiskalnych (parkometry, biletomaty, urządzenia odczytujące stan liczników zużycia wody, gazu, energii elektrycznej itp.).

X' 5 Zgodnie z notacją zaproponowaną przez Jana Łukasiewicza, w zapisie wyrażeń arytmetycznych najpierw podawany jest operator (działanie), a potem operandy (argumenty). Wyrażenie nie wymaga wówczas użycia nawiasów, ponieważ przypisanie argumentów do operatorów wynika wprost z ich kolejności w zapisie, o ile z góry znana jest liczba argumentów poszczególnych operatorów. Przy takich założeniach nie jest konieczna wstępna analiza całego wyrażenia, aby ustalić kolejność działań. Umożliwia to szybkie wykonanie kodu wynikowego przez procesor z jedno-

12

P

O

M

I

A

R

Y

A

U

T

O

M

Rys. 2. Przykład przetwarzania wyrażenie przez jednostkę FPU [5] Fig. 2. Example x87 FPU Dot Product Computation [5]

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


[' 1 Gdy umieĹ›ci siÄ™ operatory dziaĹ‚aĹ„ arytmetycznych za operandami, to otrzymuje siÄ™ tzw. odwrotnÄ… notacjÄ™ polskÄ…, czÄ™sto nazywanÄ… notacjÄ… przyrostkowÄ…. Dla uproszczenia dalszego wywodu przywoĹ‚amy przykĹ‚ad liczbowy z poprzedniego podrozdziaĹ‚u uproszczony, dla lepszej jego czytelnoĹ›ci, do liczb z odciÄ™tÄ… częściÄ… uĹ‚amkowÄ… tj. (5¡2) + (3¡10). W konwencji ONP zapis prezentuje siÄ™ nastÄ™pujÄ…co: 5 2¡ 3 10 ¡ +. Z formalnego punktu widzenia odwrĂłcenie konwencji nie wnosi nic nowego do rozwaĹźaĹ„. JeĹ›li jednak zaĹ‚oĹźymy, Ĺźe do przetwarzania wyraĹźeĹ„ w ONP wykorzystuje siÄ™ komputery, to korzyść staje siÄ™ widoczna. W notacji polskiej musielibyĹ›my przechowywać w pamiÄ™ci komputera operator do momentu wczytania obu argumentĂłw. ObciÄ…Ĺźa to niepotrzebnie procesor, co ma wpĹ‚yw na wydajność przetwarzania algorytmĂłw obliczeniowych. W odwrotnej notacji polskiej najpierw wczytujemy argumenty i wykonujemy na nich wskazane dziaĹ‚anie. W praktyce w tym celu korzysta siÄ™ ze stosu wg zasady, Ĺźe przetwarzane jest jednokrotnie wyraĹźenie od lewej do prawej i jeĹ›li analizowany element jest: − argumentem (np. liczbÄ…), to zapisywany jest na stosie, − operatorem, to pobierane sÄ… ze stosu dwa argumenty, wykonywane jest dziaĹ‚anie, a wynik zapisywany na stosie. Wykonanie naszego wyraĹźenia w ONP z uĹźyciem stosu, zorganizowanego „w dółâ€?, moĹźna zilustrować jak na rysunku 3, wyróşniajÄ…c analizowany w danym etapie element (ang. token). Przetwarzanie w sposĂłb opisany powyĹźej wymaga wczeĹ›niejszej konwersji wyraĹźenia do postaci przyrostkowej. W tym celu rĂłwnieĹź moĹźna ponownie skorzystać ze stosu. WyraĹźenie w notacji wrostkowej (mogÄ… być stosowane wielopoziomowe nawiasy) przetwarza siÄ™ jednokrotnie od lewej do prawej wg nastÄ™pujÄ…cej reguĹ‚y: JeĹ›li analizowany element jest: − nawiasem otwierajÄ…cym, to zapisz go na stosie, − nawiasem zamykajÄ…cym, to odczytaj ze stosu, w odwrotnej kolejnoĹ›ci, wszystkie operatory wĹ‚Ä…cznie z nawiasem otwierajÄ…cym i dopisz je do wyraĹźenia w ONP, − argumentem, to dopisz go do wyraĹźenia w ONP, − operatorem, jeĹ›li ma on wyĹźszy priorytet niĹź ten leşący na wierzchu stosu, to zapisz go na stosie, − operatorem, jeĹ›li ma niĹźszy lub rĂłwny priorytet niĹź ten leşący na wierzchu stosu, to zapisz go na stosie po odczytaniu operatorĂłw o wyĹźszym lub rĂłwnym priorytecie, − na koniec odczytaj ze stosu pozostaĹ‚e operatory i dopisz do wyraĹźenia w ONP. Opisany algorytm jest znany w literaturze jako metoda „Shunting-yardâ€? zaproponowana przez Edgara DijkstrÄ™. WiÄ™cej rozwaĹźaĹ„ na temat róşnych algorytmĂłw i ich modyfikacji moĹźna znaleźć w pracy [8]. PoszczegĂłlne etapy konwersji ww. wyraĹźenia ilustruje rys. 4. W przykĹ‚adzie tym ponownie ujawnia siÄ™ zaleta stosowania stosu. Do przeprowadzenia konwersji wyraĹźenia byĹ‚o konieczne tymczasowe uĹźycie jedynie trzech komĂłrek pamiÄ™ci.

Etap 1 5

ST(0)

Etap 2 5

ST(1)

2

ST(0)

Etap 3 5¡2

ST(0)

Etap

Stos

WyraĹźenie w ONP

1

(

2

(

5

3

(¡

5

4

(¡

52

5

52¡

6

+

52¡

7

+(

52¡

8

+(

5 2 ¡3

9

+(¡

52¡3

10

+(¡

5 2 ¡ 3 10

11

+

5 2 ¡ 3 10 ¡

12

5 2 ¡ 3 10 ¡+

Rys. 4. Konwersja wyraĹźenia wrostkowego do notacji ONP z uĹźyciem stosu Fig. 4. Conversion of infix to postfix notation using the stack

\' Na przestrzeni lat zastosowania ONP ewoluowało od kalkulatorów elektronicznych ku informatyce. Obecnie uşytkownik komputera właściwie ma niewielkie szanse na bezpośredni kontakt z ONP, chyba şe jest uşytkownikiem mało popularnych w Polsce kalkulatorów firmy Hewlett-Packard lub specjalistycznych aplikacji.

\']' 3 Istotna popularyzacja notacji nastÄ…piĹ‚a wraz z pojawieniem siÄ™ kalkulatorĂłw firmy Hewlett-Packard oraz CASIO w latach 70. oraz 80. XX wieku, czÄ™sto nie do koĹ„ca legalne sprowadzanych z Wielkiej Brytanii – takie byĹ‚y czasy! Posiadanie dolarĂłw w najlepszym przypadku groziĹ‚o ich konfiskatÄ…. Wczesne modele, m.in. HP-12c, HP-35, uĹźywaĹ‚y ONP bez stosowania alternatywnych metod. Późniejsze wersje, jak HP-35s, rĂłwnieĹź udostÄ™pniaĹ‚y klasycznÄ… notacjÄ™ wrostkowÄ… i mogĹ‚y w wygodny sposĂłb umoĹźliwić uĹźytkownikom przeĹ‚Ä…czanie siÄ™ miÄ™dzy niÄ…, a ONP. RozszerzonÄ… funkcjonalnoĹ›ciÄ…, w tym obsĹ‚ugÄ… ONP, charakteryzuje siÄ™ obecna na rynku linia modeli HP Prime. Innym, powszechnie dostÄ™pnym rozwiÄ…zaniem sÄ… aplikacje wirtualnego kalkulatora z funkcjÄ… ONP na urzÄ…dzenia mobilne. PrzykĹ‚adowÄ…, aktualnie stosowanÄ… w smartfonach aplikacjÄ™ wirtualnego kalkulatora „HiPER Scientific Calculatorâ€? przedstawiono na rys. 5.

Etap 4

Etap 5

Etap 6

5¡2

ST(1)

5¡2

ST(2)

5¡2

ST(1)

3

ST(0)

3

ST(1)

3¡10

ST(0)

10

ST(0)

Etap 7 5¡2+3¡10

ST(0)

Rys. 3. Kolejne etapy przetwarzania wyraĹźenia w ONP z uĹźyciem stosu Fig. 3.The next stages of processing RPN expression using the stack

13


O znaczeniu odwrotnej notacji polskiej dla rozwoju technik informatycznych szego artykuĹ‚u – wykonywanie kodu w konwencji odwrotnej notacji polskiej wĹ‚aĹ›nie z uĹźyciem stosu. Oparcie jÄ™zyka Forth na ONP wyraĹşnie wyróşnia go spoĹ›rĂłd wielu innych koncepcji tworzenia jÄ™zykĂłw programowania. PoczÄ…tkowa trudność w zrozumieniu kodu przez niedoĹ›wiadczonych programistĂłw prawdopodobnie staĹ‚a siÄ™ przyczynÄ… ograniczonej popularnoĹ›ci tego jÄ™zyka, choć istnieje wiele jego wersji na róşne platformy sprzÄ™towe i systemy operacyjne. Warto wymienić kilka z nich, m.in. Swiftforth, Gforth, Mecrisp.

\'^' !

a)

Stosując formalizm naukowy moşna stwierdzić, şe komputery w swojej naturze są niczym innym jak sekwencyjną maszyną synchroniczną, czyli układem przechodzącym ze stanu poprzedniego do stanu następnego w takt zegara taktującego. Na stan następny ma wpływ stan poprzedni (zawartość pamięci danych komputera) oraz dane wejściowe, np. uzyskane w trakcie interakcyjnej konwersacji z uşytkownikiem lub zawartość pliku. Strukturę komputera moşna więc opisać jako kombinację funktorów logicznych i układów pamięciowych. Na przestrzeni lat do projektowania układów logicznych, powszechnie nazywanych teş cyfrowymi, wynaleziono wiele metod optymalizacji wyraşeń boolowskich słuşących do opisu architektury komputera. Wykorzystując go jako narzędzie do projektowania układów logicznych istotne są metody pozwalające na zautomatyzowanie i algorytmizację tego procesu. Jedną z bardziej efektywnych metod jest zaproponowana przez Quinea i McCluskeya [9, 10]. We wczesnej fazie działania algorytmu korzysta ona z właściwości ONP pozbywając się nawiasów i konwertując wejściowe wyraşenie logiczne do postaci przyrostkowej. Upraszcza to kolejne kroki poszukiwania minimalnej postaci opisu formalnego projektowanego układu, na podstawie którego tworzona jest sieć połączeń funktorów logicznych. Przykładowo, proste wyraşenie logiczne(AÚB)ÙC jest sprowadzane do równowaşnej postaci ABÚCÙ, gdzie Ú i Ù to operatory alternatywy i koniunkcji.

b)

Rys. 5. Widok aplikacji kalkulatora z moşliwością wyboru trybu ONP (a) oraz przykładowe liczby odkładane na stosie (b) Fig. 5. Virtual calculator for mobile working in RPN mode as one of modes (a) and examples of numbers pushed on stack (b)

\'X' 3 Naturalnymi następcami kalkulatorów stały się komputery. Niektóre modele potrafiły w sposób natywny przetwarzać wyraşenia ONP, co jest bliskie specyfice komputera i uşywanych w nim rozkazów. Zaliczały się do nich modele KDF9 firmy English Electric Company i amerykańskie Burroughs B5000, popularne w latach 60. XX wieku. Dzisiejsze komputery, bez których nie wyobraşamy sobie współczesnego świata, nie działałyby tak efektywnie, gdyby nie modyfikacja pomysłu Jana Šukasiewicza. Wszelkie wyraşenia w zrozumiałej dla człowieka postaci wrostkowej (a moşe to tylko kwestia szkolnych nawyków?) w tle są konwertowane do beznawiasowej postaci przyrostkowej. Nietrudno wskazać liczne programy wspierające matematyków, fizyków, czy inşynierów, umoşliwiające operowanie na zapisie (niekiedy symbolicznym) wyraşeń algebraicznych, logicznych i leksykalnych. Konwersja do ONP jest przeprowadzana podczas wczesnej fazy kompilacji programów napisanych w popularnych językach wysokiego poziomu w trakcie analizy składni leksykalnej kodu źródłowego, tzw. parsery. Istnieją teş takie języki, dla których ONP jest natywnym sposobem opisu wyraşeń.

5. Podsumowanie Podane przykłady zastosowań odwrotnej notacji polskiej nie wyczerpują tematu, a jedynie są zachętą do dalszego studiowania zagadnienia. Poniewaş niniejszy artykuł w znacznym stopniu dotyka aspektów historii techniki, podkreślając osiągnięcia polskiej myśli wynalazczej, stąd zakończymy go słowami Abrahama Sterna – jednego ze wspomnianych wcześniej Ojców maszyn liczących. Uogólniliśmy jedynie oryginalne znaczenie słowa „mechanika� do słowa „technika�, w znaczeniu „informatyki�, „automatyki i robotyki�, które przecieş nie istniały w jego epoce. Ponişej zachowano pisownię oryginalną [11]: „‌ Kończę rozprawę tą uwagą, şe gdy mechanika (technika – dopisek S. G. i W. M.) iest klucznicą naszych potrzeb tak dalece, iş nie tylko siłę naszę fizyczną ale nawet i władze umysłowe zastępować moşe, nayusilnieyszem przeto staraniem naszem bydź powinno przemysł w iey tak obszernem i uşytecznem polu rozkrzewiać‌ ‌staraymy się ‌ czynić postęp w przedmiotach, mechanicznych (technicznych – dopisek S. G. i W. M.) moşności podlegających, takie bowiem postępowanie drogę do pomyślności i chwały kraiu toruie ‌� Abraham Stern – 1817

\'[' Jest to uniwersalny język opisu strony przygotowanej do druku, będący obecnie standardem w zastosowaniach poligraficznych – cechuje go rozszerzenie pliku *.PS. Postscript jest równocześnie proceduralnym językiem programowania, opartym na strukturze stosu. Pozwala nie tylko opisać precyzyjnie wygląd strony, łącząc obiekty tekstowe z graficznymi, ale takşe wykonywać złoşone operacje na dostarczonych danych. Jego polecenia są rozpoznawane przez urządzenia drukujące. W składni języka uşywana jest odwrotna notacja polska, co sprawia, şe kolejność operacji jest jednoznaczna, ale wpływa to niekorzystnie na czytelność programu, poniewaş analizując kod naleşy pamiętać o bieşącej zawartości stosu. Większość operatorów pobiera argumenty ze stosu i umieszcza wyniki na stosie. Literały, na przykład liczby, powodują umieszczenie ich kopii na stosie.

Takşe prace autorów niniejszej publikacji dotyczące tworzenia algorytmów do cyfrowej korekcji dynamicznego przetwarzania przetworników pomiarowych w swojej istocie, nieświadomie, wykorzystywały Odwrotną Notację Polską [6, 12].

\'\' ( _ !

Jest językiem bliskim sprzętowi, stąd potocznie nazywany jest asemblerowym językiem programowania wysokiego poziomu. Wynika to z wbudowanych cech paradygmatu imperatywnego i silnego zorientowania na wykonywanie operacji na stosie. Do jego charakterystycznych cech naleşą: natychmiastowa interpretacja wprowadzonych słów oraz to, co jest kluczowe w kontekście niniej-

14

P

O

M

I

A

R

Y

•

A

U

T

O

M

Projekt finansowany w ramach programu Ministra Nauki i Szkolnictwa Wyşszego pod nazwą „Regionalna Inicjatywa Doskonałości� w latach 2019–2022 nr projektu 020/RID/2018/19, kwota finansowania 12 000 000 PLN.

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


` # & 1. Hamblin Ch.L., Translation to and from Polish notation. “Computer Journalâ€?, Vol. 5, No. 3, 1962, 210–213, DOI: /10.1093/comjnl/5.3.210. 2. Ĺ ukasiewicz J., O znaczeniu i potrzebach logiki matematycznej, Nauka Polska, 1929, t. 10, 604–620. 3. Targowski A., Historia – TeraĹşniejszość – PrzyszĹ‚ość Informatyki, Wydawnictwo Politechniki Ĺ Ăłdzkiej, Ĺ ĂłdĹş 2013, ISBN 978-83-7283-535-2. 4. Archiwum cyfrowe Towarzystwa Przyjaciół Nauk z dnia 13 kwietnia 1817 r., https://szukajwarchiwach.pl/1/199/0/-/057?q=abraham+stern &wynik =6&rpp=15&page =1#tabJednostka. 5. Intel 64 and IA-32 Architectures Software Developer’s Manual: Vol. 1: Basic Architecture, www.intel.pl/content/www/pl/pl/ architecture-and-technology/64-ia-32-architectures-software-developer-vol-1-manual.html. 6. GryĹ› S., Arytmetyka komputerĂłw w praktyce, Wydawnictwo Naukowe PWN, Warszawa 2007, 2013, ISBN 978-83-01-15131-7. 7. Jakubiec J., Krupanek B., Bogacz R., NarzÄ™dzia programowania mikrokontrolerĂłw. Wydawnictwo Politechniki ĹšlÄ…skiej, Gliwice, 2017, ISBN 978-83-7880-450-5.

8. Ball J.A., Algorithms for RPN calculators, Cambridge, Massachusetts, USA: Wiley-Interscience, John Wiley & Sons, Inc., 1978, ISBN 0-471-03070-8. 9. Quine W.V., The Problem of Simplifying Truth Functions, “The American Mathematical Monthlyâ€?, Vol. 59, No. 8, 1952, 521–531, DOI: 10.2307/2308219. 10. McCluskey E.J., Minimization of Boolean Functions, “Bell System Technical Journalâ€?, Vol. 35, No. 6, 1956, 1417–1444, DOI: 10.1002/j.1538-7305.1956.tb03835.x. 11. Rozprawa o Machinie Arytmetyczney poĹ‚Ä…czoney z machinÄ… do wyciÄ…gania pierwiastkĂłw z uĹ‚omkami; przez Abrahama Stern, na posiedzeniu publicznym Towarzystwa KrĂłlewskiego Warszawskiego PrzyiacioĹ‚ Nauk d: 30 Kwietnia 1817. czytana. Biblioteka Cyfrowa Politechniki Warszawskiej, http:// bcpw.bg.pw.edu.pl/Content/2099 /07cnomf_omachinie.pdf – dostÄ™p 25.04.2020 r. 12. Minkina W., GryĹ› S., Korekcja charakterystyk dynamicznych czujnikĂłw termometrycznych – metody, ukĹ‚ady, algorytmy, Wydawnictwo Politechniki CzÄ™stochowskiej, CzÄ™stochowa 2004, ISBN 83-7193-243-X.

S 6 # X F > # - # . This paper is focused on the impact of polish notation on the development of modern computer science and other related scientific disciplines using IT techniques, including mathematics, electronics, automation and robotics. Reverse Polish Notation was developed and disseminated by Australian scientist Charles Hamblin as a “reversalâ€? of the prefix notation, developed around 1920 by the Polish mathematician Jan Ĺ ukasiewicz. According to knowledge of the authors of this article, the discovery and its fundamental importance for the development of digital technology is not common in the consciousness, even of people with academic education. Operation of all devices containing processors, e.g. calculators, computers, network and telecommunications devices, cell phones, household appliances, digital terrestrial and satellite television and other devices would be very difficult without applying this notation. Its significance was appreciated only after many decades, in the era of electronic computers, equipped with a programmable processor and high-level languages. The advantage of this notation is the lack of parentheses and the need for a preliminary analysis of the entire expression to determine the order of operations. It makes easier to prepare the result code for the computer. Notation can be used to write any of the expressions composed of symbols representing input variables and operators, i.e. in sentence logic, set theory, algebra, two-state logic used by digital systems and being the basis of computers, high-level language compilers and interpreters. In this article, examples of contemporary RPN applications are given, such as: Forth language, Postscript, high-level language parsers. The considerations are illustrated by examples of the conversion of an expression from classical notation to postfix notation and its processing by a computer using a stack memory management model to reduce time of algorithm execution and memory occupation. The purpose of this publication was also to commemorate the achievements of Polish technical thought in the field of contemporary computer techniques and closely associated with the name of Jan Ĺ ukasiewicz – the creator of the world-famous Reverse Polish Notation. This is also due to the fact that the currently created research network including leading national scientific and research institutes in Poland, which is a showcase of Polish technical thought, has assumed the patronage of Ignacy Ĺ ukasiewicz – known mainly for the invention of the kerosene lamp and the development of the Polish oil industry. They are two different people distinguished in other areas, which are worth remembering. KeywordsV # % V % X F > % . ' . G Y % % . . . .

15


O znaczeniu odwrotnej notacji polskiej dla rozwoju technik informatycznych

( ) *+ ' /$

' , - ( $ #

. & ORCID: 0000-0001-7910-3659

' & ORCID: 0000-0002-3153-270X

' . E Q ' ' E ; ' = E F % ' ' ?BBT (!! % Q ' G . # F " (!? SG # ; ' = F N . G ' ' ' ' H E . % J H' % G ' Q H % E . # ' % J G ' % % G J N GH'I J . # % ' J HO % ' ' . % ' +! J # E N ' 6===% = % 6SF ' " $ . F E M ' > S'' " . H E # . N ' ' E . FM> 6 N # = ' 0 E

' ; ' = F E Q ?BTT % ' P ?B) % G P ?BB@ % # E ' ; ' = % M E % 6 # = M ' R EZ " (!!+ G ' H % E . # % J E % O N J E T . # . % ?)! G K *@ E [ # ' # \ ' F H M ' > M ' > J L ?* J 4 H J H ?+ ' . E . % J ' O H ' ] ' H > . ' $ (! . J' ' ' E N $ X F SG # " ' - . ; ' = F

16

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 17–22, DOI: 10.14313/PAR_236/17

0 X =Y < V Jikun Wang ; # 0 . % < # $ % 6 # M ' X G % M ' 4 G )% !(E@(@ ; % F '

Linwei Lyu 0 # 0 . % > - # =Y $ ' = = . . =' % 0 " G # M' ' $ - . ' 6 . % 0 !! )*%

Abstract: This paper summarizes the research on exoskeletons focusing on locomotion support and presenting their general features including the general control approaches. The major fields of exoskeleton applications are focused, namely the military and medical fields. The results of our research on muscles activation during human walking are shortly described. The current developmental trends are outlined in the conclusions part. 3 V G Y % =$R% .

1. Introduction The concept of an artificial exoskeleton is inspired by biology. Many living creatures possess external skeletons covering their soft bodies, the classic example are insects. Animal exoskeletons are not only introducing the rigidity of the body but make the safe covering of soft organs, moreover through reconfiguration of the rigid segments, the reshaping of the body, that supports the locomotion, is obtained. Interesting example are the worms covered by segmented shell which can take a ball like form for rolling down the inclined surfaces (see Fig.1) The human exoskeletons we are not yet reached such advanced stage however those devices have quite long research history, and the recent challenges in this field are impressing. The study on human exoskeletons started in 19th century. The first exoskeleton-like devices were invented by Nicholas Yagin [26] (1890). These devices offered for the wearer the faster running and higher jumping ability. The era of modern exoskeletons started in late seventies of 20th century together with the progress in digital control systems and sensing technologies [25]. Exoskeletons are regarded as a wearable robots or a wearable intelligent devices. They can be categorized as a full-body, upper-body and lower-body supporters. The exoskeletons are used in rehabilitation, they prevent of motion system injuries, they increase the power or enhance the human motion abilities. Moreover, they are used as intelligent prosthesis for amputees,

) " V N ; .% .& ' ) ' ? !( (!(! % ' ' () !* (!(!

!

they also allow the locomotion of the persons with different motion impairments. In this paper we focus on human lower limb exoskeletons. However, the representative example of advanced full body exoskeleton is also mentioned. The walking ability is very crucial for normal functioning of the human being and is required for many working activities. The paper is organized as following: first the lower limb exoskeletons for military and medical applications are shortly presented; next the basic features of a human gait together with outline of our research on muscles activation signals are given. The paper is ending with conclusions.

Fig. 1. Armadillidiidae, also known as a pill bug, can reshape its body spherically. Left: pill bug in walking posture [20], photo by Peter O’Connor aka anemoneprojectors on Foter.com/CC BY-SA; right: pill bug taking the ball shape [19], image courtesy of membio at FreeDigitalPhotos.net Rys. 1. Armadillidiidae, znane równieş jako kulanka, potrafi zwinąć się w kulkę. Po lewej: kulanka w postawie podczas chodzenia [20], fot. Peter O’Connor znany jako anemoneprojectors na Foter.com/CC BY-SA; po prawej: kulanka przybiera kształt kuli [19], fotografia dzięki uprzejmości membio na FreeDigitalPhotos.net

X' -{ & The modern exoskeletons augment the force and strength of soldiers carrying the loads to supports the longtime marching. The research on full-body exoskeletons for military applications started more than fifty years ago with the works on HARDI-

17


The Research on Exoskeletons with Focus on the Locomotion Support MAN. The HARDIMAN was built within General Electric project named “Human Augmentation Research and Development Investigation” [25]. HARDIMAN was equipped with hydraulic and electric motors. Unfortunately, the HARDIMAN project was not successful, because the actuators were producing violent and uncontrolled motions. In 2001, the Defense Advanced Research Projects Agency (DARPA, USA) started its own research on exoskeletons launching the program “Exoskeletons for Human Performance Augmentation” [16]. It aimed the design of exoskeletons augmentating the user forces. Between others, the Sarcos company was appointed to this project, and in 2006, DARPA successfully accepted the exoskeleton prototype by them. In 2010, Sarcos company delivered XOS exoskeleton. XOS is a full-body exoskeleton that enhances user’s strength by hydraulic actuators. XOS allows to carry the armor and other heavy objects [10]. The company progressed farther the exoskeletons development what lead to the very advanced Guardian XO exoskeleton suit for industrial workers, presented recently (2019) [17]. Another example of the DARPA supported designs is the Berkeley Lower Extremity Exoskeleton (BLEEX). The project was ordered in 2000, immediately after launching “Exoskeletons for Human Performance Augmentation”. BLEEX allowed the soldier to carry the heavy loads over the long distances [23]. The force augmenting actuators were increasing the leg joints power and the waist holder allowed to distribute properly the loads carried by soldiers. The example of partial exoskeleton is ONYX, which developed from motorized knee brace. It was the work of Lockheed Martin company financed by U.S. Army Natick Soldier Research, Development and Engineering Center (NSRDEC). Within this project started in 2018, the basic version of ONYX was enhanced to the advanced exoskeleton. ONYX uses artificial intelligence for predicting the joints movement. Another U.S. program called Tactical Light Operator Suit (or TALOS) [14] delivered a “superman” suit which is bulletproofed, weaponized and is strength enhancing. The project was started in 2013 and the advanced prototype was planned for demonstration in 2018, however it seems that the project was not so successful as it was assumed. Besides of some problems the research on exoskeletons for special applications is continuing. The actual developmental trends are focusing on soft, light weighted devices with long-lasting endurance. Their control strategies are discussed in the later part of this paper.

fore, the exoskeletons as a daily support are needed. A Japanese company (CYBERDYNE) developed Hybrid Assistive Limb (HAL) which assist the wearer walking, standing up and sitting down [21, 22]. The works on HAL precursor started in 1997 and the first demonstration of HAL took place in 2012. Another example is Unplugged Powered Suit (UPS), a lightweight, highly flexible exoskeleton invented also in Japan [11] and launched in year 2015. UPS uses pump drives and a pneumatic gel muscle (PGM) for augmenting the user forces. This device is soft, lightweighted, it can be used for enhancing the strength of athletes and for rehabilitation as well. Our list of most relevant projects, closes the Brain-Controlled Adaptive Lower Limb Exoskeleton for rehabilitation of post-stroke paralyzed (BCLLE) [33] currently being under development within the Institute of Electrical and Electronics Engineers EPICS grant. In the end of this part it should be emphasized that the needs of patients are very diverse, however, the common requirement are the robust, and reliable systems which is easy to wear.

\' ) V ! & \']' $ & ! Exoskeleton are the wearable robots. They integrate sensors, mechanics and control systems. The basic control strategies are listed in Table 1 where the examples considered the medical, and military applications are summarized. The types of actuators and active joints are listed. The control system of exoskeleton BLEEX increases the closed loop system sensitivity to its user forces and torques without any direct measurement. In the position control mode, the information from several inclinometers was used for deciding about required joints position [35]. BLEEX has few sensors and is driven by hydraulic actuators powering the hip, knee and ankle joints. Differently than BLEEX, ONYX and exoskeleton X1 (2012–2017) dedicated for human assistance and space missions, are using many sensors which are mounted in the feet, knees and hips collecting the motion data which are used for predictive control. ONYX applies miniaturized electric actuators [13]. X1 utilize series elastic rotary actuators in hip and knee joints [30]. Electromyogram based (EMG based) control creates the human-machine interface where the exoskeleton works according to user’s intention. EMG based control strategy was firstly used in HAL-3 (2000) and was farther refined in the HAL-5 version (2009). Most recent version of HAL exoskeleton has two modes of operation. In one mode, the device supports (stimulates by firm forcing) the predefined normal gait. When the patient wears HAL regularly, the gait pathologies are vanishing, and the gait is improving [6]. In the other mode of HAL operation, the EMG signals collected by surface electrodes are used as the templates for producing the gait support. The control system associates the EMG patterns with specific movements. Those patterns are used for producing the motor control commands [28, 21]. Therefore, the system is capable to predict the next required position and drives accordingly the actuators [34, 36, 6]. It is possible under the assumption that the user is able to produce clear (not blurred) EMG signals. Electroencephalograms (EEG) are the signals providing the information about electrical activity of the brain. These electric signals are used for the motion control of paralyzed persons. The electrical activity of the brain is measured by small surface electrodes attached to scalp. In this case, the EEG signal patterns are associated with different movements. The patient needs an exercising for such type of control using the mind (the will) [27]. In 2005 the Media Lab’s Biomechatronic Group from MIT delivered their first prototype with EEG controlled motion [18]. The project was farther developed. MIT exoskeleton applies

[' +! { &

Exoskeleton for medical application are dedicated for two groups of users, the disable persons and elderly. According to [7], there are 15 million disabled persons with lower limb motor disorders. Moreover, just in USA, in each year almost 800 000 brain strokes occur, and such patients critically need rehabilitation. The modern research on exoskeletons for medical application was started by M.Vukobratović [32] over 60 years ago. His team developed an active exoskeleton for rehabilitation of paraplegics. Till now, researchers had developed many active exoskeletons assisting patients in rehabilitation or supporting their walking [2, 9]. The exoskeletons usually apply the electrical motors powering the ankle, knee and hip joints for assisting palsy or stroke patients in walking. The exoskeleton called Lokomat (launched 2016) [3] is used to rehabilitate the patients on a treadmill. It provides a stable walking pace and secures the body balance. Some studies are indicating that the exoskeletons supporting the body weight improve the speed of gait recovery after the brain stroke [1]. The aging population is a common global issue. Unfortunately, the muscle strength is weakening with the age, moreover in the old age the problems with keeping the postural balance are also appearing. There-

18

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Jikun Wang, Linwei Lyu Table 1. Lower limb exoskeletons: list of selected features Tabela 1. Egzoszkielety kończyny dolnej: wykaz wybranych cech

Usage categorization

Device name

Medical application

Application

Control method

Type of the actuators

Active joints

2000

Strength augmentation and movement endurance

Sensor-based position/force/ torque control

Hydraulic actuators

Hip, knee, ankle joints

2018

Increase wearer’s mobility and reduce fatigue

Sensor-based predictive control

Electrical actuators

Hip, knee

MIT Exoskeleton

2005

Load-carrying augmentation

Quasi-passive force/torque control

No active actuators but springs and variable dampers

Hip, knee, ankle

Hybrid Assistant limb (HAL-3)

2000

Assist disabled and elder or rehabilitation

EMG sensorbased predictive control

X1

2012

Gait rehabilitation, and assisted walking, astronaut’s resistance training

Sensor based predictive control

Series elastic rotary actuators

Hip, knee

BCLLE

2016

EEG based predictive control

High torque electric motors

Hip, knee, ankle

BLEEX

Military application

Starting year of the project

ONYX

Rehabilitation of post-stroke paralyzed

quasi-passive control which means that no active actuators are used but springs at ankle and hip joints and a variable damper in the knee joints. The EEG-based control strategy is also applied in BCLLE [33] the exoskeleton which is currently under development, the motions are predicted using the gait patterns recovered from measured EMG or EEG signals. The recent research on EEG based control [24, 31] delivers very promising results. However, such control method is still in the early stage of development and it strongly depends on sensing and sensor’s quality. Table 1 is giving the short overview of the properties of the most representative exoskeletons discussed in this paper.

\'X' - , & - , # V ! {

It is obvious that the researchers designing the exoskeletons must be familiar with the human motion properties [5]. Such knowledge allows to design the joint motion ranges, to select the actuators and motion transmission systems and finally to design the control system such that it will support and not obstruct the intendent movements without forcing the wrong positions or the extreme motion speed. Accordingly, when developing the lower limbs exoskeletons, the knowledge of human gait features is necessary. The leg motion during normal walking gait is divided to the swing and stance phase. The swing phase is the speed demanding, the leg-end moves along curve trajectory and it must be fast enough for avoiding obstacles and being placed on the

Electrical motors

Hip, knee, ankle

ground according to the gait pattern. The supporting phase is torque demanding, the leg must absorb the landing impact and support the body weight. In the normal gait seven stages are distinguished, namely the ‘heel strike’, ‘foot flat’, ‘mid stance’, ‘heel off’, ‘toe off’, ‘mid swing’, ‘heel strike’. The recognition of the gait stages basis on the measured EMG signals is needed for EMG based motion control as it was already mentioned. In our project, we investigated the muscles activity during normal slow walking of a female subject [34] considering barefoot, sneakers shoes and high heel footwear. The EMG signals were recorded for the main muscle groups of the lower limbs according to standards defined in gait monitoring systems. The simple competitive network which not needs the training was clustering the pre-processed discretized EMG signals to the several groups (clusters). It was proved that those clusters are well associated with the gait stages. Fig. 3 is showing the EMG clustering results, in this case the left leg was considered, the gait phases together with visualization of leg position are also given. Showing the results for the left leg allows us to illustrate the stages shift between two legs in the normal, slow gait (note: in both Fig. 2 and 3 the drawings are starting from the double support phase however in the first case the leg goes next to the swing phase, while the left leg stays in support what is shown in Fig. 3). As it can be noticed (Fig. 3) the changes of classes occur mainly in the moments of change of the gait stages (indicated by vertical dotted line) or near to it. It confirms that clustering artificial network can be used for gait stages recognition. Considered gait is fundamental for the exoskeletons dedi-

19


The Research on Exoskeletons with Focus on the Locomotion Support Fig. 2. Processed EMG signals for bare foot. The considered main muscle groups are pointed out Rys. 2. Przetworzone sygnały EMG dla bosej stopy. Zaznaczono wzięte pod uwagę główne grupy mięśni

Fig. 3. The clustering results of the EMG signals. The data concern the left leg. The gait stages are also illustrated Rys. 3. Wyniki grupowania sygnałów EMG. Dane dotyczą lewej nogi. Zilustrowane są też etapy chodu

20

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Jikun Wang, Linwei Lyu cated to rehabilitation. Such gait is also used for detecting the motion impairments and the recovery processes. The details of the methods are given in [36].

5. Conclusions Earlier exoskeletons for military applications, were using rather big hydraulic motors, with the progress in engineering, the electric motors become popular [15, 8]. The military users need light, endurable and flexible exoskeletons. ONYX is the example of such solution; this lower limb exoskeleton is easy to wear, and it is efficient in exploitation [13]. Meanwhile, due to the progress in power supply solutions the operation time is also improving. The challenge of exoskeletons for medical applications is to overcome the system complexity and the high cost. Differently than in the military application the users of medical exoskeletons are usually motion impaired and cannot voluntary produce their movements when keeping the stable posture. They need rigid and actuated assistance for supporting their body weight. Due to the development of efficient batteries, new flexible and light materials and progress in actuating techniques [29] the better solutions are now possible. Artificial muscles [4] are more often applied what allows to adjust the devices better to the human body structure and with reducing its weight. On the other hand, the progress in the sensing techniques and control methods is also very crucial. The refined EMG of EEG sensors provide reliable readings and sophisticated, artificial intelligence-based control algorithms, are associating the sensory data with the motion commands much better than it was years ago. Meanwhile, the cost of exoskeleton is still very high and is over the acceptance level for majority of needing persons. For example, the retail price of HAL was approximately between $14,000 and $19,000 in 2011, moreover the monthly rental fee was estimated to $1000 [12]. It must be concluded that light, durable and not expensive lower limb exoskeletons is the most fundamental demand. In medical field they support rehabilitation, or they offer the walking possibility to the persons with motion disorders. In military or other special applications, they enhance the user’s strength and motion efficiency.

)

The work on this paper was partially supported by National Natural Science foundation of China (No. 11702191), China Postdoctoral Science Foundation (No. 2018M631751). The research of EMG signals was performed at Warsaw University of Technology. The corresponding author is Linwei Lyu.

References 1. Ada L., Dean C.M., Vargas J, Ennis S., Mechanically Assisted Walking with Body Weight Support Results in More Independent Walking than Assisted Overground Walking in Non-Ambulatory Patients Early After Stroke: A Systematic Review, “Journal of Physiotherapy”, Vol. 56, No. 3, 2010, 153–161, DOI: 10.1016/S1836-9553(10)70020-5. 2. Asbeck A., De Rossi S.M.M., Holt K.G., Walsh C.J., A Biologically Inspired Soft Exosuit for Walking Assistance, “The International Journal of Robotics Research”, Vol. 34, No. 6, 2015, 744–762. 3. Barroso F., Santos C., Moreno J.C., Influence of the Robotic Exoskeleton Lokomat on the Control of Human Gait: An Electromyographic and Kinematic Analysis, IEEE 3rd Portuguese Meeting in Bioengineering (ENBENG), Braga, 2013, DOI: 10.1109/ENBENG.2013.6518442.

4. Beyl P., Van Damme M., Van Ham R., Vanderborght B., Lefeber D., Pleated Pneumatic Artificial Muscle-Based Actuator System as a Torque Source for Compliant Lower Limb Exoskeletons, “IEEE/ASME Transactions on Mechatronics”, Vol. 19, No. 3, 2014, 1046–1056, DOI: 10.1109/TMECH.2013.2268942. 5. Chen J., Mu X., Du F., Biomechanics Analysis of Human Lower Limb During Walking for Exoskeleton Design, “Journal of Vibroengineering”, Vol. 19, No. 7, 2017, 5527–5539, DOI: 10.21595/jve.2017.18459. 6. Dhindsa I.S., Agarwal R., Ryait H.S., A Novel Algorithm to Predict Knee Angle from EMG Signals for Controlling a Lower Limb Exoskeleton, CEUR Workshop Proceedings, 2016, 536–541, DOI: 10.18287/1613-0073-2016-1638-536-541. 7. Di Shi, Wuxiang Zhang, Wei Zhang, Xilun Ding, A Review on Lower Limb Rehabilitation Exoskeleton Robots, “Chinese Journal of Mechanical Engineering”, Vol. 32, No. 74, 2019, DOI: 10.1186/s10033-019-0389-8. 8. Dollar A.M., Herr H., Lower Extremity Exoskeletons and Active Orthoses: Challenges and State-of-the-Art, “IEEE Transactions on Robotics”, Vol. 24, No.1, 2008, 144–158, DOI: 10.1109/TRO.2008.915453. 9. Gardner A.D., Potgieter J., Noble F.K., A Review of Commercially Available Exoskeletons’ Capabilities, 24th International Conference on Mechatronics and Machine Vision in Practice, 2017, DOI: 10.1109/M2VIP.2017.8211470. 10. Guizzo E., Goldstein H., The Rise of the Body Bots, “IEEE Spectrum”, Vol. 42, No. 10, 2005. 11. https://exoskeletonreport.com/2015/12/unplugged-powered-suit/ 12. https://www.lexology.com/library/detail.aspx?g=dbe03d2b-fad6-49d2-a72c-ed30845893ef. 13. https://www.lockheedmartin.com/en-us/products/exoskeleton-technologies/military.html 14. https://www.military.com/daily-news/2015/05/21/firmspitch-exoskeletons-and-body-armor-for-socoms-iron-mansuit.html 15. https://www.therobotreport.com/maxon-motor-exoskeleton-joint-actuator/ 16. https://tech.slashdot.org/story/00/03/23/1011217/exoskeletons-for-human-performance-augmentation 17. https://spectrum.ieee.org/automaton/robotics/industrial-robots/sarcos-guardian-xo-powered-exoskeleton 18. https://www.media.mit.edu/groups/biomechatronics/overview/ 19. http://www.freedigitalphotos.net/images/pill-bug-photo-p634175 20. https://www.flickr.com/photos/briangratwicke/17152476067/ 21. Kawamoto H., Lee S., Kanbe S., Sankai,Y., Power Assist Method for HAL-3 Using EMG-Based Feedback Controller, IEEE International Conference on Systems, Man and Cybernetics, Vol. 2, 2003, 1648-1653. 22. Kawamoto H., Sankai Y., Power Assist System HAL-3 for Gait Disorder Person, International Conference on Computers for Handicapped Persons, Helping People Special Needs, Vol. 2398, 2002, 196–203. 23. Kazerooni H., The Berkeley Lower Extremity Exoskeleton, “Field and Service Robotics”, Springer Tracts in Advanced Robotics, Vol. 25, 2006, 9–15, DOI: 10.1007/978-3-540-33453-8-2. 24. Lee K., Liu D., Perroud L., Chavarriaga R., Millánn J. R., A Brain-controlled Exoskeleton with Cascaded Event-Related Desynchronization Classifiers, Robotics and Autonomous Systems, Vol 90, 2017, 15–23, DOI: 10.1016/jarobot.2016.10.068. 25. Mosher R. S., Handyman to Hardiman, SAE Transactions, Vol. 76, 1968, 588–597, DOI: 10.4271/680088.

21


The Research on Exoskeletons with Focus on the Locomotion Support

26. Nicholas Y., Apparatus for Facilitating Walking, U.S. Patent 440.684, 1890. 27. Nicolelis M.A., Brain–machine Interfaces to Restore Motor Function and Probe Neural Circuits, Nature Reviews Neuroscience, Vol. 4, 2003, 417–422. 28. Ogata T., Abe H., Samura K., Hamada O., Nonaka M., Iwaasa M., Higashi T., Fukuda H., Shiota E., Tsuboi Y., Inoue, T. Hybrid Assistive Limb (HAL) Rehabilitation in Patients with Acute Hemorrhagic Stroke, Neurol Med Chir (Tokyo), Vol. 55, No. 12, 2015, 901–906. 29. Park S.J., Park C.H., Suit-type Wearable Robot Powered by Shape-memory-alloy-based Fabric Muscle. Scientific Reports, Vol. 9, No. 9157, 2019. 30. Rea R., Beck C., Rovekamp R., X1: A Robotic Exoskeleton for In-Space Countermeasures and Dynamometry, AIAA SPACE 2013 Conference and Exposition, 2013. 31. Tariq M., Trivailo P. M., Simic M., EEG-based BCI Control Schemes for Lower-Limb Assistive-Robots, Frontiers in Human Neuroscience, Vol. 12, 2018, 312–336.

32. Vukobratovic M., Hristic D., Stojiljkovic Z., Development of Active Anthropomorphic Exoskeletons, Medical and Biological Engineering, Vol. 12, No. 1, 1974, 66–80. 33. Vinoj P. G., Jacob S., Menon V. G., Rajesh S., Khosravi M. R., Brain-Controlled Adaptive Lower Limb Exoskeleton for Rehabilitation of Post-Stroke Paralyzed, IEEE Access 7, 2019, 132628–132648. 34. Wang J., Zielińska T., Gait Features Analysis Using Artificial Neural Networks - Testing the Footwear Effect, Acta of Bioengineering and Biomechanics, Vol. 19, No. 1, 2017, 17–32. 35. Yin Y., Human-Machine Force Interactive Interface and Exoskeleton Robot Techniques Based on Biomechanical Model of Skeletal Muscle, Biomechanical Principles on Force Generation and Control of Skeletal Muscle and their Applications in Robotic Exoskeleton, chapter 4, 2019, 117–134. 36. Zielińska T., Wang J., Two Methods of EMG Analysis for the Purpose of Exoskeletons and Robotic Rehabilitation Devices, ROMANSY 22 – Robot Design, Dynamics and Control, CISM International Centre for Mechanical Sciences, Vol. 584, 2018, 110–117.

4 ' ' . . Streszczenie: W niniejszym artykule podsumowano wyniki badań przeprowadzonych nad egzoszkieletami przeznaczonymi do wspomagania czynności ruchowych. Przedstawiono ich główne cechy, a takşe główne podejścia ich sterowania. Podstawowymi obszarami uşycia egzoszkieletów są zastosowania wojskowe i medyczne. Opisano zwięźle wyniki badań nad aktywacją mięśni podczas chodzenia przez człowieka. Obecne trendy rozwojowe przedstawiono w podsumowaniu. % V . Q ' % =$R% '

Jikun Wang, PhD

Linwei Lyu, PhD

.& ' ORCID: 0000-0002-0201-2844

ORCID: 0000-0003-4874-7480

N ; . ' $ ' . ' F - ' . # ; # 0 . % < # F ' M E % F ' Z ' G < # $ % ; E # 0 . # Z G # 6 < ' E # F # $ ' $ % 0 # X G ' $ E (!?) Z ' / G ' G

22

P

O

M

I

A

R

Y

•

A

U

T

O

M

V V ' F - ' . # < # % N % Z ' G # . .% 0 # 0 E . Z G

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 23–29, DOI: 10.14313/PAR_236/23

- . # M. 0 G . ' F . X G Sharath Kumar Karakkattu Sivanandan, Cezary Rzymkowski ; # 0 . % < # F ' M = . .% > (*% !!E++@ ; % F '

Abstract: The conventional method of coconut plucking followed in coconut farms is arduous as well as a perilous job. There are abounding cases of trauma in which most of them has ended up in the death. Here comes the significant demand for a robot to do this task which would be decisive in mitigating the perils and to meet the everlasting demand of coconut. The foremost intention of the project was to design a climber with a 5 DoF serial chain robot (plucker), which together is supposed to do the coconut climbing and plucking task and also should be available to the farmers at an affordable cost. In the current version, the robot is expected to work complying the commands given by the farmer from the ground who can see the bunch of coconuts through the eyes of robot (cameras) as the robot is not shrewd enough to identify which drupe is ready to be plucked or not. For being cost effective, and light weight, the entire robot skeleton is structured in aluminium alloy with the minimum feasible dimensions of its size and the motor drive selection is also given imperative consideration. 3 V agricultural type robot, serial chain robot, climbing robot, plucking robot, kinematic analysis, FEM analysis

1. Introduction Coconut is one of the most widely produced drupe being a versatile source of food, drink, fiber, cosmetics, etc. recognized as “The Tree of Life� in Philippines. It is produced in over 90 countries worldwide with an average measure of 52 billion nuts annually. The dominant producers of coconut are Indonesia, Philippines, and India being the top 3 leading in the world, while India is having one of its well-governed states in south known in the name of coconut as “Kerala�. The demand for coconut is everlasting due to its diverse uses, whereas the number of workers choosing to work as coconut pluckers are declining day by day because of the heavy risk involved in it as any misjudged step during the work can be fatal. This causes the average production output of the coconut agriculture industry to descend and also the demand for coconut plucking labors to escalate. In the present scenario with an irresistible demand for a coconut plucking robot, designing such a robot would be a helping hand enabling the farmers to use it and thus the yield could be increased by getting deprived of all the detriments aforementio-

) " V X % & ' ) ' (T !* (!(! % ' ' (* !+ (!(!

!

ned. Appropriate selection of drives and other materials for the robot construction will result in a highly cost effective design that makes the robot presentable in medium level markets.

X' 6 The two fundamental duties assigned for the proposed robot design are climbing the coconut palm and plucking a coconut. There are varieties of pole climbing robots that were developed in the past [5, 7, 9, 17], but robots made exclusively for coconut climbing were quite fewer. Various companies manufacture robots for fruit plucking in farms but, they are only used on ground level operation and none of them doing both climbing and plucking task is commercially produced. Boston Dynamics came up with its pole climbing robots RiSE V1 [11], RiSE V2 [12], RiSE V3 [13] as a part of the Rise (Robots in Scansorial Environments) project inspired by biological climbers like lizards and insects (Fig. 1). The three robots are designed to perform the climbing tasks in outdoor natural environment surfaces such as trees and building walls. RiSE V1 is a 6 legged robot equipped with differential mechanism to control its legs by using two motors. RiSE V2 is also a hexapedal robot and is designed exclusively for climbing outdoor surfaces like trees. In the first glance though RiSE V1 and RiSE V2 robots looks similar, RiSE V2 can be considered as a modified version of RiSE V1 with improvements such as the added space availability inside the body which enables it to assemble the battery within it and the increased space between

23


Design of Agricultural Type Coconut Climbing and Plucking Robot Fig. 1. RiSE robots Boston Dynamics: a) Rise V1 [11], b) RiSE V2 [12] and c) RiSE V3 [13] Rys. 1. Roboty RiSE Boston Dynamics: a) RiSE V1 [11], b) RiSE V2 [12], c) RiSE V3 [13]

a)

b)

c)

the most sophisticated model and right now, Stanford III or Gecko Lizard robot (Fig. 2) is the most advanced version. The adhesive feet are using special suction cups and just sticks to smooth surfaces, thanks to Van der Waals forces. Numerous universities and robotic companies have developed several kinds of climbing robots with diverse kinds of climbing mechanisms implemented in them. However, they have not got widespread application in practice as far as the fruit plucking tasks are concerned and thus they are not much popular among the farmers. The climbers are used for close inspection of fruits at the tree top using cameras and are not used for any fruit plucking task. There are several on-ground fruit plucking robots used in practice, for example, the Apple-picking robot (that uses vacuum suckers to pluck the fruits from the tree) by the Abundant Robotics [4] (Fig. 3a) and the first commercial autonomous robot SW6010 [3] to pluck strawberry (Fig. 3b) introduced by a Spanish company Agrobot (AGB) in May 2012. In case of the Spanish robot, based on the maturation and size of the strawberries, harvesting is done with the help of a set of robotic manipulators with high precision to maintain the fruit delicacy and is moved to the packing box through a flexible conveyer system. The robot uses AGvision which has been developed by AGB and adopt artificial intelligence techniques to detect the strawberries. The necessity of a coconut climbing and plucking robot is developing day by day due to the hiking demand of coconut and coconut products and the declining number of coconut plucking workers. Zero human casualty and minimized labor charge can be assured by the introduction of such a robot. Because of lack of commercially produced robots that can both climb the palm tree and pluck the nuts, the robot design

Fig. 2. Climbing robot with sticky feet inspired by Gecko lizard [1] Rys. 2. Robot wspinający się za pomocą przyssawek wzorowanych na łapkach gekona [1]

the legs that avoids any collisions in between them. The RiSE V3 robot is a quadrupedal robot that can climb poles with a greater velocity (up to 22 cm/s) and is designed with both horizontal and vertical climbing capabilities. The requirement of greater power demand which makes the robot to be heavier than its previous two versions is the major impediment to its hassle free operation. Stanford Stickybot [1] is a bio-inspired robot which uses its sticky foot to climb vertical surfaces, inspired from lizard. Continuous improvements are being done on its design to obtain

a) b) Fig. 3. a) The Apple-picking robot by the Abundant Robotics [4], b) SW6010 robot to harvest strawberries [3] Rys. 3. a) Robot do zbierania jabłek firmy Abundant Robotics [4], b) Robot SW6010 do zbioru truskawek [3]

24

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Sharath Kumar Karakkattu Sivanandan, Cezary Rzymkowski proposed in this work, taking into account its moderate cost, could be quite promising solution for the current dilemma in the coconut agriculture industry.

[' 3

The robot is working in a workspace that can be defined in terms of its joint parameters or in terms of the position and orientation of the end effector in the Cartesian space. The kinematic analysis of the robot [15, 16] is essential to define the robot pose in terms of Cartesian parameters or vice versa. The kinematic data is necessary to generate the control signals that are fed to the actuators. The robot has two assemblies which are the climber subassembly (1 DoF) and the plucker sub assembly (5 DoF serial manipulator).

Fig. 5. General view of the 5 DoF serial manipulator with a cutter wheel Rys. 5. Widok ogólny manipulatora szeregowego o 5 stopniach swobody z narzędziem tnącym

[']' 3

& ! #

['X' 3

& !

The kinematics calculation of the climber is simple as it has only one translational degree of freedom (Fig. 4). The climber assembly has mainly two subassemblies, which are the two frames of aluminium alloy that slides over each other. Only 1 DoF is present for the climber assembly, which can be actuated by only one linear actuator. The climber is supposed to do its expected task by gripping the coconut palm using two metallic steel wires connected on the assembly. (Fig. 4). The wire gripper is under a tensile force of the spring of a solenoid actuator. This tensile force keeps the gripper in touch with the tree surface even when the gripper is not holding any weight of the robot. The push-pull solenoid is employed to release the steel wire gripper (upper and lower alternately) from the palm tree surface during moving up and down the tree. A small movement of the solenoid can release the gripper from the surface. The climber make a step along the direction of Z1 and Z2 during climbing up and in opposite direction during climbing down. The step length made by the climber is equal to the stroke produced by the actuator (maximum 400 mm for the selected linear actuator that is employed). During the climb, there can be small slip (0 mm to 15 mm) that can occur due to the irregular surface of the coconut tree bark (Step length = Actuator Stroke – Slip). The climbing up process involves the continuous step up sequence of the frames one after the other till it reaches the required height. The climbing down process is also the same as the climbing up process but in the opposite direction in which the slip is added up to the actuator stroke to give the step length (Step length = Actuator Stroke + Slip).

The plucker is a 5 DoF kinematic serial chain manipulator that has a cutter wheel at its end to cut down the coconut from the coconut palm (Fig. 5).

\' * & ! # The robot is designed to perform its intended task with the least possible weight, low power consumption and maximum performance. The design of all the parts, assemblies and subassemblies are done in Creo 2.0 [2] in which the mechanisms like gears and belts are also used. The robot is divided into two sub-assemblies, the climber (Fig. 4) and the plucker (Fig. 5) for which, the selection of servo motors, linear actuator and push-pull actuator is done based on necessary calculation of torque and force and their technical specifications are also well studied. The plucker manipulator is expected to rotate over a semi-circular path in order to achieve the maximum workspace so that the cutter would be able to reach all the required coconuts. After designing the plucker manipulator, it is placed over the rotating base of the climber assembly and bolted. The rotating base is driven through a circular guideway (depicted in blue colour in Fig. 6). The climber mechanism operates in a step by step process executed in two modes – the climbing mode and the gripping mode. While making a step, the frames never works simultaneously in the same mode as one frame act as climber while other act as gripper and they switch their respective modes in each consecutive steps.

Fig. 4. Displacement of the climber frames of the robot Rys. 4. Przemieszczenie elementów części wspinającej się robota

25


Design of Agricultural Type Coconut Climbing and Plucking Robot Fig. 7. Cutter assembly Rys. 7. Zespół noşa tnącego

Fig. 6. Rotating base Rys. 6. Podstawa obrotowa

Unlike other trees, coconut trunk has no protruding branches or other projections on their trunk and this makes the climb hassle free. The inner surface of the rotating base that comes in touch with the trunk is made in curved shape (Fig. 6) in order to minimise the friction due to surface rubbing. The necessary parts required are selected from leading part manufacturers such as Pittman [14] (servo motors), Nadella [10] (linear and rotational guideways), Iglide [6] (slewing bearing), Meditronik [8] (joystick), etc. The climber is supposed to do its expected task by gripping the coconut palm using a metallic steel wire. Steel is a high strength metal with a tensile strength of 400 MPa which makes is trustable to carry the entire weight of the robot as well as it give the necessary gripping on the tree surface. The cutter assembly (Fig. 7) consists of a DC motor mounted on the clamps to fix it at the end of link 2 (Fig. 8a) and the centre of the cutting wheel coincides with the axis of rotation of the fifth degree of freedom of the plucker manipulator. In order to reduce the weight of the whole robot, light weight metal aluminium alloy is used to build the robot frame for both the climber and the plucker assembly. The low density of aluminium alloy, which is only about one third of the density of the steel, which enables it to achieve high strength to weight ratio and also its corrosion resistance property makes it the apt material for the robot body. The entire robot assembly (Fig. 8b) is obtained by the assemblage of the climber and plucker sub assemblies by means of bolts and nuts which makes it easier for a service personnel to detach them each other in case if any technical malfunction of either climber or plucker occurs. Plucker manipulator is bolted on the rotating base of the climber sub assembly to facilitate the half way rotation of the plucker around the palm.

^' _ ! The robot may go different configurations during its operation and this causes continuous deflection in the forces and moments acting at each point of the robot. The robot is designed to withstand all these fluctuations of force and moment and do the expected task without failure in normal working conditions. The stress, strain and deformations of the designed robot have been thoroughly tested (using the ANSYS 15.0 system) to make sure that all of those values exists within the permitted limit. The worst probable scenarios of maximum deformation that can cause failure of any part of the designed robot were carefully selected and extensive FEM analysis performed. In all the cases, all parameters determining the strength and appropriate stiffness both of individual parts and the overall structure of the robot are found to be in safe range which affirms that the structure is capable of performing the task without failure due to any deformation.

|' 1 The idea of having a robot carrier is significant as it is cumbersome for the operator to carry the robot from tree to tree. Thus it is taken from one palm to another using a trolley (Fig. 9). Once the trolley reaches straight down the tree, the robot can be attached to the tree using the steel wire gripper which is connected to the frame using a key. After attaching the robot on the tree, the operator should move to a safe distance with the trolley in order to prevent the coconut falling on him. Fig. 8. a) Links 1 and 2 occupied with motors in them, b) Full robot assembly Rys. 8. a) Człony 1 i 2 z zabudowanymi w nich silnikami, b) widok całościowy zmontowanego robota

a)

26

b)

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Sharath Kumar Karakkattu Sivanandan, Cezary Rzymkowski

Fig. 9. Trolley carrying the Coconut Climbing and Plucking Robot Rys. 9. Wózek transportowy dla wspinającego się robota do zrywania kokosów

a) b) Fig. 10. Meditronik joystick: a) 30JHK and b) C90JAM [8] Rys. 10. Joysticki Meditronik: a) 30JHK i b) C90JAM [8]

From the safe distance, the operator can view the video streamed by the camera assembled in the plucker manipulator through the display screen. The operator can ask the robot to climb up using the DPDT switch on the control panel on the trolley. Once the robot has attained the necessary height, the plucker can be controlled with the joystick levers by observing the camera view of the robot. To make the control task quite smooth, use of two joysticks is proposed: one to control the orientation of link 1 (e.g. Meditronik, model 30JHK (Fig. 10a) and the second one to control the orientation of link 2, control the rotating base of climber assembly, control the angle of cutter assembly and the cutter on/off control (e.g. Meditronik, model C90JAM (Fig. 10b).

}' & .

The design of an agricultural type coconut climbing and plucking robot has been successfully made which is intended to be available in the market for an affordable price. It is evident from the literature review that there is an undeniable need of such a robot in the current scenario. The kinematics of the robot is defined by considering the robot into two different kinematic structures: the climber and the plucker. Kinematics of the climber is straightforward as it is having only one translational degree of freedom of movement while the rotating base does not have any role in the climbing process. Kinematics of the manipulator has the forward (simple) and the inverse (more complex) calculations. The inverse kinema-

tics calculation starts from the result of the forward kinematics. By the comparison of the appropriate elements of the resultant matrix of the forward kinematics problem with the elements of a generic known matrix, several equations are obtained which on further mathematical calculations lead to the inverse kinematics solution. The kinematically singular configurations of the manipulator were investigated and the solution for the inverse kinematic problem at the singularities was obtained by the suitable combination of some joint angle values that should commensurate with few mathematical conditions. The proposed design of the robot was drawn in Creo 2.0 software [2]. The climber sub-assembly and the plucker sub-assembly were designed separately. The DC motor, rotational servo, push-pull solenoid actuator, linear motor and the control joysticks were selected from the official catalogue and the websites of the leading part manufacturers post performing the necessary calculations to find the moment or force requirements at each joint. Basic simulation tests (in CREO environment) which allowed the assessment of mobility were performed. The finite element method analyses allowed for reducing the masses of robot segments (which is important in the case of a climbing robot) while maintaining adequate rigidity and strength. The construction of the prototype and the performance of experimental tests is planned in the near future (depending on the development of the Cov-19 pandemic). The prototype developed is to serve, among others, as a platform for testing various solutions aimed at creating a fully autonomous robot climbing trees (or poles) for coconut harvesting (but also for other applications) using advanced methods of artificial intelligence. The prototype will be built at the Warsaw University of Technology, where preliminary tests will be carried out. This first phase of testing will be carried out using the ‚model’ tree trunk. Its purpose will be to check the functional capabilities of the robot, such as the effectiveness of climbing and holding in the assumed position, „smoothness” of movement, stability of the entire robot with different (including most demanding) configuration of the arms, the influence of climbing speed and operations performed by the end effector on the quality of movement, etc. After making the necessary corrections taking into account results of the first phase tests, it is planned to organize and conduct the appropriate real tree-top experiments in India, in the state of Kerala (roughly 45% of India’s coconuts are produced there). In coconut farms, the harvest demand would be for a particular stage of maturity. The coconuts on the same bunch are of almost the same level of maturity. So, all the bunches of the required maturity are cut down. From one palm, there would only be maximum of three of four bunches of coconuts to pluck. That means only three or four stems are only needed to be cut from a single tree. The more mature bunches are at the bottom and the less mature ones are at the top. The majority of the coconut agriculture industry aims for the coconut oil and milk production and thus they need 10 to 12 months old coconuts, which hangs comparatively lower to the other coconut bunches. Reaching out for the main stem is easy while it is difficult to cut down individual coconuts from a thick bunch. In order to get more outreach, mini reciprocating saw blades or mini chainsaw cutters can be employed. Though the paper concentrates only on a user operated robot design, the robot can be made fully automatic by adding more advanced control system and training it to climb and pluck. The climbing task is quite easy while the plucking task is hard as the robot does not know which fruit is ready to be plucked and which is not. This is determined according to the requirement of the farmer. The uses of coconut is defined by its level of

27


Design of Agricultural Type Coconut Climbing and Plucking Robot maturity, which can be described in seven stages of its growth form stage 1 (Poppers stage, 7 months old) when coconut shell is full of water and is used as a wonderful refreshing drink to stage 7 (Sprouters stage, 14 to 20 months old) — the stage of the coconut which can grow to a fully matured coconut palm provided the sufficient nutrition is available. There are several techniques to identify if the coconut is ready by which the improved version of the robot can be equipped with which will it be capable of making decisions of its own automatically. The plucker manipulator can reach all the points in its workspace while some of the combinations of position and orientation are unachievable which causes the inverse kinematics solution give irrelevant outputs. When the robot is fully automatic, it by itself defines its poses and trajectories to do the task in terms of the task space parameters which is then be transformed to the joint space parameters in order to generate the appropriate control signals for the servo motors. To get rid of the issue in inverse kinematics, the manipulator can be fitted with a spherical wrist end effector which makes any position-orientation combination achievable within its workspace. In the proposed design, the power supply to the robot is provided by auto-rewind power chord which unwinds when climbing up and rewinds when climb down. By the advancements of battery technologies in future, more powerful batteries of less weight can be used to power up the robot which makes it a wireless robot.

5. Guo J., Justham L., Jackson M., Parkin R., A Concept Selection Method for Designing Climbing Robots, “Key Engineering Materials�, Vol. 649, 2015, 22–29, DOI: 10.4028/www.scientific.net/KEM.649.22. 6. INGUS — Maintenance-free iglide plain bearings, [www. igus.com/iglide/plain-bearing]. 7. Lam T.L., Xu Y.S., Tree Climbing Robot: Design, Kinematics and Motion Planning, Springer, 2012, ISSN 1610-7438. 8. MEDITRONIK LTD., [www.meditronik.com.pl/_add/english.html]. 9. Miripour-Fard B., Climbing and Walking Robots, IntechOpen, 2010, ISBN 978-953-307-030-8 10. NADELLA Group – The Specialist for Motion Technology, [www.nadella.com]. 11. RiSE V1 Climbing Robot, Kod*lab a subsidiary of the Penn Engineering GRASP Lab (in collaboration with Boston Dynamics, Inc.), [https://kodlab.seas.upenn.edu/past-work/rise/risev1] 12. RiSE Robotic Hexapod Version 2.0, Kod*lab a subsidiary of the Penn Engineering GRASP Lab (in collaboration with Boston Dynamics, Inc.), [https://kodlab.seas.upenn.edu/past-work/rise/risev2]. 13. RiSE Version 3 Prototype, Kod*lab a subsidiary of the Penn Engineering GRASP Lab (in collaboration with Boston Dynamics, Inc.), [https://kodlab.seas.upenn.edu/past-work/rise/risev3]. 14. Servo Components — Pittman DC Motors & Other Products, [www.servocomponents.com/pittman-brush-and-brushless-servo-motors]. 15. Siciliano B., Sciavicco F., Villani L., Oriolo G., Robotics — Modelling, Planning and Control, Spriger, 2009, ISBN 978-1-84628-641-4. 16. Spong M.W., Hutchinson S., Vidyasagar M., Robot Dynamics and Control, John Wiley & Sons Inc., 2006, ISBN-13: 978-0-471-64990-8. 17. Zhang D., Wei B., Robotics and Mechatronics for Agriculture, CRC Press, 2017, ISBN-13: 978-1138702400.

6 & 1. Climbing Robot „Stickybot�, National Science Foundation, [www.nsf.gov/news/mmg/mmg_disp.jsp?med_id=69038]. 2. Creo Parametric 3D Modeling Software, PTC, [www.ptc.com/en/products/cad/creo/parametric]. 3. Fruit Picking Robots — SW 6010 to harvest strawberries, [www.intorobotics.com/fruit-harvesting-robots]. 4. Google Hopes Investment in AgTech Bears Fruit, [https:// thespoon.tech/google-hopes-investment-in-agtech-bears-fruit].

F H . ' G . ' J Streszczenie: Konwencjonalna metoda zrywania orzechów stosowana na uprawach kokosów jest męcząca i ryzykowna. Często dochodzi do wypadków prowadzących nawet do śmierci. Pojawia się zatem istotna potrzeba zastąpienia pracy ludzkiej przez odpowiednio skonstruowane roboty — pozwoli to na rozwiązanie problemów związanych z zagroşeniami, przy zapewnieniu poziomu produkcji odpowiadającego ciągłemu popytowi na orzechy kokosowe. Głównym celem pracy było opracowanie projektu robota modułowego — mobilnej wspinającej się po pniu platformy transportującej część wykonawczą (robota o pięciu stopniach swobody), której zadaniem jest odcinanie kiści orzechów. Robot powinien być moşliwie tani, aby był dostępny dla szerokiej grupy rolników. W wersji, będącej przedmiotem pracy, robot będzie pracował pod nadzorem rolnika pozostającego na ziemi, który będzie decydował, na podstawie obserwacji wizualnej przekazywanej przez kamerę zainstalowaną na końcówce robota, które orzechy nadają się do zerwania. Dla zapewnienia niskiego kosztu i małej masy, szkielet robota jest zbudowany ze stopu aluminium o minimalnych moşliwych wymiarach zapewniających jednak odpowiednią sztywność i wytrzymałość. Podobne warunki wzięto pod uwagę przy wyborze silników. % V G ' Q % G . % G H % J % % $=

28

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Sharath Kumar Karakkattu Sivanandan, Cezary Rzymkowski

Sharath Kumar Karakkattu Sivanandan, MSc

prof. Cezary Rzymkowski, PhD, DSc

B(&. ORCID: 0000-0003-2447-8765

& ' ORCID: 0000-0003-1131-8113

Z ' 4= K(!?@L $ . . # M % 6 ' ' $ K(!?BL M ' G # ; # 0 . % F ' Z # ' G . % % G G ' Z E 4= . ' ' ' ' ## E . G ' ' . # - G 4 . K ' G G L ' ' ' # G . '

Z # ' Z ' # ^ # = . . ' 4 V G K^ =4L 6 # M ' M ' $ % ; # 0 . K; 0L Z ' $ K?BT)L [< ' E 0 . \ # < # M ' F ' $ E K; 0L% F - K?B))L _X G ' M \ ' - K(!?*L _$ \ # < # F ' M = . . K; 0L Z / ' # G K G # A L% # ' . # % EG ' ' % A ' Z ' # '% # ' ' G =

29


NR 3/2015

30

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 31–38, DOI: 10.14313/PAR_236/31

' $ ' ' ` J ' ' Krzysztof Tomczyk F " % ; ' 6 O = " % ; (*% ?E?@@ " J

Streszczenie: Artykuł przedstawia zastosowanie metody Monte Carlo do parametrycznej identyfikacji akcelerometrów w dziedzinie częstotliwości. Omówione zostały dwie metody identyfikacji: intuicyjna, realizowana wyłącznie w oparciu o punkty pomiarowe charakterystyki amplitudowo-częstotliwościowej i bazująca na klasycznej metodzie najmniejszych kwadratów oraz procedura oparta na punktach pomiarowych obu charakterystyk częstotliwościowych (amplitudowej i fazowej), realizowana przy wykorzystaniu uogólnionej metody najmniejszych kwadratów. Przedstawiono wyniki identyfikacji dla wybranego akcelerometru typu Althen 731-207, a dla potrzeb realizacji obu metod identyfikacji zastosowano oprogramowanie Mathcad 14. $ V ' $ % ' ` %

1. Wprowadzenie Identyfikacja parametryczna [1, 2] akcelerometrów ma istotne znaczenie z punktu widzenia ich wzorcowania,ukierunkowanego głównie na wyznaczenie wartości czułości napięciowej [3–5]. Istnieją równieş przypadki, gdzie identyfikacja realizowana jest w celu wyznaczenia pozostałych dwóch parametrów związanych z matematycznym modelem akcelerometru, tj. współczynnika tłumienia i częstotliwości (pulsacji) drgań własnych nietłumionych [6]. Przykładowo moşna tu przytoczyć procedury realizujące algorytmy odtwarzania sygnałów pomiarowych [7]. Z punktu widzenia technicznych moşliwości, najczęściej aplikowana jest identyfikacja oparta o punkty pomiarowe wyłącznie charakterystyki amplitudowo-częstotliwościowej [1, 2, 8]. Z oczywistych względów jest ona mniej dokładna w porównaniu z identyfikacjąopartąna równoczesnym pomiarze obu charakterystyk częstotliwościowych, która bazuje na procedurze przedstawionej w publikacji [3] oraz w przewodniku JCGM [4]. Procedury te wymagają realizacji tzw. reparametryzacji funkcji przejścia akcelerometru, która w wielu przypadkach moşe okazać się kłopotliwa pod względem obliczeniowym. W artykule zaproponowano dwie procedury identyfikacji akcelerometrów. Pierwsza, dedykowana jest dla przypadków,

) " V " # 0 % & ' ) ' (+ ! (!(! % ' ' () !@ (!(!

!

gdy dysponujemy wyłącznie punktami pomiarowymi charakterystyki amplitudowo-częstotliwościowej. Procedura ta bazuje na algorytmie przedstawionym w publikacjach [8, 9] i rozszerzona została o rozwiązania dotyczące wyznaczenia niepewności [5] parametrów modelu akcelerometru. Druga procedura oparta jest o rozwiązania zawarte w publikacji [3] izostała zmodyfikowana w taki sposób, aby uniknąć konieczności realizacji reparametryzacji funkcji przejścia. W tym celu wykorzystano rozwiązania przedstawione w publikacjach [1, 2, 10], dotyczące porównania transmitancji widmowej modelu akcelerometru ztransmitancją uzyskaną na podstawie punktów pomiarowych obu charakterystyk częstotliwościowych. Przedstawione w ponişszym artykule procedury wykorzystują metodę Monte Carlo (MC) [11, 12], przy czym pierwsza oparta jest naklasycznej metodzie najmniejszych kwadratów (KMNK), natomiast druga realizuje uogólnioną metodę najmniejszych kwadratów (UMNK) [4, 5]. Dla potrzeb numerycznejimplementacji metody MC, zastosowano generator liczb pseudolosowych o rozkładzie normalnym [13–15].

X'

Akcelerometr jest czujnikiem pomiarowym, ktĂłrego sygnaĹ‚ wyjĹ›ciowy jest proporcjonalny do przyspieszenia mierzonych drgaĹ„. Na rys. 1 przedstawiono mechaniczny model akcelerometru, ktĂłry opisywany jest rĂłwnaniem róşniczkowym

mu (t ) + ry (t ) + ky(t ) = 0,

(1)

gdzie: m [kg] – masa sejsmiczna; r [kg/s] – współczynnik tłumienia (tarcia) wiskotycznego; k [N/m] – stała spręşyny; mu (t ) – moment bezwładności; ry (t ) – moment tłumienia; ky(t) – moment elastyczności [6].

31


& " "

8 % = A %= % L % h" % i

Uwzględniając w (1) bezwzględne przemieszczenie masy:

mamy

u(t) = x(t) + y(t),

(2)

my (t ) + ry (t ) + ky(t ) = −mx (t ).

(3)

2 βω

Ď•(ω ) = −arctg

gdzie: x(t) – wymuszenie (wibracje); y(t) – względne przemieszczenie masy.

ω0 ⎛ω ⎞ 1− ⎜ âŽ&#x; âŽ? ω0 âŽ

PrzyrĂłwnujÄ…c do zera pochodnÄ…

2

.

(11)

d ⎥A(ω )⎤⎌ , mamy dω ⎣

(12)

a po jej uproszczeniu, ostatecznie otrzymujemy 2

⎛ω ⎞ 2 ⎜ âŽ&#x; − 1 + 2 β = 0. âŽ? ω0 âŽ

Rys. 1. Mechaniczny model akcelerometru Fig. 1.Mechanical model of accelerometer

Na podstawie (13) moşna łatwo wyznaczyć relację określającą pulsację rezonansową

Dzieląc obie strony równania (3) przez m i dokonując podstawień:

ω0 = 2Ď€ f0 = k / m , β =

ωr = 2Ď€ fr = ω0 1 − 2β 2 ,

(4)

r

0 < β <1

2,

(14)

natomiast wartość rzędnej odpowiadająca wr, określa szczyt rezonansowy

(5)

2 km

(13)

(15)

i S = m/k,

(6)

y (t ) + 2 βω0y (t ) + ω02y(t ) = −S ω02x (t ),

(7)

otrzymujemy

gdzie: f0 – czÄ™stotliwość drgaĹ„ wĹ‚asnych nietĹ‚umionych [Hz]; b – współczynnik tĹ‚umienia (bezwymiarowy); S – czuĹ‚ość napiÄ™ciowa akcelerometru [V/ms–2]. BiorÄ…c pod uwagÄ™, Ĺźe czÄ™stotliwość f0 powiÄ…zana jest z czuĹ‚oĹ›ciÄ… napiÄ™ciowÄ… akcelerometru, stÄ…d wymiar parametrĂłw po obu stronach rĂłwnania (7) jest rĂłwnowaĹźny. PrzedstawiajÄ…c rĂłwnanie (7) w dziedzinie s, mamy s Y (s) + 2 βω0sY (s) + ω Y (s) = −S ω s X (s). 2

2 0

2 2 0

Rys. 2. Przykładowa charakterystyka amplitudowo-częstotliwościowa akcelerometru Fig. 2. Example of the amplitude-frequency accelerometer response

(8)

Funkcja przejścia akcelerometru ma zatem postać

K (s) =

Y (s) −S ω02 , = 2 2 s X (s) s + 2 βω0s + ω02

s = j ω = 2π f

Na Rys. 2 przedstawiono przykładową charakterystykę amplitudowo-częstotliwościową (10) z zaznaczonymi parametrami wr i Mr. W wyniku przekształcenia relacji (15), mamy

(9)

i określa jego matematyczny model. Charakterystyki amplitudowo-częstotliwościowa i fazowo-częstotliwościowa, wyznaczane są odpowiednio jako moduł i faza z transmitancji widmowej K(j ):

(16)

a przez podstawienie (16) do (14), otrzymujemy (10) (17)

32

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Krzysztof Tomczyk Równania (16) i (17) umoşliwiają identyfikację parametrów akcelerometru na podstawie jego charakterystyki amplitudowo-częstotliwościowej, zdefiniowanej przez równanie (10).

Wartości parametrów minimalizujących błąd zostały oznaczone ponişej przez: Sopt, M ropt i ωropt .

3.5. Wybór rodzaju generatora liczb pseudolosowych Na podstawie Rys. 4 moşna przypuszczać, şe dla parametrów modelu (9) bliskich wartościom: Sint, M rint i ωrint istnieje największe prawdopodobieństwo uzyskania rozwiązań: Sopt, M ropt i ωropt . Uzasadniony wydaje się zatem wybór generatora o rozkładzie normalnym – Rys. 5.

[' 2 & ! ! Y Procedura identyfikacji parametrycznej akcelerometru wyłącznie w oparciu o punkty pomiarowe charakterystyki amplitudowo-częstotliwościowej składa się z następujących kroków:

3.1. Podstawienie relacji (16) i (17) do równania (10). Uzyskuje się w ten sposób zaleşność funkcyjną: w, S, Mr, wr → A(w).

3.2. Oszacowanie w sposób intuicyjny, na podstawie punktów pomiarowych charakterystyki amplitudowo-częstotliwościowej, przyblişonych wartości parametrów: S int, M rint i ωrint – Rys. 3 [8, 9].

Rys. 5. Zastosowanie generatora o rozkładzie normalnym do realizacji losowań MC Fig. 5. Application of a generator with a normal distribution for execution of the MC draws

Przewodnik [4] rekomenduje zastosowanie generatora o rozkĹ‚adzie normalnym (Gaussa) typu Box-Muller. Realizacja numeryczna tego typu generatora obejmuje dwa gĹ‚Ăłwne kroki: − niezaleĹźne generowanie zmiennych losowych: r1 i r2 z rozkĹ‚adu rĂłwnomiernego U(0, 1). PrzykĹ‚adowo, w programie Mathcad, moĹźliwa jest generacja liczb pseudolosowych o rozkĹ‚adzie rĂłwnomiernym za pomocÄ… funkcji runif. − wyznaczenie liczby o rozkĹ‚adzie normalnym N(0, 1) x = −2 ln r1 cos(2Ď€ r2 ).

Rys. 3. Przykład oszacowania parametrów: S int, M rint, i ωrint Fig. 3.Example of estimation of the parameters: Sint, M rint and ωrint

(19)

− realizacja transformacji: N (0, 1) → N (x , Ďƒ ), zgodnie z formuĹ‚Ä…

X = x â‹…Ďƒ + x,

3.3. Wyznaczenie liczby M losowań MC. Minimalna liczba M

(20)

określana jest przez relację

M =

gdzie x i Ďƒ oznaczajÄ… odpowiednio: Ĺ›redniÄ… i odchylenie standardowe zmiennej x.

4

10 , 1− p

(18)

gdzie p oznacza przyjęty poziom ufności (zazwyczaj p = 0,95) [4]. Dla p = 0,95 minimalna liczba losowań MC wynosi: M = 2 × 105.

3.4. Ustalenie, symetrycznych względem wartości: S , M int

int r

i ωrint , przedziaĹ‚Ăłw losowania parametrĂłw: S, Mr i wr – Rys. 4. NaleĹźy siÄ™ spodziewać, Ĺźe w ustalonych przedziaĹ‚ach losowania zawarte bÄ™dÄ… takie wartoĹ›ci parametrĂłw modelu (9), dla ktĂłrych uzyska siÄ™ minimalnÄ… wartość Ĺ›redniokwadratowego bĹ‚Ä™du aproksymacji punktĂłw pomiarowych.

3.6. Wyznaczenie macierzy ÎŚ na podstawie punktĂłw pomiarowych charakterystyki amplitudowo-czÄ™stotliwoĹ›ciowej ⎥ A ω0 ⎤ ! A ω0 0 M −1 ⎼ ⎢ ⎼, (21) ÎŚ=⎢ # % # ⎢ ⎼ ⎢A ω ⎼ ! A ωN −1 N −1 ⎢⎣ 0 M −1 ⎼ ⎌

( )

(

( )

)

(

)

gdzie N jest liczbą punktów pomiarowych charakterystyki A(w). Macierz Ό wyznaczana jest przez podstawienie do równania (10), dla poszczególnych pulsacji wn (gdzie n = 0, 1, ‌, N – 1), wartości parametrów: Sm, M rm i ωrm , uzyskanych dla kolejnych losowań m = 0, 1, ‌, M – 1.

3.7. Wyznaczenie macierzy błędów aproksymacji

( )

( )

⎥ A ω0 ⎤ ! A ω0 0 M −1 ⎼ ⎢ ⎼, Δ=⎢ # % # ⎢ ⎼ ⎢A ω ⎼ ω ! A N −1 N −1 ⎼ 0 M −1 ⎌ ⎣⎢

(

( )

Rys. 4. Przykład ustalenia przedziałów losowania parametrów: S, Mr i ωr Fig. 4. Example of determination of the draw ranges for parameters: S, Mr and ωr

( )

)

(

(22)

)

( )

gdzie: A ωn = A ωn − A ωn . Kolejne wiersze macierzy Δ m m odzwierciedlajÄ… bĹ‚Ä™dy aproksymacji dla poszczegĂłlnych pulsacji.

33


& " "

8 % = A %= % L % h" %

3.8. Wyznaczenie wektora błędów aproksymacji Δ

Sk =

∑

2

m

Δ ,

\' 2 & ! # ! !

(23)

którego elementy stanowią sumę kwadratów błędów dla poszczególnych kolumn macierzy Δ.

Przedstawmy funkcję przejścia (9) w postaci

Δ 3.9. Wyznaczenie minimalnej wartości Skmin dla wektora

a0 , 1 + a1 j ω − a2ω 2

K (ω, θ) =

SkΔ oraz odnośnego numeru losowania mmin. Parametry: Δ , przyjSopt, M ropt i ωropt , odpowiadające wartości Skmin muje się jako optymalne rozwiązanie zadania aproksymacji punktów pomiarowych charakterystyki amplitudowo-częstotliwościowej akcelerometru.

(30)

gdzie

⎥ θ = ⎥⎣a0 a1 a2 ⎤⎌ = ⎢ −S ⎣

3.10. Wyznaczenie wartości: b opt i ω0opt na podstawie relacji (16) i (17).

1 ⎤ ⎼. ω02 ⎌

2β ω0

(31)

Na podstawie punktów pomiarowych charakterystyk: amplitudowej A(wn) i fazowej Ό(wn), moşna określić transmitancję widmową

3.11. Wyznaczenie niepewności aproksymacji metodą MC, zgodnie z formułą

u(MC) =

2 1 M −1 ∑ ⎥SkmΔ − Sk Δ ⎤⎌ , M (M − 1) m = 0 ⎣

(24)

(32) Zapiszmy (32) w postaci

gdzie wartość średnia określana jest przez (33) Sk Δ =

1 M

∑

M −1 m =0

gdzie:

SkmΔ .

(25)

R(ωn ) = A −1(ωn ) cos[ÎŚ(ωn )],

3.12. Wyznaczenie niepewności: u(Sopt), u (M ropt ) i u (ωropt ) dla opt

poszczegĂłlnych parametrĂłw: S , M o relacjÄ™:

u(x ) =

opt r

I (ωn ) = −A −1(ωn ) sin[ÎŚ(ωn )]

i ω , w oparciu opt r

oznaczają odpowiednio składową rzeczywistą i urojoną.

2 1 M −1 ⎥x − x ⎤⎌ , ∑ m =0 ⎣ m M (M − 1)

(26)

Przedstawmy transmitancjÄ™ (30) w relacji do poszczegĂłlnych pulsacji wn. Mamy wtedy

gdzie 1 x = M

∑

(34)

K (ωn , θ) =

M −1

(27)

x . m =0 m

a0 . 1 + a1 j ωn − a2ωn2

(35)

Zapiszmy prawÄ… stronÄ™ rĂłwnania (33) w postaci [1, 2, 10]

3.13. Wyznaczenie niepewności złoşonych: u(bopt) i u (ω0opt ) dla parametrów b opt i ω0opt w oparciu o relacje

R(ωn ) + jI (ωn ) = ξ R (ωn ) + j ξ I (ωn ),

(36)

ξ R (ωn ) = a0 + a1ωnI (ωn ) + a2ωn2R(ωn )

(37)

Îľ I (ωn ) = −a1ωnR(ωn ) + a2ωn2I (ωn ).

(38)

gdzie: 2

u( β

opt

⎥ ∂β ⎤ ⎥ ∂β ⎤ ) = ⎢ â‹… u(S opt )⎼ + ⎢ â‹… u(M ropt )⎼ ⎣ ∂S ⎌ ⎣ ∂M r ⎌

2

(28) i

i 2

2

2

⎥ âˆ‚Ď‰ ⎤ ⎥ âˆ‚Ď‰ ⎤ ⎥ âˆ‚Ď‰ ⎤ u(ω ) = ⎢ 0 â‹… u(S opt )⎼ + ⎢ 0 â‹… u(M ropt )⎼ + ⎢ 0 â‹… u(ωropt )⎼ , S M ω ∂ ∂ ∂ ⎣ ⎌ ⎣ r ⎌ ⎣ r ⎌ opt 0

Oznaczmy dodatkowo przez

⎥1 Ν = ⎣⎥Ν0 Ν1 Ν2 ⎌⎤ = ⎢ ⎣S

(29) gdzie pochodne czÄ…stkowe:

∂β ∂β wyznaczane sÄ… na pod, ∂S ∂M r

stawie (16), natomiast pochodne:

P

O

M

I

âˆ‚Ď‰0 âˆ‚Ď‰0 âˆ‚Ď‰0 i wyzna, âˆ‚Ď‰r ∂S ∂M r

A

R

Y

•

A

U

T

O

M

(39)

Wartości elementów wektora l, dla których uzyskuje się minimalną wartość błędu równoczesnej aproksymacji obu charakterystyk częstotliwościowych akcelerometru, wyznacza się w oparciu o UMNK, zgodnie z równaniem [3, 4]

czane sÄ… w oparciu o (17), zgodnie z wytycznymi zawartymi w przewodniku [5].

34

1 ⎤ ⎼. S ω02 ⎌

β S ω0

(

Ν = Ψ T Σ -1 Ψ

A

T

Y

K

A

•

R

O

B

O

)

T

-1

Ψ T Σ -1 Y,

Y

K

A

(40)

NR 2/ 20 20


Krzysztof Tomczyk

gdzie 2N-wymiarowy wektor Y wyznaczany jest w oparciu o relację (36), zgodnie z formułą

YT = [R(ω0 ) I (ω0 ) R(ω1 ) I (ω1 ) ! R(ωn ) I (ωn )] (41) Macierz Ψ o wymiarze 2N × 3 ma postać

Ψ T = ⎡⎣ Ψ T0

Ψ1T ! Ψ NT −1 ⎤⎦

(42)

gdzie poszczególne jej składowe wynoszą ⎡ ⎤ 1 0 ⎢ ⎥ Ψ T = ⎢ ωnI (ωn ) −ωnR(ωn )⎥ ⎢ ⎥ ⎢ω 2R(ω ) ω 2I (ω ) ⎥ n n n ⎦ ⎣ n

n = 1, 2, ! , N

⎡ ⎤ ⎢ 1 ⎥ ⎢ λ ⎥ ⎡ S ⎤ ⎡S opt ⎤ ⎢ 2 ⎥ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ λ θ = ⎢ β ⎥ = ⎢ β opt ⎥ = ⎢ 1 ⎥ . ⎥ ⎢ λ λ ⎥ ⎢ ⎥ ⎢ ⎢ω ⎥ ⎢ω opt ⎥ ⎢ 0 2 ⎥ ⎣ 0⎦ ⎣ 0 ⎦ ⎢ λ 0 ⎥⎥ ⎢ ⎢⎣ λ 2 ⎥⎦

(47)

Niepewności związane z wyznaczonymi za pomocą UMNK parametrami: S opt, b opt i ω0opt , określa się za pomocą metody MC. Procedura wyznaczania tych niepewności obejmuje cztery główne kroki obliczeniowe: (43)

4.1. Wyznaczenie wektora losowego λˆm = λ + ε m ,

m = 0, 1, ! , M ,

(48)

i wyznaczane są w oparciu o relacje (37) i (38). Macierz Σ, występująca w równaniu (40), ma wymiar 2N × 2N i jest macierzą kowariancji o postaci:

gdzie e jest 3-wymiarowym wektorem, losowanym z wielowymiarowego rozkładu normalnego o funkcji gęstości prawdopodobieństwa T ⎧ 1 ⎫ exp ⎨− ⎡⎣X − X ⎤⎦ Σ u−1 ⎡⎣X − X ⎤⎦ ⎬ 2 ⎩ ⎭, f (X) = 1/ 2 3/ 2 (2π ) Σ u

(49)

(44) natomiast X i Σ u oznaczają odpowiednio: wartość średnią o zerowej wartości i macierz kowariancji o postaci Σu = (ΨT Σ–1 Ψ) –1.

(50)

Wektor X, występujący w (49), wyznaczany jest na podstawie tzw. dekompozycji Choleskiego, zapewniającej spełnienie warunku

gdzie:

XXT = Σu.

(51)

4.2. Wyznaczenie macierzy na podstawie wektora losowego (45)

i

ˆ Λ 3, m

(46)

Wariancje (45) i (46) wyznaczane są na podstawie równań (34), natomiast u(A(wn)) i u(Φ(wn)), są niepewnościami standardowymi związanymi z punktami pomiarowymi obu charakterystyk częstotliwościowych: A(wn) i Φ(wn). Estymaty dla wektora q – relacja (31),wyznacza się na podstawie formuły (39). Mamy wtedy

⎡ ⎤ ⎢ ⎥ 1 ⎢ ˆ ⎥ ⎢ λ 2m ⎥ ˆ ⎤ ⎢ ⎥ ⎡Λ 0, m ⎥ ⎢ ⎥ ⎢ λˆ 1m ⎥. ˆ ⎥=⎢ = ⎢Λ 1, m ⎢ ⎥ ⎢ ˆ ˆ ⎥ ⎢ ˆ ⎥ ⎢ λ0m λ2m ⎥ ⎥ ⎣ Λ 2, m ⎦ ⎢ ⎢ ⎥ ˆ ⎢ λ0m ⎥ ⎢ ⎥ ˆ ⎣⎢ λ2m ⎥⎦

(52)

4.3. Wyznaczenie macierzy kowariancji ⎡ σ 02 σ 01 σ 02 ⎤ ⎢ ⎥ Σ Λˆ = ⎢σ 10 σ 12 σ 12 ⎥ , ⎢ ⎥ 2 ⎥ ⎢σ σ σ 21 2 ⎦ ⎣ 20

(53)

ˆ , gdzie na podstawie wektora Λ

35


& " "

8 % = A %= % L % h" %

M −1 2 1 ∑ ⎥xm − x ⎤⎌ , M (M − 1) m = 0 ⎣

(54)

M −1 1 ∑ ⎥xm − x ⎤⎌ ⎥⎣ym − y ⎤⎌ , M (M − 1) m = 0 ⎣

(55)

Ďƒ x2 = i

Ďƒ xy =

natomiast x i y są wartościami średnimi, wyznaczonymi odpowiednio dla wektorów x i y.

4.4.

Rys. 6. Wynik aproksymacji punktów pomiarowych charakterystyki amplitudowo-częstotliwościowej Fig. 6. Result of the measuring points approximation for the amplitudefrequency response

Wyznaczenie wektora u(θ ), ktĂłrego poszczegĂłlne elementy stanowiÄ… niepewnoĹ›ci estymat θ parametrĂłw modelu akcelerometru [3]

⎥ u(S ) ⎤ ⎥u(S opt ) ⎤ ⎼ ⎢ ⎼ ⎢ u(θ )Ăľ= ⎢ u(β ) ⎼ = ⎢u(β opt )⎼ = diag(ÎŁ Λˆ ). ⎼ ⎢ ⎼ ⎢ ⎢u(ω )⎼ ⎢u(ω opt )⎼ 0 0 ⎣ ⎌ ⎣ ⎌

i bazujÄ…cej na KMNK. AproksymacjÄ™ zrealizowano poprzez podstawienie parametrĂłw Sopt, b opt i ω0opt = 2Ď€ f0opt do rĂłwnania (10). Niepewność u(MC) aproksymacji metodÄ… MC wynosi 0,025 V/V, natomiast niepewnoĹ›ci dla poszczegĂłlnych parametrĂłw: Sopt, M ropt i ωropt , wyznaczone za pomocÄ… formuĹ‚y (26), wynoszÄ… odpowiednio: u(Sopt) = 7,043 Ă— 10–4 V/ms–2, u(M ropt ) = 1, 41 Ă— 10−3 V ms −2 i u( fropt ) = 4 Hz. Z kolei niepewnoĹ›ci zĹ‚oĹźone, wyznaczone w oparciu o relacje (28) i (29), wynoszÄ…: u(b opt) = 2,816 Ă— 10–4 i u( f0opt ) = 1 Hz. W wyniku zastosowania, w odniesieniu do obu charakterystyk czÄ™stotliwoĹ›ciowych, opisanej w punkcie 4 metody MC bazujÄ…cej na UMNK, uzyskano nastÄ™pujÄ…ce wartoĹ›ci parametrĂłw: Sopt = 0,992 V/ms–2, b opt = 0,255 i ω0opt = 2383 Hz. Zastosowano analogicznÄ… jak w przypadku KMNK liczbÄ™ losowaĹ„ MC rĂłwnÄ… 2 Ă— 105. Rysunek 7 przedstawia wynik aproksymacji (w skali logarytmicznej) punktĂłw pomiarowych obu charakterystyk czÄ™stotliwoĹ›ciowych: amplitudowej A(f) i fazowej j(f).

(56)

^' PoniĹźej przedstawiono przykĹ‚ad zastosowania procedur omĂłwionych w punktach 3 i 4,dlapotrzeb identyfikacji akcelerometru Althen 731-207 [16]. W Tabeli 1 zestawiono punkty pomiarowe charakterystyk amplitudowo-czÄ™stotliwoĹ›ciowej A(f) i fazowo-czÄ™stotliwoĹ›ciowej j(f), wyznaczonych za pomocÄ… metody pomiarowej ‘back-to-back’ [17]. Jako wzorzec dla tej metody zastosowano akcelerometr typu BrĂźel & KjĂŚr 8305 [18]. Na podstawie przykĹ‚adu z rys. 3, dla punktĂłw pomiarowych charakterystyki amplitudowowej, zaĹ‚oĹźono nastÄ™pujÄ…ce wartoĹ›ci intuicyjne: S int = 1 V/ms –2, M rint = 2 V / ms −2 oraz frint = 2, 5 kHz. NastÄ™pnie, na podstawie przykĹ‚adu z Rys. 4, ustalono zakresy zmiennoĹ›ci (wartoĹ›ci minimalne i maksymalne) dla wszystkich trzech powyĹźszych parametrĂłw: Smin = 0,9 V/ms–2, Smax = 1,1 V/ms–2, M rmin = 1, 8 V / ms −2 , M rmax = 2, 2 V / ms −2 , frmin = 2, 0 kHz i frmax = 3, 0 kHz. Zastosowano generator liczb pseudolosowych typu Box-Muller realizujÄ…cy 2 Ă— 105 losowaĹ„ MC. Uzyskano nastÄ™pujÄ…ce rezultaty symulacji MC: mmin = 10 908, Sopt = 0,982 V/ms–2, b opt = 0,257 i jako wynik implementacji w programie Mathcad 14 procedury przedstawionej w punkcie 3. Na Rys. 6 przedstawiono wynik aproksymacji (w skali logarytmicznej) punktĂłw pomiarowych charakterystyki amplitudowo-czÄ™stotliwoĹ›ciowej, z wykorzystaniem metody MC

Rys. 7. Wynik aproksymacji punktów pomiarowych obu charakterystyk częstotliwościowych Fig. 7. Result of the measuring points approximation for both frequency responses

Tabela 1. Punkty pomiarowe charakterystyk częstotliwościowych Table 1. Measuring points of the frequency responses

f [kHz]

0,03

0,04

0,05

0,06

0,07

0,08

0,09

0,1

0,2

0,3

0,4

0,5

0,6

A(f) [V/V]

1,03

0,96

0,92

1,00

1,02

0,93

0,98

1,00

0,97

1,01

0,96

1,02

0,98

j(f) [deg]

–0,2

–0,8

–0,8

–0,6

–1,2

–1,3

–0,9

–1,1

–3,2

–2,4

–7,8

–5,6

–10,5

f [kHz]

0,7

0,8

0,9

1,0

1,1

1,2

1,3

1,4

1,5

1,6

1,7

1,8

1,9

A(f) [V/V]

1,05

1,00

1,10

1,08

1,25

1,23

1,30

1,41

1,45

1,48

1,55

1,62

1,68

j(f) [deg]

–12,2

–15,5

–18,4

–20,1

–21,5

–30,7

–30,4

–33,2

–34,3

–42,7

–52,6

–50,8

–62,6

f [kHz]

2,0

2,1

2,2

2,3

2,4

2,5

2,6

2,7

2,8

2,9

3,0

–

–

A(f) [V/V]

1,79

1,80

1,92

2,05

1,96

1,78

1,88

1,65

1,45

1,38

1,25

–

–

j(f) [deg]

–69,5

–70,9

–78,4

–80,2

–94,5

–110,8

–120,4

–118,3

–122,6

–125,4

–121,6

–

–

A

O

36

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

•

R

B

O

T

Y

K

A

NR 2/ 20 20


Krzysztof Tomczyk

Niepewności dla poszczególnych parametrów: Sopt, b opt i ω0opt , wyznaczone za pomocą formuły (56), wynoszą: u(Sopt) = 1,954 × 10–4 V/ms–2, u(bopt) = 1,336 × 10–3 i u( f0opt ) = 12 Hz. Wartości niepewności u(A(wn)) i u(Φ(wn)), występujące w formułach (45) i (46), dla poszczególnych punktów pomiarowych obu charakterystyk zostały określone na podstawie Tabeli 1 zawartej w normie [17].

6. Podsumowanie

5.

6.

7. 8.

Artykuł przedstawia dwie procedury identyfikacji akcelerometrów z wykorzystaniem metody Monte Carlo. Pierwsza, oparta na KMNK, dedykowana jest dla przypadków, gdy dysponujemy wyłącznie punktami pomiarowymi charakterystyki amplitudowo-częstotliwościowej. Druga, aplikowana jest wtedy, gdy procedura identyfikacji dotyczy równocześnie obu charakterystyk częstotliwościowych. Pierwsza procedura wymaga określenia przybliżonych wartości parametrów akcelerometru, tj.: czułości napięciowej, częstotliwości rezonansowej oraz szczytu rezonansowego. Konieczne jest również określenie, w sposób intuicyjny, zakresów zmienności tych parametrów. Wszystkie obliczenia realizowane w obrębie tej procedury oparte są o wartości losowe, uzyskane przez aplikację metody MC. Jej numeryczna implementacja w wybranym środowisku matematyczno-obliczeniowym jest prostsza w realizacji w porównaniu z drugą procedurą, z uwagi na jej mniejszą złożoność matematyczną. Jednak w przypadku drugiej procedury, estymaty parametrów matematycznego modelu akcelerometru uzyskiwane są na drodze przetwarzania punktów pomiarowych, przez wykorzystanie UMNK i bez konieczności stosowania metody MC. Symulacja MC aplikowana jest wyłącznie dla potrzeb wyznaczenia niepewności parametrów modelu akcelerometru. Różnice wartości parametrów i związanych z nimi niepewności, uzyskane w przypadku aplikacji obu procedur dla potrzeb identyfikacji akcelerometru typu Althen 731-207 są oczywiste. Oczywista jest również większa wiarygodność wyników uzyskanych w drugim przypadku, gdyż dysponujemy tu punktami pomiarowymi obu charakterystyk częstotliwościowych. Jednak analiza tych wyników wskazuje, że różnice między nimi są nieznaczne, gdyż wynoszą: 1%; 0,8% i 3,9%, odpowiednio dla czułości napięciowej, współczynnika tłumienia i częstotliwości drgań własnych nietłumionych. Niższe wartości niepewności, uzyskane dla przypadku pierwszej procedury wynikają z faktu, że analizie podlegały tu punkty pomiarowe wyłącznie charakterystyki amplitudowej. Artykuł finansowany ze środków Narodowego Centrum Nauki (NCN) w ramach działania naukowego: 2017/01/X/ST7/00394.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

BIPM, IEC, IFCC, ILAC, ISO, IUPAP, OIML, Guide to the expression of uncertainty in measurement. Supplement 2 – Extension to any number of output quantities, 2011. Yu J. Ch., Lan Ch. B. System Modeling and Robust Design of Microaccelerometer using Piezoelectric Thin Film. Proceedings of the IEEE International Conference on Multisensor Fusion and Integration for Intelligent Systems, 1999, 99–104. Jakubiec J., Roj J. Pomiarowe przetwarzanie próbkujące. Wydawnictwo Politechniki Śląskiej. 2000. Kubisa S., Intuicja i symulacja Monte Carlo podstawą analizy niedokładności pomiarów, „Pomiary Automatyka Kontrola”, R. 53, Nr 9, 2007, 3-8. Kubisa S., Identyfikacja parametryczna metoda Monte Carlo. Materiały konf. VI Sympozjum nt. Pomiarów Dynamicznych. Sucha Beskidzka, 2009. Tomczyk K., Problems in Modelling of Charge Output Accelerometers, “Metrology and Measurement Systems”, Vol. 23, No. 4, 2016, 645–659. DOI: 10.1515/mms-2016-0045. Guimarães Couto P.R., CarreteiroDamasceno J., Pinheiro de Oliveira S., Monte Carlo simulations applied to uncertainty in measurement. In Theory and Applications of Monte Carlo Simulations. Chan, V., Ed. IntechOpen, London, 2013, 27–51. Harris P.M., Cox M.G., On a Monte Carlo method for measurement uncertainty evaluation and its implementation. “Metrologia”, 2014, Vol. 51, 176–182. Wichmann B. A., Hill I. D.,Generating Good Pseudo-Random Numbers, „Computational Statistics & Data Analysis”, No. 3, 2006, Vol. 51, 1614–1622. Box G.E.P., Muller M. A Note on the Generation of Random Normal Variates. “Annals of Mathematical Statistics”, Vol. 29, No. 9, 1958, 610–611. Tomczyk K., Influence of Monte Carlo Generations Applied for Modelling of Measuring Instruments on Maximum Distance Error. T I Meas. Control. Vol. 41, No. 1, 2019, 74–84. Althen 731-207 – data sheet: [www.althensensors.com/ media/26150/731-207-seismischer-vibrationsaufnehmer-en.pdf] (data dostępu: 6.04.2020 r.). ISO 16063-21: Methods for the calibration of vibration and shock transducers—Part 21: Vibration calibration by comparison to a reference transducer, 2003. Brüel & Kjær, Reference Standard Accelerometer type 8305 – data sheet: https://www.bksv.com/-/media/ literature/Product-Data/bp2052.ashx (data dostępu: 6.04.2020 r.).

` # & 1. 2.

3.

4.

Isermann R., Münchhof M. Identification of Dynamics Systems. Springer-Verlag. Berlin Heidelberg. 2011. Pintelon R., Schoukens J. System identification: A frequency domain approach, 2ndEdition. John Wiley & Sons. 2012. Link A., Täbner A., Wabinski W., Bruns T.,Elster C. Modelling accelerometers for transient signals using calibration measurement upon sinusoidal excitation. “Measurement”. Vol. 40, 2007, 928–935. BIPM, IEC, IFCC, ILAC, ISO, IUPAP, OIML, Guide to the expression of uncertainty in measurement. Suplement 1 – Propagation of distributions using a Monte Carlo method, 2008.

37


& " "

8 % = A %= % L % h" %

M # $ $ ' # F 6' ` # M < 8 - Abstract: The paper presents an application of the Monte Carlo method for parametric identification of accelerometers in the frequency domain. Two identification methods are discussed here. The first one is intuitive and implemented only based on measuring points of amplitude-frequency response and employs the classical least squares method. The second one is the procedure based on measuring points of both frequency responses (amplitude and phase) and implemented by using the generalized least squares methods. Identification results for the selected accelerometer of type Althen 731-207 are presented and discussed. Mathcad 14 software was used for the needs of both identification methods. KeywordsV $ '% ' ` %

$ $ ' 2 ( $ & ' ORCID: 0000-0002-8922-6529 MG ; ' 6 O = E " F E " ; (!!+ E Q ' ' E % (!?B Q ' G . ' E % E N . ' H . % J E . ' J

38

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 39–43, DOI: 10.14313/PAR_236/39

F . J H G ' H 3 $ $ + # $ 4 4$5 F S % ; ' = % M 6 # % 6 6 # % F J T+% *@ET@) S

$ $ . Pomiar parametrów ścieków naleşy do stosunkowo trudnych zadań. Ścieki, w większości przepadków, to mieszanina dwufazowa. W ściekach zanieczyszczeniami mogą być ciała stałe lub ciecze, które rozpuszczają się w wodzie lub nie. W pracy autorzy zaproponowali, rozwiązanie systemu do pomiaru strumieni ścieków o szerokim zakresie pomiarowym, odporne na osadzanie się frakcji stałej oraz moşliwe do zamontowania na juş istniejących kanałach ściekowych. Zaproponowane rozwiązanie oparte jest na przepływomierzu szczelinowym z moşliwością regulowania szczeliny w przegrodzie pomiarowej. Podstawowym mierzonym parametrem, na podstawie którego obliczany jest strumień objętościowy przepływających ścieków, jest wysokość ustawienia przegrody. Jest ona funkcją pola przekroju poprzecznego przewęşenia. Autorzy przedstawili szczegółowy opis metody pomiarowej. $ V J % % H % ' O %

1. Wprowadzenie Ĺšcieki sÄ… to zuĹźyte ciecze, roztwory, koloidy lub zawiesiny, a takĹźe odpadowe ciaĹ‚a staĹ‚e, powstaĹ‚e w wyniku dziaĹ‚alnoĹ›ci czĹ‚owieka –na skutek dziaĹ‚alnoĹ›ci produkcyjnej i bytowej czĹ‚owieka, mogÄ… rĂłwnieĹź pochodzić z innych ĹşrĂłdeĹ‚. Ze wzglÄ™du na ĹşrĂłdĹ‚o pochodzenia Ĺ›cieki dzieli siÄ™ na [1]: Ĺšcieki bytowe – pochodzÄ… z gospodarstw domowych oraz róşnego rodzaju budynkĂłw uĹźytecznoĹ›ci publicznej. W ich skĹ‚ad wchodzÄ… detergenty, resztki poĹźywienia i odchody. Znajduje siÄ™ w nich duĹźa ilość zwiÄ…zkĂłw organicznych, stÄ…d moĹźliwy jest szybki rozwĂłj bakterii i pasoĹźytĂłw. Ĺšcieki przemysĹ‚owe – pochodzÄ… z zakĹ‚adĂłw przemysĹ‚owych, powstajÄ…ce podczas procesĂłw produkcyjnych. Ich skĹ‚ad zaleĹźy od profilu dziaĹ‚alnoĹ›ci zakĹ‚adu. DuĹźe zróşnicowanie skĹ‚adu tych Ĺ›ciekĂłw sprawia, Ĺźe metoda ich pomiaru musi być dobrana w oparciu o specyfikÄ™ tego zakĹ‚adu. Ĺšcieki opadowe – powstajÄ… podczas opadĂłw atmosferycznych, spĹ‚ywajÄ… do kanalizacji. PewnÄ… trudność w odprowadzaniu tego rodzaju Ĺ›ciekĂłw moĹźe stanowić rozwĂłj infrastruktury drogowej, utwardzenia gruntu i zmniejszenie jego chĹ‚onnoĹ›ci. Powoduje to konieczność odprowadzania zwiÄ™kszonej iloĹ›ci Ĺ›ciekĂłw opadowych z powierzchni drĂłg, ktĂłre wymagajÄ… podczysz-

) " V

' " G % G & ' ) ' () ! (!(! % ' ' () !@ (!(!

!

czania i dalszego transportu do odbiornika. W tym przypadku pojawia siÄ™ potrzeba ograniczenia maksymalnego odpĹ‚ywu, tym samym wydĹ‚uĹźenia czasu ich spĹ‚ywu (retencji). Gromadzenie Ĺ›ciekĂłw opadowych moĹźe odbywać siÄ™ zarĂłwno w zbiornikach zamkniÄ™tych, jak i otwartych. Jednak odpĹ‚yw Ĺ›ciekĂłw, ze wzglÄ™dĂłw bezpieczeĹ„stwa, powinien być kontrolowany. Ĺšcieki komunalne – pochodzÄ… gĹ‚Ăłwnie z terenĂłw miejskich i sÄ… mieszaninÄ… Ĺ›ciekĂłw bytowych, Ĺ›ciekĂłw pochodzÄ…cych z zakĹ‚adĂłw przemysĹ‚owych oraz Ĺ›ciekĂłw powstajÄ…cych podczas opadĂłw atmosferycznych. Z uwagi na problematykÄ™ pomiaru strumienia Ĺ›ciekĂłw, bardziej praktycznym podziaĹ‚em Ĺ›ciekĂłw jest podziaĹ‚ ich ze wzglÄ™du na skĹ‚ad frakcyjny i rodzaj zanieczyszczeĹ„, ktĂłrymi sÄ… ciecze oraz ciaĹ‚a staĹ‚e. Przemieszczanie poszczegĂłlnych faz tej mieszaniny, zaleĹźne jest od gÄ™stoĹ›ci cieczy wchodzÄ…cych w jej skĹ‚ad. Ciecze o gÄ™stoĹ›ci wiÄ™kszej od gÄ™stoĹ›ci wody, bÄ™dÄ… siÄ™ przemieszczaĹ‚y przy dnie kanaĹ‚u z prÄ™dkoĹ›ciÄ… innÄ… niĹź prÄ™dkość ruchu wody. W przypadku cieczy o gÄ™stoĹ›ci mniejszej od gÄ™stoĹ›ci wody, bÄ™dzie ona unoszona na powierzchni pĹ‚ynÄ…cego pĹ‚ynu. Podobnie w Ĺ›ciekach poruszajÄ… siÄ™ ciaĹ‚a staĹ‚e. CiaĹ‚a o gÄ™stoĹ›ci mniejszej od gÄ™stoĹ›ci wody sÄ… unoszone na jej powietrzni, a o gÄ™stoĹ›ci wiÄ™kszej, zazwyczaj toczÄ… siÄ™ po dnie. DodatkowÄ… trudność w pomiarze wprowadza rozkĹ‚ad frakcyjny (rys. 1) [2], ktĂłry moĹźe powodować osadzanie siÄ™ frakcji staĹ‚ej lub jej pulsacyjne przemieszczanie siÄ™. Problematyka pomiaru tego rodzaju Ĺ›ciekĂłw sprowadza siÄ™ do zagadnieĹ„ pomiaru przepĹ‚ywĂłw dwufazowych, ktĂłre stanowiÄ… obecnie jedno z najtrudniejszych zagadnieĹ„ w metrologii przepĹ‚ywĂłw. Ze wzglÄ™du na duĹźe zróşnicowanie wĹ‚aĹ›ciwoĹ›ci i skĹ‚adu Ĺ›ciekĂłw, nie jest moĹźliwe okreĹ›lenie uniwersalnej metody pomiarowej, nadajÄ…cej siÄ™ do zastosowania w szerokim zakresie. Do Ĺ›ciekĂłw, ktĂłre sÄ… zanieczyszczone chemicznie lub stanowiÄ…ce zawiesiny dwufazowe, moĹźliwe jest zastosowanie metod pomiarowych sto-

39


* %= " % L % 8 % ) " ' )

Substancje wielkogabarytowe

Skratki

100

Piasek

10

silnie zaleşy od ich składu, w praktyce nie określa się strumienia masowego a jedynie strumień objętościowy. Substancje rozpuszczone Przedstawione rozwiązanie jest praktyczne i dobrze nadaje się do pomiaru przepływu ścieków z powierzchnią swobodną. Zwiększona prędkość ruchu cieczy w przewęşeniu powoduje, 10-7 10-8 10-9 d [mm] şe nie osadzają się w nim cząstki stałe. Wadą tego rozwiązania jest to, şe zakres pomiarowy jest stosunkowo mały. W przypadku monitorowania przepływu ścieków komunalnych, gdy ich natęşenie znacząco zmienia się w ciągu doby, tego typu rozwiązania nie zapewniają wystarczającej dokładności pomiaru. Autorzy postanowili opracować rozwiązanie, które umoşliwiałoby prowadzenie pomiarów w szerokim zakresie pomiarowym, a jednocześnie byłoby tanie i moşliwe do zastosowania juş na istniejących kanałach ściekowych, przy zachowaniu załoşonej niepewności pomiarów.

rozpuszczone (koloidy)

1

Substancje zawieszone

10-1

10-2

10-3

10-4

10-5

10-6

Rys. 1. Podział frakcji stałej w ściekach Fig. 1. The distribution of the solid fraction in the sewage

X' 3

W zaleĹźnoĹ›ci od zapotrzebowania hydraulicznego, statycznego i technologii procesu budowlanego, stosuje siÄ™ róşnego rodzaju kanaĹ‚y [7]. W technice budowlanej najtaĹ„szym i najĹ‚atwiejszym rozwiÄ…zaniem do wykonania kanaĹ‚u Ĺ›ciekowego jest zastosowanie róşnego rodzaju prefabrykowanych, koryt betonowych (rys. 3). Koryta o przekroju prostokÄ…tnym (rys. 3a) stanowiÄ… najtaĹ„sze z rozwiÄ…zaĹ„, jednak mogÄ… być stosowane jedynie do duĹźych strumieni Ĺ›ciekĂłw, gdyĹź przy maĹ‚ych prÄ™dkoĹ›ciach ruchu cieczy na dnie kanaĹ‚u osadza siÄ™ duĹźa ilość czÄ…stek staĹ‚ych tworzÄ…c zatory. Koryta o przekroju trapezowym (rys. 3b) w pewnym stopniu redukujÄ… tÄ™ niedogodność, jednak w dalszym ciÄ…gu wystÄ™puje tu osiadanie czÄ…stek staĹ‚ych przy maĹ‚ych strumieniach przepĹ‚ywu. Trudniejsze do wykonania sÄ… kanaĹ‚y typu Krakowskiego (rys. 3c), jednak o znacznie lepszych wĹ‚aĹ›ciwoĹ›ciach dla maĹ‚ych strumieni przepĹ‚ywu Ĺ›ciekĂłw.

Rys. 2. Zwęşka pomiarowa Fig. 2. The measurement flume

sowanych w pomiarze cieczy jednofazowych (bez czÄ…stek staĹ‚ych). Metody te sÄ… ogĂłlnie znane i dobrze opisane w literaturze. Znacznie trudniejszym zagadnieniem jest pomiar Ĺ›ciekĂłw, w ktĂłrych znajdujÄ… siÄ™ róşnego rodzaju czÄ…stki staĹ‚e (tego rodzaju Ĺ›ciekĂłw jest najwiÄ™cej). W tym przypadku znane sÄ… róşne metody pomiarowe w zastosowaniach laboratoryjnych. Brak jest jednak typowych urzÄ…dzeĹ„ produkowanych komercyjnie do zastosowaĹ„ przemysĹ‚owych [3]. Zagadnienie to niewÄ…tpliwie wymaga opracowania i wdroĹźenia odpowiednich rozwiÄ…zaĹ„. Stosunkowo tanimi i czÄ™sto stosowanymi metodami pomiaru w kanaĹ‚ach otwartych sÄ… metody zwęşkowe [4, 5]. PolegajÄ… one na przewęşeniu kanaĹ‚u o szerokoĹ›ci b0 do szerokoĹ›ci b1 (rys. 2). PrÄ™dkość ruchu cieczy na wysokoĹ›ci przewęşenia zwiÄ™ksza siÄ™, dodatkowo nastÄ™puje spiÄ™trzenie cieczy do wysokoĹ›ci h1. Za przewęşeniem, wysokość od dna kanaĹ‚u do lustra cieczy h2, jest mniejsza od pierwotnej wysokoĹ›ci b0. Jest to spowodowane stratami hydraulicznymi. Wysokość spiÄ™trzenia cieczy w przewęşeniu h1 jest funkcjÄ… strumienia cieczy. FunkcjÄ™ tÄ™ teoretycznie opisuje rĂłwnanie Bernoulliego. W praktyce, najczęściej stosowany jest wzĂłr na obliczanie strumienia objÄ™toĹ›ciowego [6]:

Q=

C 1 − m2

b1 h1 2g(h1 − h0 )

a)

Innym rozwiÄ…zaniem sÄ… kanaĹ‚y Ĺ›ciekowe, ktĂłre zakopywane pod ziemiÄ…. ChociaĹź kanaĹ‚y te sÄ… zamkniÄ™te, ze wzglÄ™du na to, Ĺźe Ĺ›cieki nigdy nie pĹ‚ynÄ… caĹ‚ym przekrojem kanaĹ‚u, zastosowanie majÄ… tu przepĹ‚ywomierze z powierzchniÄ… swobodnÄ… (rys. 4). Dla maĹ‚ych przepĹ‚ywĂłw stosuje siÄ™ kanaĹ‚y o przekroju koĹ‚owym (rys. 4a). Z kolei dla wiÄ™kszych przepĹ‚ywĂłw, mniejsze opory wystÄ™pujÄ… w kanaĹ‚ach o ksztaĹ‚cie dzwonowym (rys. 4b). W obu przypadkach, dno kanaĹ‚u jest sferyczne, co zapobiega osiadaniu czÄ…stek staĹ‚ych przy mniejszych strumieniach Ĺ›ciekĂłw. Natomiast dla przepĹ‚ywĂłw, w ktĂłrych majÄ… miejsce duĹźe róş-

(1)

b1 h1 b0 h0

(2)

Przy stałej i znanej geometrii kanału pomiarowego, mierzonymi parametrami są wysokości słupa cieczy przed i w przewęşeniu. Następnie, na ich podstawie oblicza się strumień objętościowy przepływającej cieczy. Poniewaş gęstość ścieków

40

P

O

M

I

c)

Rys. 3. Typowe koryta betonowe stosowane na kanały ściekowe Fig. 3. Typical concrete troughs used for sewers

We wzorze, odpowiednio: C – współczynnik przepływu charakterystyczny dla danego kanału pomiarowego, wyznaczany eksperymentalnie; g – przyspieszenie ziemskie, m – moduł kanału pomiarowego, stanowi stosunek pola przekroju poprzecznego strugi przed przewęşeniem do pola przekroju poprzecznego strugi na wysokości przewęşenia:

m=

b)

A

R

Y

•

A

U

T

O

M

Rys. 4. Kształty typowych kanałów ściekowych Fig. 4. Shapes of typical sewers

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


& " ' " !( ! )" nice strumieni pĹ‚ynÄ…cych Ĺ›ciekĂłw, stosuje siÄ™ kanaĹ‚y o ksztaĹ‚cie jajowatym (rys. 4c). W przypadku Ĺ›ciekĂłw komunalnych, strumienie w pewnych okresach w ciÄ…gu doby sÄ… bardzo maĹ‚e, a czasami zerowe, natomiast w innych okresach mogÄ… przyjmować znaczne wartoĹ›ci. Tak duĹźe róşnice w strumieniach pĹ‚ynÄ…cych Ĺ›ciekĂłw, wymagajÄ… kanaĹ‚Ăłw o specyficznych ksztaĹ‚tach (rys. 5). W celu zapobiegania osadzaniu siÄ™ frakcji staĹ‚ej przy maĹ‚ych przepĹ‚ywach, stosuje siÄ™ kanaĹ‚y o przekroju koĹ‚owo-trĂłjkÄ…tnym (rys. 5a). Gdy wzrasta przepĹ‚yw Ĺ›ciekĂłw tego rodzaju kanaĹ‚y bardzo szybko wypeĹ‚niajÄ… siÄ™ cieczÄ…. Z tego wzglÄ™du, niejednokrotnie stosuje siÄ™ kanaĹ‚y koĹ‚owe z kinetÄ… (rys. 5b) lub dla duĹźych strumieni prostokÄ…tne z kinetÄ… (rys. 5c).

Na rysunku 7 przedstawiono schemat blokowy ukĹ‚adu pomiarowego. Przegroda jest regulowana za pomocÄ… siĹ‚ownika, dla ktĂłrego nastawy sÄ… wyliczane przez regulator. Regulator ustawia wysokość przegrody na podstawie zmierzonych wartoĹ›ci ciĹ›nieĹ„ p0 i p1. NastÄ™pnie na podstawie ustawionej wysokoĹ›ci przegrody, oblicza strumieĹ„ przepĹ‚ywajÄ…cego pĹ‚ynu. Pomiar wysokoĹ›ci sĹ‚upa cieczy przed przegrodÄ…, sĹ‚uĹźy do okreĹ›lenia gÄ™stoĹ›ci pĹ‚ynu oraz do skorygowania zadanej wartoĹ›ci ciĹ›nienia róşnicowego. DziÄ™ki temu moĹźliwie jest zautomatyzowanie zmiany zakresu pomiarowego. Przez zmianÄ™ wartoĹ›ci zadanej ciĹ›nienia róşnicowego moĹźliwe jest sterowanie strumieniem pĹ‚ynu, przy jednoczesnym pomiarze jego wartoĹ›ci. Taka funkcjonalność jest korzystna w ukĹ‚adach retencji Ĺ›ciekĂłw.

Regulator h0 Rys. 5. Kształty kanałów ściekowych komunalnych Fig. 5. Shapes of channels for municipal sewage systems

DuĹźe zróşnicowanie ksztaĹ‚tĂłw kanaĹ‚Ăłw Ĺ›ciekowych powoduje, Ĺźe przepĹ‚ywomierze do pomiaru Ĺ›ciekĂłw powinny być Ĺ‚atwo adaptowalne do ksztaĹ‚tu kanaĹ‚u.

p0

[' " ! " # "

Rys. 7. System pomiarowy Fig. 7. Measurement system

Zaproponowane rozwiÄ…zanie polega na tym, Ĺźe przewęşenie kanaĹ‚u stanowi regulowana przegroda segmentowa (rys. 6). Przegroda jest dopasowana do ksztaĹ‚tu kanaĹ‚u. Zasada dziaĹ‚ania polega na tym, Ĺźe tak reguluje siÄ™ przesuwnÄ… przegrodÄ…, aby uzyskać staĹ‚Ä… wartość ciĹ›nienia róşnicowego, niezaleĹźnie od wartoĹ›ci strumienia pĹ‚ynu. UmoĹźliwi to prowadzenie badaĹ„ w szerokim zakresie pomiarowym. WĂłwczas, do zmiany zakresu pomiarowego, wystarczy jedynie zmienić zadanÄ… wartość ciĹ›nienia róşnicowego Δp, odpowiadajÄ…cego danemu zakresowi pomiarowemu, co w konsekwencji prowadzi do zmiany wysokoĹ›ci przegrody. W odróşnieniu od dotychczas stosowanych metod pomiarowych z zastosowaniem zwęşek pomiarowych, wartoĹ›ciÄ… mierzonÄ…, na podstawie ktĂłrej jest obliczany strumieĹ„, jest zmieniajÄ…ce siÄ™ pole przekroju poprzecznego przewęşenia. StÄ…d wzĂłr na obliczenie strumienia objÄ™toĹ›ciowego pĹ‚ynu bÄ™dzie miaĹ‚ postać: Q = B(h )A(h )

2Δp

Ď

(3)

gdzie: B(h) – zaleĹźność funkcjonalna wyznaczona eksperymentalnie dla kaĹźdego kanaĹ‚u, A(h) – pole powierzchni otworu przepĹ‚ywowego w funkcji wysokoĹ›ci h podniesienia przegrody; r – gÄ™stość cieczy; Δp – róşnica ciĹ›nieĹ„ przed i za przegrodÄ….

Rys. 6. Budowa przepływomierza Fig. 6. Flow meter design

p1

W praktyce cykl pomiaru rozpoczyna siÄ™ od wprowadzenia odpowiedniej wartoĹ›ci zadanej ciĹ›nienia róşnicowego Δp. Wartość ta determinuje zakres pomiarowy przepĹ‚ywomierza. NastÄ™pnie regulator ustawia wysokość przegrody, w taki sposĂłb, aby ciĹ›nienie róşnicowe na przegrodzie Δp byĹ‚o rĂłwne wartoĹ›ci zadanej. Gdy wysokość sĹ‚upa cieczy przed przegrodÄ… jest poniĹźej wartoĹ›ci granicznej, nastÄ™puje automatyczne skorygowanie wartoĹ›ci zadanej ciĹ›nienia róşnicowego Δp. Na podstawie zmierzonej wysokoĹ›ci sĹ‚upa cieczy i ciĹ›nienia przed przegrodÄ… p0, oblicza siÄ™ gÄ™stość cieczy. Po czasie potrzebnym na ustabilizowanie siÄ™ przepĹ‚ywu, nastÄ™puje odczyt wysokoĹ›ci przegrody h. Na tej podstawie okreĹ›la siÄ™ wartość współczynnika B(h). Funkcja B(h) jest wyznaczana eksperymentalnie i jest charakterystyczna dla danego kanaĹ‚u. StrumieĹ„ Ĺ›ciekĂłw oblicza siÄ™ na podstawie wzoru (3). Automatyczny ukĹ‚ad regulacji w okreĹ›lonych cyklach czasowych otwiera caĹ‚kowicie przegrodÄ™ w celu oczyszczenia kanaĹ‚u z frakcji unoszÄ…cych siÄ™ na powierzchni cieczy i zalegajÄ…cych w gĂłrnej części przegrody.

\' Przedstawione rozwiÄ…zanie jest przeznaczone do pomiaru Ĺ›ciekĂłw komunalnych, dla ktĂłrych wystÄ™pujÄ… duĹźe dobowe zmiany wartoĹ›ci strumienia pĹ‚ynÄ…cych Ĺ›ciekĂłw. RozwiÄ…zanie to jest w peĹ‚ni zautomatyzowane. System regulacji umoĹźliwia automatyczne dobranie odpowiedniej zadanej róşnicy ciĹ›nienia Δp w taki sposĂłb, aby zapewnić energooszczÄ™dnÄ… eksploatacjÄ™ systemu, przy zachowaniu zaĹ‚oĹźonej dokĹ‚adność pomiaru. Taki ukĹ‚ad moĹźe być rĂłwnieĹź stosowany do pomiaru cieczy dwufazowych w szerokim zakresie mierzonych strumieni. Cytowana bibliografia wskazuje na wiele problemĂłw eksploatacyjnych, ktĂłre rozwiÄ…zywano przez dobĂłr ksztaĹ‚tu kanaĹ‚u do odprowadzenia Ĺ›ciekĂłw.

41


* %= " % L % 8 % ) " ' ) Autorzy proponują moşliwości dalszych usprawnień systemów odprowadzających ścieki z wykorzystaniem zautomatyzowanych systemów pomiaru i regulacji strumienia ścieków, z moşliwością okresowego usuwanie zanieczyszczeń z przestrzeni pomiarowej. Układy regulacji przepływu ścieków w szczególności są poşądane w instalacjach odprowadzających ścieki opadowe, gdzie nie bez znaczenia jest retencja. W celu usprawnienia procesu wyznaczanie funkcji przepływu B(h), moşna zastosować numeryczne modelowanie i projektowanie układów przepływowych [8, 9]. Przy wyznaczaniu funkcji przepływu B(h) dla przepływów wielofazowych niejednokrotnie konieczne jest określenie udziału objętościowego poszczególnych frakcji. Moşna to zmierzyć stosując metody oparte na tomografii procesowej [10] lub ultradźwiękowe [11, 12]. Zaletą zaproponowanego rozwiązania jest moşliwość montaşu urządzenia na istniejącym kanale ściekowym, bez konieczności jego przebudowy. Dodatkową zaletą jest moşliwość wykorzystania układu do regulacji przepływu ścieków w kanałach.

5. Heinz G.E., Technika pomiarĂłw przepĹ‚ywu wody i Ĺ›ciekĂłw, Seidel-Przywecki, 1999. 6. Norma miÄ™dzynarodowa ISO 9826-1992 Measurement of Liquid Flow in Open Channels. Parshall and SANIIRI Flumes 7. PN-71/B-02710 z dnia 6 lipca 1971 r. Kanalizacja zewnÄ™trzna. Przekroje poprzeczne zamkniÄ™tych kanaĹ‚Ăłw Ĺ›ciekowych. 8. Dobrowolski B., Kabza Z., Teoretyczna analiza wpĹ‚ywu osiowosymetrycznych deformacji pola prÄ™dkoĹ›ci i zawirowania strugi na wĹ‚aĹ›ciwoĹ›ci metrologiczne zwęşek pomiarowych, Studia i Monografie, z. 59, WSI Opole 1992. 9. Kabza Z., Modelowanie matematyczne przepĹ‚ywomierzy z urzÄ…dzeniami zwęşajÄ…cymi, InĹźynieria mechaniczna, Leningrad 1981. 10. RzÄ…sa R.M., Ocena moĹźliwoĹ›ci zastosowania tomografii optycznej w badaniu dwufazowych procesĂłw przepĹ‚ywowych, Polska Akademia Nauk, OddziaĹ‚ Katowice 2011. 11. Sommerlatt H.D., Andruszkiewicz A., Dynamic Measurement of Particle Diameter and Drag Coefficient Using the Ultrasonic Method, “Archives of Acousticsâ€?, Nr 33(3), 2008, 351–362. 12. Synowiec P., Andruszkiewicz A., WÄ™drychowicz W., Regucki P., Badania moĹźliwoĹ›ci pomiaru strumienia objÄ™toĹ›ci czynnika dwufazowego przepĹ‚ywomierzem ultradĹşwiÄ™kowym, „PrzeglÄ…d Elektrotechnicznyâ€?, Nr 10, 2015, 179–182, DOI: 10.15199/48.2015.10.37.

` # & 1. Ustawa z dnia 20 lipca 2017 r. Prawo Wodne, Dz. U. 2017 poz. 1566 2. Fischer M., Stier E., Podręczny poradnik eksploatacji oczyszczalni ścieków, ATV, 1998. 3. Piechurski F.G., Przeglądowa ocena urządzeń do pomiaru przepływu ścieków, „Napędy i sterowanie�, Nr 2, 2012 64–70. 4. Michalski A., Sienkiewicz J., Watral Z., Metody pomiaru przepływu na małych otwartych kanałach, „Diagnostyka�, Nr 3 (39), 2006, 269–278.

$ ' X . # ; S . Measurement of sewage parameters is relatively difficult because sewage is, in most cases, a two-phase mixture. Contaminants in wastewater can be liquids and solids. Liquids in water may have a density higher or lower than the density of water. Density affects the movement of individual mixtures. Liquids with a density higher than the density of water move at the bottom of the channel and the speed of their movement are not equal to the speed of the water. In the case of liquids having a density less than the density of water, they are carried on the surface of the flowing water. Solids move very similarly. Solids with a lower density than water are raised to the water surface, and denser usually roll on the bottom. Furthermore, the fractional differential distribution of solids often results in congestion by deposition of the solid fraction in sewers and measuring apparatus. In this work, the authors proposed a solution for a system for measuring wastewater in a wide range of flows. This solution is insensitive to settling of the solid fraction, and can be mounted on the existing sewers. The proposed solution is based on a slotted flow meter with some modification consisting in adjusting the gap in the measuring partition. The basic parameter, measured based on which the volumetric flow of sewage is calculated, is the height of the partition, which is a function of the cross-sectional area of the narrowing. A detailed description of the measurement method and measurement methodology is provided. KeywordsV . a % % a % ' % `

42

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


& " ' " !( ! )"

' 3 $ $

# $ 4 4$5 + ' 6

G & ' ORCID: 0000-0002-0690-9616

& ' ORCID: 0000-0002-3461-2131

F . % H E . % . . % % ' O Q F ; ?B+( > ' H E ' H % E H ' ?BT? ' G . ?BTT . . ' S' ?BB+ H F H S H% ; O H H 6 O H S' ?BB* ' $ ' ' M ' > 6 O E 0 . ; ?B)TP(!!) G " $ E . M > FM>% ' (!!)P(!(( G " F G J = . F ' F M ' >

N G ; ' = E . F S % M $ . = F ' " ' 0 E M F ; ' $ F E S % .' Q ' E Q ' E G . F E ; ' 6 O $ 6 # SG # E . F S ; ' = % M 6 # E ' ' . H H ; J ' .

43


NR 3/2015

44

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 45–50, DOI: 10.14313/PAR_236/45

; ' ' Igor Piotr Kurytnik $ F Q ; F . % 6 H' 6 O F ' % $ " G . )% (E+!! S

7 + # 2 ( + 8 X % ; ' 6 O F ' = . % " ' = . M F J X % 4 ??+% !E?*B " J

$ $ . Praca opisuje problematykÄ™ wyznaczania temperatury topliwoĹ›ci popioĹ‚u za pomocÄ… indukcyjnego pieca rurowego wykonanego wg autorskiego projektu, realizujÄ…cego proces spalania (stapiania) prĂłbek popioĹ‚u zgodnie z normÄ… z PN-ISO-540:2001. Proces ten jest kontrolowany przez sterownik PLC z zaprogramowanym algorytmem regulacji i stabilizacji temperatury PID, urzÄ…dzenie wyposaĹźone jest w termoparÄ™ typu S oraz system cyfrowej rejestracji i analizy obrazu. Rejestracja obrazu jest niezbÄ™dna do wyznaczenia temperatury pĹ‚yniÄ™cia popioĹ‚u, wartość ta jest identyfikowana przy zmianie stanu skupienia z staĹ‚ego w ciekĹ‚y, prĂłbka popioĹ‚u przechodzi z walcowatego ksztaĹ‚tu w pĹ‚ynnÄ… postać. Prowadzone badania sÄ… niezwykle waĹźne w kontekĹ›cie spalania biomasy w kotĹ‚ach, dobĂłr optymalnej temperatury spalania pozwoli przeciwdziaĹ‚ać powstawaniu ceramicznej warstwy na Ĺ›ciankach kotĹ‚a, ktĂłra pogarsza jego wĹ‚aĹ›ciwoĹ›ci eksploatacyjne i w szerszej perspektywie czasu doprowadzi do jego wyĹ‚Ä…czenia z eksploatacji. Wybrane elektrociepĹ‚ownie sÄ… zobligowane do spalania biomasy w ramach realizacji polityki wzrostu udziaĹ‚u energii odnawialnej w ogĂłlnym bilansie energetycznym, m.in. przez wykorzystanie biomasy. PoniewaĹź pochodzenie biomasy jest zróşnicowane, stÄ…d rĂłwnieĹź jej skĹ‚ad fizyko-chemiczny jako paliwo jest niejednorodny, dlatego elektrociepĹ‚ownie muszÄ… okreĹ›lać temperaturÄ™ pĹ‚yniÄ™cia popioĹ‚u dla poszczegĂłlnych partii tego paliwa. $ V ] % % ' % # G

1. Wprowadzenie Spalanie kaşdego paliwa stałego związane jest z uzyskaniem określonej ilości popiołu stanowiącego produkt uboczny tego procesu (ilość ta jest ściśle związana z rodzajem paliwa [1], jego składem chemicznym [2] i stanowi jego cechę charakterystyczną). Ponadto zawartość określonych pierwiastków ściśle determinuje topliwość popiołu danej biomasy. Ca i Mg podnoszą temperaturę topnienia, natomiast K ją obnişa [1, 2]. Chlorki i niskotopliwe glinokrzemiany mogą równieş znacząco obnişać temperaturę topnienia, co w efekcie powoduje tworzenie się spieków i şuşla w komorze spalania. Pojawiające się

) " V 6. F " % & ' ) ' ?? !( (!(! % ' ' (? !+ (!(!

!

w popiele lotnym stopione czÄ…stki osadzajÄ… siÄ™ na chĹ‚odzonych Ĺ›ciankach pieca i wymiennikĂłw ciepĹ‚a. Ze wzglÄ™du na powyĹźsze, popiół ze sĹ‚omy, traw i ziarna zawierajÄ…cych niewielki iloĹ›ci Ca i duşą ilość Si i K charakteryzujÄ… siÄ™ niskÄ…, w porĂłwnaniu do drewna, temperaturÄ… topnienia popioĹ‚u. PowstajÄ…cy w procesie spalania popiół moĹźna podzielić na część lotnÄ… (popiół lotny) unoszonÄ… przez gazy i część nielotnÄ… (popiół denny) gromadzony i odprowadzany z dolnej części komory paleniskowej pieca. Zawartość metali alkalicznych oraz obecność chloru i siarki w spalanym materiale moĹźe być przyczynÄ… tworzenia siÄ™ korozji wysokotemperaturowej na powierzchniach grzewczych wnÄ™trza kotĹ‚a. Dla materiaĹ‚Ăłw stosowanych do celĂłw energetycznych opracowane zostaĹ‚y procedury techniczne pozwalajÄ…ce na okreĹ›lanie wĹ‚aĹ›ciwoĹ›ci fizycznych takich jak zawartość: wilgoci, popioĹ‚u, części lotnych, oznaczenie ciepĹ‚a spalania i wartoĹ›ci opaĹ‚owej oraz oznaczenie charakterystycznych temperatur topliwoĹ›ci popioĹ‚u i wĹ‚aĹ›ciwoĹ›ci chemicznych takich jak zawartoĹ›ci siarki (popioĹ‚owej i palnej), wÄ™gla, wodoru i azotu. W energetyce przemysĹ‚owej coraz powszechniej jest stosowana biomasa lignocelulozowa, zwykle dostarczana w postaci granulowanej (pelet, brykiet). Biopaliwa te sÄ… produkowane z róşnych surowcĂłw, m.in. roĹ›lin energetycznych [3], ktĂłrych

45


" % h" %

% =

8 %

% 8

8 % 8 8 gama gatunkowa jest stale rozszerzana w wyniku postÄ™pujÄ…cych prac badawczych [5, 7, 8]. W duĹźych jednostkach (elektrownie, elektrociepĹ‚ownie) biomasa wystÄ™puje rĂłwnieĹź jako domieszka do spalanego wÄ™gla kamiennego i brunatnego, torfu i innych paliw staĹ‚ych. Przepisy wielu krajĂłw warunkujÄ… wprowadzanie paliw ze ĹşrĂłdeĹ‚ odnawialnych (tj. biomasa), zachodzi wiÄ™c konieczność opracowania metodyki badania paliw spalanych w kotĹ‚ach. Wymagania wprowadzone przez normy i przepisy [N1, N2] badania wĹ‚aĹ›ciwoĹ›ci fizycznych i chemicznych materiaĹ‚u spalanego zaowocowaĹ‚y stworzeniem normatywnych procedur badawczych i opracowaniem urzÄ…dzeĹ„ do okreĹ›lania tych wĹ‚aĹ›ciwoĹ›ci. Jednym z waĹźniejszych parametrĂłw, istotnych dla uĹźytkownikĂłw piecĂłw, jest oznaczenie temperatury topnienia oraz pĹ‚yniÄ™cia popioĹ‚u. Przekroczenie w piecu tych temperatur powoduje zalanie rusztu pĹ‚ynnym popioĹ‚em (szlakÄ…), co eliminuje piec z dalszej pracy. Temperatury te, dla popioĹ‚Ăłw powstaĹ‚ych ze spalania peletĂłw lub innych paliw z domieszkÄ… peletu, sÄ… róşne [3, 13]. Dlatego normy nakĹ‚adajÄ… na producenta materiaĹ‚u umieszczenie na opakowaniu kaĹźdej partii informacji o temperaturze topnienia i pĹ‚yniÄ™cia popioĹ‚u. Stosowane obecnie urzÄ…dzenia do okreĹ›lania topliwoĹ›ci popioĹ‚u, ze wzglÄ™du na okreĹ›lonÄ… przez normÄ™ [N3] procedurÄ™ grzania, wymagajÄ… dĹ‚ugotrwaĹ‚ego procesu badawczego. Dlatego konieczne byĹ‚o opracowanie urzÄ…dzenia, ktĂłre w sposĂłb wystarczajÄ…co szybki (nawet ze skrĂłceniem procesu grzania wskazanego przez normÄ™ [N3]) umoĹźliwi okreĹ›lenie topliwoĹ›ci popioĹ‚u, z moĹźliwoĹ›ciÄ… natychmiastowego powtĂłrzenia pomiarĂłw.

− stanowi lekkÄ… i zwartÄ… konstrukcjÄ™ uĹ‚atwiajÄ…cÄ… transport, zasilane jest energiÄ… elektrycznÄ… prÄ…du przemiennego 230 V AC, − ukĹ‚ad sterowania oparty jest na sterowniku PLC, w ktĂłrym umieszczono kilka wariantĂłw charakterystyk wzrostu temperatury topionej prĂłbki, co czyni go urzÄ…dzeniem uniwersalnym, ponadto wprowadzono stabilizacjÄ™ temperatury wewnÄ…trz komory pieca z zastosowaniem programowego bloku regulatora PID.

[' ` Laboratoryjne urządzenie do badania topliwości popiołu metodą rurową zaopatrzono w przekształtnik o obciąşeniu rezonansowym, którego wzbudnik przekSazuje energię do przewodzącej rury grafitowej. Efekt przenoszenia energii moşna zwiększyć przez wzrost wartości prądu zasilającego wzbudnik oraz przez wzrost częstotliwości pracy [12]. Aby uzyskać duşe prądy i jak najmniejsze straty mocy w urządzeniu zastosowano transformator, którego strona wtórna, oprócz skupionej pojemności, rezystancji obwodu i indukcyjność wzbudnika oraz wprowadzanej do obwodu przez grzany element grafitowy, stanowią obwód rezonansowy szeregowy [9, 13, 12]. Wszystkie wartości obwodu rezonansowego nie ulegają zmianie w czasie pracy, dlatego w zaproponowanym układzie nie zastosowano pętli fazowej PLL, umoşliwiającej samoczynne dostrojenie częstotliwości wyzwalania par tranzystorów mocy w zaleşności od częstotliwości rezonansowej całego układu. Zasilanie urządzenia zostało zaprojektowane i wykonane w układzie pełnego mostka H, w którego głównej gałęzi podłączony jest transformator oraz kondensator C blokujący składową stałą źródła zasilania (rys. 1). Wielkością wyjściową w stosowanym układzie przekształtnikowym o obciąşeniu rezonansowym jest napięcie stałe o wartości Us, które przekazywane jest do obciąşenia za pomocą kluczowania. W czasie od 0 do T1 (rys. 1) załączane są klucze K1 i K3, a w czasie od T1 do T2 załączane są klucze K2 i K4. Procesowi załączania i wyłączania odpowiednich par kluczy towarzyszy pojawienie się wymuszenia napięciowego na gałęzi rezonansowej R, L, C w postaci napięcia przemiennego o przebiegu zblişonym do sinusoidy. W gałęzi strony pierwotnej transformatora znajduje się czujnik prądu umoşliwiający detekcję przejścia prądu przez zero. Znajomość chwili przejścia prądu przez zero jest niezbędna dla wysterowania odpowiednich par tranzystorów mocy typu MOSFET (kluczy sterujących) z zapewnieniem przerwy

X' € " #

" " W urzÄ…dzeniach do badania topliwoĹ›ci popioĹ‚u metodÄ… rurowÄ… stosowane sÄ… zwykle dwa typy wysokotemperaturowych elementĂłw grzejnych: elementy sylitowe wykonane z rekrystalizowanego wÄ™glika krzemu o temperaturze pracy do okoĹ‚o 1500 °C oraz wykonane z dwukrzemka molibdenu o temperaturze pracy do 1850 °C. Te elementy grzewcze charakteryzujÄ… siÄ™ duşą trwaĹ‚oĹ›ciÄ… w wysokiej temperaturze pracy, wzrostem rezystancji (spadkiem mocy) wraz ze wzrostem temperatury, wyjÄ…tkowÄ… kruchoĹ›ciÄ… oraz koniecznoĹ›ciÄ… zastosowania specjalnego rodzaju sterowania wzrostem temperatury. W niektĂłrych starszych rozwiÄ…zaniach grzejnych urzÄ…dzeĹ„ do badania topliwoĹ›ci popioĹ‚Ăłw, jako elementy grzejne stosowane sÄ… rĂłwnieĹź druty i taĹ›my oporowe umieszczane w materiaĹ‚ach ceramicznych. Zgodnie z normami [N3, N4] urzÄ…dzenia te muszÄ… pracować w neutralnym Ĺ›rodowisku gazowym. Realizacja prac przedstawionych w artykuĹ‚ach [10, 11] i zdobyte doĹ›wiadczenia pozwoliĹ‚y na zaproponowanie nowego rozwiÄ…zania pieca do badania topliwoĹ›ci popioĹ‚u. Przedstawione rozwiÄ…zanie jest przystosowane do elastycznego ustawiania programu badaĹ„. Charakterystyka urzÄ…dzenia: − dziaĹ‚a na zasadzie wykorzystania zjawiska rezonansu elektrycznego i wysokoczÄ™stotliwoĹ›ciowego grzania indukcyjnego, − ma funkcjÄ™ szybkiego procesu nagrzewania prĂłbek popioĹ‚u, aĹź do zaobserwowania i okreĹ›lenia temperatury pĹ‚yniÄ™cia popioĹ‚u, − umoĹźliwia stosowanie wymiennej rury wykonanej z materiaĹ‚u przewodzÄ…cego (grafitu), ktĂłry w czasie procesu nagrzewania wydzielaĹ‚by tlenek wÄ™gla i dwutlenek wÄ™gla w odpowiednich proporcjach, co gwarantuje atmosferÄ™ neutralnÄ… w jej wnÄ™trzu, − wyposaĹźone jest w kilkuzwojowy wzbudnik wykonany z przewodzÄ…cej prÄ…d elektryczny rurki, przez ktĂłrÄ… przepĹ‚ywa ciecz chĹ‚odzÄ…ca w obiegu zamkniÄ™tym, wzbudnik kumuluje energiÄ™ pola elektromagnetycznego w przewodzÄ…cej rurze grafitowej,

46

P

O

M

I

A

R

Y

•

A

U

T

O

M

Zasilanie

K1 K2

L1 Prostownik

U1

C

K4

mocy

L2 LS

CRS

K3

Rys. 1. Uproszczony schemat działania układu przekształtnikowego: U1 – napięcie zasilania obwodu, K – tranzystory mocy typu MOSFET, L1 – indukcyjność strony pierwotnej transformatora, L2 – indukcyjność strony wtórnej transformatora, LS – indukcyjność pozostałych elementów obwodu rezonansowego (wzbudnika wraz z rura grafitową), CRS – pojemność kondensatora rezonansowego i pojemność strony wtórnej transformatora Fig. 1. Simplified diagram of the operation of the converter: U1 – circuit supply voltage, K – MOSFET power transistors, L1 – transformer primary inductance, L2 – transformer secondary inductance, LS – inductance of other elements of the resonant circuit (exciter with graphite pipe), CRS – capacity resonant capacitor and transformer secondary capacity

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


G * " " % $ " * B czasowej, tzw. death-time, sĹ‚uşącej do wyeliminowania przypadkĂłw rĂłwnoczesnego wĹ‚Ä…czenia obu par kluczy. Dla czÄ™stotliwoĹ›ci powyĹźej 150 kHz mogÄ… pojawić siÄ™ problemy z dziaĹ‚aniem ukĹ‚adĂłw sterowania, poniewaĹź zaczynajÄ… odgrywać rolÄ™ efekty polowe (efekt zbliĹźenia przewodĂłw, efekt wypierania prÄ…du, czyli zjawisko naskĂłrkowoĹ›ci oraz inne), nieujawniajÄ…ce siÄ™ tak ostro przy pracy ukĹ‚adĂłw elektronicznych na czÄ™stotliwoĹ›ciach niĹźszych. Dlatego powszechnie przyjmuje siÄ™, Ĺźe ukĹ‚ady sterowania pracujÄ… dobrze, o ile ich czÄ™stotliwość pracy nie przekracza 150 kHz. Zaproponowane rozwiÄ…zanie jest efektem poszukiwania kompromisu a zbudowane prototypowe stanowisko laboratoryjne w istniejÄ…cych warunkach, wydaje siÄ™ być rozwiÄ…zaniem zbliĹźonym do optymalnego. Praktycznie obciÄ…Ĺźeniem roboczym urzÄ…dzenia jest wzbudnik indukcyjny wykonany z rurki miedzianej, poĹ‚Ä…czony szeregowo z bateriÄ… kondensatorĂłw. WewnÄ…trz wzbudnika znajduje siÄ™ odizolowana termicznie od niego rura grafitowa stanowiÄ…ca komorÄ™ roboczÄ…. Nagrzewanie rury grafitowej odbywa siÄ™ w procesie dwustanowym wĹ‚Ä…cz–wyĹ‚Ä…cz, sterowanym przez regulator temperatury z funkcjÄ… rampingu. Na rysunkach 2 i 3 przedstawiono widok prototypowego urzÄ…dzenia wraz systemem analizy obrazu. Parametry techniczne urzÄ…dzenia grzejnego (RZ-1) sÄ… nastÄ™pujÄ…ce: sieciowe napiÄ™cie zasilania U = 230 V AC, moc czynna P = 2,0 kW, czÄ™stotliwość pracy wzbudnika f = 117 kHz, indukcyjność LS = 1,4 ÎźH, pojemność w postaci baterii kondensatorĂłw zĹ‚oĹźona z kondensatorĂłw typu HC-03 [13] o pojemnoĹ›ci caĹ‚kowitej CRS = 1,6 ÎźF. Wymiary falownika: dĹ‚ugość 450 mm, szerokość 250 mm, wysokość 150 mm. Wymiary ukĹ‚adu wyjĹ›ciowego ze wzbudnikiem: dĹ‚ugość 250 mm, szerokość 150 mm wysokość 100 mm, wymiary wzbudnika: Ĺ›rednica zewnÄ™trzna 70 mm, dĹ‚ugość 45 mm, wzbudnik wykonano z rurki miedzianej o Ĺ›rednicy Æ 6 mm o 6 zwojach. Wzbudnik chĹ‚odzony jest skutecznie wodÄ… w obiegu zamkniÄ™tym. UrzÄ…dzenie moĹźe pracować do temperatury 1500 °C (maksymalnie 1600 °C). Do zmiany nastaw temperatury zastosowano sterownik PLC, w ktĂłrym zaprogramowano algorytm wzrostu temperatury zgodnie z normÄ… [N3, N4], w programie zastosowano blok regulatora PID odpowiedzialnego za stabilizacjÄ™ temperatury. Sterownik PLC współpracuje z termoelementem typu S–PtRh-Pt (platyna-rod/platyna) o temperaturze pracy do 1600 °C. DoĹ›wiadczenie uzyskane w rozlicznych pracach naukowych pozwoliĹ‚y na odpowiednie przygotowanie systemu pomiaru temperatury [4]. Czujnik temperatury umieszczony zostaĹ‚ w Ĺ›rodku rury grafitowej. Obraz podczas badaĹ„ zarejestrowano przy wykorzystaniu kamery Logitech HD 720p i zastosowaniu filtra szklanego 50 mm o zaciemnieniu DIN6.

Rys. 2. Prototypowe stanowisko laboratoryjne Fig. 2. Prototype laboratory stand

\' $ # Pelety naleĹźy spalać tylko w piecach przystosowanych do ich spalania. Pelet drzewny zawiera okoĹ‚o 80% substancji lotnych (w procentach suchej masy), co oznacza, Ĺźe w czasie spalania 80% masy przeksztaĹ‚ca siÄ™ w gazy, a pozostaĹ‚a część zamieni siÄ™ w wÄ™giel drzewny. W procesie spalania peletu wyróşnia siÄ™ trzy fazy: suszenie (odparowanie wody), gazyfikacjÄ™ (pirolizÄ™) i spalanie oraz dopalanie siÄ™ wÄ™gla drzewnego. W czasie tego procesu 4/5 energii jest uwalniana w postaci gazu, a pozostaĹ‚a 1/5 w postaci wÄ™gla drzewnego. Po trafieniu peletu do komory spalania pieca, ciepĹ‚o towarzyszÄ…ce procesowi odparowuje wodÄ™ zawartÄ… w pelecie. JeĹźeli zawartość wody w spalanym pelecie jest niska, proces zachodzi bardzo szybko, jeĹźeli jest duĹźa, wĂłwczas proces zachodzi wolno z duşą stratÄ… energii cieplnej na suszenie mokrego peletu. Pod wpĹ‚ywem dalszego ogrzewania peletu nastÄ™puje proces gazyfikacji, czyli wydzielania gazu (proces zachodzi w temperaturze okoĹ‚o 260–280 °C. PowstajÄ… wtedy gazy, takie jak tlenek wÄ™gla (CO), wodĂłr (H2) i metan (CH4) oraz inne wÄ™glowodory oraz wÄ™giel drzewny. JeĹźeli w piecu jest wystarczajÄ…ca ilość powietrza, wtedy gazy palÄ… siÄ™, roĹ›nie temperatura i zaczyna wypalać siÄ™ powstaĹ‚y wÄ™giel drzewny. Po wypaleniu wÄ™gla drzewnego pozostaje popiół, zawierajÄ…cy przewaĹźnie niepalne zwiÄ…zki mineralne. Popiół jest niepoşądany, gdyĹź oznacza konieczność oczyszczania gazĂłw odlotowych oraz usuwania popioĹ‚u i szlaki. Zawartość popioĹ‚u jest Ĺ›ciĹ›le powiÄ…zana z brudem i piaskiem w korze drzewnej oraz z solami wchĹ‚anianymi w procesie wzrostu drzewa. Pelety drzewne charakteryzujÄ… siÄ™ niskÄ… zawartoĹ›ciÄ… popioĹ‚u, zazwyczaj w granicach od 0,5% do 15%. GĹ‚Ăłwnymi skĹ‚adnikami biomasy sÄ… wÄ™giel (C), wodĂłr (H), tlen (O), azot (N), siarka (S) oraz chlor (Cl). SkĹ‚ad biomasy charakteryzuje siÄ™ duşą róşnorodnoĹ›ciÄ… wynikajÄ…cÄ… z faktu, iĹź zaleĹźy on np. od miejsca, w ktĂłrym rosĹ‚a, sposobu jej uprawy oraz nawoĹźenia. GĹ‚Ăłwnymi skĹ‚adnikami formujÄ…cymi popiół sÄ…: Al, Ca, Fe, K, Mg, Na, P, Si, Ti, natomiast dodatkowymi skĹ‚adnikami sÄ…: As, Ba, Cd, Co, Cr, Cu, Hg, Mn, Mo, Ni, Pb, Sb, Tl, V, Zn. SkĹ‚adniki popioĹ‚u takie jak Ca i Mg zwykle przyczyniajÄ… siÄ™ do wzrostu temperatury topnienia popioĹ‚u, natomiast K znaczÄ…co obniĹźa temperaturÄ™ topnienia popioĹ‚u. Punkt topnienia popioĹ‚u moĹźe rĂłwnieĹź znaczÄ…co spadać, jeĹźeli biomasa zawiera takie substancje jak chlorki oraz niskotopliwe alkalia i glinokrzemiany [14]. Z powodu zawartoĹ›ci popioĹ‚u wynoszÄ…cej nawet kilkanaĹ›cie procent, a takĹźe alkalicznych skĹ‚adnikĂłw, w instalacjach kotĹ‚owych naleĹźy zastosować specjalne urzÄ…dzenia do usuwania popioĹ‚u. Arsen, kadm, chrom, oĹ‚Ăłw i rtęć to metale Ĺ›ladowe wystÄ™pujÄ…ce w maĹ‚ych iloĹ›ciach w popioĹ‚ach z biomas. SkĹ‚ad chemiczny

Rys. 3. Sterownik pieca Fig. 3. Furnace controller

47


" % h" %

% =

8 %

% 8

8 % 8 8

biomasy charakteryzuje siÄ™ duşą niejednorodnoĹ›ciÄ…, a zawartość takich skĹ‚adnikĂłw jak tlen, chlor i azot powoduje emisjÄ™ dioksyn, furanĂłw i chlorowodoru. W biomasach z duşą zawartoĹ›ciÄ… azotu jest duĹźe stęşenie protein, w ktĂłrych azot wystÄ™puje w formie grup aminowych (-NH2). MaĹ‚a gÄ™stość biomasy powoduje konieczność zapewnienia duĹźej powierzchni na jej skĹ‚adowanie, utrudnia jej efektywny transport oraz dozowanie do paleniska. Duşą część biomasy stanowiÄ… materiaĹ‚y lotne, ktĂłre utrudniajÄ… kontrolowanie procesu spalania. Temperatura zwana temperaturÄ… pĹ‚yniÄ™cia popioĹ‚Ăłw, jest róşna dla róşnych rodzajĂłw peletu i zwykle wynosi od okoĹ‚o 760 °C do 1500 °C (róşa bezkolcowa) [13, 15]. Przekroczenie temperatury pĹ‚yniÄ™cia popioĹ‚Ăłw w gazach odlotowych moĹźe spowodować powstanie na Ĺ›ciankach rur odprowadzajÄ…cych te gazy, grubej warstwy szlaki trudnej do usuniÄ™cia. NaleĹźy dodać, Ĺźe mimo niewielkiej zawartoĹ›ci soli potasu i soli sodu w spalanym pelecie, mogÄ… one tworzyć lepki popiół, pokrywajÄ…cy powierzchniÄ™ zewnÄ™trznÄ… kotĹ‚a i ruszt.

W czasie badania prĂłbka sprasowanego popioĹ‚u jest umieszczana na specjalnie uksztaĹ‚towanej podstawce grafitowej znajdujÄ…cej siÄ™ wewnÄ…trz wypoziomowanej i jednostronnie zamkniÄ™tej materiaĹ‚em izolujÄ…cym rury grafitowej. MetodÄ™ rurowÄ… oznaczania topliwoĹ›ci popioĹ‚Ăłw w wysokiej temperaturze okreĹ›la norma [N3]. OkreĹ›la ona metodÄ™ ogrzewania odpowiednio uksztaĹ‚towanej prĂłbki sprasowanego popioĹ‚u (o ostrych brzegach), z szybkoĹ›ciÄ… 30 °C¡min-1 do temperatury 900 °C oraz 10 °C¡min-1 powyĹźej temperatury 900 °C w neutralnym Ĺ›rodowisku gazowym wytwarzanym tu przez nagrzanÄ… rurÄ™ grafitowÄ…. Obserwacja bezpoĹ›rednia zachowania siÄ™ prĂłbki lub zapis jej obrazu pozwala na ustaleniu charakterystycznej temperatury topliwoĹ›ci popioĹ‚u na podstawie wizualnej oceny zmian konturĂłw badanej ksztaĹ‚tki, obserwowanych na siatce pomiarowej (rys. 4). Obraz z caĹ‚ego procesu nagrzewania prĂłbki w rurze, od chwili osiÄ…gniÄ™cia temperatury startowej wynoszÄ…cej 750 °C, rejestrowany jest klatkowo (20 obrazĂłw na minutÄ™) w celu późniejszego okreĹ›lenia parametrĂłw topliwoĹ›ci popioĹ‚Ăłw. NastÄ™pnie obraz poddawany jest opracowaniu numerycznemu [16]. Do wyznaczenia charakterystycznych konturĂłw ksztaĹ‚tu wykorzystano metody i techniki analizy obrazu. Analiza obrazu to proces przetwarzania informacji (danymi wejĹ›ciowymi jest obraz a danymi wyjĹ›ciowymi zapisane w postaci np. liczb, tablicy liczb). Do realizacji tych zadaĹ„ korzysta siÄ™ z systemĂłw komputerowych. Aphelion jest zaawansowanÄ… aplikacjÄ…, ktĂłra sĹ‚uĹźy do przetwarzania obrazu i iloĹ›ciowej analizy sĹ‚uşącym do szybkiego prototypowania aplikacji, rozwoju nowych technik obrazowania, uczenia „patrzeniaâ€? komputera i wdraĹźania aplikacji [6]. Aphelion od wiÄ™kszoĹ›ci oprogramowaĹ„ sĹ‚uşących analizie obrazu pozwala nakĹ‚adać obiekty na róşne obrazy (wzorce, np. wg PN) i dokonywać porĂłwnaĹ„, przesuwać, wygĹ‚adzać, Ĺ‚Ä…czyć ze sobÄ… obiekty z róşnych zbiorĂłw. Mimo tego, Ĺźe na siebie nachodzÄ…, stanowiÄ… dwie róşne warstwy. Obrazy analizowane w Aphelionie mogÄ… być binarne, szare lub kolorowe, o dowolnej wielkoĹ›ci [17]. W wyniku zastosowania filtru uzyskuje siÄ™ pewne dziaĹ‚ania algebraiczne na liczbach, ktĂłre opisujÄ… kolor lub stopieĹ„ szaroĹ›ci w sÄ…siedztwie analizowanego punktu i uzyskujÄ…c charakterystyczne kontury ksztaĹ‚tu podczas oznaczania topliwo-

^' # # 9 PrĂłbkÄ™ do badaĹ„ stanowi popiół uzyskany ze spopielenia materiaĹ‚u badawczego bÄ…dĹş teĹź popiół pobrany np. z instalacji spalania paliw staĹ‚ych. Warunkiem uĹźycia prĂłbki popioĹ‚u do oznaczenia topliwoĹ›ci jest caĹ‚kowite spalenie paliwa, z ktĂłrego popiół pochodzi (prĂłbka nie moĹźe zawierać niedopalonych czÄ…stek paliwa). PobranÄ… prĂłbkÄ™ umieszcza siÄ™ w specjalnym moĹşdzierzu i uciera tĹ‚uczkiem, nie dopuszczajÄ…c do jakiegokolwiek zanieczyszczenia prĂłbki. Po roztarciu popiół przesiewa siÄ™ przez sito kontrolne o otworach wielkoĹ›ci 0,075 mm a materiaĹ‚ pozostaĹ‚y na sicie ponownie siÄ™ uciera. Tak przygotowany popiół zwilĹźa siÄ™ wodÄ… destylowanÄ…, miesza a nastÄ™pnie ugniata w formie wykonanej z mosiÄ…dzu lub stali nierdzewnej w postaci: piramidy o podstawie rĂłwnobocznego trĂłjkÄ…ta (wysokość prĂłbki nie powinna być wiÄ™ksza niĹź 19 mm i od dwĂłch do trzech razy wiÄ™ksza od dĹ‚ugoĹ›ci boku podstawy), szeĹ›cianu (o dĹ‚ugoĹ›ci boku 3–7 mm), walca (o wysokoĹ›ci 3–9 mm i Ĺ›rednicy rĂłwnej wysokoĹ›ci) lub stoĹźka Ĺ›ciÄ™tego (o wysokoĹ›ci 4 mm i Ĺ›rednicy 3 mm przy podstawie i 1,5 mm w części Ĺ›ciÄ™tej) [N3, N4]. KrawÄ™dzie uzyskanych prĂłbek powinny być bezwzglÄ™dnie ostre, by uĹ‚atwić obserwacjÄ™ prĂłbki podczas stapiania. UzyskanÄ… prĂłbkÄ™ naleĹźy wysuszyć a nastÄ™pnie umieĹ›cić na pĹ‚ytce wykonanej z materiaĹ‚u nieulegajÄ…cego deformacji, niereagujÄ…cego i nieabsorbujÄ…cego popioĹ‚u podczas oznaczania. Zaleca siÄ™ wykonanie pĹ‚ytek ze spieku tlenku glinu lub mulitu. Kolejnym krokiem jest usuniÄ™cie z prĂłbki substancji organicznych przez wolne ogrzewanie w atmosferze powietrza do temperatury okoĹ‚o 815 °C. Etap ten moĹźe być realizowany w piecu stosowanym do oznaczania topliwoĹ›ci popioĹ‚u. Tak przygotowana prĂłbka popioĹ‚u sĹ‚uĹźy do dalszych badaĹ„.

a)

b)

c)

|' 1 ! !

Do wyznaczania temperatur topliwości popiołów wykorzystano sygnał z termoelementu oraz kamerę cyfrową rejestrującą zachowanie się próbki popiołu podgrzewanego w komorze rurowej pieca. Pomiar temperatury odbywał się przy pomocy termoelementu (PtRh-Pt) z dodatkowo przyłączonymi przewodami kompensacyjnymi. Napięcie otrzymane z termoelementu jest napięciem odniesienia dla sterownika PLC, który porównuje je z wartością zadaną (rosnącą zgodnie z procedurą opisaną w normach [N3, N4].

48

P

O

M

I

A

R

Y

•

A

U

T

O

M

d)

e)

f)

Rys. 4. Próbka popiołu: a) przed rozpoczęciem pomiarów, b) Ts –temperatura spiekania popiołu, c) Ta – temperatura mienienia popiołu, d) Td – temperatura topnienia popiołu, e) Tc – temperatura płynięcia popiołu, f) widok próbki po badaniu Fig. 4. Ash sample: a) before starting measurements, b) Ts – ash sintering temperature, c) Ta – ash flux temperature, d) Td – ash melting temperature, e) Tc – ash flow temperature, f) sample view after the test

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


G * " " % $ " * B

ści popiołu. Kolejnym etapem analizy obrazu jest analiza obrazu z zarejestrowaną temperaturą, przy której powstają charakterystyczne kontury kształtu. Zbudowane stanowisko laboratoryjne wraz z platformą Aphelion pozwala na automatyczne analizowanie charakterystycznych konturów i temperatur topliwości popiołu metodą rurową.

7. Wnioski Zbudowane prototypowe stanowisko laboratoryjne speĹ‚nia wymagania norm [N1, N4]. Przeprowadzone badania prĂłbne róşnych popioĹ‚Ăłw wykazaĹ‚y, Ĺźe zaproponowane rozwiÄ…zanie moĹźe być stosowane do: − okreĹ›lania topliwoĹ›ci popioĹ‚Ăłw metodÄ… rurowÄ… dla popioĹ‚Ăłw dennych otrzymywanych w procesie spalania biomasy lignocelulozowej, oraz mieszaniny biomasy z wÄ™glem kamiennym, brunatnym, torfem oraz tych kopalin bez biomasy. Nie wyklucza to znacznie szerszych moĹźliwoĹ›ci badawczych dla innych paliw staĹ‚ych, − przybliĹźonego okreĹ›lenia temperatury topliwoĹ›ci popioĹ‚u przy szybszym, odbiegajÄ…cym od przyjÄ™tej normy, nagrzaniu prĂłbki sprasowanego popioĹ‚u, − prawie natychmiastowego ponownego badania kolejnej prĂłbki popioĹ‚Ăłw, w nowej rurze grafitowej umieszczonej we wzbudniku, po wyjÄ™ciu rury wczeĹ›niej stosowanej. Na stanowisku prowadzono badania nad okreĹ›leniem zaleĹźnoĹ›ci temperatury pĹ‚yniÄ™cia popioĹ‚u od skĹ‚adu i zanieczyszczenia biomasy. Ponadto urzÄ…dzenie moĹźe sĹ‚uĹźyć do okreĹ›lania temperatury zapĹ‚onu peletu. Temperatura zapĹ‚onu jest waĹźnym parametrem kaĹźdego paliwa charakteryzujÄ…cym jego wĹ‚aĹ›ciwoĹ›ci uĹźytkowe i kaĹźda specyfikacja jakoĹ›ciowa paliwa wymaga oznaczenia tego parametru. Analiza obrazu pozwala na szybkie zaimplementowanie platformy Aphelion do okreĹ›lenia charakterystycznych konturĂłw ksztaĹ‚tu oraz charakterystycznej temperatury topliwoĹ›ci popioĹ‚u.

` # & 1. Obernberger I., Nutzung fester Biomasse in Verbrennungsanlagen unter besonderer BerĂźcksichtibunb des Verhaltens aschebildender, Elemente, Schriftenreihe „Thermische Biomassenutzung“, Band 1, dbv-Verlag der Technischen Universität Graz, Graz, Ă–sterreich, 1997. 2. Van Loo S., Koppejan J., (eds.) Handbook of Biomass Combustion and Co-firing, IEA Bioenergy Task 32, London, 2002. 3. Kalembasa D., Ilość i skĹ‚ad chemiczny popioĹ‚u z biomasy roĹ›lin energetycznych. „Acta Agrophysicaâ€?, Vol. 7, Nr 4, 2006, 909–914. 4. Kurytnik I.P., Juszkiewicz Z., Metodyczne bĹ‚Ä™dy pomiaru temperatury termometrem przemysĹ‚owym, „Pomiary Automatyka Robotykaâ€?, R. 22, Nr 1, 2018, 57–58, DOI: 10.14313/PAR_227/57. 5. Lis S., Tomasik M., NÄ™cka K., DróşdĹź T., Nawara P., Wrona P., OziembĹ‚owski M., Konstrukcja i analiza modelu symulacyjnego ukĹ‚adu sterowania piecem indukcyjnym, „PrzeglÄ…d elektrotechnicznyâ€?, Nr 12, 2015, 147–151, DOI: 10.15199/48.2015.12.37. 6. Wojnar L., KurzydĹ‚owski K.J., Szala J., Praktyka analizy obrazu. Wyd. Polskie Towarzystwo Stereologiczne, KrakĂłw 2002. 7. NÄ™cka K., Lis S., DróşdĹź T., Nawara P., Wrona P., OziembĹ‚owski M., Charakterystyka prototypowego stanowiska laboratoryjnego do badania topliwoĹ›ci popioĹ‚u metodÄ… rurowÄ…. „PrzeglÄ…d Elektrotechnicznyâ€?, Nr 1, 2016, 109–112, DOI: 10.15199/48.2016.01.26.

8. Tomasik M., Lis S., NÄ™cka K., OziembĹ‚owski M., KieĹ‚basa P., DróşdĹź T., Nawara P, Ostafin M., Sterowanie piecem indukcyjnym do laboratoryjnego spalania biomasy, „PrzeglÄ…d elektrotechnicznyâ€?, Nr 12, 2016, 173–177, DOI: 10.15199/48.2016.12.44. 9. GÄ…siorski A., PosyĹ‚ek Z., Nietypowe rozwiÄ…zanie indukcyjnego wysokoczÄ™stotliwoĹ›ciowego pieca tyglowego, „PrzeglÄ…d Elektrotechnicznyâ€?, R. 89, Nr 12, 2013, 230–233. 10. GÄ…siorski A., PosyĹ‚ek Z., Praktyczna realizacja rezonansowego falownika szeregowego pracujÄ…cego z potrojonÄ… czÄ™stotliwoĹ›ciÄ… wzglÄ™dem czÄ™stotliwoĹ›ci przeĹ‚Ä…czania elementĂłw, „PrzeglÄ…d Elektrotechnicznyâ€?, R. 89, Nr 12, 2013, 370–373. 11. Mućko J., Tranzystorowe falowniki napiÄ™cia z szeregowymi obwodami rezonansowymi, Uniwersytet Technologiczno-Przyrodniczy im. Jana i JÄ™drzeja Ĺšniadeckich w Bydgoszczy Rozprawy Nr 148, Wyd. Uczelniane Uniwersytetu Technologiczno-Przyrodniczego, Bydgoszcz 2011. 12. GÄ…siorski A., PosyĹ‚ek Z., KieĹ‚basa P., OszczÄ™dny jednofazowy falownik do grzania indukcyjnego z odzyskiem energii pracujÄ…cy z trzeciÄ… harmonicznÄ…, „PrzeglÄ…d Elektrotechnicznyâ€?, Nr 12, 2017, 95–98, DOI: 10.15199/48.2017.12.24. 13. Chungen Yin, Lasse A. Rosendahl, SĹ™ren K. Kaer, Grate-firing of biomass for heat and power production, Institute of Energy Technology, Aalborg University, Denmark, Progress in Energy and Combustion Science, Nr 34, 2008, 725–754. 14. Kowalczyk-JuĹ›ko A., ĹšrĂłdĹ‚a biomasy na cele energetyczne, „Bioenergetyka podkarpackaâ€?. B. KoĹ›cik (red.). PWSZ w JarosĹ‚awiu, 2007. 15. MaĹ‚kiĹ„ski W., ZajÄ…c J., Wybrane problemy wizyjnej analizy wĹ‚aĹ›ciwoĹ›ci termicznych materiaĹ‚Ăłw przy wykorzystaniu analizatora do wyznaczania punktĂłw charakterystycznych przemian fazowych, „Elektronika – konstrukcje, technologie, zastosowaniaâ€?, Vol. 54, Nr 4, 2013, 51–55. 16. Gawlik J., Magdziarczyk W., Wojnar L., Analiza fraktalna struktury geometrycznej powierzchni, Mat. Konf. pt. Innowacje w ZarzÄ…dzaniu i InĹźynierii Produkcji, Zakopane, 382-396, 2011. 17. Rybak W., Spalanie i współspalanie biopaliw staĹ‚ych, Oficyna Wydawnicza Politechniki WrocĹ‚awskiej, 2006.

5 [N1] DIN 51730 Testing of solid fuels – Determination of fusibility of fuel ash (Badanie paliw stałych – Określanie topliwości popiołów). [N2] ISO 1171:2010 Solid mineral fuels – Determination of ash (Stałe paliwa mineralne – Określenie popiołu). [N3] PN-ISO 540:2001 Paliwa stałe, Oznaczanie topliwości popiołu w wysokiej temperaturze metodą rurową. [N4] PN-82/G-04535 Paliwa stałe. Oznaczanie charakterystycznych temperatur topliwości popiołu.

49


" % h" %

% =

8 %

% 8

8 % 8 8

Z . < 8 6 ' 0 G < # - . M $ . 0 . The work describes the problem of determining the fusibility of ash using an induction tube furnace made according to the author’s project, carrying out the process of burning (melting) ash samples in accordance with the PN-ISO-540: 2001 standard. This process is controlled by a PLC with a programmed PID temperature regulation and stabilization algorithm, the device is equipped with a S-type thermocouple and a digital image recording and analysis system. Image registration is necessary to determine the ash flow temperature, this value is identified when the state of aggregation changes from solid to liquid, the ash sample passes from a cylindrical shape to a liquid form. The conducted research is extremely important in the context of biomass combustion in boilers, the selection of the optimal combustion temperature will prevent the formation of a ceramic layer on the boiler walls, which deteriorates its operational properties and in the longer term will lead to its decommissioning. Selected combined heat and power plants are obliged to burn biomass as part of the policy of increasing the share of renewable energy in the overall energy balance, including by using biomass. Because the origin of biomass is varied, hence its physico-chemical composition as a fuel is heterogeneous, therefore CHP plants must determine the ash flow temperature for individual batches of this fuel. KeywordsV .% % . ' # % ' . .

'

# 2 (

& ' ORCID: 0000-0001-6898-8527

& ' ORCID: 0000-0002-3152-4654

F # F Q ; O

' S K ' 6 O F J N L JO Q ; ' M = F E V K?B+) L SG ' P ?BT % G P ?B)T % # P ?BB! N ' (@! J G E # E M ' 6 O F X F . " E > . % ' ` V

MG ; ' 0 = . X E M ' X Z " H " E ; (!!@ Q ' O S' (!!@ ' " E ' = . M F J X E ; ' 6 O F ' = E . X . Z " H " N A G J ' J . ` % B! G % G . % ' % K FV J # M-ML J '

7

8

& ' ORCID: 0000-0002-7813-5322

& ' ORCID: 0000-0002-4497-8858

MG ; ' 0 = . X E M ' X Z " H " E ; O (!!B E Q ' O E S' (!?? ' " ' = . M F J X ; ' 6 O F E ' = . X . Z " H " N . E G ' G H G J E E O

MG ; ' 0 = . X E M ' X Z " H " E ; (!!+ Q ' O SG ' " ' = E $ % = . F J F ' E ; ' 6 O F ' = E . X . Z " H " N J ' ( G % HO $ ' G J ' J O P ' ' F ' ' J E . . ; ?() +T% [ E \% G . b Y bX< V G^6=;

50

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 51–58, DOI: 10.14313/PAR_236/51

= . . V=- ' <V V P X ' 0 F ' 3 # *+ # 9 ( + $ ; ! MRZ # ' 0 . % $ !% !E!@B " % F '

. There is a very high availability of energy-saving lamps for consumer use on the market. Manufacturers, wanting to reach the widest possible range of customers, present on the packaging various data that do not inform the user about the real energy properties of the lamp. The authors have measured the energy parameters of several randomly selected LED and CFL lamps available in commercial networks and compared the obtained results with the parameters declared by the manufacturers. 3 V V=- % <V % ' . % 8

1. Introduction Energy-saving lamps using LED diodes as light sources (commonly referred to as LED lamp or LED light bulb) are used more and more commonly. Due to the much better lighting efficiency than the classic bulbs, they consume several or dozen times less power from the grid to produce the same luminous flux. It gives significant energy savings for individual consumers in apartments and/or houses [1] as well as for the institutional recipients in large facilities such as office buildings, shopping centers, hospitals, etc. The second beneficial feature of lighting systems based on LED luminaries is a possibility of wide lighting arrangement. This is possible due to the availability of various luminaries and the lighting control capabilities implemented in lighting systems [2]. The wide use of LED lamps causes various problems that arise in power grids resulting from the non-sinusoidal waveform of the current consumed by such lamps. For most lamps, the current waveform is qualitatively very similar, which is the result of typical solutions of power supplies used in such lamps [3]. Despite the small power and current consumed by a single lamp, problems arise from the large amount of such lamps in the same grid and their synchronous operation forced by voltage waveform in the power grid. These issues are discussed in [4–7]. Studies of LED and CFL lamps in terms of their impact on the power grid (measurements of power factor and current harmonic distortions) were carried out in various research centers and are described, for example in [3,8]. These studies confirm their unfavorable energy properties: harmonic distortion factor

) " V

G . $ % & . ' ) ' ?( ?? (!?B % ' ' !@ ?( (!?B

!

of current waveform often greater than 100% and low power factor between 0.4 and 0.95 depending on the power supply type. On the consumer market there are a lot of energy-saving LED bulbs available from various manufacturers. Manufacturers wanting to reach the widest possible audience (mostly non-professional) often present on the packaging various data, slogans and/or illustrations (e.g. “4 W = 60 W�), which do not inform the user about real energy properties of the lamps. In addition, only the basic data set is given on tubes (and packages): rated supply voltage, frequency, power and current. The authors have measured the energy parameters of several, arbitrarily selected LED lamps and two compact fluorescent lamps (CFL) available in popular commercial networks and compared the obtained measurement data with the parameters declared by the manufacturers.

X' - Y . A few, arbitrarily chosen energy-saving LED and CFL lamps intended for domestic use were tested. Some of these lamps were and some are widely available in stores. All tested lamps were brand new, although some of them were manufactured much formerly. Table 1 shows the rated data of the tested LED and CFL lamps available on the lamp or its package. More detailed data have been available for lamps from one manufacturer. These data mainly focus on photometric and environmental parameters rather than electrical parameters. For most lamps, manufacturers specified the ranges of the supply voltage 220–240 V and the frequency 50–60 Hz. Only the manufacturer of lamp No. 2 (205753) specified the 230 V/50 Hz supply voltage. The manufacturer of lamp No. 1 (MS-G95-1050) declared that the power factor is greater than 0.5. All lamps were normally used for about 3 months, 5 days per week, 2–3 hours per day. It gives that the time of use of each lamp was about 130–190 hours. Recommended time for lamp stabilization is 100 hours of continuous operation.

51


Energy Saving LED and CFL Lamps – Rated vs. True Power and Current Consumption

Table 1. Rated data of LED and CFL lamps tested Tabela 1. Dane znamionowe testowanych lamp LED i CFL

No.

Type (Series)

LED/CFL

Year of prod.

Power [W]

Current [mA]

1

MS-G95-1050

LED

2015

12

90

2

205753

LED

2016

12

150

3

LD6P

LED

2017

14.5

120

4

Ek889

LED

2015

12

64

5

DuluxStar

CFL

2009

23

200

6

Dulux

CFL

2015

15

150

3. Test bed

\' +!

! & ! #

The diagram of the measurement test bed is shown in Figure 1. The measurement system was supplied by a programmable AC voltage source Chroma 61512. The use of a stabilized voltage source made it possible to make the measurement results independent of voltage fluctuations in the power grid and provide a sinusoidal voltage with a very low harmonic distortions. Chroma 61512 is a programmable three-phase voltage source and allows to adjust independently the voltage in each phase in the range of 0–300 V, frequency 15–1500 Hz and the shift between phases from 0° to 360°. The maximum output power of the source is 18 kW (3 6 kW), and the total harmonic distortions of voltages are maximum 0.3% at 50 Hz, 1% in the frequency range from 15 Hz to 1 kHz and 1.5% at above 1 kHz. The RIGOL DS1074 digital storage oscilloscope was used to observe and store voltage and current waveforms. The sampling frequency was 50 kHz, which gives 1000 samples per 1 voltage period of the grid. The resolution of the A/D converters in the oscilloscope is 8 bits. Total accuracy of the oscilloscope vertical channel (input amplifier and A/D converter) is ±3% of full range. The voltage signal was measured across the output of the voltage divider consisting of R1 and R2. On the basis of the measurements, a voltage divider ratio of 270:1 was determined. The current signal was obtained from non-inductive shunt resistor Rs of 0.62 Ω resistance. The voltage and current waveforms were saved in csv format files.

In order to average the results, the calculation was made on the basis of data collected for 100 ms, that is 5 periods of mains voltage. The integration time of 100 ms is not in accordance with the guidelines of the EN 61000-4-30 standard. Recommended integration time is 200 ms for class A instruments. The choice of the non-standard integration time was due to the memory limitation of oscilloscope used. Active and apparent power, voltage and current RMS (root mean square) values were calculated according to their physical definitions. On the basis of voltage and current samples, the power consumed by the lamp was calculated according to (1).

pk = uk ⋅ ik

(1)

where: uk, ik, pk – k-sample of voltage, current and power. Active power P was calculated as the average of instantaneous power values according to (2). The rectangles method was used for numerical integration.

P=

1 t n − t0

n −1

∑ pk ( tk +1 − tk )

(2)

k =0

where: pk – k-sample of instantaneous power, tk – time of k-sample, n – number of samples. In the calculations n was 5000. The RMS values of voltage U and current I were calculated based on the voltage uk and current ik samples according to the expressions (3) and (4).

U=

I=

P

O

M

I

A

R

1 t n − t0

n −1

∑ uk2 ( tk +1 − tk )

(3)

k =0

n −1

∑ ik2 ( tk +1 − tk )

(4)

k =0

where: uk, ik – k-sample of voltage and current, tk – time of k-sample, n – number of samples. In the calculations n was 5000.

Fig. 1. The measurement test bed diagram Rys. 1. Schemat blokowy stanowiska testowego

52

1 t n − t0

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


&' % % " H = < :

Apparent power S was calculated according to expression (5) as a product of RMS voltage and RMS current values.

S =U â‹…I

(5)

where: U – RMS value of voltage, I – RMS value of current. The power factor PF and the current crest factor CF were calculated in accordance with their definitions (6) and (7).

PF = CF =

P S

(6)

I m ax I

(7)

where: P, S – active and apparent power, Imax, I – peak and RMS current values.

^' +!

Figures 2 and 3 show the voltage, current and power waveforms of the tested lamps during one period of the mains voltage. All charts have the same scales on both axes. However, you should not directly compare the waveforms between each other, because the power of each bulb is different. The grain of the voltage waveform results from the 8-bit sampling of the oscilloscope used for waveform recording. Current waveforms indicate that the majority of LED and CFL lamps have a rectifier bridge with voltage ripple filtering capacitor at the power input (type A according to [3]). This is indicated by the initial current peak characteristic of such a power supply system. This hypothesis is confirmed by the analysis of available lamp supply circuit schemes. Probably a different power supply is used in lamp No. 4 (Ek889), in which the supply current has almost a constant value at the beginning of each half-period of the supply voltage for about 3 ms.

(a)

(b)

(c)

(d)

Fig. 2. Voltage (u(t)), current (i(t)) and power (p(t)) waveforms of LED lamps: (a) Lamp No. 1, (b) Lamp No. 2, (c) Lamp No. 3, (d) Lamp No. 4 Rys. 2. Przebiegi napięcia (u(t)), prądu (i(t)) i mocy (p(t)) dla lamp LED: (a) lampa nr 1, (b) lampa nr 2, (c) lampa nr 3, (d) lampa nr 4

(a)

(b)

Fig. 3. Voltage (u(t)), current (i(t)) and power (p(t)) waveforms of CFL lamps: (a) Lamp No. 5, (b) Lamp No. 6 Rys. 3. Przebiegi napięcia (u(t)), prądu (i(t)) i mocy (p(t)) dla lamp CFL: (a) lampa nr 5, (b) lampa nr 6

53


Energy Saving LED and CFL Lamps – Rated vs. True Power and Current Consumption

Table 2. Energy parameters of lamps – measurement results Tabela 2. Parametry energetyczne lamp – wyniki pomiarów RMS voltage

RMS current

Peak current

Active power

Apparent power

Power factor

Crest factor

U [V]

I [mA]

Imax [A]

P [W]

S [VA]

PF [–]

CF [–]

LED

227.3

113

542

13.16

25.64

0.513

4.81

2

LED

227.3

92

360

12.32

20.95

0.588

3.90

3

LED

227.3

123

503

15.81

28.03

0.564

4.08

4

LED

227.3

96

197

11.51

21.93

0.525

2.04

5

CFL

227.3

159

503

21.06

36.21

0.582

3.16

6

CFL

227.3

114

335

15.93

26.02

0.612

2.93

No.

Type

1

Such a current waveform is difficult to classify to any of the types of supply systems described in [3]. Table 2 presents the results of measurements of the actual energy parameters of lamps: RMS and peak value of current, active and apparent power, power factor and crest factor. These results were obtained on the basis of equations (2)–(7). For all measurements, the RMS voltage value according to (3) was 227.3 V. The measured electrical parameters of the lamps that are collected in Table 2 reflect the large deformation of the current consumed by the energy-saving lamps shown in Figures 2 and 3. All lamps have a low power factor ranging from 0.513 to 0.612 and a high current crest factor: from 2.04 to 4.81. One can also notice large differences in the crest factor of individual lamps, despite the small differences between power factors (standard deviation is 0.035 for an average of 0.565). This is due to differences in the circuit design of the lamps supply systems that cause a different distribution of harmonics of the supply current. Tables 3 and 4 present the comparisons of rated and measured parameters of the lamps: active power and RMS current. The relative difference is calculated in relation to the rated value. The results presented in Table 3 show that the active power declared by producers differs from the measured by not more than ¹10%. The average of absolute values of relative difference is 6.8%, the standard deviation – 2.8% and the maximum difference – 9.6%. This differences allow to assume that the

nominal power of the lamp given by the manufacturer reflects the actual active power consumption taking into account the scatter of the parameters of the electronic components used for the production of lamps. Much bigger differences occur between declared and actual current (Table 4). The average of absolute values of differences is 23.6%, the standard deviation is 17.3%, and the maximum difference is 50.7%. Based on the available data, it is difficult to indicate the reason for such differences. One of the possible reasons is the use of various current measurement methods by manufacturers. Due to the high distortion of the current waveform form a sinusoid, simplified methods based on the measurement of average rectified and/or maximum value give erroneous results. The correct results can be obtained using a measurement based on the definition of the RMS value (True RMS).

|' 4 ! && .

Impact of energy-saving lamps on power reduction is obvious. Energy-saving lamps take less power vs. traditional incandescent bulbs offering the same luminous flux. But there is one more hidden advantage. Also losses of the power line caused by current flow are reduced because the current is reduced. The authors have made some calculations to estimate the effect of reduction of power losses of the grid.

Table 3. Comparison of rated and actual power of lamp Tabela 3. PorĂłwnanie znamionowej i rzeczywistej mocy lamp

54

Rated power

Actual power

Relative difference

[W]

[W]

[%]

LED

12

13.16

9.6

2

LED

12

12.32

2.7

3

LED

14.5

15.81

9.0

4

LED

12

11.51

–4.1

5

CFL

23

21.06

–8.4

6

CFL

15

15.93

6.2

No.

Type

1

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


&' % % " H = < :

Table 4. Comparison of rated and actual RMS current of lamps Tabela 4. Porównanie znamionowej i rzeczywistej wartości skutecznej prądu lamp Rated current

Actual current

Relative difference

[mA]

[mA]

[%]

LED

90

113

25.3

2

LED

150

92

–38.6

3

LED

120

123

2.8

4

LED

64

96

50.7

5

CFL

200

159

–20.4

6

CFL

150

114

–23.7

No.

Type

1

Table 5 presents the selected rated data of the studied energy lamps and incandescent lamps that produce a similar rated luminous flux. The reference incandescent lamps were chosen from standard 230 V bulbs with E27 mounting manufactured by Osram. The rated luminous flux of these incandescent lamps differs no more than Âą10% from the luminous flux of the corresponding energy-saving lamps.

Table 6 presents the change in energy consumption and change in energy losses in the power grid. Column 3 of Table 6 shows the relative reduction in energy consumption (saving) for each energy-saving lamp in relation to the incandescent light source assuming the same exposure time. The reduction in energy consumption was calculated according to (8).

Table 5. LED and CFL lamps and their incandescent equivalent Tabela 5. Lampy LED i CFL i ich odpowiedniki Ĺźarowe No.

LED or CFL lamp Type

Incandescent lamp

Rated power

Luminous flux

Rated power

Current

[W]

[lm]

[W]

[A]

1

LED

12

1050

75

0.33

2

LED

12

1050

75

0.33

3

LED

14.5

1520

100

0.43

4

LED

12

1100

75

0.33

5

CFL

23

1600

100

0.43

6

CFL

15

900

60

0.26

Table 6. Changes in energy consumption and energy losses Tabela 6. Zmiany zuĹźycia energii i start energii w sieci Relative

Relative changes in energy losses in grid for ‌ [%]

reduction No.

Type

of energy consumption

real PF

PF = 1.0

PF = 0.95

[%]

1

2

3

4

5

6

1

LED

84.0

–88.0

–96.8

–96.5

2

LED

84.0

–92.0

–97.2

–96.9

3

LED

85.5

–92.0

–97.4

–97.2

4

LED

84.0

–91.2

–97.6

–97.3

5

CFL

77.0

–86.6

–95.5

–95.0

6

CFL

75.0

–80.7

–92.8

–92.0

55


Energy Saving LED and CFL Lamps – Rated vs. True Power and Current Consumption

ΔE =

PnIL − PnESL ⋅ 100 PnIL

}' *

(8)

Despite a small sample of energy-saving lamps tested, the high similarity of the results of measurements of individual lamps allow to draw some more general conclusions. The power of lamps declared by the manufacturer correspond to the active power consumed from the grid with a relative difference not exceeding ±10%. This result can be considered satisfactory. Most lamps (4 out of six) consumed more than declared power. Such a result is difficult to classify as positive or negative, because no measurements of the luminous flux were made to determine whether the higher power absorbed from the grid gives a greater flux of light than declared by the manufacturer. The actual current consumed by 5 lamps (out of six) showed a value different than the declared value of more than ±20%. The biggest difference was 50%. Some producers (lamps 2, 6 and 7) declare a current greater than the actual measured current. The difference is from 20% to 50% relative to the rated current of the lamps. In one case (lamp 5), the manufacturer’s data can be considered unreliable. A simple calculation shows that the power factor of this lamp would have to be over 0.8. The lamp of such power factor value requires to use the supply system with a power factor correction. The power factor of the lamps is low and ranges from 0.5 to 0.65, and the current crest factor is from 2.0 to 4.8. These values indicate a very big distortions of the current waveform from a sinusoid, which is visible in Fig. 2–8. The values of power factor and crest factor indicate the adverse impact of lamps on the power grid. Despite the small power of the single load, the large number of installed lamps and their synchronous operation forced by line voltage waveform can cause a low power factor of building power network in which such lighting is used. By analyzing qualitatively voltage and current waveforms of lamps (Fig. 2, 3), one can notice that the shape and position of the current waveform in relation to the voltage waveform are very similar for all lamps. This causes the lamp currents in large lighting installations are added “almost” algebraically. As a result, the power factor of the entire installation approximately equals to the power factor of individual lamps. On the other hand, it can be seen that the first harmonic of the current is shifted relative to the voltage waveform by a negative angle, so it is “ahead of” the voltage. The installation of more lamps may reduce the inductive reactive power consumption generated by the first harmonic current. The conclusions presented in this paragraph are based on qualitative observation of waveforms and require quantitative confirmation. Using the energy-saving LED and/or CFL light sources significantly increase the energy efficiency of lighting in relation to incandescent lighting. This is due to the following reasons: − several times smaller (5–8 times) power of energy-saving lamps needed to obtain the required luminous flux compared to the power of incandescent lamps. For the compared lamps this gives a reduction in energy consumption in the range of 70–85%. − significant reduction of losses in the power grid caused by the flow of the lamp supplying current. For the tested lamps, these losses decrease by 80–92% in relation to the losses caused by the flow of current to the equivalent incandescent lamps. Further reduction of losses in the power grid (by about 10%) is possible under the condition of using the lamps with power supplies with a power factor of 1.0. The energy-saving lamps would then take a sinusoidal current in the phase with the supply voltage. Two ways of further losses reduction can be considered: − the use of lamps equipped with power supplies with a power factor close to 1.0. The reasonable value of the power factor seems to be 0.9–0.95. Comparing the reduction of the loses in power line by the lamps with the power factor equals to 1.0

where: ΔE – relative reduction of energy consumption, PnESL – rated power of an energy-saving lamp, PnIL – rated power of an equivalent incandescent lamp. Columns 4 and 5 of Table 6 show the relative change in losses of power dissipated on the resistance of the power line caused by the energy-saving lamp current flow (related to an equivalent incandescent source). Data in column 4 show the change of energy losses (ΔEL1) caused by the flow of real, distorted current, and in columns 5 and 6 the change of losses (ΔEL2) that would be generated by the energy-saving lamp if the power factor of the lamp was 1.0 and 0.95. Values in columns 4, 5 and 6 were calculated in accordance with (9), (10) and (11).

Δ EL1 =

Δ EL 2 =

Δ EL 3 =

2 2 I ESL − I IL 2 I IL

⋅ 100

2 2 I ESL 100 − I IL 2 I IL

2 2 I ESL 095 − I IL 2 I IL

(9)

⋅ 100

(10)

⋅ 100

(11)

where: ΔEL1 – relative change of power losses in the power line caused by the actual lamp current, ΔEL2, ΔEL3 – relative change of power losses in the power line caused by the current of the lamp with power factor 1.0 and 0.95, IESL – real RMS current of the energy-saving lamp, IESL100, IESL095 – RMS current of the energy-saving lamp with a power factor 1.0 and 0.95, IIL – RMS current of an equivalent incandescent lamp The reduction of energy consumption results directly from the much better efficiency of LED and CFL energy-saving lamps. For LED and CFL lamps it is 60–100 lm/W, and for incandescent lamps – 10–15 lm/W. The results in column 4 of Table 6 also show significant reduction in losses of power dissipated on the resistance of the power line. Losses on the resistance of the power line depend on the square of the RMS value of the current, which is several times less than the current of the equivalent incandescent lamp. The values in column 5 show the limit to which the losses in the power line can be reduced (if the power supply of the energy-saving lamps consumes the sinusoidal current in phase with the supply voltage, i.e. the lamp power factor equals to 1.0). These values have rather theoretical meanings. To reach the power factor of 1.0 it is necessary to use sophisticated and complex power supplies for the lamps. That would not be economically viable. Differences in values in columns 4 and 5 inform about power losses caused by the higher harmonics of the lamp current. The values in column 6 present the reduction of the power line loses if the lamp power factor is 0.95. Thanks to many and low cost integrated circuits to control power supplies with power factor correction, it is much easier to construct the power supply with power factor in range 0.9–0.95 than with 1.0. This solution is more economically justified although the price of the lamp will probably be higher. Comparing the values in columns 5 and 6 you can see that the reduction of the loses in power line is practically the same for power factor of 1.0 and 0.95.

56

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR 2/ 20 20


&' % % " H = < :

and 0.95 (Table 6 columns 5, 6) you will notice a very little reduction of loses with the power factor rising from 0.95 to 1.0. The lamps the power factor better than 0.9 are currently not widely available. Most likely the price of lamp with such power supplies will be higher than the prices of lamps with standard power supplies. − the use of local harmonic filters for the lamp group so that the higher harmonic current components do not flow across the entire network. The use of energy-saving LED or CFL type lamps brings high energy benefits as a result of a significant reduction in energy consumption. The main disadvantage of today’s LED and CFL lamps is a very non-linear current consumption that cause disturbances in the grid an additional energy loses. It can be improved by using better power supplies in this kind of lamps by the manufacturers.

DOI: 10.1109/IFEEC.2017.7992380. 7. Galla S., Włas M., Wpływ systemów oświetleniowych LED na zaburzenia nisko częstotliwościowe, „Przegląd Elektrotechniczny�, Vol. 95, No. 3, 2019, 29–32, DOI: 10.15199/48.2019.03.07. 8. Oliveira G.D., de Oliveira E.P., da Silva A.P., Carvalho C.C.M.D., Power Quality of LED Lamps, 2016 17th International Conference on Harmonics and Quality of Power (ICHQP), 16–19 Oct. 2016, Belo Horizonte, Brazil. DOI: 10.1109/ICHQP.2016.7783359.

6 & 1. Zeb A., de Andrade Romero M., Baiguskarov D., Aitbayev S., Strelets K., LED Lightbulbs as a Source of Electricity Saving in Buildings, “MATEC Web of Conferencesâ€?, Vol. 73, 2016, DOI: 10.1051/matecconf/20167302004. 2. WiĹ›niewski A., Oprawy oĹ›wietleniowe LED z moĹźliwoĹ›ciÄ… regulacji mocy, „PrzeglÄ…d Elektrotechnicznyâ€?, Vol. 94, No. 7, 2018, 196–199, DOI: 10.15199/48.2018.07.48. 3. Xu X., Collin A., Djokic S.Z., Langella R., Testa A., Drapela J., Experimental Evaluation and Classification of LED Lamps for Typical Residential Applications, 2017 IEEE PES Innovative Smart Grid Technologies Conference Europe (ISGT-Europe), Torino, Italy. DOI: 10.1109/ISGTEurope.2017.8260292. 4. Natthanon P., Chaiyan J., Atthapol N., Harmonics and Reduction of Energy Consumption in Lighting Systems by Using LED Lamps, “Energiesâ€?, Vol. 11, No. 11, 2018, DOI: 10.3390/en11113169. 5. Adoghe A.U., Eberechukwu O.C., Sanni T.F., The Effect of low power factor Led Lamp Invasion on the Utility Grid: A Case Study of Nigerian Market, 2017 IEEE PES PowerAfrica, 27-30 June 2017, Accra, Ghana. DOI: 10.1109/PowerAfrica.2017.7991260. 6. Bunjongjit S., Ngaopitakkul A., Leelajindakrairerk M., Analysis of harmonics in indoor Lighting System with LED and fluorescent luminaire, 2017 IEEE 3rd International Future Energy Electronics Conference and ECCE Asia, 3-7 June 2017, Kaohsiung, Taiwan.

= . ' V=- <V P ' GJ H' $ $ . Na rynku moĹźna zauwaĹźyć bardzo duşą dostÄ™pność lamp energooszczÄ™dnych przeznaczonych do zastosowaĹ„ konsumenckich. Producenci, chcÄ…c dotrzeć do jak najszerszego krÄ™gu odbiorcĂłw, prezentujÄ… na opakowaniach róşne dane, ktĂłre nie informujÄ… uĹźytkownika o rzeczywistych wĹ‚asnoĹ›ciach energetycznych lampy. Autorzy wykonali pomiary parametrĂłw energetycznych kilku, przypadkowo wybranych lamp LED oraz CFL dostÄ™pnych w sieciach handlowych i porĂłwnali otrzymane dane pomiarowe z parametrami deklarowanymi przez producentĂłw. % V V=-% <V% . % ] .

57


Energy Saving LED and CFL Lamps – Rated vs. True Power and Current Consumption

3 # *+ <

# 9 ( + <

& . ' ORCID: 0000-0001-9962-4726

& . ' ORCID: 0000-0002-5787-5671

Z ' $ ' . . . ?B)* ' F - ' . ?BBB # < # = = . E .% M ' = # MRZ # ' 0 . " Z G . MRZ # ' 0 . ?B)*% # - # F = ' = . Z ' E % . G ' ' G '' ' Z ' # % . # # ' G % E # Y ' # ' # ' . G ' FV AFM '

Z . ' ' # < # = E = . .% M ' = E # MRZ # ' 0 . " ?B)) P ' . Z G ' ' ' . (!!* . ' [ ' # ' . ' # . G \ Z ' MRZ ?B))% ' - # F = ' = . Z ' # . G # ' ' G ' . % ' . E ' ' . . . . # ' FV AFM Z G # # G % ' '

' $ ; !+ <+ < G & . ' ORCID: 0000-0001-9409-2169 F # M ' 4 Q . ' ' # < # = = . E .% M ' = # MRZ # ' 0 . ?BTB Z ' # # ' . ' # . ' E ' 0 # ' E ' . . % G . # 8 Z G ' ?+! # ' . Z # ) # Z G # # # . / =F% F0=0 ' 6=== F # ' ' % 0 !* Z E ' .

58

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 59–62, DOI: 10.14313/PAR_236/59

0 # 6X ' . F # - G . 4RM F . . Piotr Witkowski F S % ; ' = % M 6 # % 6 = . = . S' % " ' 6 O 4 ' % F J T+ KG ' (L% *@ET@) S

Abstract: This article presents the definition of a soldering profile and its division into individual phases. For the purpose of this article, an experiment was performed in which the influence of various factors such as – BGA package size, PCB size, the type of solder – on the temperature profile of a soldering process was investigated. The article is an overview and can serve as a guidebook for people who use soldering stations in their daily work to disassemble systems in BGA packages, or who plan to use such machines in their research. 3 V < 4RM% 6X ' . % ' G '% a ' .% ' G

1. Introduction Current technological development, the pursuit of miniaturization while increasing operational capabilities, have forced engineers to continue developing innovative packaging types for integrated circuit meeting the above requirements. At present, circuits in BGA (Ball Grid Array) packages are very popular when it comes to solutions meeting certain criteria. The connection system are located underneath the package. Tin balls are used to connect the system to the laminate. The installation of this type of systems allows manufacturers to meet newer and more advanced criteria, but also poses some disadvantages, as specified below. A model system executed in a FCBGA (Flip Chip Ball Grid Array) package is shown in Figure 1 [1, 11–13, 16, 18]. In addition, the RoHS Directive (2002/95/EC), including its amendments, which have been in force in the European Union Member States since 2006, prohibit the manufacturers of electronic and electrical equipment from using lead-type materials, which had been in use as an admixture in adhesives for many years [2, 6, 7, 15, 17]. Ongoing works have aimed at developing innovative alloy types which would be resistant to soldering defects whilst complying with EU regulations. At the same time, systems which generate less heat and consume less energy have been installed, which also affects the life of the solder metal found underneath the system.

Fig. 1. A circuit in FCBGA packaging Rys. 1. Układ w obudowie FCBGA

) " V F ; % &' '

Lead-free soldering of any of the previously used alloys led to defects in production and service processes. To some extent, they have been limited in current solutions. Such defects appear spontaneously, i.e. the occurrence of whiskers (threaded hair shapes up to 5 m in diameter and several millimeters long), short circuits caused by connecting several leads of the element with the solder metal as a result of the soldering process, and also due to human fault: incorrect selection of the soldering profile, which affects the quality of the connection, or a rapid increase in temperature, which, combined with moisture, leads to the formation of bubbles on the packaging (i.e. steam and other gases trapped in the packaging walls are the cause of delamination and cracking) [3–5, 14]. This article presents the definition of a soldering profile and its division into individual phases. For the purpose of the article, an experiment was conducted and consisted in soldering four BGA circuits with different packaging surfaces attached to different PCB surfaces. Apart from the differences in the size of the systems, the influence of the solder material type used on the course of the profile was observed (the first two systems were fixed with a lead-free solder, and the other two – with a tin-lead solder).

) ' (! !( (!(! % ' ' (* !@ (!(!

X' +

&

!

A temperature (soldering) profile represents the relationship between the temperature rise and the duration of the reflow

59


The Use of IR Soldering Stations in the Process of Disassembling Circuits in BGA Packaging

coatings type OSP of dimensions 210 mm × 265 mm. The test package on the underside of the enclosure have 899 ball joints. They are distributed evenly in 0.60 mm steps, distributed over the entire surface of the die. Balls of 0.50 mm diameter, made of alloys, were used: Sn63Pb37, hereinafter referred to as tin-lead solder, and SnAg3Cu05 (SAC), hereinafter referred to as lead-free solder. BGA packages of dimensions 40 mm × 40 mm were mounted on the multilayer PCBs with organic protective coatings type OSP of dimensions 245 mm × 270 mm. The test package on the underside of the enclosure have 1042 ball joints. Distributed according to the shape of the manufacturer’s proprietary matrix, spaced every 0.60 mm, distributed over the entire surface of the system. Balls of 0.60 mm diameter, made of alloys, were used: Sn63Pb37, hereinafter referred to as tin lead solder, and SnAg3Cu05 (SAC), hereinafter referred to as lead-free solder.

soldering process. The soldering profile is divided into four phases: preheat, soak, reflow, cooling. It is important to select an appropriate profile for the soldered elements in order to ensure their proper assembly in service processes [8–10, 19, 20]. For the purpose of the experiment, four standard phases with the temperature thresholds described below were used: − Preheat – pre-heating of the PCB (Printed Circuit Board) to prevent deformations and moisture evaporation to prevent delamination. The phase takes place in the temperature range of 0–150 °C. The flux must be applied when 140–150 °C is reached. − Soak – activation of the flux, cleaning of the solder and soldering pads is performed at 150–180 °C for lead-free solder and at 150–170 °C for tin-lead solder. − Reflow – the purpose of proper soldering is to reach the solder reflow temperature. It is in this phase that proper metallurgical processes take place. 180–217 °C, depending on the lead-free solder alloy used, or 170–183 °C for tin-lead solder. − Cooling – the purpose of the cooling phase is to dissipate the heat after the soldering process and to bring it to the initial temperature.

[' + The testing station (Fig. 2) was equipped with a Jovy Systems RE-7500 IR station. The selection of the testing station was based on its specifications – the station allows full control of the created soldering profile by controlling the lower and upper heater by means of power adjustment (bottom: 350 W, 450 W, 540 W; top: 225 W, 270 W). The following equipment were also used: a BGA reballing kit consisting of a special stand, screens for applying balls on the system, a vacuum gripper and a silicone stand for hot systems. Temperature measurements were recorded using a computer connected to the soldering station, and then analysed. In the experiment used a flux, genus: ROL0 – mild, low-active, colophony-based flux. Type: No Clean. Compliant with standards: ANSI J-STD-004 ROL0, Bellcore GR78 Core. Four BGA packages with a 65 nm CMOS silicon technology dies flip-chipped in them were used for the test. BGA packages of dimensions 30 mm × 30 mm were assembled on the multilayer PCBs with organic protective

60

P

O

M

Fig. 2. Presentation of the testing station Rys. 2. Prezentacja stanowiska testowego

Fig. 3. Temperature increase in the first 5 minutes after the beginning of the soldering process Rys. 3. Wzrost temperatury w pierwszych 5 minutach od momentu rozpoczęcia procesu

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

Fig. 4. Achievement of flow temperatures for each system and a presentation of the cooling phase Rys. 4. Osiągnięcie temperatury rozpływu oraz prezentacja fazy chłodzenia

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Piotr Witkowski

Table 1. Experiment results Tabela 1. Wyniki eksperymentu

Lead-free technology

Lead-doped technology

Tested system no. 1: 30 mm Ă— 30 mm PCB: 210 mm Ă— 265 mm

Tested system no. 2: 40 mm Ă— 40 mm PCB: 245 mm Ă— 270 mm

Tested system no. 3: 30 mm Ă— 30 mm PCB: 210 mm Ă— 265 mm

Tested system no. 4: 40 mm Ă— 40 mm PCB: 245 mm Ă— 270 mm

Total disassembly time [s]

1515

1615

1250

1360

Cooling time [s]

300

410

390

420

Average temperature rise during disassembly [°C/s]

~0.12

~0.13

~0.14

~0.16

Temperature drop [°C/s]

~0.46

~0.42

~0.35

~0.40

\' +! & ! {

6 &

\']' & ! `,)

1. Anicai L., Petica A., Costovici S., Moise C., Brincoveanu O., Visan T., Electrodeposition of Sn–In Alloys Involving Deep Eutectic Solvents, “Coatingsâ€?, 2019, DOI: 10.3390/coatings9120800. 2. Yang W., Du Z., Yu S., Li Y., Feng J., Wei X., Li Q., Zhan Y., The Effect of Rare Earths Additions on the Microstructure and the Corrosion Behavior of Sn-0.7Cu-0.075Al Solder Alloy, “Materialsâ€?, 2019, DOI: 10.3390/ma12223731. 3. Koncz-HorvĂĄth D., Gergely G., GĂĄcsi Z., Whisker-Like Formations in Sn-3.0Ag-Pb Alloys, Archives of Metallurgy and Materials, Vol. 62, No. 2B, 2017, 1027–1031, DOI: 10.1515/amm-2017-0147. 4. Ren G., Collins M.N., Improved Reliability and Mechanical Performance of Ag Microalloyed Sn58Bi Solder Alloys, “Metalsâ€?, 2019, DOI: 10.3390/met9040462. 5. Sidhu R.S., Aspandiar R., Vandervoort S., Amir D., Murtagian G., Impact of processing conditions and solder materials on surface mount assembly defects. “JOMâ€?, 63, 2011, 47–51, DOI: 10.1007/s11837-011-0174-3. 6. Wang K., Wang F., Huang Y., Qi K., Comprehensive Properties of a Novel Quaternary Sn-Bi-Sb-Ag Solder: Wettability, Interfacial Structure and Mechanical Properties, “Metalsâ€?, 2019, DOI: 10.3390/met9070791. 7. Kobayashi T., Shohji I., Evaluation of Microstructures and Mechanical Properties of Sn-10Sb-Ni Lead-Free Solder Alloys with Small Amount of Ni Using Miniature Size Specimens, “Metalsâ€?, 2019, DOI: 10.3390/met9121348. 8. Atieh A.M., Abedalaziz T.J., AlHazaa A., Weser M., Al-Kouz W.G., Sari M.S., Alhoweml I., Soldering of Passive Components Using Sn Nanoparticle Reinforced Solder Paste: Influence on Microstructure and Joint Strength, “Nanomaterialsâ€?, 2019, DOI: 10.3390/nano9101478. 9. Huang Y.E., Hagen D., Dody G., Burnette T., Effect of solder reflow temperature profile on plastic package delamination, Proceedings of 23rd IEEE/CPMT International Electronics Manufacturing Technology Symposium, 1998, 105–111, DOI: 10. 1109/IEMT.1998.731047. 10. Corbin S.F., High-temperature variable melting point Sn-Sb lead-free solder pastes using transient liquid-phasepowder processing, “Journal of Electronic Materialsâ€?, 2005, Vol. 34, 1016–1025, DOI: 10.1007/s11664-005-0089-2. 11. Kariya Y., Niimi T., Suga T., Otsuka M., Isothermal fatigue properties of Sn-Ag-Cu alloy evaluated by micro size spec-

Before starting the experiment, two test packages were prepared by changing the solder metal. The old solder layer was removed by means of: a copper braid line, a soldering iron with the T-S3 tip and flux. When the old solder was removed from the packages, they were cleaned of flux residues using isopropanol. The packages were then dried in a PCB furnace, which heated the systems at 100 °C for 30 minutes. When the packages were dried, a system stand and stencil for direct heating were used. A tin-lead solder alloy was applied. Then, using the soldering station, the package was heated to 183 °C, which resulted in the flow of the solder and its connection with the circuit fields of the package. Next, the packages were soldered using a soldering station. To check the correctness of the assembly performed. First, basic measurements were taken with a multimeter and then heat sinks were mounted on the soldered packages, after which the plates were turned on and the soldered packages were tested by stress test durant 5 heures.

\'X' *

# & !

The course of the experiment is illustrated in Table 1.

^' This experiment has shown that an important factor to consider before starting the soldering process is the size of the surface of the board, to which the system is fixed. A significant difference between the time it takes to reach the individual temperature thresholds has become apparent. The heat dissipation through the PCB surface is an important factor for the reflow soldering process using the BGA repair soldering station. Another important factor in the development of the profile by the technician should be to determine the type of solder used for assembling the system, which will result in the proper selection of the flow temperature. Other factors which should be taken into account when creating the temperature profile for the soldering station are the division of the profile into individual phases - taking into account the processes taking place in each phase. Following the above recommendations will certainly facilitate the development or selection of an adequate profile for the material obtained.

61


The Use of IR Soldering Stations in the Process of Disassembling Circuits in BGA Packaging

12.

13.

14.

15.

16.

imen. “Materials Transactions�, Vol. 46, 2005, 2309–2315, DOI: 10.2320/matertrans.46.2309. Intel Information Packaging Databook, Chapter 14, “Ball Grid Array (BGA) Packaging�, www.intel.com/design/packtech/ch_14.pdf Forsyth M., Seter M., Tan M.Y., Hinton B., Recent developments in corrosion inhibitors based on rare earth metal compounds. “Corrosion Engineering Science and Technology�, Vol. 49, No. 2, 2014, 130–135, DOI: 10.1179/1743278214Y.0000000148. Malaquias J.C., Steichen M., Thomassey M., Dale P.J., Electrodeposition of Cu–In alloys from a choline chloride based deep eutectic solvent for photovoltaic applications, “Electrochimica Acta�, Vol. 103, 2013, 15–22, DOI: 10.1016/j.electacta.2013.04.068. Directive 2002/95/EC of The European Parliament and of the Council of 27 January 2003, On the restriction of the use of certain hazardous substances in electrical and electronic equipment. Lai Z., Ye D., Microstructure and fracture behavior of non eutectic Sn–Bi solder alloys. “Journal of Materials

17.

18.

19.

20.

Science: Materials in Electronicsâ€?, Vol. 27, 2016, 3182–3192, DOI: 10.1007/s10854-015-4143-4. Wang F., Li D., Zhang Z., Wu M., Yan C., Improvement on interfacial structure and properties of Sn–58Bi/Cu joint using Sn–3.0Ag–0.5Cu solder as barrier, “Journal of Materials Science: Materials in Electronicsâ€?, Vol. 28, 19051–19060, DOI: 10.1007/s10854-017-7859-5. OsĂłrio W.R., Spinelli J.E., Afonso C.R.M., Peixoto L.C., Garcia A., Microstructure, corrosion behavior and microhardness of a directionally solidified Sn–Cu solder alloy. “Electrochimica Actaâ€?, Vol. 56, No. 24, 2011, 8891–8899, DOI: 10.1016/j.electacta.2011.07.114. Drienovsky M., Trnkova L.R., Martinkovic M., Ozvold M., Cernickova I., Palcut M., Janovec J., Influence of cerium addition on microstructure and properties of Sn-Cu-(Ag) solder alloys. “Materials Science and Engineering Aâ€?, Vol. 623, 2015, 83–91, DOI: 10.1016/j.msea.2014.11.033. Liu M., Yang W., Ma Y., Tang C., Tang H., Zhan Y., The electrochemical corrosion behavior of Pb-free Sn-8.5Zn-XCr solders in 3.5 wt.% NaCl solution. “Materials Chemistry and Physicsâ€?, Vol. 168, 2015, 27–34, DOI: 10.1016/j.matchemphys.2015.10.003.

6X ' O 'J G ' 4RM Streszczenie: W artykule przedstawiono definicjÄ™ profilu lutowniczego oraz jego podziaĹ‚ na poszczegĂłlne fazy. Na potrzeby artykuĹ‚u przeprowadzono eksperyment, w ktĂłrym zbadano wpĹ‚yw róşnych czynnikĂłw na proces demontaĹźu/montaĹźu, takich jak: wielkość ukĹ‚adu BGA, wielkość pĹ‚ytki drukowanej, rodzaj spoiwa, dobrany profil temperaturowy. ArtykuĹ‚ ma charakter poglÄ…dowy i moĹźe sĹ‚uĹźyć jako przewodnik dla osĂłb, ktĂłre w codziennej pracy wykorzystujÄ… stacje lutownicze do demontaĹźu ukĹ‚adĂłw w obudowach BGA lub planujÄ… wykorzystanie takich maszyn w swoich badaniach. % V < 4RM% % . ' Q% ' % ' O 'J

( , &' ' ORCID: 0000-0002-2293-6462 MG ; ' = % M E 6 # % F S / 6 # SG ' E 66 ' J 666 E / = ; ' = E % M 6 # % F S / . J % # E ' % G E ' H ' J H O

62

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 63–68, DOI: 10.14313/PAR_236/63

G < $ $ + - * F X 6. . U % " ' $ X G % M F Q J ; )% @EB@B X J

Streszczenie: Do niedawna wirtualna rzeczywistość kojarzyła się głównie z grami komputerowymi. Technologia ta to jednak przyszłość nie tylko branşy rozrywkowej – coraz częściej znajduje zastosowanie w obszarze IT, medycynie oraz przemyśle. Wirtualna rzeczywistość ma generować zupełnie nowy cyfrowy świat. To rzeczywistość zaprojektowana przy uşyciu narzędzi komputerowych, dzięki którym uşytkownik czuje się tak, jakby był w niej realnie obecny. Obecnie wirtualna rzeczywistość ma wiele do zaoferowania branşy przemysłowej – pozwala na trójwymiarowe projektowanie stacji zrobotyzowanych, tworzenie modeli symulacyjnych, dzięki którym moşna dokładnie zobaczyć, jak będzie wyglądała i funkcjonowała nowa stacja jeszcze przed jej uruchomieniem. W artykule przedstawiono proces projektowania i programowania stacji zrobotyzowanych z wykorzystaniem wirtualnej rzeczywistości. $ V - $ $ *=+ $ $ + ( - ;;+ - 6 - 4 >

1. Wprowadzenie BiorÄ…c pod uwagÄ™ szeroki zakres nowoczesnych technologii, ktĂłre wspomagajÄ… prace projektowe zwiÄ…zane z budowÄ… stanowisk produkcyjnych, stacji zrobotyzowanych naleĹźy wyróşnić technologie wirtualne, tj.: systemy Virtual Reality – VR, Augumented Reality – AR (rzeczywistoĹ›ci rozszerzonej) oraz technologie dotykowe [3]. Pierwsze badania dotyczÄ…ce technologii wirtualnej rozpoczÄ™to w 1997 r. Wprowadzono wĂłwczas oprogramowanie do symulacji robotyki 3D GRASPVRI. Aplikacja zostaĹ‚a zbudowana specjalnie dla przemysĹ‚u stoczniowego, w celu przyĹ›pieszenia procesu spawania [5]. Wirtualna rzeczywistość (VR) polega na zastosowaniu technologii komputerowej do zbudowania symulowanego stanowiska. Aplikacje VR zanurzajÄ… uĹźytkownika w Ĺ›rodowisku komputerowym, ktĂłre symuluje rzeczywistość za pomocÄ… interaktywnych urzÄ…dzeĹ„. Zdaniem ich jest wysyĹ‚anie i odbieranie informacji, noszone sÄ… jako gogle, rÄ™kawiczki, zestawy sĹ‚uchawkowe [18]. W wirtualnej rzeczywistoĹ›ci moĹźliwa jest symulacja obecnoĹ›ci i oddziaĹ‚ania uĹźytkownika a informacja zwrotna przesyĹ‚ana jest do jednego lub wiÄ™kszej liczby zmysĹ‚Ăłw w taki sposĂłb, Ĺźe uĹźytkownik ma poczucie zanurzenia siÄ™ w symulacji (Rys. 1) [1]. System wirtualnej rzeczywistoĹ›ci eksponuje obiekty uĹźytkownikowi za pomocÄ… obrazu, dĹşwiÄ™ku i bodĹşcĂłw czuciowych oraz pozwala na interakcjeÄ™, sprawiajÄ…c wraĹźenie przebywania

) " V F F % & ' ) ' !B ?( (!?B % ' ' !T !@ (!(!

!

Rys. 1. Przykład sposobu korzystania z rzeczywistości wirtualnej Fig. 1. An example of how to use virtual reality

wewnątrz symulowanej rzeczywistości. Sensoryczne sprzęşenie zwrotne dostarcza uşytkownikom bezpośrednią informację sensoryczną w zaleşności od ich fizycznej lokalizacji w wirtualnym środowisku. Informacje sensoryczne są przesyłane przez bodźce syntetyczne, czyli generowane komputerowo informacje wizualne, dźwiękowe lub dotykowe. Większość sprzęşenia zwrotnego jest realizowana za pośrednictwem informacji wizualnych, chociaş niektóre środowiska wykorzystują tylko informacje dotykowe. System wirtualnej rzeczywistości oprócz symulacji wymaga zastosowania interfejsu pozwalającego uşytkownikom na „wejście� do wirtualnej rzeczywistości. Jednym z pierwszych tego typu urządzeń był wynalazek Mortona Heiliga „Sensorama Simulator� z 1962 r., który był pierwszą grą video pozwalającą na zanurzenie się w wirtualnej

63


& " " = % " % 8 = " %= ' % rzeczywistości [1]. Urządzenie wyświetlało kolorowy, trójwymiarowy obraz na stereoskopowym wyświetlaczu, było wyposaşone w system dźwięku stereo, generator zapachów, wentylatory symulujące powiew wiatru oraz ruchome siedzisko. Gra polegała na jeşdşeniu motocyklem po ulicach Nowego Yorku. Gracze odczuwali nierówności drogi, zapachy jedzenia z restauracji oraz ruch powietrza wynikający z ruchu motocykla. Nie było jednak moşliwości wejścia w interakcję z obiektami wirtualnego środowiska. Heilig rozpoczął takşe prace nad montowanymi na głowie okularami do wirtualnej rzeczywistości, wyposaşonymi w słuchawki. Nie ukończył swojego wynalazku, lecz dostrzeşono potencjał jego rozwiązań. Rozwój technologii pozwolił na budowę i udoskonalenie interfejsów wirtualnej rzeczywistości. W dzisiejszych czasach urządzenia VR są powszechnie dostępne i systematycznie wzrasta liczba ich zastosowań, zarówno komercyjnych jak i specjalistycznych. Inne przykłady zastosowań przedstawiono w kolejnym rozdziale.

(ktĂłre wyglÄ…dajÄ… jak rzeczywiste narzÄ™dzia chirurgiczne) do wykonywania procedur chirurgicznych na róşnych pacjentach. Wirtualni pacjenci niekoniecznie muszÄ… być wymyĹ›lonymi obiektami. MoĹźna wykorzystać nowoczesne metody obrazowania – jak tomografia komputerowa (CT) lub rezonans magnetyczny (MRI), do utworzenia trĂłjwymiarowego obrazu ciaĹ‚a czĹ‚owieka. Przed prawdziwÄ… operacjÄ… chirurdzy mogÄ… ćwiczyć na wirtualnym pacjencie o bardzo podobnych cechach do rzeczywistego pacjenta przygotowywanego do operacji. Symulatory chirurgiczne staĹ‚y siÄ™ szczegĂłlnie rozpowszechnione dziÄ™ki stworzeniu robotĂłw chirurgicznych, ktĂłre umoĹźliwiajÄ… przeprowadzenie caĹ‚ej operacji za pomocÄ… interfejsu dotykowego i ekranu. Obecnie technologia VR jest wykorzystywana przez producentĂłw samochodĂłw General Motors i Ford do tworzenia oraz sprawdzania planĂłw projektowych, tolerancji oraz zabezpieczeĹ„ w Ĺ›rodowiskach wirtualnych. Przedstawione rozwiÄ…zanie dla General Motors wykorzystuje Ĺ›rodowisko CAVE (specjalna komora), w ktĂłrym projektanci i inĹźynierowie noszÄ… okulary 3D, dziÄ™ki czemu dostrzegajÄ… obraz zewnÄ™trzny oraz wewnÄ™trzny pojazdu (Rys. 4). Zastosowanie CAVE umoĹźliwia ocenÄ™ rozmieszczenia elementĂłw sterujÄ…cych, jakoĹ›ci projektu, wykoĹ„czenia oraz pasowania [11]. Producenci samochodĂłw marki Ford wykorzystujÄ… technologiÄ™ wirtualnej rzeczywistoĹ›ci celem poprawy jakoĹ›ci jeszcze przed budowÄ… fizycznego prototypu [13]. WstÄ™pnie oceniane sÄ… materiaĹ‚y, kolory, estetyka oraz ergonomia (Rys. 5). ReasumujÄ…c zaprezentowane rozwiÄ…zania moĹźna zauwaĹźyć, Ĺźe zastosowanie VR w przemyĹ›le ciÄ…gle wzrasta. Jest to spowodowane znaczÄ…cymi udogodnieniami podczas projektowania oraz oszczÄ™dnoĹ›ciÄ… wynikajÄ…ca ze wstÄ™pnych analiz w wirtualnym Ĺ›rodowisku. Inne przykĹ‚ady zastosowania VR przedstawiono w pracach [9, 14–16]. W pracy [4] autorzy zaproponowali zastosowanie wirtualnej rzeczywistoĹ›ci do szkolenia pracownikĂłw na stanowiskach, gdzie współpracujÄ… z robotami. Powodem takiego podejĹ›cia byĹ‚a poprawa bezpieczeĹ„stwa. DziÄ™ki VR niedoĹ›wiadczony pracownik bÄ™dzie mĂłgĹ‚ poznać zasady bezpiecznej współpracy z maszynami. W artykule [8] przedstawiono aplikacjÄ™ VR do szkolenia z zakresu zarzÄ…dzania procedurami przemysĹ‚owymi, ze szczegĂłlnym uwzglÄ™dnieniem systemĂłw pneumatyki. Wirtualna aplikacja skĹ‚ada siÄ™ z wirtualnego laboratorium oraz wirtualnego zakĹ‚adu przemysĹ‚owego. Kolejnym przykĹ‚adem zastosowania VR jest projekt systemu treningowego do współpracy czĹ‚owieka z robotem w zadaniach produkcyjnych. Wykorzystano tutaj aplikacje „BeWare of the robotâ€?, ktĂłra zostaĹ‚a opracowana na podstawie gry Unity3d. Platforma systemowa skĹ‚ada siÄ™ z nastÄ™pujÄ…cych komponentĂłw: aplikacja „beWare of the robotâ€?, komputer z systemem Windows XP wyposaĹźony w kartÄ™ graficznÄ… nVidia Quadro FX1700, 3DVisor HMD ze sĹ‚uchawkami stereo, czujnikiem Microsoft

X' ) " ! " 9 Obecnie pojęcie wirtualnej rzeczywistości jest coraz bardziej popularne. Znajduje ona zastosowanie w wielu dziedzinach, jak przemysł motoryzacyjny, lotniczy, zbrojeniowy, przemysł maszynowy, medycyna, prototypowanie, logistyka. Jednym z najczęściej podawanych przykładów praktycznego zastosowania wirtualnej rzeczywistości są symulatory lotu [7]. Systemy symulują awarie, na które piloci muszą zareagować. Zastosowanie wirtualnej rzeczywistości w branşy lotniczej prezentuje firma Rolls-Royce Germany, która wykorzystuje VR wspierając wszystkie fazy projektu – od budowy silnika przez produkcję oraz konserwację (Rys. 2). Obecnie prowadzone są teş badania z wykorzystaniem VR nad zmniejszeniem emisji spalin oraz poziomu hałasu podczas pracy silnika [12]. Firma MiddleVR opracowała oprogramowanie Improov umoşliwiające współpracę z VR. Zastosowanie Improov umoşliwia wykonywanie przeglądów projektów, konserwację oraz montaş maszyn, elementów wchodzących w skład stanowiska itp. (Rys. 3). Jednym z głównych zastosowań oprogramowania Improov jest budowa układu wnętrza fabryki, stanowiska produkcyjnego itp. Moşliwość planowania przestrzeni wirtualnie pozwala na modyfikację układu przestrzennego pomieszczenia, przenoszenie elementów wchodzących w skład stanowiska oraz optymalizację zagospodarowanej przestrzeni [10]. Kolejnym waşnym przykładem są symulatory operacji chirurgicznych [2]. Operacja jest niebezpieczną sytuacją dla pacjenta, poniewaş pojedynczy błąd moşe prowadzić do jego śmierci. Podąşając za przykładem symulatorów lotu, symulatory chirurgiczne udostępniają wirtualne środowisko, w których chirurg moşe wykorzystywać realistyczne interfejsy dotykowe

Rys. 2. Projekt budowy silnika w Rolls-Royce Germany wykorzystujÄ…cy VR [13] Fig. 2. Engine construction project in Rolls-Royce Germany using VR [13]

64

P

O

M

I

A

R

Y

•

A

Rys. 3. Moşliwości programu Improov: a) rozmieszczenie układu zakładu produkcyjnego, b) konserwacja i montaş [10] Fig. 3. The possibilities of the Improov program: a) layout of the production plant, b) maintenance and assembly [10]

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


j " ' % * *

3. Projekt oraz oprogramowanie # "

Rys. 4. Zastosowanie Virtual Reality w General Motor [11] Fig. 4. Application of Virtual Reality in General Motor [11]

Rys. 5. Ocena oraz modyfikacja projektu zastosowanie VR w branşy motoryzacyjnej – Ford [13] Fig. 5. Assessment and modification of the application of VR in the automotive industry – Ford [13]

Kinect, klawiatura i mysz. Na Rys. 6 przedstawiono schemat systemu oraz przepływu danych między jego głównymi elementami [6]. Budowa zaprezentowanej platformy testowej przedstawia szczegóły środowiska wirtualnego, zastosowane techniki oraz narzędzia interakcji. Obecnie prowadzone są badania dotyczące akceptowalności współpracy człowiek – robot w odniesieniu do kwestii bezpieczeństwa.

Na podstawie przeprowadzonej analizy istniejących rozwiązań moşna stwierdzić, şe VR jest wykorzystywana w wielu dziedzinach techniki. W dalszej części artykułu zastosowano VR do do projektowania stacji zrobotyzowanych w środowisku Robot Studio.

Rys. 6. Schemat systemu oraz przepĹ‚yw danych dla systemu „beWare of robotâ€? Fig. 6. System and data flow diagram for the “beWare of robotâ€? system

ProjektujÄ…c oraz programujÄ…c stacjÄ™ zrobotyzowanÄ… zdecydowano siÄ™ wykorzystać dostÄ™pne narzÄ™dzia projektowania i programowania robotĂłw off-line. Programowanie off-line jest rekomendowane do stosowania w trakcie budowy i modyfikacji zĹ‚oĹźonych systemĂłw zrobotyzowanych. BezpoĹ›rednie korzyĹ›ci stosowania programowania off-line: − skrĂłcenie czasu przerwy w produkcji; − automatyczne generowanie kodu NC; − graficzna (CAD) reprezentacja elementĂłw stanowiska – Ĺ‚atwiejsza i szybsza integracja stanowiska zrobotyzowanego; − wykorzystanie edytora graficznego w testowaniu (weryfikacji) i optymalizowaniu programu pracy; − uĹ‚atwiona wymienialność programĂłw miÄ™dzy robotami; − moĹźliwość tworzenia zĹ‚oĹźonych programĂłw pracy, zĹ‚oĹźonej logiki stanowiska oraz zaawansowanych, duĹźych systemĂłw sensorycznych. StosujÄ…c współczesne programy komputerowe do programowania robotĂłw przemysĹ‚owych, moĹźna uzyskać szybkie i dokĹ‚adne generowanie programĂłw sterujÄ…cych. MoĹźna testować róşne warianty organizacyjne stanowiska i scenariusze pracy przy zachowaniu Ĺ‚atwego i szybkiego wprowadzania poprawek z zachowaniem bezpieczeĹ„stwa testowania (np. wykrywanie kolizji) programu, dziÄ™ki symulacji w Ĺ›rodowisku wirtualnym. Po przeglÄ…dzie dostÄ™pnych rozwiÄ…zaĹ„ do projektowania oraz programowania stacji zrobotyzowanej wykorzystano narzÄ™dzie firmy ABB, czyli RobotStudio (Rys. 7).

65


& " " = % " % 8 = " %= ' %

Rys. 7. Widok stacji zaprojektowanej w oprogramowaniu RobotStudio Fig. 7. View of the station designed in RobotStudio software

Rys. 8. Idea współpracy oprogramowania RobotStudio z narzędziami do VR Fig. 8. Idea of cooperation between RobotStudio software and VR tools

Rys. 9. Zestaw HTV Vive Virtul Reality [17] Fig. 9. HTC Vive Virtual Reality Kit [17]

Dostępne od 2017 r. wersje oprogramowania RobotStudio współpracują z okularami do VR, pozwalają projektować i programować roboty w świecie wirtualnym (rys. 8). W zestawie dostępne są kontrolery ręczne pozwalające na oddziaływanie na elementy świata wirtualnego. Do projektowania i programowania stacji zrobotyzowanej wykorzystano komputer PC z oprogramowaniem RobotStudio oraz okulary do VR Oculus Rift. Okulary wyświetlają przed oczami uşytkownika obraz wygenerowanego komputerowo środowiska pracy. Moşna się w nich rozglądać w naturalny sposób, poruszając głową lub całym ciałem. Uşyty model Oculus Rift ma ekran wyświetlający dla kaşdego oka niezaleşny obraz o rozdzielczości 1080 × 1200 px. Šączność z komputerem moşe być realizowana przewodowo za pomocą interfejsów HDMI i USB bądź bezprzewodowo. Za śledzenie ruchów głowy uşytkownika odpowiadają dwa zestawy czujników, odpowiadające za wykrywanie obrotów oraz pozycji głowy w przestrzeni. W zaprezentowanym przykładzie mogą zostać wykorzystane okulary HTC Vive VR. Gogle HTV Vive Virtual Reality (Rys. 9) umoşliwiają odwzorowanie w programie RobotStudio ruchu głowy, rąk oraz moşliwość poruszania się po pomieszczeniu. Za odwzorowanie ruchu odpowiedzialne są cztery czujniki (akcelerometr, şyroskop oraz dwa czujniki laserowe), które rejestrują polecenia wydawane przez trzymane w dłoniach kontrolery bezprzewodowe. Określenie połoşenia w świecie rzeczywistym oraz przesłanie ich do świata wirtualnego jest moşliwe poprzez dwa wyposaşone w sensory kontrolery ręczne oraz dwie stacje bazowe. Przedsta-

wione gogle wyposaĹźone sÄ… w dwa ekrany OLED, wyĹ›wietlajÄ…ce obraz o rozdzielczoĹ›ci 1080 Ă— 1200 px dla kaĹźdego oka. ZasiÄ™g pola widzenia to 110°. Podobnie jak gogle Oculus Rift Ĺ‚Ä…czność z komputerem PC moĹźe odbywać siÄ™ z wykorzystaniem interfejsĂłw HDMI oraz USB przewodowo [17]. W zaprezentowanym przykĹ‚adzie zdecydowano siÄ™ wykorzystać gogle Oculus Rift ze wzglÄ™du na cenÄ™. Bardzo przydatnÄ… opcjÄ… uĹźywanÄ… podczas projektowania stacji okazaĹ‚ siÄ™ Virtual Reality Meeting. To rozwiÄ…zanie, bÄ™dÄ…ce funkcjÄ… oprogramowania RobotStudio pozwala na wirtualne spotkanie kilku osĂłb w jednej stacji zrobotyzowanej. Osoby mogÄ… znajdować siÄ™ w róşnych lokalizacjach, odlegĹ‚ość nie ma tutaj znaczenia. DziÄ™ki Virtual Reality Meeting moĹźna zobaczyć swoje awatary w postaci kolorowych okularĂłw, rozmawiać, rysować i robić adnotacje w wirtualnym modelu stacji zrobotyzowanej (Rys. 10). Zastosowanie RobotStudio z opcjÄ… Virtual Reality Meeting pozwala uruchomić ,,symulacjÄ™ na Ĺźywoâ€?: roboty realizujÄ… zaprogramowane wczeĹ›niej Ĺ›cieĹźki, przedmioty przemieszczajÄ… siÄ™, ponadto rzeczywistość wirtualna zachowuje relacje przestrzenne miÄ™dzy modelami wirtualnymi obiektĂłw umieszczonych na scenie. MoĹźliwa jest kontrola Ĺ›rodowiska dziaĹ‚ania operatora ze wzglÄ™du na kryteria ergonomiczne oraz dostÄ™pność do czyszczenia i serwisowania sprzÄ™tu. Funkcja spotkania pomaga w analizie projektu i korygowaniu bĹ‚Ä™dĂłw na wczesnym etapie. To skutkuje znacznie krĂłtszÄ… fazÄ… instalacji i rozruchu. Jako przykĹ‚ad projektu zrealizowanego z wykorzystaniem omĂłwionych narzÄ™dzi projektowania off-line, wirtualnej rzeczy-

66

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


j " ' % * *

Rys. 10. Widok stacji projektowanej z wykorzystaniem Virtual Reality Meeting Fig. 10. View of the station designed using Virtual Reality Meeting

Rys. 11. Widok stacji zaprojektowanej do obrĂłbki elementĂłw silnikĂłw lotniczych Fig. 11. View of the station designed for processing aircraft engine components

wistości oraz Virtual Reality Meeting moşna wskazać zrobotyzowaną stację do obróbki elementów silników lotniczych. Spółka Pratt & Whitney Rzeszów wchodząca w skład United Technologies Corporation, w ramach swojej działalności wykonuje operacje technologiczne polegające na obróbce odlewów dyfuzorów silnika V2500. Jedną z wielu operacji technologicznych jest zatępianie krawędzi. W procesie wykonywania dyfuzora istnieje szereg krawędzi wymagających zatępienia, którą to operację realizuje się ręcznie. W związku z powyşszym postanowiono zaprojektować oraz zbudować stację zrobotyzowaną do obróbki elementów silników lotniczych, która umoşliwia realizację procesu obróbki odlewów dyfuzora (Rys. 11). Funkcjonowanie stacji podzielone jest na trzy etapy, usunięcia naddatku (wypływki), wykonania fazy oraz szlifowania obrobionych powierzchni. Cały proces realizowany jest przez robota ABB IRB 140, a realizacja kolejnych etapów obróbki moşliwa jest dzięki wymianie narzędzi usytuowanych w czteropozycyjnej zmieniarce. W ramach prowadzonych prac, z wykorzystaniem VR, przygotowano dokładny model stacji, wspólnie z partnerem przemysłowym omówiono rozmieszczenie elementów stacji, sposób załadunku detali, analizowano scenariusze awarii, napraw oraz przeglądów serwisowych. Ze względu na konieczność spotkań z inşynierami z USA oraz Kanady przydatna okazała się funkcja Virtual Reality Meeting.

oraz moşliwości Virtual Reality Meeting pozwala projektować i planować w sposób dotychczas nieosiągalny.

4. Wnioski W artykule zaprezentowano dostÄ™pne moĹźliwoĹ›ci oraz przykĹ‚ad zastosowania wirtualnej rzeczywistoĹ›ci w projektowaniu stacji zrobotyzowanych. Przedstawiono historiÄ™ oraz idee zwiÄ…zane z zastosowaniem VR. Pokazano dostÄ™pne narzÄ™dzia sprzÄ™towe oraz programowe. Na konkretnym przykĹ‚adzie przedstawiono proces budowy wirtualnego Ĺ›rodowiska, wymagany sprzÄ™t oraz moĹźliwoĹ›ci uĹźycia. Zaprezentowany w ramach artykuĹ‚u sposĂłb projektowania stacji zrobotyzowanych jest moĹźliwy do zastosowania przy projektowaniu róşnych stacji zrobotyzowanych i systemĂłw zautomatyzowanych. Wykorzystanie narzÄ™dzi projektowania i programowania off-line, wirtualnej rzeczywistoĹ›ci

` # & 1. Burdea G.C., Coiffet P., Virtual reality technology. John Wiley & Sons, 2003. 2. Gallagher A.G., Ritter E.M., Champion H., Higgins G., Fried M.P., Moses G., Smith D., Satava R.M., Virtual reality simulation for the operating room: proficiency-based training as a paradigm shift in surgical skills training. “Annals of Surgeryâ€?, Vol. 241, No. 2, 2005, 364–372, DOI: 10.1097/01.sla.0000151982.85062.80. 3. Grajewski D., GĂłrski F., Zawadzki P., Hamrol A., Application of virtual reality techniques in design of ergonomic manufacturing workplaces. “Procedia Computer Scienceâ€?, Vol. 25, 2013, 289–301, DOI: 10.1016/j.procs.2013.11.035. 4. KoĹşlak M., Kurzeja A., Nawrat A., Virtual Reality Technology for Military and Industry Training Programs. [in:] Nawrat A., KuĹ› Z. (eds) Vision Based Systems for UAV Applications. Studies in Computational Intelligence, Vol. 481, 2013, 327–334, Springer, Heidelberg, DOI: 10.1007/978-3-319-00369-6_21. 5. Juan Li Wen, et al. Analysis and simulation of a 6R robot in virtual reality. IFAC-PapersOnLine, Vol. 49, No. 16, 2016, 426–430, DOI: 10.1016/j.ifacol.2016.10.078. 6. Matsas E., Vosniakos G.-Ch., Design of a virtual reality training system for human–robot collaboration in manufacturing tasks. “International Journal on Interactive Design and Manufacturingâ€?, Vol. 11, No. 2, 2017, 139–153, DOI: 10.1007/s12008-015-0259-2. 7. Mihelj M., Novak D., BeguĹĄ S., Virtual Reality Technology and Applications. Intelligent Systems, Control and Automation: Science and Engineering. Springer, 2014. 8. Ortiz J.S. et al., Virtual Training for Industrial Automation Processes Through Pneumatic Controls. [in:] De Paolis L., Bourdot P. (eds) Augmented Reality, Virtual Reality, and Computer Graphics. AVR 2018. Lecture Notes in Computer Science, Vol. 10851. Springer, Cham, DOI: 10.1007/978-3-319-95282-6_37.

67


& " " = % " % 8 = " %= ' % 14. Factory 4.0 – Renault Experiment With Mixed Reality To Control Quality, 2017 [https://metrology.news/renaulttrucks-experiment-with-mixed-reality-control-quality]. 15. 3D AR App Mercedes cAR and VR goggles: Mercedes-Benz is accelerating digitalisation in Sales, 2018 [https:// medium.com/xrbootcamp/3d-ar-app-mercedes-car-andvr-goggles-mercedes-benz-is-accelerating-digitalisation-insales-d32c72f1d25a]. 16. Francois de Bodinat, Virtual reality in the driver’s seat, 2016 [www.itproportal.com/features/virtual-reality-in-the-drivers-seat].pl/?gclid=EAIaIQobChMIyryAjZCx4gIVi5I YCh3lxwzgEAAYASAAEgKPW_D_BwE]. 17. Lowood H.E. for The Encyclopedia Britannica. Virtual reality (VR) [www.britannica.com/technology/virtual-reality].

9. Shao F., Robotham A.J., Hon K.K., Development of a 1:1 Scale True Perception Virtual Reality System for design review in automotive industry. “Advances in Manufacturing Technologyâ€?, Vol. 2, 2012, 468–743. 10. Improov3: Collaborate in VR around your CAD model [www.improovr.com/home-v2/?gclid=EAIaIQobChMIg d35972s4QIVBcqyCh3OVAOHEAAYAyAAEgL3KPD_ BwE&fbclid=IwAR2POrwBrMh-1j4v0mjn67VER9LXkK SKZcL6NFDSQo21a2KL4os0o-r1u6U]. 11. Manufacturing Cars with Virtual Reality, 2017 [www.asme. org/topics-resources/content/manufacturing-cars-with-virtual-reality]. 12. Virtual Reality Im Triebwerksbau Wird Realität, 2016 [www.bdli.de/innovation-der-woche/virtual-reality-im-triebwerksbau-wird-realitaet]. 13. Auf dem Weg zur Industrie 4.0 | Rolls-Royce Deutschland [www.youtube.com/watch?v=mhk-maMWJkg].

0 # ^ X - . # X G . Until recently, virtual reality was associated mainly with computer games. However, this technology is not only the future of the entertainment industry – it is increasingly used in IT, medicine and industry. Virtual reality generates a completely new digital world. It is a reality designed using computer tools, thanks to which the user feels as if he was really present in it. Currently, the virtual reality has a lot to offer the industry – allows for the three-dimensional design of robotic stations, creating simulation models, through which you can see exactly what the new station will look like and functioning before its launch. The article presents the process of designing and programming robotic stations using virtual reality. KeywordsV % G % M44 % S X f .

( - *

< $ $

& ' ORCID: 0000-0002-6428-0959

' G & ' ORCID: 0000-0003-3648-9808

' X ' O Q F X 6. . U ; E ' (!?+A(!?T ' ' ' E ; ' 4 ' $ V F X ; " ' $ X G % .' G E N P % E . G J

' F ' O Q F X 6. . U ; (!!BP(!? G ' J ' $ ; ' 4 ' $ V F X ; (!?* G ' H ' $ S' (!?* ' ' " ' $ X G N . ' H ; J G ' G . G J

68

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 69–76, DOI: 10.14313/PAR_236/69

; G HO 'J ' . ;>A > ; ' ( - $ F X % ; ' = 6 # % ; . F (% @E!(? X J

$ $ . Artykuł stanowi wprowadzenie do zagadnienia jakości energii elektrycznej w sieciach elektroenergetycznych WN/SN zasilających zakłady przemysłowe. W artykule na wstępie została omówiona problematyka związana z wpływem nieliniowych odbiorników energii elektrycznej na przemysłowe sieci elektroenergetyczne. Kolejno przedstawiona została charakterystyka badanej sieci 110/6 kV, jej kluczowe elementy, a takşe zasilane zakłady oraz konfiguracja torów pomiarowych i analizatorów sieci. W punkcie tym przedstawiony został schemat zasilania GPZ na potrzeby zakładów przemysłowych, w którego polach zasilających dokonano pomiarów po stronie 6 kV. Następnie w celu lepszego zrozumienia praktycznych pomiarów przytoczony został, symetryczny układ napięć i prądów słuşący za model teoretyczny. Przy tym zdefiniowane i omówione zostały takie parametry jak: współczynniki asymetrii napięć i prądów, moc czynna, bierna i pozorna według definicji Budeanu, współczynniki zawartości harmonicznych THD oraz TTHD dla napięć i prądów oraz wskaźniki krótko- i długookresowego migotania światła. Wpływ wszystkich parametry zostanie przeanalizowane przy omawianiu wyników pomiarów badań przeprowadzonych w zakładach przemysłowych. Artykuł kończy się zebraniem wniosków oraz podsumowaniem. $ V RF ??!A+ ^% ] . % J % 'J

1. Wprowadzenie Jakość dostaw energii elektrycznej jest waşnym kryterium dotyczącym energii elektrycznej. Ma kluczowe znaczenie po stronie dostawcy oraz odbiorcy. Dostawca musi spełnić szereg kryteriów związanych z parametrami energii elektrycznej, które określa rozporządzenie [11]. Odbiorca musi dotrzymywać warunków umowy z dostawcą. Warunki te są uzaleşnione od tego, do jakiej grupy przyłączeniowej zaliczany jest zarówno dostawca jak i odbiorca. Rozpatrując aspekt duşych zakładów przemysłowych naleşących do II czy III grupy przyłączeniowej zasilanych z sieci dystrybucyjnej 110 kV lub 1–110 kV, para-

) " V " " ' % (((( & ) ' () !B (!?B % ' ' () !@ (!(!

!

metry jakościowe energii elektrycznej odgrywają istotne znaczenie w procesie rozliczania z dostawcą energii elektrycznej. Drugim istotnym zagadnieniem związanym z jakością energii elektrycznej, patrząc z perspektywy przedsiębiorstwa przemysłowego, jest duşa liczba maszyn i urządzeń zainstalowanych na ich obszarze, które często podlegają skomplikowanym algorytmom sterowania. Ma to na celu np. poprawę efektywności energetycznej danego urządzenia, czy zwiększenie jego funkcjonalności i wydajności. Obecnie znaczna część z nich zbudowana jest na bazie elementów półprzewodnikowych. Urządzenia te są często nieliniowymi odbiornikami energii elektrycznej czy mocy biernej. Oznacza to, şe pobierają z linii elektroenergetycznej prądy odkształcone o duşej zawartości harmonicznych. Odkształcenia prądów oraz ich asymetria powodują z kolei odkształcenia napięć zasilających oraz wzrost strat mocy w urządzeniach elektroenergetycznych. Przepływ mocy biernej (głównie indukcyjnej) wpływa na pogorszenie współczynnika mocy. Dodatkowo dla niektórych typów maszyn i urządzeń występują krótkotrwałe piki prądowe znacznych wartości, które powodują dodatkowe zakłócenia i fluktuacje napięcia w danej sieci elektroenergetycznej. Wszystko to składa się na pogor-

69


8 % '% ); L 8 " % 8

= % " % = ((( szenie parametrów zasilania, czym stwarza realne zagroşenie nieprawidłową pracą a nawet uszkodzeniem urządzeń wraşliwych na zakłócenia. Coraz większe znaczenie dla zakładów przemysłowych mają równieş aspekty jakościowe. Jest to szczególnie waşne wszędzie tam, gdzie prowadzony jest skomplikowany proces produkcyjny lub obróbczy z zadaną dokładnością, którego zakłócenie bądź przerwanie jest nieodwracalne w skutkach i przekłada się na straty finansowe zakładu produkcyjnego. Zakłady produkcyjne decydują się więc na szereg działań mających na celu analizę jakości energii elektrycznej. Działania te polegają na ciągłym monitorowaniu, wykrywaniu oraz ostrzeganiu o ewentualnych zakłóceniach oraz źródłach ich powstawania, a takşe na monitoringu podstawowych parametrów i ich dopuszczalnych wartości odchyleń. Analizy prowadzone są od GPZ (główny punkt zasilania) o napięciu np. 110 kV aş do rozdzielni głównych, oddziałowych czy poszczególnych odbiorników nN (niskie napięcie) 0,4 kV. W tym celu wykorzystywane są analizatory sieci, które dokonują zaawansowanej analizy parametrów ilościowych i jakościowych przepływającego prądu. Dzięki protokołom komunikacyjnym (Modbus TCP/IP, RTU, Profinet) dane z urządzeń przesyłane są do głównego serwera z dedykowanym oprogramowaniem, gdzie są obrabiane i przechowywane. W przypadku rozbudowanych systemów dane te mogą być zbierane jednocześnie z duşej liczby urządzeń. Pozwala to na lepsze zarządzanie systemem oraz wykrywanie anomalii [1]. Artykuł ten stanowi wprowadzenie teoretyczne do analizy praktycznych pomiarów parametrów zasilania dla zakładów przemysłowych. Zakłady te zasilane są z sieci dystrybucyjnej 110 kV przez trzy transformatory 110/6 kV o łącznej mocy 48 MVA. Praktyczna analiza tych pomiarów zawarta zostanie w kolejnym artykule.

Rys. 1. Schemat zasilania GPZ na potrzeby zakładów przemysłowych Fig. 1. GPZ power supply diagram for industrial plants

48 MVA (tab. 1). Transformatory sÄ… poĹ‚Ä…czone w grupÄ™ Yd11 o napiÄ™ciu zwarcia 11,5%. PrÄ…d nominalny strony pierwotnej kaĹźdego z transformatorĂłw wynosi 84 A natomiast strony wtĂłrnej 1466,3 A. Od strony wtĂłrnej transformatorĂłw tory prÄ…dowe sÄ… wprowadzone do budynku stacji trzema liniami na pola zasilajÄ…ce zespoĹ‚y szynowe, ktĂłre zasilajÄ… Ĺ‚Ä…cznie 53 pola. Kolejno pola odpĹ‚ywowe przez kable ziemne SN zasilajÄ… na poszczegĂłlnych obiektach zainstalowane w nich transformatory 6/0,4 kV, ktĂłre odpowiadajÄ… za dostarczanie energii do rozdzielni gĹ‚Ăłwnych. Rozdzielnie gĹ‚Ăłwnie z kolei poprzez szynoprzewody i tory silnoprÄ…dowe zasilajÄ… wszystkie odbiorniki zainstalowane na obiektach. RozpatrujÄ…c stacjÄ™ GPZ, w części praktycznej przedstawione zostanÄ… dane pomiarowe zebrane z torĂłw prÄ…dowych 6 kV, na zasilaniu zespoĹ‚Ăłw szynowych sekcji I, II oraz III kaĹźdego z transformatorĂłw. Pomiar oraz rozliczanie zakĹ‚adĂłw przemysĹ‚owych z dostawcÄ… energii elektrycznej realizowany jest po stronie 110 kV, a poniĹźsze zakĹ‚ady traktowane sÄ… jako caĹ‚ość. Podczas analizy istotnym czynnikiem wpĹ‚ywajÄ…cym na róşnicÄ™ w jakoĹ›ci zasilania na poszczegĂłlnych torach byĹ‚ charakter poszczegĂłlnych odbiorcĂłw energii elektrycznej: ZakĹ‚ad 1 – obrabiarki CNC, spawarki laserowe, piece do wygrzewania, zgrzewarki – odbiorniki nieliniowe – pomiar w polu zasilajÄ…cym 12;

X' ! # ]] ‚| / #

! W dobie wysoko zautomatyzowanych zakładów przemysłowych o skomplikowanych procesach produkcyjnych pewność, niezawodność oraz ciągłość zasilania jak równieş jego odpowiednia jakość jest podstawowym wymaganiem stawianym sieci zasilającej. Ze względu na znaczne moce przyłączeniowe dochodzące do kilkudziesięciu MVA zakłady te zasilane są najczęściej z sieci WN (wysokie napięcie) lub SN (średnie napięcie) najczęściej 110 kV lub 15 kV (rys. 1). GPZ zasilany jest z dwóch linii 110 kV nr 1 oraz 2 (dla celów ochrony danych rys. 1 został uogólniony). Linie wysokiego napięcia stanowią linie napowietrzne jednotorowe na stalowych konstrukcjach wsporczych, chronione przewodami odgromowymi na całej długości. Obydwie linie mają przewody robocze 3 × AFL–6 240 mm2. Powyşsza stacja GPZ transformuje napięcie 110 kV na 6 kV przy wykorzystaniu trzech transformatorów o łącznej mocy

Tab. 1. Charakterystyka transformatorĂłw w stacji GPZ Tab. 1. Characteristics of transformers in the GPZ station

Nazwa stacji

Oznaczenie transformatora

Przekładnia transformatora [kV/kV]

Moc transformatora [MVA]

T1

110/6

16

T2

110/6

16

T3

110/6

16

Stacja GPZ

70

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


= Tab. 2. Podstawowe parametry pomiarowe analizatora UMG 511 według normy EN61000 [2] Tab. 2. Basic measurement parameters of the UMG 511 analyzer according to EN61000 [2]

Zakład 1 jw. – odbiorniki nieliniowe- pomiar w polu zasilającym 32; Zakład 2 – zakład metalurgiczny – piec hutniczy indukcyjny – odbiorniki nieliniowe – pomiar w polu zasilającym 4.

Podstawowe pomiary

Dokładność pomiaru napięcia

0,1%

Dokładność pomiaru prądu

0,2%

Dokładność pomiaru energii czynnej (kWh,‌/5 A)

0,2 S

Częstotliwość próbkowania

20 kHz

RMS – wartość chwilowa

Napięcie, prąd, częstotliwość

•

Moc czynna, bierna, pozorna/całkowita i na fazę

•

Współczynnik mocy/całkowity i na fazę

•

Pomiar energii

Energia czynna, bierna i pozorna [L1, L2, L3, L4, Σ L1–L3, Σ L1–L4]

•

Liczba taryf

8

Rejestracja wartości średnich

Napięcie, prąd/ aktualna i maksymalna

•

Czynna, bierna i pozorna moc/aktualna i maksymalna

•

Częstotliwość/ aktualna i maksymalna

•

Do celów pomiarowych w polach zasilających sekcje I, II oraz III stosowane są analizatory sieci, do których podłączone są dzielniki napięciowe (pomiar dla SN) oraz przekładniki prądowe TPU 44.23 1500/5A. W omówionym przypadku dla kaşdego z torów zainstalowane są analizatory sieci klasy A Janitza UMG 511, które stanowią zaawansowane narzędzia pomiarowe dostarczające duşej ilości danych potrzebnych do oceny parametrów ilościowych oraz jakościowych energii elektrycznej. Najwaşniejsze parametry pomiarowe tego typu analizatora zestawiono w tabeli 2.

[' ) € !

[']' $

ƒ " Analiza parametrĂłw sieci energetycznej wymaga zdefiniowania ich modeli matematycznych. Konieczne jest zdefiniowanie ukĹ‚adu symetrycznego napięć i prÄ…dĂłw, ktĂłry posĹ‚uĹźy za model teoretyczny w praktycznych rozwaĹźaniach.

Jakość energii

Harmoniczne/ napięcie i prąd

1–63

Harmoniczne/ moc czynna i bierna

1–63

Współczynnik zniekształceń THD-U w %

•

Współczynnik zniekształceń THD-I w %

•

Asymetria napięcia

•

Składowa prądu i napięcia, zgodna, przeciwna i zerowa

•

Migotanie krótko i długookresowe

•

Stany przejściowe

> 50 Îźs

Rys. 2. Wykres wektorowy symetrycznego układu napięć i prądów [1, 3] Fig. 2. Vector diagram of the symmetrical voltage and current system [1, 3]

Z rysunku 2 wynikają podstawowe zaleşności:

•

UL1 = UL1

(1)

20 ms

UL2 = a2UL1

(2)

UL3 = aUL1

(3)

UL1L2 = UL1L2

(4)

UL2L3 = a2UL1L2

(5)

256 MB

UL3L1 = aUL1L2

(6)

Średnie, minimalne, maksymalne wartości

•

IL1 = IL1

(7)

Liczba kanałów pomiarowych

8

IL2 = a2IL1

(8)

Komunikaty alarmowe

•

IL3 = aIL1

(9)

Znaczniki czasu

•

Uśrednianie RMS, arytmetyka

•

Zdarzenia/funkcja rejestratora błędów Krótkotrwałe przerwy Funkcja oscylacyjna (kształt fali U i I)

•

Tętnienia napięcia

•

Zapis pod- i nadnapięcia

•

Rejestracja danych pomiarowych

Pamięć (Flash)

gdzie: UL1, UL2, UL3 – napiÄ™cia fazowe, UL1L2, UL2L3, UL3L1 – napiÄ™cia miÄ™dzyfazowe, IL1, IL2, IL3 – prÄ…dy fazowe, a – operator obrotu o 120°, a2 – operator obrotu o 240°.

71


8 % '% ); L 8 " % 8

= % " % = (((

UkĹ‚ad trĂłjfazowy jest symetryczny napiÄ™ciowo, jeĹ›li wektory napięć fazowych sÄ… przesuniÄ™te wzglÄ™dem siebie o 120° oraz ich wartoĹ›ci skuteczne sÄ… sobie rĂłwne. Wynika z tego, Ĺźe w ukĹ‚adzie symetrycznym suma wartoĹ›ci zespolonych napięć fazowych jest rĂłwna 0. Identyczne warunki moĹźna zapisać dla napięć miÄ™dzyfazowych oraz prÄ…dĂłw fazowych pĹ‚ynÄ…cych w obwodzie elektrycznym.

gdzie: Um1, Um2 – składowe wartości skutecznych napięcia kolejności zgodnej i przeciwnej, aum – współczynniki asymetrii napięć międzyfazowych. Zaleşności te umoşliwiają opisanie asymetrii napięć i prądów badanej sieci.

['[' + ` Aby dokonać opisu przesyłanej energii naleşy skorzystać z jednej z teorii mocy. Jedna z najpowszechniej dotychczas stosowanych teorii to teoria mocy według I. Budeanu. Opiera się na rozłoşeniu przebiegów napięć i prądów przy wykorzystaniu szeregu Fouriera. Przebiegi odkształcone okresowe napięć i prądów opisują następujące szeregi trygonometryczne:

['X' )

ƒ " Z zaleĹźnoĹ›ci (1)–(9) wynika, Ĺźe ukĹ‚ad jest niesymetryczny, gdy napiÄ™cia lub prÄ…dy nie sÄ… przesuniÄ™te w fazie o wartoĹ›ci operatorĂłw obrotu a i a2 lub gdy ich wartoĹ›ci skuteczne nie sÄ… sobie rĂłwne [1, 3]. Aby opisać iloĹ›ciowo zjawisko asymetrii napięć i prÄ…dĂłw stosuje siÄ™ współczynniki asymetrii. Jednym ze sposobĂłw ich wyznaczenia jest analityczny rozkĹ‚ad ukĹ‚adu trĂłjfazowego wektorĂłw napięć i prÄ…dĂłw na sumÄ™ skĹ‚adajÄ…cÄ… siÄ™ z trzech symetrycznych ukĹ‚adĂłw: kolejnoĹ›ci zgodnej, przeciwnej oraz zerowej. Zazwyczaj współczynniki te odnoszÄ… wartoĹ›ci skĹ‚adowej kolejnoĹ›ci przeciwnej lub/i zerowej do wartoĹ›ci skĹ‚adowej symetrycznej kolejnoĹ›ci zgodnej [1, 3]. Dla napięć współczynniki asymetrii okreĹ›lajÄ… nastÄ™pujÄ…ce zaleĹźnoĹ›ci:

Îąu2 =

U2 â‹… 100% U1

(10)

Îą u0 =

U0 â‹… 100% U1

(11)

Îąu =

U 2 + U0

â‹… 100%

U1

(

)

u = U 0 + 2 ∑ h =1U h cos hωt + Ψ h = U 0 + 2 Re ∞

(∑

∞

U he jhωt

h =1

)

(17)

(

)

i = I 0 + 2 ∑ h =1 I h cos hωt + Ψ h − Ď•h = I 0 + 2 Re ∞

(∑

∞

I e jhωt

h =1 h

(18) gdzie: h – rzÄ…d harmonicznej, Uh, Ih – kolejno skuteczna wartość napiÄ™cia i prÄ…du h-tej harmonicznej, U0, I0 – skĹ‚adowe staĹ‚e w napiÄ™ciu i prÄ…dzie, Ψh – faza poczÄ…tkowa h-tej harmonicznej napiÄ™cia, h – przesuniÄ™cie fazowe miÄ™dzy h-tÄ… harmonicznÄ… napiÄ™cia i prÄ…du [5]. W przypadku braku skĹ‚adowych staĹ‚ych w chwilowych wartoĹ›ciach napięć i prÄ…dĂłw dla odbiornika jednofazowego wzory na moc czynnÄ…, biernÄ… i pozornÄ… wedĹ‚ug teorii Budeanu przyjmujÄ… postać:

(12)

∞

∑U I

P =

h h

cos Ď•h

(19)

sin Ď•h

(20)

h =1

gdzie: U1, U2, U0 – składowe wartości skutecznych napięcia kolejności zgodnej, przeciwnej i zerowej, au2, au0, au – kolejno współczynniki asymetrii przeciwnej, zerowej i całkowitej napięć fazowych.

QB =

∞

∑U I

h h

h =1

Analogicznie moşna opisać współczynniki asymetrii prądów:

Îąi2 =

I2 â‹… 100% I1

Dla przebiegów sinusoidalnych, tak zdefiniowana moc bierna, będzie zawierała jedynie składową podstawową, która będzie stanowiła część urojoną zespolonej mocy pozornej:

(13)

(21)

Îą i0 =

Îąi =

I0 â‹… 100% I1

I 2 + I0 I1

â‹… 100%

(14)

gdzie: U1, I1 – kolejno skuteczna wartość napięcia i prądu składowej podstawowej, j1 – przesunięcie fazowe między składową podstawową napięcia i prądu.

(15)

Moduł mocy zespolonej z równania (21) spełnia natomiast zaleşność:

gdzie: I1, I2, I0 – składowe wartości skutecznych prądu kolejności zgodnej, przeciwnej i zerowej, ai2, ai0, ai – kolejno współczynniki asymetrii przeciwnej, zerowej i całkowitej prądów fazowych [1,4].

(22) Dla przebiegu niesinusoidalnego moc pozorną jednofazowego odbiornika określa iloczyn skutecznych wartości napięć i prądów:

W przypadku napięć międzyfazowych zaburzenie ich symetrii jest powodowane przez wystąpienie składowej symetrycznej przeciwnej, składowa zerowa nie występuje. Wprowadza się tylko jeden współczynnik asymetrii napięć międzyfazowych.

Îą um =

72

P

O

I

A

∞

∞

∑U ∑ I 2 h

h =1

2 h

(23)

h =1

Z porĂłwnania wzorĂłw (22) i (23) wynika, Ĺźe:

Um 2 â‹… 100% Um1 M

S =U â‹…I =

(16) S – S1 ≼ 0 R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

(24) K

A

NR 2/ 20 20

)


=

Jedynie dla przebiegów nieodkształconych relacja (24) staje się równością i tylko w takim przypadku moc pozorna jest równa modułowi mocy zespolonej. Dla przebiegów odkształconych teoria Budeanu przewiduje wielkość nazwaną deformacją D: D = S 2 − P 2 − QB2

Moduł mocy zespolonej spełnia zależność:

(25) (32)

W przypadku ogólnym zachodzi równość: S = P 2 + QB2 + D 2 = P 2 + K 2

(26)

Dla przebiegów niesinusoidalnych moc pozorną trójfazowego odbiornika można opisać iloczynem skutecznych wartości napięć i prądów:

K = QB2 + D 2

(27)

(33)

gdzie: K – moc dystorsji, D – moc deformacji [5]. Realizacja obowiązująca dla układów symetrycznych z przebiegami sinusoidalnymi

(34)

nie sprawdza się dla wartości mocy biernej QB1, L1 −L 3 opisanej zależnością (30), gdyż

(35) Rys. 3. Wielościan mocy, według Budeanu, jednofazowego obwodu z przebiegami sinusoidalnymi i odkształconymi [5] Fig. 3. Power polyhedron, according to Budeanu, of a single-phase circuit with sinusoidal and distorted waveforms [5]

Między kątami wielościanu mocy jednofazowego odbiornika nieliniowego zasilanego ze źródła napięcia okresowego zachodzi zależność: cos ϕ =

P1 , S1

PF =

P , S

cos γ =

S1 S

(28)

Podobnie jak dla obwodu jednofazowego – moc czynną, bierną i pozorną dla obwodu trójfazowego definiują zależności:

(29)

QB L1 ÷L 3 =

L3

∑ ∑U

I sin ϕ hn

hn hn

(30)

n =L1 h =1

Dla przebiegów sinusoidalnych moc zespolona przyjmuje postać:

(31) gdzie: n – numer kolejnej fazy, U1, I1 – kolejno skuteczna wartość napięcia i prądu składowej podstawowej, j1 – przesunięcie fazowe między składową podstawową napięcia i prądu [5].

Dla układu wielofazowego symetrycznego podobnie jak dla układu jednofazowego można wprowadzić analogiczne zależności na wartość mocy odkształcenia (deformacji) D. Z przedstawionych rozważań wynika, że moc bierna (wzór 20, 30) nie prowadzi do bilansu mocy czynnej, biernej i pozornej jak w układach jednofazowych z przebiegami sinusoidalnymi lub wielofazowych symetrycznych z przebiegami sinusoidalnymi. W układach generujących wyższe harmoniczne prądu o niewielkich względnych wartościach prowadzi się kompensację tylko podstawowej harmonicznej prądu biernego, czyli kompensację mocy biernej. Jeżeli zawartość wyższych harmonicznych w prądach fazowych przekracza dopuszczalny poziom wynikający z dopuszczalnego odkształcenia napięcia lub nadmiernej wartości skutecznej prądu fazowego, stosuje się filtry wyższych harmonicznych prądu [12]. Teoria mocy Budeanu dla jednofazowych lub trójfazowych symetrycznych zasilanych sinusoidalnie obwodów nieliniowych poprawnie opisuje z wystarczającą dokładnością bilans energetyczny oraz rozdziela moc dystorsji na dwa różne technicznie minimalizowane składniki, moc bierną związaną z podstawową harmoniczną prądu i moc odkształcenia związaną z wyższymi harmonicznymi prądów. Poza teorią Budeanu istnieją inne opracowania tego zagadnienia związane z teorią mocy chwilowych, które przedstawiają inny opis danego problemu. [5]. Ze względu jednak na objętość i cel artykułu nie będą one omawiane.

['\' +0* " Współczynnik THD jest to względna skuteczna wartość wszystkich wyższych harmonicznych odniesiona do podstawowej harmonicznej. Dla przebiegu niesinusoidalnego jest opisana zależnością:

THDU =

U h2

h =2

U1

⋅ 100%

(36)

73


8 % '% ); L 8 " % 8

= % " % = (((

∑

THDI =

∞ 2 h =2 h

I

I1

P1 –

â‹… 100%

poziom przekroczony w trakcie 1% czasu obserwacji; współczynnik wagi k1 = 0,00525; P3 – poziom przekroczony w trakcie 3% czasu obserwacji; współczynnik wagi k3 = 0,0657; P10 – poziom przekroczony w trakcie 10% czasu obserwacji; współczynnik wagi k10 = 0,28; P50 – poziom przekroczony w trakcie 50% czasu obserwacji; współczynnik wagi k50 = 0,08. Wskaźnik Pst wyznaczany jest z krótkim okresem obserwacji wynoszącym dziesięć minut. Jest to czas dostatecznie długi, aby krótkotrwałe, sporadycznie występujące zmiany napięcia nie miały zbyt znaczącego wpływu na ostateczny wynik pomiaru, a wystarczająco krótki, aby umoşliwić szczegółowy opis odbiornika zaburzającego o długim cyklu pracy. W wyniku przeprowadzonych badań przez Międzynarodową Unię Zastosowań Elektrotechniki (UIE) stwierdzono, şe wahania napięcia odpowiadające wskaźnikowi Pst = 1% napięcia zasilania stanowią dopuszczalny limit ze względu na negatywne skutki na organizm ludzki (rys. 4 [10]).

(37)

gdzie: U1, I1 – kolejno skuteczna wartość napięcia i prądu składowej podstawowej, Uh, Ih – kolejno skuteczna wartość napięcia i prądu h-tej harmonicznej.

['^' ++0* ƒ " W przypadku wystÄ™powania w przebiegach skĹ‚adowych nieokresowych lub skĹ‚adowych o czÄ™stotliwoĹ›ciach niebÄ™dÄ…cych peĹ‚nymi wielokrotnoĹ›ciami podstawowej czÄ™stotliwoĹ›ci napiÄ™cia skuteczna wartość napiÄ™cia (prÄ…du) jest wiÄ™ksza niĹź to wynika z zawartoĹ›ci wyĹźszych harmonicznych. W takim przypadku miarÄ… odksztaĹ‚cenia przebiegu jest TTHD:

TTHDU =

TTHDI =

2 U RMS − U 12 ⋅ 100% U1

(38)

2 I RMS − I 12 ⋅ 100% I1

(39)

gdzie: U1, I1 – kolejno skuteczna wartość napięcia i prądu składowej podstawowej, URMS, IRMS – kolejno skuteczna wartość napięcia i prądu wyşszych harmonicznych i interharmonicznych [1, 5, 7].

['|' +** " Współczynnik całkowitego zniekształcenia zapotrzebowania prądu określa stosunek wartości skutecznej sumy składowych harmonicznych prądu bez udziału składowej podstawowej do maksymalnej wartość skutecznej prądu obciąşenia. Współczynnik ten jest wyraşany jako:

∑

TDDI =

∞

2 h =2 h

I

IL

Rys. 4. Krzywa Pst = 1 (dla prostokątnych równoodległych zmian napięcia) [10] Fig. 4. Curve Pst = 1 (for rectangular equidistant voltage changes) [10]

['…' 7 „ ⋅ 100%

(40)

Wskaźnik długookresowego migotania światła Plt moşna przedstawić za pomocą zaleşności:

gdzie: IL – maksymalna wartość skuteczna prądu obciąşenia, Ih – skuteczna wartość prądu h-tej harmonicznej.

Plt =

Przez Plt naleşy rozumieć wskaźnik obliczany na podstawie sekwencji 12 kolejnych wartości wskaźników krótkookresowego migotania światła Pst (mierzonych przez 10 minut) występujących w okresie 2 godzin [11].

Wskaźnik krótkookresowego migotania światła Pst moşna przedstawić za pomocą zaleşności:

\'

(41) Artykuł jest wprowadzeniem teoretycznym do praktycznej analizy jakości energii elektrycznej w sieci zasilającej WN/SN dla zakładów przemysłowych. W części tej omówiono podstawowe parametry odnoszące się do jakości energii elektrycznej oraz sposoby ich analitycznego opisu. Wychodząc od symetrycznego układu napięć i prądów moşna dojść do opisu np. współczynników asymetrii. W przypadku teorii mocy w artykule tym zdecydowano się na opis teorii według I. Budeanu ze względu na prawdopodobne jej zastosowanie w analizatorach parametrów sieci elektroenergetycznej. Niestety teoria mocy Budeanu ma równieş istotne błędy, które zostały zauwaşone przez pro-

gdzie: k0,1 ‌ k50 – współczynniki wagowe, których wartości wynikają z przyjętych procedur obliczeniowych; P0,1 ‌ P50 – poziomy migotania, dla których określone jest prawdopodobieństwo ich przekroczenia. Jako wystarczające (z praktycznego punktu widzenia) uznano pięć poziomów lub inaczej percentyli, które wynoszą: P0,1 – poziom przekroczony w trakcie 0,1% czasu obserwacji; współczynnik wagi k0,1 = 0,0314;

P

O

M

I

A

R

Y

•

A

(42)

gdzie: Pstn – kolejne wartości wskaźnika krótkookresowego migotania światła Pst.

['}' 7 „

74

3 Pstn

∑ 12 n =1

Współczynnik ten jest wyznaczany jako średnia za okres 15 lub 30 minut [11]. Taka wersja wskaźnika, w przeciwieństwie do THD, generuje poprawne wyniki nawet dla sygnałów niezawierających składowej podstawowej (np. prądu w przewodzie neutralnym) [6, 8, 9].

Pst = k0,1P0,1 + k1P1 + k3P3 + k10P10 + k50P50

12

3

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


=

fesora Czarneckiego [13] w końcu XX wieku. Istnieją bowiem szczególne przypadki, które wskazują na niejednoznaczność teorii mocy Budeanu. Według tej teorii, zgodnie z (19) i (20), moc bierna QB jest sumą mocy biernych pojedynczych harmonicznych dla h-tej harmonicznej. Wiadomo natomiast, że w rzeczywistych obwodach elektrycznych przesunięcie fazowe może przyjmować wartości z zakresu −π / 2 ≥ ϕh ≥ π / 2. Zatem wywnioskować można, że moc P może osiągać wartości nieujemne, natomiast QB zarówno dodatnie jak i ujemne wartości. Wynika z tego przypadek, w którym sumaryczna moc QB osiągnie zero nawet wtedy, gdy zauważalne będą oscylacje mocy dla pewnych harmonicznych między źródłem a odbiornikiem. W teorii tej nie występuje więc związek między oscylacją energii w obwodach z przebiegami niesinusoidalnymi a mocą bierną QB. Wartość QB dla poszczególnych harmonicznych rozpatrywana indywidualnie określa amplitudę oscylacji energii związanej z istnieniem h-tej harmonicznej prądu. Rozpatrując natomiast sumę h-tych harmonicznych nie można uzyskać informacji o tych oscylacjach. Dr inż. Konrad Zajkowski w swoim artykule [14] podaje kilka matematycznych przypadków, które udowadniają niespójności tej teorii. Mimo tych wad do dnia dzisiejszego nie przedstawiono innej interpretacji mocy QB. Nie udało się także przyporządkować żadnego zjawiska fizycznego adekwatnego do tej mocy. Ze względu jednak na dużą popularność tej teorii jest ona stosowana do dnia dzisiejszego w wielu urządzeniach pomiarowych. Wykorzystano ją również w urządzeniach, których użyto podczas realizowanych pomiarów w GPZ dla obiektów przemysłowych. Oczywiście istnieją również inne opracowania teorii mocy, takie jak teoria Fryzego czy opracowanie IEEE 1459-2010 [15]. Teoria Fryzego, podobnie jak teoria mocy Budeanu w pewnych szczególnych przypadkach prowadzi do błędnych interpretacji, co również omawia dr Zajkowski w swoim artykule [14]. Opracowanie IEEE 1459-2010 stanowi jedynie standard, który przez część naukowców nie został uznany za ostateczną i adekwatną formę opisu danego zagadnienia. Tak więc forma oraz poprawność opisu teorii mocy jest wciąż tematem otwartym i szeroko omawianym. W pracy tej mimo wskazanych niejednoznaczności teorii mocy Budeanu zdecydowano się na jej omówienie ze względu na wykorzystane urządzenia pomiarowe, które dokonują pomiarów w oparciu o tę teorię. W artykule przedstawiono i opisano takie parametry, jak współczynniki zawartości harmonicznych THD oraz TTHD dla napięć i prądów oraz wskaźniki krótko- i długookresowego migotania światła. Wartości tych parametrów stanowią istotną informację podczas eksploatacji sieci zasilającej. Ich ciągły monitoring pozwala na wykrywanie istotnych zmian czy zakłóceń w badanej sieci.

6. Canturk S., Balci M.E., Hocaoglu M.H., On the definition of apparent power, “Electrical Power Quality and Utilisation, Journal”, Vol. XVIII, No. 2, 2015. 7. Bolkowski S., Teoria obwodów elektrycznych, Wyd. X, PWN, Warszawa 2017. 8. Hanzelka Z., Jakość energii elektrycznej, część 4 – Wyższe harmoniczne napięć i prądów, Akademia Górniczo-Hutnicza, Kraków 2001. 9. Karafotis P.A., Christodoulou-Galanopoulos K.N., Siagkas D.O., Georgilakis P.S., Power Quality Indices for Electrical Power Systems under Non-Stationary Disturbances, National Technical University of Athens, 2018, DOI: 10.1109/ICHVE.2018.8642257. 10. Baranecki A., Płatek T., Niewiadomski M., Harmoniczne prądu: problemy pomiarowe, „Elektro info”, Nr 7, 2003, 60–63. 11. Dz. U. z 2007 r. Nr 93, poz. 623, Rozporządzenie Ministra Gospodarki z dnia 4 maja 2007 r. w sprawie szczegółowych warunków funkcjonowania systemu elektroenergetycznego. 12. PN-EN 50160: 2010, Parametry napięcia zasilającego w publicznych sieciach rozdzielczych. 13. Czarnecki L.S., What is wrong with the Budeanu concept of reactive and distortion powers and why it should be abandoned, “IEEE Transactions on Instrumentation and Measurement”, Vol. IM-36, No. 3, 1987, 834–837, DOI: 10.1109/TIM.1987.6312797. 14. Zajkowski K., Wady teorii mocy w obwodach jednofazowych według Budeanu i Fryzego, „Autobusy: eksploatacja i testy”, R. 17, Nr 12, 2016, 1500–1504. 15. IEEE 1459-2010 standard, New York 2010.

` # & 1. Kołodziej K., Analiza parametrów sieci wewnątrzzakładowej przy wykorzystaniu systemu BMS i PME, „Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej”, Nr 61, 2018, 35–40, DOI: 10.32016/1.61.07. 2. Nota katalogowa analizatora sieci Janitza UMG511, Janitza electronics GmbH, Lahnau 2011. 3. Kowalski Z., Jakość energii elektrycznej, Wydawnictwo Politechniki Łódzkiej, Łódź 2007. 4. Robak S., Pawlicki A., Pawlicki B., Asymetria napięć i prądów w elektroenergetycznych układach przesyłowych, Politechnika Warszawska, Instytut Elektroenergetyki, 2014. 5. Piróg S., Energoelektronika: układy o komutacji sieciowej i o komutacji twardej, Uczelniane Wydawnictwa Naukowo-Dydaktyczne Akademii Górniczo-Hutniczej, Kraków 2006.

75


8 % '% ); L 8 " % 8

= % " % = (((

6 # V ' # 6 ' F # g F # = # Z^A$^ V 0 6 ' . This article, as part 1, is an introduction to the issue of electricity quality in HV/MV power networks supplying industrial plants. In the beginning, the article discusses issues related to the impact of non-linear loads on industrial power networks. The characteristics of the 110/6 kV network tested were presented subsequently, its essential elements, as well as powered plants and configuration of measurement tracks and network analyzers. This section presents the scheme for supplying GPZ for the needs of industrial plants, in which supply fields measurements were taken on the 6 kV side. Then, to better understand practical measurements, a symmetrical voltage and current system were used as a theoretical model. At the same time, such parameters as voltage and current asymmetry coefficients, active, reactive and apparent power according to the Budeanu definition, THD and TTHD harmonic coefficients for voltages and currents as well as short and long-term flickering indicators have been defined and discussed. All these parameters will be subjected to in-depth analysis in part 2 when discussing the measurement results from the industrial plants tested. The article ends with the collection of conclusions and a summary. KeywordsV ??!A+ ^% 8 # % # % # '

( ( - $ (((( & ORCID: 0000-0002-3086-5801 MG ; ' = 6 # F X ; (!?* O E = 0 ; (!?+ . E = S' (!?+ ' ; ' = E 6 # F X E ' S' (!?* H G OH H . H R J G H . ' H H . % # E

H . H O ' M-M% 4$ % F$= G .

76

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 24, Nr 2/2020, 77–90, DOI: 10.14313/PAR_236/77

$ G . H $< Jacek Dunaj, Kamil Bojanek ] 4 ' U P F 6 M F J F6MF% M N (!(% !(E*)+ ;

Streszczenie: W artykule przedstawiono sposób realizacji transmisji sieciowej między komputerem PC a robotem przemysłowym. Aplikacje komputera PC zrealizowano w języku C++ z wykorzystaniem bibliotek MFC. Przedstawiono, jak w praktyczny sposób wykorzystać klasę CAsyncSocket do programowania transmisji między komputerem a innym urządzeniem, np. robotem przemysłowym. Druga część artykułu koncentruje się na moşliwościach programowych robota w zakresie udostępniania informacji dotyczących jego stanu (m.in. połoşenia osi, aktualnego wyboru układu współrzędnych i narzędzia). Na przykładzie robota firmy KUKA omówiono sposób odczytywania informacji, kodowania, a następnie transmitowana do współpracującego komputera PC. Przedstawiono takşe sposób działania i opis dwóch przykładowych aplikacji komputera PC do testowania transmisji sieciowej oraz prezentacji danych odbieranych z robota. $ V $< % H = % G G $< % M % G % $ f ^ ' % " "M ; ^

1. Wprowadzenie Jednym z zadaĹ„ stawianych współczeĹ›nie przed aplikacjami przemysĹ‚owymi jest integracja systemĂłw i sprzęşenie maszyny z Internetem. UmoĹźliwia to Ĺ›ledzenie procesu technologicznego oraz generowanie róşnych komunikatĂłw prezentowanych na urzÄ…dzeniach oddalonych takich jak laptopy, smartfony czy sprzÄ™cie wirtualnej rzeczywistoĹ›ci. Na poziomie pojedynczego stanowiska robotowego zadanie to obejmuje m.in. monitorowanie stanĂłw robota oraz informacji generowanej przez jego aplikacjÄ™. Pod pojÄ™ciem stanĂłw robota naleĹźy tutaj rozumieć wszystko to, co udostÄ™pnia jego oprogramowanie systemowe, a wiÄ™c w jakim trybie pracy znajduje siÄ™ robot, jakie sÄ… poĹ‚oĹźenia jego osi, jakie sÄ… wartoĹ›ci dostÄ™pnych zmiennych systemowych itp. PrzemysĹ‚owy Instytut Automatyki i PomiarĂłw PIAP w swoich wdroĹźeniach przemysĹ‚owych wykorzystywaĹ‚ roboty m.in. firmy KUKA i ABB. WykonywaĹ‚y one czynnoĹ›ci bezpoĹ›rednio zwiÄ…zane z procesami produkcyjnymi takimi jak paletyzacja czy spawanie, ale nie byĹ‚y sprzęşone z urzÄ…dzeniami zewnÄ™trznymi umoĹźliwiajÄ…cymi prezentacjÄ™ odbieranej informacji. Ich jÄ™zyki programowania zawierajÄ… instrukcje umoĹźliwiajÄ…ce transmisjÄ™ danych sieciÄ… Ethernet z wykorzystaniem protokoĹ‚u TCP/IP. Jednak utrudnieniem pozostaje to, Ĺźe oprogramowanie realizu-

) " V N - % ' & . ) ' ?) !@ (!(! % ' ' (+ !+ (!(!

!

jÄ…ce transmisjÄ™ informacji o stanie robota musi być wykonywane jako rodzaj tzw. „wÄ…tkuâ€?, a wiÄ™c niezaleĹźnie od aktualnego trybu pracy robota (tryb testowy, tryb pracy automatycznej) i nie moĹźe ingerować w pracÄ™ jego dowolnej aplikacji. Osobnym zagadnieniem pozostaje, gdzie i w jaki sposĂłb informacja odbierana z robota ma być interpretowana i prezentowana. Praktycznym rozwiÄ…zaniem jest wykorzystanie komputera PC z systemem Windows. Jest to uzasadnione tym, Ĺźe aplikacje przeznaczone dla tego systemu mogÄ… być bardzo rozbudowane pod wzglÄ™dem funkcjonalnym, wykorzystujÄ…c elementy grafiki, zapisu do plikĂłw, baz danych i arkuszy kalkulacyjnych, tworzenie statystyk, a takĹźe Ĺźe oprogramowanie narzÄ™dziowe do tworzenia aplikacji zawiera wiele gotowych podprogramĂłw bibliotecznych. Podstawowym zagadnieniem pozostaje jednak realizacja samej transmisji informacji. W powszechnym uĹźyciu sÄ… róşne aplikacje komputerowe pracujÄ…ce pod kontrolÄ… systemĂłw operacyjnych Windows, ktĂłre do wymiany danych wykorzystujÄ… sieć Ethernet i protokół TCP/IP. SÄ… to jednak gotowe aplikacje, ktĂłrych nie moĹźna modyfikować pod konkretne potrzeby ani wykorzystywać fragmentĂłw ich kodu ĹşrĂłdĹ‚owego do tworzenia wĹ‚asnych opracowaĹ„, poniewaĹź kod ten z reguĹ‚y nie jest dostÄ™pny, albo pozostaje objÄ™ty prawami autorskimi. W ramach prac rozwojowych powadzonych w PIAP majÄ…cych na celu m.in. poszerzenie oferty na funkcjonalność potencjalnych aplikacji przemysĹ‚owych opracowano wĹ‚asne rozwiÄ…zania programistyczne, kodowane w jÄ™zyku wysokiego poziomu C/C++. PozwalajÄ… one na budowanie oprogramowania komunikujÄ…cego siÄ™ z innymi urzÄ…dzeniami, w tym z robotami przemysĹ‚owymi, za poĹ›rednictwem sieci Ethernet. Za pomocÄ… tych rozwiÄ…zaĹ„ moĹźna tworzyć aplikacje, ktĂłre nie tylko sÄ… w stanie transmitować informacje do/z tych urzÄ…dzeĹ„, ale mogÄ… wykorzystywać moĹźliwoĹ›ci funkcjonalne systemu operacyjnego, pod kontrolÄ… ktĂłrego pracujÄ….

77


" ' 8 " 8 % 8 %= v

W artykule tym opisano w jaki sposób zrealizowano oprogramowanie komunikacyjne z wykorzystaniem dostępnych bibliotecznych funkcji MFC (ang. Microsoft Foundation Class Library) [1]. Przedstawiono przykład uniwersalnej aplikacji komputera PC pracującego pod kontrolą systemu operacyjnego Windows (XP, 7, 10) umoşliwiającej transmisję informacji między komputerem a innym urządzeniem zewnętrznym (drugi komputer, robot) z wykorzystaniem sieci Ethernet i protokołu TCP/IP. W dalszej części artykułu pokazano, co i w jaki sposób robot przemysłowy, dostępny w PIAP, moşe udostępniać dla urządzenia zewnętrznego w zakresie danych dotyczącej stanu jego pracy, połoşenia poszczególnych osi i komunikatów generowanych przez aplikację. Końcowa część artykułu przedstawia kolejną aplikację dla komputera PC, bezpośrednio współpracującą z oprogramowaniem robota w zakresie odbioru, interpretacji i czytelnej prezentacji informacji odbieranej z niego. Przedstawione oprogramowanie dla komputera PC napisano w języku C++ i uruchomiono w środowisku Microsoft Visual Studio. Aplikację robota zrealizowano w języku KRL (ang. Kuka Robot Language) i uruchomiono na robocie za pomocą oprogramowania KUKA Work Visual.

Inicjatywa nawiązania połączenia wychodzi zawsze od klienta. Wysyłanie informacji przy pomocy funkcji typu Send() i odbiór informacji przy pomocy funkcji typu Receive() nie zaleşą juş od tego czy aplikacja działa jako klient czy jako serwer, poniewaş oba punkty konwersacji sieciowej mogą nadawać i odbierać niezaleşnie od siebie. Podobnie połączenie moşe być zerwane zarówno przez gniazdo pracujące jako serwer lub jako klient. Wymienione funkcje: Connect(), Listen(), Send() oraz Receive() są elementami klasy obsługi gniazda. Tak wygląda teoria, w praktyce realizacja tego schematu jest bardziej złoşona.

\' 3 ) $ ) $ OpracowujÄ…c wĹ‚asne rozwiÄ…zania dla komputera PC do komunikacji sieciowej z innymi urzÄ…dzeniami, w tym z robotami przemysĹ‚owymi, zdecydowano siÄ™ wykorzystać klasÄ™ CAsyncSocket dostÄ™pnÄ… w bibliotekach MFC [1]. Jest to klasa umoĹźliwiajÄ…ca dostÄ™p do funkcji sieciowych na bardzo niskim poziomie, skutkujÄ…cych m.in. wygodÄ… wywoĹ‚aĹ„ zwrotnych do powiadamiania o zdarzeniach sieciowych. Dobrze siÄ™ wiÄ™c nadaje do tworzenia oprogramowania testowego, szczegĂłlnie tam, gdzie z gĂłry nie wiadomo, z jakimi problemami przyjdzie siÄ™ zmierzyć. OczywiĹ›cie moĹźliwoĹ›ci funkcjonalne klasy CAsyncSocket znacznie przekraczajÄ… to co jest potrzebne do zbudowania komunikacji komputer – robot. TworzÄ…c jakiekolwiek oprogramowanie komunikacyjne naleĹźy pamiÄ™tać, Ĺźe nie moĹźe siÄ™ ono ograniczać tylko do funkcji typu „odbierz informacjÄ™ i zapisz jÄ… do bufora odbiorczegoâ€? lub „wpisz informacjÄ™ do bufora nadawczego i wyĹ›lij jÄ…â€?. Oprogramowanie takie musi takĹźe zawierać elementy pozwalajÄ…ce sprawdzić czy transmisja z/do urzÄ…dzenia wspĂłlpracujÄ…cego jest w danym momencie moĹźliwa. Klasa CAsyncSocket zawiera sześć funkcji bibliotecznych, wywoĹ‚ywanych przez oprogramowanie systemowe (ang. framework, znaczenie tzw. bitĂłw maski bÄ™dzie wyjaĹ›nione w dalszej części artykuĹ‚u): 1. virtual void OnAccept (int ErrorCode); − funkcja wywoĹ‚ywana jako powiadomienie, Ĺźe gniazdo współpracujÄ…ce odpowiedziaĹ‚o na şądanie nawiÄ…zania poĹ‚Ä…czenia. Z funkcjÄ… zwiÄ…zany jest bit maski FD_ACCEPT. 2. virtual void OnClose (int ErrorCode); − funkcja wywoĹ‚ywana jako powiadomienie, Ĺźe gniazdo współpracujÄ…ce zamknęło poĹ‚Ä…czenie. Z funkcjÄ… zwiÄ…zany jest bit maski FD_CLOSE. 3. virtual void OnConnect (int ErrorCode); − funkcja wywoĹ‚ywana jako powiadomienie, Ĺźe gniazdo współpracujÄ…ce odpowiedziaĹ‚o na wysĹ‚ane şądanie nawiÄ…zania poĹ‚Ä…czenia bez wzglÄ™du na to, czy zostaĹ‚o ono zaakceptowane, czy odrzuciĹ‚o to şądanie. Z funkcjÄ… zwiÄ…zany jest bit maski FD_CONNECT. 4. virtual void OnOutOfBandData (int ErrorCode); − funkcja wywoĹ‚ywana jako powiadomienie, Ĺźe gniazdo współpracujÄ…ce wysĹ‚aĹ‚o tzw. informacjÄ™ pozapasmowÄ… (ang. out-of-band data). Z funkcjÄ… zwiÄ…zany jest bit maski FD_OOB. 5. virtual void OnReceive (int ErrorCode); − funkcja wywoĹ‚ywana jako powiadomienie, Ĺźe odebrano informacjÄ™ z gniazda współpracujÄ…cego. Z funkcjÄ… zwiÄ…zany jest bit maski FD_READ. 6. virtual void OnSend (int ErrorCode); − funkcja wywoĹ‚ywana jako powiadomienie, Ĺźe moĹźliwe jest wysĹ‚anie informacji do gniazda współpracujÄ…cego. Z funkcjÄ… zwiÄ…zany jest bit maski FD_WRITE.

X' 3 7 System operacyjny Windows zawiera wbudowany interfejs programistyczny WinAPI (ang. Windows Application Programming Interface), który jest zbiorem standardowych stałych, zmiennych i podprogramów bibliotecznych umoşliwiających wykonywanie aplikacji w środowisku tego systemu. Z punktu widzenia programisty wymienione elementy moşna podzielić na grupy w zaleşności od funkcji, jakie realizują (np. grupa funkcji do tworzenia i obsługi okna dialogowego, grupa funkcji do obsługi plików). W języku C++ takie grupy funkcji określa się terminem klasa. Kaşda klasa zdefiniowana w MFC zawiera ściśle określoną liczbę elementów, których nie moşna modyfikować ani dopisywać do klasy nowych elementów. Język C++ umoşliwia na podstawie danej klasy definiować klasy potomne, które „dziedziczą� funkcjonalność klasy źródłowej i do których moşna dopisywać kolejne elementy. Tę właściwość wykorzystano do tworzenia własnego oprogramowania komunikacyjnego komputer – robot.

[' 3 Komunikacja sieciowa polega na poĹ‚Ä…czeniu dwĂłch lub wiÄ™cej urzÄ…dzeĹ„ (komputera, sterownika itp.) za pomocÄ… sieci w celu wymiany informacji. KaĹźdy z koĹ„cĂłw takiej sieciowej konwersacji nazywany jest gniazdem (ang. socket) lub punktem koĹ„cowym. OgĂłlne zasady tworzenia gniazd i ich wykorzystywania do komunikacji sieciowej opisano m.in. w [2]. Aby przez interfejs gniazda mogĹ‚o dojść do komunikacji sieciowej, a wiÄ™c do wymiany informacji miÄ™dzy dwoma gniazdami wymagane jest sprzęşenie lokalnego gniazda z gniazdem współpracujÄ…cym. W tym celu tworzÄ…c aplikacjÄ™ naleĹźy najpierw zadeklarować klasÄ™ do obsĹ‚ugi gniazda, a nastÄ™pnie zdefiniować to gniazdo za pomocÄ… funkcji Create() bÄ™dÄ…cej jednym z elementĂłw klasy obsĹ‚ugi gniazda. Definiowanie gniazda polega na wyszczegĂłlnieniu kilku parametrĂłw opisujÄ…cych jego wĹ‚aĹ›ciwoĹ›ci i uzyskania od oprogramowania sieciowego identyfikatora wskazanego gniazdo. W kolejnym kroku, jeĹ›li wymiana informacji odbywać siÄ™ bÄ™dzie w architekturze klient – serwer, to: − jeĹ›li aplikacja ma dziaĹ‚ać jako serwer to ustawia swoje lokalne gniazdo w tryb nasĹ‚uchu şądania nawiÄ…zania poĹ‚Ä…czenia przez klienta wykorzystujÄ…c funkcjÄ™ Listen(), − jeĹ›li aplikacja ma dziaĹ‚ać jako klient to wysyĹ‚a ze swojego lokalnego gniazda do gniazda współpracujÄ…cego şądanie nawiÄ…zania poĹ‚Ä…czenia wykorzystujÄ…c funkcjÄ™ Connect().

78

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


% j = < =

Wymienione funkcje są uruchamiane przez oprogramowanie systemowe z parametrem ErrorCode określającym kod potencjalnego błędu. Jeśli ErrorCode = 0, to oznacza, şe nie stwierdzono błędu podczas rejestracji zdarzenia, którego efektem jest wywołanie funkcji. Taka reakcja na wystąpienie zdarzenia powoduje, şe w aplikacji nie moşna umieścić instrukcji wywołania kaşdej z tych funkcji w celu sprawdzenia, czy zdarzenie z nią związane rzeczywiście wystąpiło. ŝadna z nich nie zwraca bowiem wartości (wszystkie są typu void), nie ma takşe bezpośredniej moşliwości dopisania fragmentów kodu do kaşdej z nich (np. instrukcji ustalającej wartość dodatkowej flagi). Niedogodność tę moşna jednak ominąć wykorzystując jedną z moşliwości jakie oferuje język C++, poprzez zdefiniowanie klasy potomnej do klasy CAsyncSocket. W środowisku Microsoft Visual Studio dostępne jest narzędzie Class Wizzard do tworzenia klas potomnych. Zdefiniowanie przy jego pomocy nowej klasy wymaga określenia jej nazwy (w przypadku aplikacji opisanych w dalszej części tego artykułu uşyto nazwy CMyAsyncSocket) oraz wskazania bazowej klasy MFC jaką jest CAsyncSocket. W wyniku tego narzędzie Class Wizzard utworzy i dopisze do aktualnego projektu Visual Studio dwa nowe pliki: CMyAsyncSocket.cpp oraz CMyAsyncSocket.h zawierające odpowiednio definicję (.cpp) oraz deklarację (.h) nowej klasy. Nazwy wspomnianych plików mogą być dowolne, jednak program domyślnie tworzy je na podstawie nazwy klasy. Następnie w pliku CMyAsyncSocket.cpp trzeba dopisać kody „własnych� funkcji OnAccept(), ..., OnSend() (ponişej przykład funkcji OnAccept()): void CMyAsyncSocket::OnAccept (int nErrorCode) { CAsyncSocket::OnAccept (nErrorCode); } a w pliku CMyAsyncSocket.h umieścić deklarację prototypu tej funkcji: void OnAccept (int);

\']' $ # ! ) $ ) $ Część funkcji zdefiniowanych w klasach CAsyncSocket i CMyAsyncSocket zwraca wartoĹ›ci typu BOOL. JeĹ›li wartość zwracana przez funkcjÄ™ jest róşna od zera (TRUE) to oznacza, Ĺźe jej wykonanie zakoĹ„czyĹ‚o siÄ™ sukcesem, jeĹ›li zwracanÄ… wartoĹ›ciÄ… jest FALSE, to oznacza bĹ‚Ä…d wykonania. W celu zidentyfikowania bĹ‚Ä™du, bezpoĹ›rednio po wywoĹ‚aniu procedury ktĂłra zwrĂłciĹ‚a wartość FALSE, naleĹźy wywoĹ‚ać bezparametrowÄ… funkcjÄ™ GetLastError(). Funkcja ta, takĹźe bÄ™dÄ…cÄ… elementem klas CAsyncSocket i CMyAsyncSocket, zwraca kod bĹ‚Ä™du. Trzeba jednak pamiÄ™tać, Ĺźe nie wszystkie bĹ‚Ä™dy sÄ… bĹ‚Ä™dami krytycznymi, wymagajÄ…cymi dodatkowej obsĹ‚ugi, poniewaĹź mogÄ… oznaczać, Ĺźe w danym momencie nie ma warunkĂłw do poprawnego wykonania danej procedury, ale jej kolejne wywoĹ‚anie moĹźe zakoĹ„czyć siÄ™ sukcesem.

\'X' + 9 † ‡ Po zdefiniowaniu klasy CMyAsyncSocket moşna utworzyć gniazdo lokalne (komputer) i gniazdo oddalone (np. robot) deklarując dwa obiekty: CMyAsyncSocket AsyncLocalSocket; // gniazdo lokalne CMyAsyncSocket AsyncRemoteSocket; // gniazdo oddalone

Bez względu na to, czy aplikacja ma pracować jako serwer czy jako klient, następnym krokiem jest zdefiniowanie właściwości lokalnego punktu końcowego (gniazda). Do tego celu słuşy 4-parametrowa funkcja Create(..) obiektu AsyncLocalSocket: BOOL BoolVar; BoolVar = AsyncLocalSocket.Create (SockPort, SockType, Event,SockAddress); Parametr SockPort określa numer portu, parametr SockAddress jest ciągiem znakowym określającym adres sieciowy gniazda w formacie „kropkowanym� (np. 128.53.22.14). Jeśli do komunikacji sieciowej ma zostać uşyty protokół TCP, to parametr SockType musi mieć wartość stałej ! zdefiniowanej w jednym z plików nagłówkowych .h. Parametr Event jest sumą logiczną od 0 do 6 bitów maski: FD_ACCEPT, FD_CLOSE. FD_CONNECT. FD_OOB. FD_READ. FD_WRITE. Jeśli dany bit maski wystąpi jako składnik sumy logicznej Event, to związana z nim funkcja OnAccept(), ..., OnSend() klasy CMyAsyncSocket zostanie automatycznie uruchomiona przez oprogramowanie systemowe po zarejestrowaniu zdarzenia odpowiadającej tej funkcji. Dalsze postępowanie związane z wymianą informacji z urządzeniem wspólpracującym jest uzaleşnione od tego, czy aplikacja (lokalny punkt końcowy) ma pracować jako serwer czy jako klient.

\'[' 5 " "

Z inicjatywą nawiązania połączenia między dwoma punktami końcowymi sieciowej transmisji występuje zawsze klient. Aby połączenie mogło zostać zrealizowane aplikacja działająca jako serwer musi pozostawać w stanie nasłuchu, a następnie zaakceptować şądanie połączenia od klienta. Ustawienie aplikacji pracującej jako serwer w stan nasłuchu realizuje funkcja Listen() obiektu AsyncLocalSocket wywoływana instrukcją: BOOL BoolVar; BoolVar = AsyncLocalSocket.Listen (int ConnectionBack); W jej wyniku gniazdo lokalne (punkt końcowy) jest przełączane w tryb, w którym połączenia przychodzące są potwierdzane i ustawiane w kolejce do czasu akceptacji przez proces. Parametr ConnectionBack określa iłe oczekujących połączeń moşe być przechowywanych w kolejce oczekiwania. Dozwolona wartość naleşy do przedziału od 1 do 5. Funkcja Listen() nie blokuje działania aplikacji do czasu zarejestrowania şądania połączenia od klienta, nie musi takşe być cyklicznie wywoływana aş takie şądanie nadejdzie. Akceptację połączenia realizuje funkcja Accept() obiektu AsyncLocalSocket wywoływana instrukcją: BOOL BoolVar;

BoolVar = AsyncLocalSocket.Accept (AsyncRemoteSocket, &AsyncRemoteSocketAddr, &SizeOfSockAddr); Pierwszy parametr jest o dwołaniem do obiektu CMyAsyncSocket AsyncRemoteSocket, pozostałe parametry są opcjonalne: Drugi jest wskaźnikiem do struktury typu , a trzeci wskaźnikiem do zmiennej typu int, do których funkcja Accept() w p i s u j e o d p ow i e d n i o : i n f o r m a c j e o p o ł ą c z e n i u (w tym adres gniazda wysyłającego şądanie połączenia) i rozmiar struktury w bajtach.

79


" ' 8 " 8 % 8 %= v Jeśli w kolejce nie ma oczekujących połączeń, to funkcja Accept() zwraca wartość FALSE, a funkcja AsyncLocalSocket.GetLastError() błąd o kodzie " . Wówczas wywoływanie funkcji Accept() moşna ponawiać aş do zarejestrowania şądania połączenia od klienta lub odczytu błędu innego niş " . W aplikacjach opisanych w dalszej części artykułu funkcja AsyncLocalSocket.Accept() wywoływana jest w procedurze OnTimer() obsługi komunikatów WM_TIMER głównego okna dialogowego. W przypadku aplikacji działającej jako klient do nawiązania połączenia naleşy uşyć funkcji Connect() obiektu AsyncLocalSocket wywoływanej instrukcją: BOOL BoolVar; BoolVar = AsyncLocalSocket.Connect (LPCTSTR RemoteSocketAddress, UINT RemoteSocketPortNumber);

Zerwanie poĹ‚Ä…czenia skutkuje automatycznym uruchomieniem funkcji AsyncRemoteSocket.OnClose(). − jeĹ›li aplikacja pracuje jako klient to nawiÄ…zanie poĹ‚Ä…czenia z serwerem jest sygnalizowane wywoĹ‚aniem funkcji AsyncLocalSocket.OnConnect() i dodatkowo wywoĹ‚ywaniem funkcji AsyncLocalSocket.OnSend(). Zerwanie poĹ‚Ä…czenia skutkuje automatycznym uruchomieniem funkcji AsyncLocal.OnClose(). W obu przypadkach funkcja OnSend() nie powinna być uĹźywana do oceny, czy poĹ‚Ä…czenie zostaĹ‚o faktycznie nawiÄ…zane, poniewaĹź jej podstawowe przeznaczenie jest inne. NaleĹźy pamiÄ™tać, Ĺźe wywoĹ‚anie kaĹźdej z funkcji wymienionych powyĹźej jest uzaleĹźnione od wartoĹ›ci parametru Event funkcji AsyncLocalSocket.Create() omĂłwionej w punkcie dotyczÄ…cym tworzenia gniazda.

\'|' 1 # & "

Parametr RemoteSocketAddress jest wskaźnikiem (ang. pointer) do ciągu znakowego określającego adres sieciowy gniazda (w tym przypadku urządzenia działającego jako serwer), np. 128.53.22.14, a parametr RemoteSocketPortNumber określa numer portu. Jeśli serwer zaakceptuje şądanie połączenia, to funkcja Connect() zwraca wartość TRUE. Zwracana wartość FALSE oznacza, şe połączenie nie moşe zostać nawiązane, a przyczynę odrzucenia şądania moşna ustalić wywołując funkcję AsyncLocalSocket.GetLastError(). Błąd o kodzie WSAEISCONN oznacza, şe uprzednio nawiązano połączenie z serwerem, natomiast błąd o kodzie " oznacza, şe sekwencja nawiązywania połączenia w tym momencie nie moşe zostać ukończona. W tym drugim przypadku wywoływanie funkcji Connect() moşna wielokrotnie ponawiać aş do zaakceptowania nawiązania połączenia przez serwer lub odczytu błędu innego niş " . W aplikacjach funkcja AsyncLocalSocket.Connect() wywoływana jest w procedurze realizowanej jako wątek (uruchamiany z poziomu głównego okna dialogowego.

Po nawiÄ…zaniu poĹ‚Ä…czenia odbiĂłr informacji w gnieĹşdzie lokalnym odbywa siÄ™ na podobnej zasadzie jak dziaĹ‚ajÄ… procedury uruchamiane w trybie przerwaniowym. Polega to na tym, Ĺźe w momencie odbioru informacji oprogramowanie systemowe inicjuje wykonywanie funkcji OnReceive() aplikacji rĂłwnolegle do realizacji samej aplikacji: − jeĹ›li aplikacja pracuje jako serwer to odbiĂłr informacji od klienta jest sygnalizowane wywoĹ‚aniem funkcji AsyncRemoteSocket.OnReceive(). − jeĹ›li aplikacja pracuje jako klient to odbiĂłr informacji z serwera jest sygnalizowane wywoĹ‚aniem funkcji AsyncLocalSocket. OnReceive(). Samo wywoĹ‚anie funkcji OnReceive() nie zapewnia jednak dostÄ™pu do odebranej informacji. WĹ‚aĹ›ciwy odczyt wykonuje siÄ™ przy pomocy funkcji Receive(), takĹźe bÄ™dÄ…cej elementem klas CAsyncSocket i CMyAsyncSocket. Jej parametrami sÄ… wskaĹşnik (ang. pointer) do bufora odbiorczego #$ "%' * gdzie odczytana informacja ma zostać umieszczona oraz wymiar tego bufora. Sama funkcja zwraca liczbÄ™ bajtĂłw zapisanych przez niÄ… w buforze odbiorczym. Wspomniano, Ĺźe funkcja OnReceive() jest wykonywana współbieĹźnie z samÄ… aplikacjÄ…. Istnieje wiÄ™c zagroĹźenie, Ĺźe aktualna zawartość bufora odbiorczego #$ "%' * zostanie utracona w wyniku kolejnego uruchomienia OnReceive() zanim aplikacja jÄ… odczyta i zinterpretuje. W przypadku aplikacji omĂłwionych w dalszej części tego artykuĹ‚u problem ten rozwiÄ…zano wykorzystujÄ…c dodatkowy bufor +# 0 #1 "%' * obsĹ‚ugiwany przez dwa indeksy: 3 45 0 #5% i IndeksOdczytu oraz # 6 #4 7 8 # #0. ObsĹ‚uga tego bufora odbywa siÄ™ w nastÄ™pujÄ…cy sposĂłb: Po wykonaniu funkcji Receive() zawartość bufora #$ "%' * zostaje przepisana bajt po bajcie do +# 0 #1 "%' * od komĂłrki o indeksie 3 45 0 #5%, jednoczeĹ›nie zwiÄ™kszajÄ…c 3 45 0 #5% i # 6 #4 7 8 # #0 o liczbÄ™ przepisanych bajtĂłw. Aplikacja odczytuje zawartość +# 0 #1 "%' * od komĂłrki o indeksie IndeksOdczytu jednoczeĹ›nie zwiÄ™kszajÄ…c IndeksOdczytu i zmniejszajÄ…c # 6 #4 7 8 # #0 o liczbÄ™ odczytanych bajtĂłw. ZwiÄ™kszanie obu indeksĂłw 3 45 0 #5% i IndeksOdczytu odbywa siÄ™ do rozmiaru bufora +# 0 #1 "%' *, nastÄ™pnie sÄ… one zerowanie i zliczanie powtarza siÄ™.

\'\' "

Programowe zerwanie poĹ‚Ä…czenia gniazda lokalnego z gniazdem oddalonym nastÄ™puje po wykonaniu funkcji Close(). Jednak w zaleĹźnoĹ›ci od tego czy aplikacja dziaĹ‚a jako serwer czy jako klient jest to wykonywane w róşny sposĂłb. − jeĹ›li aplikacja dziaĹ‚a jako serwer to zerwanie poĹ‚Ä…czenia z klientem nastÄ™puje po wywoĹ‚aniu funkcji AsyncRemoteSocket.Close(). W tym przypadku serwer zrywa poĹ‚Ä…czenie tylko z gniazdem, ktĂłremu odpowiada obiekt AsyncRemoteSocket. Gdyby aplikacja miaĹ‚a takĹźe otwarte poĹ‚Ä…czenie z innym gniazdem, np. opisanym obiektem AsyncRemoteSocket2, to poĹ‚Ä…czenie z nim nadal byĹ‚oby otwarte, − jeĹ›li aplikacja dziaĹ‚a jako klient, to zerwanie poĹ‚Ä…czenia z serwerem nastÄ™puje po wywoĹ‚aniu funkcji AsyncLocalSocket.Close(). W tym przypadku aby powtĂłrnie nawiÄ…zać poĹ‚Ä…czenie z serwerem musi zostać powtĂłrzona sekwencja wykonywana funkcjami Create() i Connect().

\'^' $ " " Oprogramowanie systemowe sygnalizuje nawiÄ…zanie i zerwanie poĹ‚Ä…czenia miÄ™dzy dwoma wspĂłlpracujacymi punktami koĹ„cowymi (gniazdami) w nastÄ™pujÄ…cy sposĂłb: − jeĹ›li aplikacja pracuje jako serwer to nawiÄ…zanie poĹ‚Ä…czenia z klientem jest sygnalizowane wywoĹ‚aniem funkcji AsyncLocalSocket.OnAccept() i dodatkowo wywoĹ‚ywaniem funkcji AsyncRemoteSocket.OnSend().

80

P

O

M

I

A

R

Y

•

A

U

T

O

M

\'}' 7 & " Funkcję OnSend() klas CAsyncSocket i CMyAsyncSocket oprogramowanie systemowe wywołuje jako powiadomienie o moşliwości wysłania informacji do gniazda współpracują-

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


% j = < = cego. SamÄ… transmisjÄ™ inicjuje funkcja Send(), ktĂłrej parametrami sÄ… wskaĹşnik (ang. pointer) do bufora nadawczego *0 59# "%' * zawierajÄ…cego dane oraz liczbÄ™ bajtĂłw do wysĹ‚ania. W momencie wywoĹ‚ania OnSend()aplikacja moĹźe nie mieć Ĺźadnych danych do transmisji, a wiÄ™c doĹ‚Ä…czanie do procedury OnSend() instrukcji Send() wiÄ…Ĺźe siÄ™ ze sprawdzaniem dodatkowych warunkĂłw o aktualnym wypeĹ‚nieniu bufora *0 59# "%' *. Zamiast tego wygodniej jest sterować wysyĹ‚kÄ… informacji poprzez wartość dodatkowej flagi typu BOOL, ktĂłra byĹ‚aby wysterowywana (TRUE) przez funkcjÄ™ OnSend(), a zerowana (FALSE) przez gĹ‚ĂłwnÄ… część aplikcji po instrukcji wywoĹ‚ujÄ…cej Send(). Naturalnie wywoĹ‚anie Send() jest moĹźliwe tylko wtedy, gdy wspomniana flaga ma wartość TRUE i w buforze *0 59# "%' * znajdujÄ… siÄ™ dane do transmisji. TransmisjÄ™ do gniazda współpracujÄ…cego aplikacja moĹźe realizować tylko wtedy, gdy nawiÄ…zano poĹ‚Ä…czenie z docelowym gniazdem oddalonym. W zaleĹźnoĹ›ci od trybu pracy aplikacji róşny jest sposĂłb obsĹ‚ugi tej transmisji: − jeĹ›li aplikacja pracuje jako serwer to moĹźliwość wysyĹ‚ania informacji do klienta sygnalizuje funkcja AsyncRemoteSocket.OnSend(), a samÄ… transmisjÄ™ wykonuje funkcja AsyncRemoteSocket.Send(), − jeĹ›li aplikacja pracuje jako klient to moĹźliwość wysyĹ‚ania informacji do serwera sygnalizuje funkcja AsyncLocalSocket.OnSend(), a samÄ… transmisjÄ™ wykonuje funkcja AsyncLocalSocket.Send(),

^' - ! + ' { " - !

"

W PrzemysĹ‚owym Instytucie Automatyki i PomiarĂłw PIAP zrealizowano kilka aplikacji, ktĂłre wymagaĹ‚y sprzęşenia ze sobÄ… dwĂłch róşnych urzÄ…dzeĹ„ za pomocÄ… sieci Ethernet. JednÄ…

z nich byĹ‚a praca, gdzie punktami koĹ„cowymi byĹ‚ robot ABB i kamera wizyjna firmy Sick [8]. W trakcie realizacji podobnych aplikacji czÄ™stym problemem jest uruchomienie samej transmisji, poniewaĹź w przypadku gdy dziaĹ‚a ona niewĹ‚aĹ›ciwie zazwyczaj nie od razu wiadomo, ktĂłrego urzÄ…dzenia to dotyczy i jakie bĹ‚Ä™dy sÄ… tego przyczynÄ…. DobrÄ… praktykÄ… jest kolejne zastÄ™powanie jednego z urzÄ…dzeĹ„ komputerem PC z poprawnie dziaĹ‚ajÄ…cÄ… aplikacjÄ… sieciowÄ… i przy jej pomocy uruchomienie transmisji na drugim urzÄ…dzeniu. W zwiÄ…zku z tym przydatna jest uniwersalna aplikacja, ktĂłrÄ… moĹźna testować transmisjÄ™ sieciowÄ… miÄ™dzy komputerem a urzÄ…dzeniem zewnÄ™trznym takim jak sterownik robota, kamera wizyjna lub drugi komputer. Aplikacja taka powinna mieć moĹźliwość zamiennej pracy jako serwer i jako klient, a jej kod byĹ‚by wzorcem do realizacji innych programĂłw uĹźytkowych, np. monitorujÄ…cych stan robota. TakÄ… aplikacjÄ… jest EthernetTest.exe, wykorzystujÄ…ca elementy klasy CMyAsyncSocket. Jej gĹ‚Ăłwne okno dialogowe przedstawiono na rysunku 1. Aplikacja dziaĹ‚a w nastÄ™pujÄ…cy sposĂłb: − po uruchomieniu analizowany jest doĹ‚Ä…czony tekstowy plik konfiguracyjny. Zawiera on m.in. informacje o adresie sieciowym i numerze portu komputera, na ktĂłrym uruchomiono aplikacjÄ™, a takĹźe te same informacje dotyczÄ…ce urzÄ…dzenia współpracujÄ…cego (drugiego komputera lub robota). W pliku konfiguracyjnym jest takĹźe informacja, czy aplikacja ma dziaĹ‚ać jako serwer lub jako klient. Wspomniane parametry mogÄ… być zmieniane z poziomu samej aplikacji (przyciski „Dane local socketâ€? i „Dane remote socketâ€?, „Praca w trybie SERVERâ€?, „Praca w trybie CLIENT)â€?). − po wyĹ›wietleniu okna dialogowego przyciskiem „Create local socketâ€? naleĹźy zdefiniować gniazdo, − jeĹ›li aplikacja ma dziaĹ‚ać jako serwer, to naleĹźy jÄ… ustawić w tryb nasĹ‚uchu kanaĹ‚u transmisyjnego przy pomocy przycisku „LISTEN by local socketâ€?. PoĹ‚Ä…czenie bÄ™dzie nawiÄ…zane, jeĹ›li na urzÄ…dzeniu współpracujÄ…cym zostanie wykonana funkcja Connect, − jeĹ›li aplikacja ma dziaĹ‚ać jako klient, to naleĹźy wybrać przycisk „CONNECT to remote socketâ€?. PoĹ‚Ä…czenie bÄ™dzie

Rys. 1. Główne okno dialogowe aplikacji EthernetTest.exe do testowania transmisji siecią Ethernet między komputerem PC a dowolnym urządzeniem zewnętrznym (np. robotem) Fig. 1. The main dialog window of the EthernetTest.exe application for testing Ethernet transmission between a PC and any external device (e.g. a robot)

81


" ' 8 " 8 % 8 %= v • Nowa linia – jego wybranie spowoduje rozpoczÄ™cie wyĹ›wietlania od nowego wiersza, • Display char – odebrana informacja bÄ™dzie wyĹ›wietlana w postaci znakowej, • Display hex – odebrana informacja bÄ™dzie wyĹ›wietlana w postaci kodĂłw hexadecymalnych poszczegĂłlnych znakĂłw, • Start zapisu do pliku – odebrana informacja bÄ™dzie dodatkowo zapisywana do pliku zgodnie z wybranym formatem zapisu, tj. znakowo albo jako kod hexadecymalny poszczegĂłlnych znakĂłw, • Stop zapisu do pliku – zatrzymanie zapisu do pliku odbieranej informacji. Okienko 16: − informacja wysyĹ‚ana do urzÄ…dzenia zewnÄ™trznego, np. do robota. MoĹźe być ona wyĹ›wietlana w postaci znakowej lub jako kody hexadecymalne poszczegĂłlnych znakĂłw. Pod okienkiem umieszczono pięć przyciskĂłw: • Kasuj okno – jego wybranie spowoduje wyczyszczenie zawartoĹ›ci okienka, • Nowa linia – jego wybranie powoduje, Ĺźe wyĹ›wietlanie informacja rozpocznie siÄ™ od nowego wiersza, • Test – aplikacja bÄ™dzie automatycznie wysyĹ‚aĹ‚a ciÄ…g znakowy jak poniĹźej: 123456789 123456789 123456789 123456789 123456789 12345 23456789 123456789 123456789 123456789 123456789 12345 3456789 123456789 123456789 123456789 123456789 12345 1 ........................................ ............... 9 123456789 123456789 123456789 123456789 123456789 123 123456789 123456789 123456789 123456789 123456789 1234 123456789 123456789 123456789 123456789 123456789 12345 Test ten jest wykonywany w sposĂłb ciÄ…gĹ‚y do monentu aĹź zostaje zakoĹ„czony przez operatora przez wybranie przycisku funkcyjnego • WyĹ›lij plik – jego wybranie spowoduje otwarcie okienka dialogowego do wskazania pliku, ktĂłrego zawartość zostanie wysĹ‚ana do urzÄ…dzenia zewnÄ™trznego. • Retransmisja – informacja odbierana z urzÄ…dzenia zewnÄ™trznego jest wysyĹ‚ana do nadawcy. Test ten jest wykonywany w sposĂłb ciÄ…gĹ‚y do monentu aĹź zostaje zakoĹ„czony przez operatora poprzez wybranie przycisku funkcyjnego

nawiÄ…zane, jeĹ›li uprzednio urzÄ…dzenie współpracujÄ…ce zostanie ustawione w stan nasĹ‚uchu Listen. − po nawiÄ…zaniu poĹ‚Ä…czenia caĹ‚a odbierana informacja bÄ™dzie wyĹ›wietlana w okienku nr 15. Aby wysĹ‚ać informacjÄ™ naleĹźy wybrać kursorem myszy okienko nr 16, a nastÄ™pnie posĹ‚uĹźyć siÄ™ klawiaturÄ…. MoĹźliwe jest takĹźe wysyĹ‚anie informacji generowanej przez samÄ… aplikacjÄ™, wysyĹ‚anie informacji odczytanej z pliku tekstowego lub w trybie retransmisji, tzn. to co zostaje odebrane, jest wysyĹ‚ane do nadawcy. − przycisk „CLOSE local socketâ€? bez wzglÄ™du na wybrany tryb pracy aplikacji zamyka poĹ‚Ä…czenie. Dla uĹ‚atwienia obsĹ‚ugi niektĂłre przyciski sÄ… blokowane, jeĹ›li w danym trybie pracy aplikacji funkcje uruchamiane tymi przyciskami sÄ… niedostÄ™pne (np. blokowanie przycisku „LISTEN by local socketâ€?, jeĹ›li aplikacja pracuje jako klient). Okienko 1: − komunikaty informacyjne dla operatora wyĹ›wietlane przez aplikacjÄ™ EthernetTest.exe Okienko 2: − komunikat o aktualnym stanie aplikacji EthernetTest.exe Okienko 3: − odczyt wskazaĹ„ zegara komputera na ktĂłrym pracuje aplikacja EthernetTest.exe Okienko 4: − numer podstanu aplikacji EthernetTest.exe Okienko 5: − odczyt wskazaĹ„ kalendarza komputera, na ktĂłrym pracuje aplikacja EthernetTest.exe Okienko 6: − informacja o stanie poĹ‚Ä…czenia komputera PC z urzÄ…dzeniem zewnÄ™trznym (np. z robotem) Okienko 7: − adres sieciowy komputera PC Okienko 8: − numer portu komputera PC Okienko 9: − adres sieciowy zewnÄ™trznego urzÄ…dzenia współpracujÄ…cego (np. robota) Okienko 10: − numer portu zewnÄ™trznego urzÄ…dzenia współpracujÄ…cego (robota) Okienko 11: − wybrany tryb pracy aplikacji EthernetTest.exe (serwer lub klient) Okienko 12: − informacja, czy utworzono kanaĹ‚ transmisyjny do urzÄ…dzenia zewnÄ™trznego (robota) Okienko 13: − komunikat wygenerowany przez ostatniÄ… wykonanÄ… funkcjÄ™ bÄ™dÄ…cÄ… elementem obiektu lokalnego. Funkcja ta jest automatycznie uruchamiana przez oprogramowanie systemowe (dotyczy szeĹ›ciu funkcji: AsyncLocalSocket.OnFunction()) Okienko 14: − komunikat wygenerowany przez ostatniÄ… wykonanÄ… funkcjÄ™ bÄ™dÄ…cÄ… elementem obiektu oddalonego. Funkcja ta jest automatycznie uruchamiana przez oprogramowanie systemowe (dotyczy szeĹ›ciu funkcji: AsyncRemoteSocket.OnFunction()) Okienko 15: − informacja odebrana z urzÄ…dzenia zewnÄ™trznego, np. z robota. MoĹźe być ona wyĹ›wietlana w postaci znakowej lub jako kody hexadecymalne poszczegĂłlnych znakĂłw. Pod okienkiem umieszczono pięć przyciskĂłw: • Kasuj okno – jego wybranie spowoduje wyczyszczenie zawartoĹ›ci okienka,

82

P

O

M

I

A

R

Y

•

A

U

T

O

M

Aplikacja EthernetTest.exe moşe wspólpracować z oprogramowaniem robota KUKA opisanym ponişej. Jednak nie zawiera ona fragmentów kodu słuşącego do interpretacji informacji zawartych w przesyłkach z robota, a więc jej działanie ogranicza się tylko do wyświetlenia w okienku nr 15 zawartości przesyłek. Na podstawie tej aplikacji wykonano program EthernetRobot.exe interpretujący przesyłki z robota, ale uboşszy w zakresie funkcjonalności transmisji sieciowej. Program ten opisano w dalszej części tej publikacji.

|' #

PIAP dysponuje trzema obotami firmy KUKA: jednym z ukĹ‚adem sterowania KRC2 i dwoma z ukĹ‚adem sterowania KRC4. Bez wzglÄ™du na ukĹ‚ad sterowania sposĂłb programowania tych robotĂłw jest jednakowy. UkĹ‚ady te róşniÄ… siÄ™ jednak zasobami bibliotecznymi jakie sÄ… do dyspozycji programisty. A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


% j = < = − ukĹ‚ad KRC2 zawiera pojedynczy interfejs RS-232 i pojedynczy port Ethernet, ale aby byĹ‚o moĹźliwe wykorzystanie portu Ethernet, to dodatkowo naleĹźy osadzić w sterowniku robota pakiet oprogramowania do jego obsĹ‚ugi, − ukĹ‚ad KRC4 nie zawiera interfejsu RS-232, ale standardowo zostaĹ‚ wyposaĹźony w dwa porty Ethernet oznaczone jako KLI i KONI. Port KLI jest wykorzystywany do współpracy z oprogramowaniem Kuka WorkVisual przeznaczonym do konfigurowania i tworzenia aplikacji na zewnÄ™trznym komputerze PC. Dlatego oprogramowanie systemowe robota zawiera wszystkie funkcje biblioteczne zawarte w pakiecie o nazwie EKI (ang. Ethernet KRL Interface) pozwalajÄ…ce na wymianÄ™ informacji z dowolnym urzÄ…dzeniem zewnÄ™trznym przy pomocy sieci Ethernet i protokoĹ‚u TCP/IP. Na temat portu KONI autorzy pracy nie znaleĹşli Ĺźadnych informacji w dostÄ™pnych dla nich podrÄ™cznikach firmy KUKA. Z wymienionych powodĂłw do realizacji tej pracy wybrano jeden z robotĂłw z ukĹ‚adem sterowania KRC4, a jako port transmisyjny wykorzystano zĹ‚Ä…cze KLI. Ten ostatni wybĂłr narzuciĹ‚ jednak pewne ograniczenie. Aby oprogramowanie systemowe robota mogĹ‚o współpracować z oprogramowaniem Kuka WorkVisual port ten musi mieć ustawiony sieciowy adres IP i numer portu ze Ĺ›cisle okreĹ›lonego zakresu, a dowolna inna aplikacja komputera PC współpracujÄ…ca z robotem powinna uwzglÄ™dniać te ustawienia. Przy pomocy panelu programowania robota moĹźna modyfikować parametry poza narzucony zakres w sposĂłb „wygodnyâ€? dla innej aplikacji, ale wtedy nie ma moĹźliwoĹ›ci korzystania z pakietu Kuka WorkVisual. W trakcie realizacji pracy okazaĹ‚o siÄ™, Ĺźe na zewnÄ™trznym komputerze obie aplikacje, tj. Kuka WorkVisual i program zrealizowany w ramach tej pracy mogÄ… pracować współbieĹźnie i bezkonfliktowo.

|']'

! # Oprogramowanie aplikacyjne robotĂłw Kuka tworzy siÄ™ w jÄ™zyku KRL (ang. Kuka Robot Language). Jak kaĹźdy jÄ™zyk wysokiego poziomu w swojej skĹ‚adni zawiera on definicje czterech podstawowych typĂłw danych: − INT – jest to typ danych o dĹ‚ugoĹ›ci 2 bajtĂłw do definiowania zmiennych typu liczba caĹ‚kowita ze znakiem, − REAL – jest to typ danych o dĹ‚ugoĹ›ci 4 bajtĂłw do definiowania zmiennych typu liczba zmiennoprzecinkowa, − BOOL – jest to typ danych o dĹ‚ugoĹ›ci 1 bajtu do definiowania zmiennych logicznych o wartoĹ›ciach TRUE lub FALSE, − CHAR – jest typ danych o dĹ‚ugoĹ›ci 1 bajtu do definiowania zmiennych „znakowychâ€?. WykorzystujÄ…c te cztery podstawowe typy danych moĹźna definiować tablice wielowymiarowe i zmienne typu „strukturaâ€?, ktĂłre najczęściej wykorzystuje siÄ™ do: − zdefiniowania poĹ‚oĹźenia osi manipulatora: STRUC AXIS REAL A1,A2,A3,A4,A5,A6 STRUC E6AXIS REAL A1,A2,A3,A4,A5,A6, E1,E2,E3,E4,E5,E6 Oba wymienione w tym podpunkcie typy zmiennych zawierajÄ… informacje, jakie sÄ… poĹ‚oĹźenia poszczegĂłlnych osi manipulatora (w stopniach), aby robot znalazĹ‚ siÄ™ w okreĹ›lonym poĹ‚oĹźeniu. Nie ma tutaj odwoĹ‚ania do Ĺźadnego ukĹ‚adu współrzÄ™dnych prostokÄ…tnych i do Ĺźadnego narzÄ™dzia. Typ E6AXIS jest rozszerzeniem typu AXIS i odnosi siÄ™ do przypadku, kiedy robot zawiera od 1 do 6 dodatkowych osi zewnÄ™trznych zwiÄ…zanych, np. z torem jezdnym. − poĹ‚oĹźenia punktu TCP w wybranym ukĹ‚adzie współrzÄ™dnych prostokÄ…tnych: Z[ [ [ ["[ [ [ \ Z[ [ [ ["[ [ ][ ^[ E3,E4,E5,E6, INT S,T

Oba wymienione w tym podpunkcie typy zmiennych zawierajÄ… informacje o współrzÄ™dnych punktu TCP i orientacji narzÄ™dzia w wybranym ukĹ‚adzie współrzÄ™dnych prostokÄ…tnych. Typ E6POS jest rozszerzeniem typu POS i odnosi siÄ™ do przypadku, kiedy robot zawiera od 1 do 6 dodatkowych osi zewnÄ™trznych zwiÄ…zanych, np. z torem jezdnym. UkĹ‚ad sterowania robota KUKA i jÄ™zyk KRL zapewniajÄ… dostÄ™p do tzw. zmiennych systemowych. Zmienne te sÄ… dostÄ™pne w trybie programowania „expertâ€? i umoĹźliwiajÄ… zintegrowanie programu aplikacyjnego robota z informacjami dostÄ™pnymi w jego ukĹ‚adzie sterowania. Przy ich pomocy moĹźliwy jest m.in. odczyt aktualnej pozycji robota, odczyt aktualnych pozycji kaĹźdej z osi, odczyt aktualnych wartoĹ›ci prÄ™dkoĹ›ci i przyspieszeĹ„ oraz informacji o tym czy robot znajduje siÄ™ w pozycji HOME. W jÄ™zyku KRL nazwy zmiennych systemowych rozpoczynajÄ… siÄ™ od znaku „$â€?. PeĹ‚nÄ… listÄ™ zmiennych systemowych wraz z ich opisem moĹźna znaleźć w [4]. W artykule przedstawiono podstawowe informacje na temat zmiennych, ktĂłre wykorzystano przy realizacji pracy. Zmiennymi tymi sÄ…: − zmienna $AXIS_ACT typu E6AXIS zawierajÄ…ca informacjÄ™ o aktualnym poĹ‚oĹźeniu w stopniach wszystkich osi manipulatora. Pozwala ona na przyporzÄ…dkowanie informacji o poĹ‚oĹźeniu osi do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu E6AXIS: E6AXIS _AxisPos ; deklaracja zmiennej _AxisPos _AxisPos = $AXIS_ACT ; przyporzÄ…dkowanie − zmienna $H_POS typu E6AXIS zawierajÄ…ca informacjÄ™ o poĹ‚oĹźeniu w stopniach wszystkich osi manipulatora znajdujÄ…cego siÄ™ w wyjĹ›ciowej pozycji HOME. Pozwala ona na przyporzÄ…dkowanie informacji o poĹ‚oĹźeniu osi robota znajdujÄ…cego siÄ™ w pozycji HOME do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu E6AXIS: E6AXIS _HomePos ; deklaracja zmiennej _HomePos _HomePos = $H_POS ; instrukcja przyporzÄ…dkowania − zmienna $POS_ACT typu E6POS zawierajÄ…ca informacjÄ™ o współrzÄ™dnych punktu TCP i orientacji wybranego narzÄ™dzia w wybranym ukĹ‚adzie współrzÄ™dnych prostokÄ…tnych. Pozwala ona na przyporzÄ…dkowanie tej informacji do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu E6POS: E6AXIS _CartesianPos ; deklaracja zmiennej _CartesianPos CartesianPos = $POSACT ; przyporzÄ…dkowanie − zmienna $ACT_BASE typu INT zawierajÄ…ca informacjÄ™ o numerze aktualnie wybranego ukĹ‚adu współrzÄ™dnych. Pozwala ona na przyporzÄ…dkowanie tej informacji do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu INT: INT _NrUkladu ; deklaracja zmiennej _NrUkladu _NrUkladu = $ACT_BASE ; przyporzÄ…dkowanie − zmienna $ACT_TOOL typu INT zawierajÄ…ca informacjÄ™ o numerze aktualnie wybranego narzÄ™dzia. Pozwala ona na przyporzÄ…dkowanie tej informacji do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu INT: INT _NrNarzedzia ; deklaracja zmiennej _NrNarzedzia _NrNarzedzia = $ACT_TOOL ; przyporzÄ…dkowanie − zmienna $PHGTEMP typu INT zawierajÄ…ca informacjÄ™ o aktualnej temperaturze we wnÄ™trzu szafy sterowniczej robota. Pozwala ona na przyporzÄ…dkowanie tej informacji do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu INT: ! 9 ; deklaracja zmiennej ! 9 ! 9 j q |~ ; przyporzÄ…dkowanie − zmienna $MOVE_OP typu ENUM (typ wyliczeniowy) okreĹ›lajÄ…ca aktualny tryb pracy robota: T1, T2, AUT, EX:

83


" ' 8 " 8 % 8 %= v Zawartość pliku „ % 0� ! +# Ž�9+� zamieszczono ponişej:

SWITCH $MODE_OP CASE #T1 ; → robot jest w trybie testowym T1 CASE #T2 ; → robot jest w trybie testowym T1 CASE #AUT ; → robot jest w trybie automatyki AUT CASE #EX ; → robot jest w trybie zewnÄ™trznej automatyki EXT DEFAULT ; →  robot jest w nieokreĹ›lonym trybie pracy (bĹ‚Ä…d) ENDSWITCH − zmienna $IN_HOME typu SIGNAL (lub BOOL) okreĹ›lajÄ…ca czy manipulator robota znajduje siÄ™ w wyjĹ›ciowej pozycji HOME: IF ($IN_HOME == TRUE) THEN ; → manipulator robota jest w pozycji HOME ELSE ; → manipulator robota nie jest w pozycji HOME ENDIF − zmienna $MOVE_ENABLE typu SIGNAL (lub BOOL) okreĹ›lajÄ…ca czy manipulator robota ma zezwolenie na ruch: IF ($MOVE_ENABLE == TRUE) THEN ; → manipulator robota ma zezwolenie na ruch ELSE ; → manipulator robota nie ma zezwolenia na ruch ENDIF − zmienna $ROBTRAFO[32] bÄ™dÄ…ca tablicÄ… 32-wymiarowÄ… typu CHAR zawierajcÄ… nazwÄ™ robota: CHAR _RobotName[32] ; deklaracja zmiennej _RobotName _RobotName = $ROBTRAFO[] ; przyporzÄ…dkowanie Dodatkowo w pliku konfiguracyjnym umieszczono deklaracjÄ™ 50-elementowej tablicy typu CHAR o nazwie UserMessage[50] i „wstÄ™pnieâ€? przyporzÄ…dkowano jej tekst ƒ ~ „: DECL CHAR UserMessage[50] 5 * 550Â… †‡j„ ~ „

‘’�9+ $ *5#1 j„]Ž“„ 13# …j„% ”•]\„’– ‘ | – ‘ ~ – ‘ Z – ‘ –]—^Ž]\˜Ž]“Ž]“™‘ – ‘ –™““““‘ – ‘ Z – ‘ – ‘ š – *1…*09‘ š – ‘ ~ #5 +07j„3#50Š+ 3„ 1……# …j„3#50Š+ 3„ – ‘ š ! +0…j„———„ # …j„]“„ – ‘" ~ #9# j„]„ – ‘ – ‘ ~ – ‘ š – ‘Z – ‘ 0…j„ › 7 „ 7 j„ ~„ – ‘ 0…j„ *„ 7 j„ ~„ – ‘ 0…j„ „ 7 j„ „ – ‘ 0…j„ 13 › „ 7 j„ „ – ‘ 0…j„ „ ! +0…j„——˜„ – ‘ Z – ‘ š – ‘ – ‘ – ‘ 0…j„"%' *„ 7 j„ ~„ – ‘ – ‘ – ‘ | –

Tablica UserMessage[50] została zadeklarowana jako zmienna o zasięgu GLOBAL, a więc jest dostępna z dowolnego programu aplikacyjnego robota. W związku z tym kaşda taka aplikacja moşe umieszczać w niej swój dowolny tekst, ale nie dłuşszy niş 50 znaków.

W pliku tym moĹźna wyróşnić trzy sekcje: 1. Sekcja ‘ ~ – ‘ ~ – zawierajÄ…ca informacje o adresie IP i numerze portu urzÄ…dzenia współpracujÄ…cego. PrzyjÄ™to, Ĺźe urzÄ…dzenie współpracujÄ…ce bÄ™dzie pracowaĹ‚o w trybie SERVER (sterownik robota jest klientem), w zwiazku z tym w pliku konfiguracyjnym zgodnie z opisem zawartym w [5] pominiÄ™to sekcjÄ™ ‘ – ‘ –. NaleĹźy takĹźe zwrĂłcić uwagÄ™ na polecenie ‘ š – zawarte w sekcji ‘ –. OkreĹ›la ona numer flagi (w tym przypadku jest to flaga $FLAG[999]), ktĂłra zostaje automatycznie wysterowana przez oprogramowanie systemowe robota (wartość TRUE), jeĹ›li istnieje poĹ‚Ä…czenie z urzÄ…dzeniem zewnÄ™trznym. Parametr Ping okreĹ›la interwaĹ‚ czasowy w sekundach miÄ™dzy wysĹ‚aniem kolejnego „pinguâ€? monitorujacego poĹ‚Ä…czenie z urzÄ…dzeniem zewnÄ™trznym. 2. Sekcja ‘ š – ‘ š – zawierajÄ…ca informacje o formacie przesyĹ‚ek odbieranych przez robota z urzÄ…dzenia zewnÄ™trznego. W przykĹ‚adowym oprogramowaniu wykonanym w ramach tej pracy przyjÄ™to, Ĺźe urzÄ…dzenie zewnÄ™trzne (w tym przypadku komputer PC) nie bÄ™dzie wysyĹ‚aĹ‚ do robota Ĺźadnej informacji, wiÄ™c informacja zawarta w tej sekcji moĹźe być dowolna, pod warunkiem zachowania jej formalnej poprawnoĹ›ci. 3. Sekcja ‘ – ‘ – zawierajÄ…ca informacje o formacie przesyĹ‚ek z robota do urzÄ…dzenia zewnetrznego. PrzyjÄ™to, Ĺźe robot bÄ™dzie wysyĹ‚aĹ‚ informacjÄ™ w postaci zbu-

|'X' & -32 Aby byĹ‚a moĹźliwa wymiana informacji miÄ™dzy robotem a urzÄ…dzeniem zewnÄ™trznym za pomocÄ… sieci Ethernet i protokoĹ‚u TCP/IP naleĹźy uporzednio skonfigurować poĹ‚Ä…czenie sieciowe i okreĹ›lić format kodowania tej informacji [5]. Odpowiedni plik konfiguracyjny w formacie .XML pod dowolnÄ… nazwÄ… obligatoryjnie musi znajdować siÄ™ w pamiÄ™ci masowej robota w katalogu: ˆ‰ ‰ 1Š1 *‰ 1 ‹…‰ 5 *‰ 1991 ‰ ÂŒ * W katalogu tym moĹźna zapisać wiele plikĂłw konfiguracyjnych. O tym, ktĂłry z nich bÄ™dzie wykorzystany decyduje parametr funkcji bibliotecznej ! # inicjujÄ…cej w programie aplikacyjnym transmisjÄ™. Parametrem tym jest nazwa pliku konfiguracyjnego. W przykĹ‚adowym oprogramowaniu dla robota, wykonanym na potrzeby tej pracy, plikiem konfiguracyjnym jest plik o nazwie „ % 0Â? ! +# ÂŽÂ?9+â€?, a odpowiednie wywoĹ‚anie funkcji ! # ma postać: ! ! ‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ j ! # ƒ % 0Â? ! +# „ gdzie _RET jest zmiennÄ… typu ! pod ktĂłrÄ… zostanie podstawiona wartość zwracana przez funkcjÄ™ ! # .

84

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


% j = < = forowanego ciÄ…gu znakowego (‘ 0Â…j„"%' *„ 2. Start podprogramu: 7 j„ ~„ –) Program wykorzystuje timer $TIMER[12] do odliczania 200 milisekundowych interwaĹ‚Ăłw czasowych miÄ™dzy wysĹ‚a|'[' _ # " niem kolejnego pakietu przesyĹ‚ek. JeĹ›li $TIMER[12] zliczyĹ‚ 200 ms, to jest powtĂłrnie uruchamiany, a nastÄ™pnie Na potrzeby realizacji tej pracy przyjÄ™to nastÄ™pujÄ…ce zaĹ‚oĹźenia sprawdzany jest stan flagi $FLAG[999]. Wartość tej flagi, co do formatu przesyĹ‚ek generowanych przez robota: zgodnie z deklaracjÄ… zawartÄ… w pliku konfiguracyjnym − kaĹźda przesyĹ‚ka ma format tekstowy i skĹ‚ada siÄ™ z ciÄ…gu znaDunajEKI_Client.xml, okreĹ›la czy otwarty jest kanaĹ‚ kĂłw ASCII o kodach od 0x20 (spacja) do 0x7E (znak „~â€?), transmisyjny miÄ™dzy robotem a urzÄ…dzeniem zewnÄ™trznym. − kaĹźda przesyĹ‚ka rozpoczyna siÄ™ od znaku „[â€? a koĹ„czy W przypadku, gdy kanaĹ‚ jest zamkniÄ™ty, tzn. jeĹ›li wartość flagi $FLAG[999] jest rĂłwna FALSE, podprogram w pÄ™tli znakiem „]â€?. Dodatkowo po znaku wyznaczajacym koniec przesyĹ‚ki do bufora nadawczego dodawane sÄ… dwa znaki: kolejno inicjuje jego otwarcie (funkcja EKI_Init („Dunacarriage return o kodzie hexadecymalnym 0x0D jEKI_Clientâ€?). ZakoĹ„czenie pÄ™tli programowej nastÄ™i line feed o kodzie haexadecymalnym 0x0A. Znaki te puje albo po otwarciu kanaĹ‚u, albo po zliczeniu przez nie sÄ… interpretowane przez program aplikacyjny komputera, $TIMER[12] 200 ms. W tym drugim uznaje siÄ™, Ĺźe nie ma zostaĹ‚y dodane po to, aby uĹ‚atwić wyĹ›wietlanie odebranych moĹźliwoĹ›ci otwarcia kanaĹ‚u transmisyjnego do urzÄ…dzenia zewnÄ™trznego i podprogram koĹ„czy dziaĹ‚anie. przesyĹ‚ek lub ich rejestracje do pliku tekstowego podczas uruchamiania oprogramowania. IF ($TIMER_FLAG[12] == TRUE) OR − po znaku „[â€? rozpoczynajÄ…cym przesyĹ‚kÄ™ wystÄ™puje dwuli($TIMER_STOP[12] == TRUE) THEN terowy kod przesyĹ‚ki, a nastÄ™pnie ciÄ…g znakowy z informacjÄ… $TIMER [12] = -200 stanowiÄ…cÄ… „zawartośćâ€? przesyĹ‚ki. $TIMER_STOP [12] = FALSE − formatowanie przesyĹ‚ek odbywa siÄ™ w buforze nadawczym zadeklarowanym jako 64-wymiarowa tablica znakowa: IF $FLAG[999] == FALSE THEN | !"%' *†\Â?‡ ! j ! # Â&#x; % 0Â? ! +# „ − przed wpisaniem przesyĹ‚ki do bufora nadawczego jego zawarWHILE $FLAG[999] == FALSE tość jest kasowana poprzez jego wypeĹ‚nienie znakami o kodzie ! j ! Â&#x; % 0Â? ! +# „ hexadecymalnym 0x00: IF ($TIMER_FLAG[12] == TRUE) THEN INT _IDX ! j ! +15 Â&#x; % 0Â? ! +# „ ........ ! j ! + 0* Â&#x; % 0Â? ! +# „ FOR _IDX=1 TO 64 GOTO THE_END "%' * † Z‡ j “ž ENDIF ENDFOR ENDWHILE − do formatowania przesyĹ‚ek najczęściej jest wykorzystywana ENDIF instrukcja SWRITE. Format tej instrukcji oraz sposĂłb jej wykorzystania opisano w [7]. − wysĹ‚anie zawartoĹ›ci bufora jest realizowane funkcjÄ… biblioJeĹ›li timer $TIMER[12] zliczyĹ‚ 200 ms i wartość flagi tecznÄ… ! 3 o nastÄ™pujÄ…cym formacie: $FLAG[999] wynosi TRUE, to moĹźna realizować transmi ! ! sjÄ™ przesyĹ‚ek do urzÄ…dzenia zewnÄ™trznego ........ 3. Podstawienie pod zmienne pomocnicze _CR i _NL war! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž toĹ›ci odpowiednio: 0x0D (carriage return) i 0x0A gdzie pierwszy parametr „ % 0Â? ! +# â€? okreĹ›la (line feed) nazwÄ™ pliku konfiguracyjnego, drugi parametr „!"%' *†‡â€? _CR = 13 – nazwÄ™ bufora nadawczego _NL = 10

|'\' $ ˆ$ 2 & ` - ! †‡‰ "

W rozdziale o zmiennych systemowych robota opisano, w jaki sposĂłb moĹźna odczytywać informacjÄ™ o róşnych stanach robota KUKA. W tym punkcie opisano jak informacja ta jest formatowana i transmitowana do urzÄ…dzenia zewnÄ™trznego. 1. PoczÄ…tek podprogramu: Deklaracje uĹźywanych zmiennych: DECL CHAR _CR DECL CHAR _NL | !"%' *†\Â?‡ DECL CHAR _RobotName[32] DECL INT _NrNarzedzia DECL INT _NrUkladu ! 9 DECL INT _IDX ! '5 DECL E6AXIS _AxisPos DECL E6AXIS _HomePos DECL E6POS _CartesianPos ! ! DECL STATE_T _State

4. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej nazwÄ™ robota. PrzesyĹ‚ka ma format: [NRxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] gdzie parametr „xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxâ€? okreĹ›lajÄ…cy nazwÄ™ robota jest ustalany na podstawie odczytu zmiennej systemowej $ROBTRAFO[]: _RobotName[] = $ROBTRAFO[] ; → Tablica ROBTRAFO ma wymiar 32 ! '5 j “ž !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;†  5‡  „[! 1Š1 09 †‡[! [! ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž 5. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej dwie informacje: − o ustawieniu manipulatora robota w pozycji HOME, − o ustawionym zezwoleniu na ruch manipulatora. PrzesyĹ‚ka ma format: [FLxy] gdzie:

85


" ' 8 " 8 % 8 %= v PrzesyĹ‚ka ma format: [DAxxxx:yyyy:zzzz] gdzie: − „xxxxâ€? jest informacjÄ… o numerze aktualnie wybranego ukĹ‚adu współrzÄ™dnych prostokÄ…tnych, − „yyyyâ€? jest informacjÄ… o numerze aktualnie wybranego narzÄ™dzia, − „zzzzâ€? jest informacjÄ… o tempreraturze we wnÄ™trzu szafy sterowniczej KCP robota, Parametry te sÄ… 4-cyfrowymi liczbami dziesiÄ™tnymi z zerami wiodÄ…cymi, oddzielonymi od siebie dwukropkiem. Ich wartoĹ›ci sÄ… ustalane na podstawie odczytu zmiennych systemowych $ACT_BASE, $ACT_TOOL i $PHGTEMP: _NrUkladu = $ACT_BASE _NrNarzedzia = $ACT_TOOL ! 9 j q |~ ! '5 j “ž !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;†  ¼Â“Â?3ˆ ¼Â“Â?3ˆ ¼Â“Â?3‡  Â„[ ! * 4+03%[ ! * 0*6 36#0[ ! 9 [ _CR, _NL) ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž

− x jest informacjÄ… Ĺźe manipulator jest w pozycji HOME (]• , 0–NIE) − y jest informacjÄ…, Ĺźe jest zezwolenie na ruch manipulatora (]• , 0–NIE) WartoĹ›ci tych parametrĂłw sÄ… ustalane na podstawie odczytu zmiennych systemowych $IN_HOME i $MOVE_ENABLE: !"%' *†]‡ j Â&#x;†Â&#x; !"%' *†^‡ j Â&#x; „ !"%' *†¢Â‡ j Â&#x; „ IF ($IN_HOME == TRUE) THEN !"%' *†Â?‡ j Â&#x;]„ ELSE !"%' *†Â?‡ j Â&#x;“„ ENDIF IF ($MOVE_ENABLE == TRUE) THEN !"%' *†™‡ j Â&#x;]„ ELSE !"%' *†™‡ j Â&#x;“„ ENDIF !"%' *†\‡ j Â&#x;‡„ !"%' *†£‡ j ! !"%' *†˜‡ j ! ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž

Jeśli odczytana wartość zmiennej systemowej $ACT_BASE lub/i $ACT_TOOL jest ujemna, to oznacza, şe nie wybrano şadnego układu współrzędnych prostokątnych lub/i nie wybrano şadnego narzędzia.

6. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej informacjÄ™ o wybranym trybie pracy robota. PrzesyĹ‚ka ma format: [MOxxxxxxx] gdzie tekstowy parametr „xxxxxxxâ€? o zmiennej dĹ‚ugoĹ›ci moĹźe mieć nastÄ™pujace wartoĹ›ci: − „T1â€? – robot jest w testowym trybie pracy T1, − „T2â€? – robot jest w testowym trybie pracy T2, − „AUTâ€? – robot jest w trybie automatyki, − „EXT_AUTâ€? – robot jest w trybie zewnÄ™trznej autoamtyki (sterowanie przez PLC), − „???â€? – bĹ‚Ä…d.

8. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej informacjÄ™ o poĹ‚oĹźeniu punktu TCP i kÄ…tach orientacji aktualnie wybranego narzÄ™dzia w aktuualnie wybranym ukĹ‚adzie współrzÄ™dnych prostokÄ…tnych. PrzesyĹ‚ka ma format: † Âąxxxx.xxx:Âąyyyy.yyy:Âązzzz.zzz:Âąaaaa. aaa:Âąbbbb.bbb:Âącccc.ccc] gdzie: − Âą oznacza znak liczby, − xxxx.xxx – wartość współrzÄ™dnej X, − yyyy.yyy – wartość współrzÄ™dnej , − zzzz.zzz – wartość współrzÄ™dnej , − aaaa.aaa – wartość kÄ…ta A, − bbbb.bbb – wartość kÄ…ta B, − cccc.ccc – wartość kÄ…ta C. Wszystkie parametry, oddzielone od siebie dwukropkiem, sÄ… 8-cyfrowymi liczbami zmiennoprzecinkowymi ze znakiem, kropkÄ… dziesiÄ™tnÄ… i zerami wiodÄ…cymi. Ich wartoĹ›ci ustala siÄ™ na podstawie odczytu zmiennej systemowej $POS_ACT: ! * 4+03% – “ 0 3 ! * 0*6 36#0 – “ | _CartesianPos = $POS_ACT ! '5 j “ž !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;†  ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ  ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”‡   Â„[ ! 0* 5#0 15ÂŽZ[ ! 0* 5#0 15ÂŽ [ ! 0* 5#0 15ÂŽ [ _CartesianPos.A, _CartesianPos.B, _CartesianPos.C, _CR, _NL) ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž ENDIF

Wartość parametru „xxxxxxxâ€? jest ustalana na podstawie odczytu zmiennej systemowej $MODE_OP: ! '5 j “ž SWITCH $MODE_OP CASE #T1 !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;† ]‡  Â„[ ! [ ! CASE #T2 !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;† ^‡  Â„[ ! [ ! CASE #AUT !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;† ‡  Â„[ ! [ ! CASE #EX !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;† Z ! ‡  Â„[ ! [ ! DEFAULT !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;† ’’’‡  Â„[ ! [ ! ENDSWITCH ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž 7. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej trzy informacje: − o numerze aktualnie wybranego ukĹ‚adu współrzÄ™dnych prostokÄ…tnych, − o numerze aktualnie wybranego narzÄ™dzia, − o tempreraturze we wnÄ™trzu szafy sterowniczej KCP robota.

86

P

O

M

I

A

R

Y

•

A

U

T

O

M

Zmienna systemowa $POS_ACT odczytywana jest tylko wtedy, gdy uprzednio ręcznie za pomocą panelu sterowania bądź w aplikacji robota wybrano numer układu współrzędnych i numer narzędzia. W przeciwnym razie oprogramowanie systemowe robota wygeneruje błąd. A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


% j = < = 9. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej informacjÄ™ o aktualnym poĹ‚oĹźeniu w stopniach kaĹźdej z szeĹ›ciu osi manipulatora osi robota PrzesyĹ‚ka ma format: [APÂąaaaa.aaa:Âąbbbb.bbb:Âącccc.ccc:Âądddd. ddd:Âąeeee.eee:Âą''ÂŽ'”‡ gdzie: − Âą oznacza znak liczby, − aaaa.aaa – wartość w stopniach aktualnego poĹ‚oĹźenia osi A1 manipulatora robota, − bbbb.bbb – wartość w stopniach aktualnego poĹ‚oĹźenia osi A2 manipulatora robota, − cccc.ccc – wartość w stopniach aktualnego poĹ‚oĹźenia osi A3 manipulatora robota, − dddd.ddd – wartość w stopniach aktualnego poĹ‚oĹźenia osi A4 manipulatora robota, − eeee.eee – wartość w stopniach aktualnego poĹ‚oĹźenia osi A5 manipulatora robota, − ''ÂŽ'” – wartość w stopniach aktualnego poĹ‚oĹźenia osi A6 manipulatora robota. Wszystkie parametry, oddzielone od siebie dwukropkiem, sÄ… 8-cyfrowymi liczbami zmiennoprzecinkowymi ze znakiem, kropkÄ… dziesiÄ™tnÄ… i zerami wiodÄ…cymi. Ich wartoĹ›ci ustala siÄ™ na podstawie odczytu zmiennej systemowej $AXIS_ACT: _AxisPos = $AXIS_ACT ! '5 j “ž !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;†  ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ  ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”‡   Â„[ _AxisPos.A1, _AxisPos.A2, _AxisPos.A3,_AxisPos.A4, _AxisPos.A5, _AxisPos.A6,_CR, _NL) ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž 10. Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej informacjÄ™ o poĹ‚oĹźeniu w stopniach kaĹźdej z 6 osi manipulatora osi robota pozostajÄ…cego w pozycji HOME. PrzesyĹ‚ka ma format: [HPÂąaaaa.aaa:Âąbbbb.bbb:Âącccc.ccc:Âądddd. ddd:Âąeeee.eee:Âą''ÂŽ'”‡ gdzie: − Âą oznacza znak liczby, − aaaa.aaa – wartość w stopniach poĹ‚oĹźenia osi A1 manipulatora robota w pozycji HOME, − bbbb.bbb – wartość w stopniach poĹ‚oĹźenia osi A2 manipulatora robota w pozycji HOME, − cccc.ccc – wartość w stopniach poĹ‚oĹźenia osi A3 manipulatora robota w pozycji HOME, − dddd.ddd – wartość w stopniach poĹ‚oĹźenia osi A4 manipulatora robota w pozycji HOME, − eeee.eee – wartość w stopniach poĹ‚oĹźenia osi A5 manipulatora robota w pozycji HOME, − ''ÂŽ'” – wartość w stopniach poĹ‚oĹźenia osi A6 manipulatora robota w pozycji HOME. Wszystkie parametry, oddzielone od siebie dwukropkiem, sÄ… 8-cyfrowymi liczbami zmiennoprzecinkowymi ze znakiem, kropkÄ… dziesiÄ™tnÄ… i zerami wiodÄ…cymi.. Ich wartoĹ›ci ustala siÄ™ na podstawie odczytu zmiennej systemowej $H_POS: _HomePos = $HPOS ! '5 j “ž !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;†|  ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ  ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”ˆ ¼Â“˜Ž¢Â”‡

  Â„[ _HomePos.A1, _HomePos.A2, _HomePos.A3,_HomePos.A4, _HomePos.A5, _HomePos.A6, _CR, _NL) ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž 11.Formatowanie i wysĹ‚anie przesyĹ‚ki zawierajÄ…cej komunikat wygenerowany przez dowolnÄ… aplikacjÄ™ robota. PrzesyĹ‚ka ma format: [RMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx] gdzie parametr „xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxâ€? o dĹ‚ugoĹ›ci do 50 znakĂłw jest odczytywany z tablicy RobotEthernetMessage[50] zadeklarowanej jako zmienna globalna. TablicÄ™ tÄ™ moĹźe wypeĹ‚niać dowolna aplikacja robota ! '5 j “ž !"%' *†‡[ ! 0 [ ! '5 [ Â&#x;†  5‡  Â„[ 1Š1 ÂŒ * 550Â… †‡[ _CR, _NL) ! j ! 3 Â&#x; % 0Â? ! +# „[ !"%' *†‡ ž

|'^' 7 $ 2 & ` - ! †‡ " Podprogram SendInfoByEthernet() realizujący formatowanie i transmisję informacji z robota moşe być uruchamiany z poziomu jego dowolnej aplikacji. Jednak w takim przypadku cała informacja dotyczyć będzie momentu jego uruchomienia, a więc np. podczas realizacji instrukcji ruchu cała transmisja jest wstrzymana. Jeśli nie uruchomiono şadnej aplikacji wywołującej SendInfoByEthernet(), to robot nie realizuje transmisji do urządzenia zewnętrznego. Oprogramowanie systemowe robota firmy KUKA ma jednak wbudowany mechanizm umoşliwiający obejście tego problemu. Jest nim tzw. interpreter submitów [6]. Jego działanie polega na realizowaniu „w tle� dodatkowego programu aplikacyjnego, wykonywanego równolegle i niezaleşnie od „właściwej� aplikacji, a takşe wtedy, gdy aplikacji tej nie uruchomiono. Program interpretrera submitów moşe zawierać wszystkie instukcje dostępne w języku KRL za wyjątkiem instrukcji ruchu, moşe teş korzystać ze wszystkich zasobów sprzętowych i programowych robota. Powinien on działać tak jak program sterownika PLC tzn. nie oczekiwać w pętli na spełnienie określonego warunku, tylko być wykonywany w sposób ciągły od pierwszej do ostatniej instrukcji. Jest on więc rodzajem „wątku� wykonywanym niezaleşnie od aktualnej aplikacji robota i równolegle do niej. W pamięci masowej robota Kuka jest on zapisywany pod nazwą sps.sub. Jeśli zostanie w nim zawarta instrukcja wywołująca podprogram SendInfoByEthernet(), to odczyt i transmisja informacji opisanej w poprzednim rozdziale jest realizowana niezaleşnie od aktualnego trybu pracy robota i wybrania (lub niewybrania) aplikacji do realizacji. Podprogram SendInfoByEthernet() moşna zapamiętać w dowolnym katalogu pamięci masowej robota, ale dla zachowania przejrzystości zapisu – zaleca się katalog ‰ ‰ ]‰ 75 9.

}' ) - ! 6 # ' { & # # WykorzystujÄ…c elementy aplikacji EthernetTest.exe oraz klasÄ™ CMyAsyncSocket zaprojektowano i uruchomiono aplikacjÄ™ EthernetTest.exe wspĂłlpracujÄ…cÄ… z opisanym oprogramowaniem robota KUKA. Interpretuje i dekoduje ona

87


" ' 8 " 8 % 8 %= v

Rys. 2. GĹ‚Ăłwne okno dialogowe aplikacji EthernetRobot.exe do wizualizacji informacji odbieranej z robota Fig. 2. Main dialog window of the EthernetRobot.exe application for visualization of information received from the robot

przesyĹ‚ki odebrane z robota, a nastÄ™pnie wyĹ›wietla je w oknie dialogowym (rys. 2): Aplikacja dziaĹ‚a w podobny sposĂłb jak EthernetTest. exe. PoniewaĹź moĹźe pracować tylko jako serwer, to w gĹ‚Ăłwnym oknie dialogowym pominiÄ™to te przyciski obsĹ‚ugi, ktĂłre sÄ… wymagane w trybie pracy klient. TakĹźe informacja wyĹ›wietlana w okienkach od 1 do 14 jest identyczna jak w przypadku analogicznych okienek aplikacji EthernetTest.exe. Zadaniem aplikacji EthernetRobot.exe jest odbiĂłr i dekodowanie przesyĹ‚ek z robota, a nastÄ™pnie wyĹ›wietlanie zawartej w nich informacji na ekranie monitora. Okienko 15: − komunikat wpisany do tablicy RobotEthernetMessage[] zdefiniowanej w pliku ‰ ]‰ ‰q 1 ‹…Ž30 w pamiÄ™ci masowej robota i przesĹ‚any do komputera nadrzÄ™dnego przesyĹ‚kÄ… [RMxxx....xxx] Okienko 16: − nazwa robota odczytana ze zmiennej systemowej $ROBTRAFO[] i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [NRxxx....xxx] Okienka 17, 18, 19, 20, 21, 22: − informacja o aktualnej pozycji w stopniach osi manipulatora robota, odpowienio: A1, A2, A3, A4, A5 i A6. Jest ona odczytywana ze zmiennej systemowej $AXIS_ACT i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [AP...] Okienka 23, 24, 25, 26, 27, 28: − informacja o pozycji w stopniach osi robota manipulatora, odpowienio: A1, A2, A3, A4, A5 i A6 w przypadku gdy znajduje siÄ™ on w pozycji HOME. Jest ona odczytywana ze zmiennej systemowej $H_POS i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [HP...] Okienko 29: − informacja, czy manipulator robota znajduje siÄ™ w pozycji HOME. Jest ona odczytywana ze zmiennej systemowej $IN_HOME i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [FL...]

88

P

O

M

I

A

R

Y

•

A

U

T

O

M

Okienko 30: − informacja o wybranym trybie pracy robota. Jest ona odczytywana ze zmiennej systemowej $MODE_OP i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [MO...] Okienko 31: − informacja czy robot ma zezwolenie na ruch manipulatora. Jest ona odczytywana ze zmiennej systemowej $IN_HOME i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [FL...] Okienko 32: − informacja o numerze aktualnie wybranego ukĹ‚adu współrzÄ™dnych prostokÄ…tnych. Jest ona odczytywana ze zmiennej systemowej $ACT_BASE i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [DA...] Okienko 33: − informacja o numerze aktualnie wybranego narzÄ™dzia. Jest ona odczytywana ze zmiennej systemowej $ACT_TOOL i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [DA...] Okienka 34, 35, 36, 37, 38, 39: − informacja o współrzÄ™dnych punktu TCP i kÄ…tach orientacji aktualnie wybranego narzÄ™dzia w aktualnie wybranym ukĹ‚adzie współrzÄ™dnych prostokÄ…tnych. Jest ona odczytywana ze zmiennej systemowej $POS_ACT i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… † ŽŽŽ‡ Okienko 40: − informacja o temperaturze wewnÄ…trz szafy sterowniczej robota. Jest ona odczytywana ze zmiennej systemowej $PHGTEMP i przesĹ‚ana do komputera nadrzÄ™dnego przesyĹ‚kÄ… [DA...].

Â…' 9

Przedstawione w tym artykule rozwiązania programowe związane z wymianą informacji robot – komputer przy pomocy sieci Ethernet nie były dotychczas stosowane w aplikacjach przemysłowych zrealizowanych przez PIAP. Opisane oprogramowanie

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


% j = < =

dotyczy przesyłu danych, wybranych w sposób dowolny i niekoniecznie trafnie jeśli chodzi o ich aktualną stronę praktyczną. Głównym celem tej pracy było jednak opracowanie i zrealizowanie niezawodnie działających funkcji transmisyjnych, które będzie moşna stosować w przyszłych potencjalnych aplikacjach. Wydaje się, şe cel ten osiągnięto. W dalszych zamierzeniach przewiduje się sprzęşenie robota z aplikacjami smartfonowymi i urządzeniami wirtualnej rzeczywistości takimi jak okulary Microsoft HoloLens.

Publikację opracowano m.in. na podstawie wyników IV etapu programu wieloletniego: „Poprawa bezpieczeństwa i warunków pracy�, finansowanego w latach 2017–2019 w zakresie badań naukowych i prac rozwojowych przez Ministerstwo Nauki i Szkolnictwa Wyşszego/Narodowe Centrum Badań i Rozwoju. Koordynator programu: Centralny Instytut Ochrony Pracy – Państwowy Instytut Badawczy�.

` # & 1. Microsoft Visual C++ 6.0 MFC Library Reference. 2. Leinecker R.C., Archer T., – Visual C++ 6 Vademecum profesjonalisty, Wydawnictwo HELION 2000. 3. KUKA System Software KR C2 / KR C3: Expert Programming – Release 5.2, KUKA Roboter GmbH 2003. 4. KUKA System Software KR C: System Variables – KUKA Roboter GmbH. 5. „KUKA System Technology ‌: KUKA.Ethernet KRL 2.1“ for KUKA System Software 8.2, 2012 KUKA Roboter GmbH. 6. „KUKA System Software KR C: Submit Interpreter“ Operation and Programming, 2005 KUKA Roboter GmbH 7. „KUKA System Software: CREAD/CWRITE“ Programming CREAD/CWRITE and relatred statements, 2007 UKA Roboter GmbH. 8. Dunaj J., Positioning of Industrial Robot Using External Smart Camera Vision, R. Szewczyk and M. KaliczyĹ„ska (eds.), Recent Advances in Systems, Control and Information Technology, Advances in Intelligent Systems and Computing 543, DOI: 10.1007/978-3-319-48923-0_35.

$ . # 6 ' X G . $< M Abstract: The article presents how to implement a network transmission between a PC and an industrial robot. PC applications were implemented in C ++ using MFC libraries. It shows how to use the CAsyncSocket class in a practical way to program transmission between a computer and another device, e.g. an industrial robot. The second part of the article focuses on the robot’s programming capabilities in providing information on its state (positions of axes, currently selected coordinate system and tool, etc.). The way of reading information, coding and then transmitting to a cooperating PC is discussed on the example of a KUKA robot. Also presented are the mode of operation and description of two sample PC applications for testing network transmission and presentation of data received from the robot. KeywordsV $< % = % $< G % M % ' G % $ f ^ ' % " ; ^

89


" ' 8 " 8 % 8 %= v

( 9 <

mgr Kamil Bojanek

' & . ORCID: 0000-0001-6812-1253

G & . ORCID: 0000-0002-4448-3302

; ?B)! Q ' ; ' = F ; % ' ?B)@ ' 4 ' E U P F6MF . JO . ' / J % J % E J G J % J O J F . E G A hh

' JO J ; J . ' H' Q F6MF% O ' O Q E % .J . H J JO HE ' Q . G . KG ' % L

' F ?B) - . $ . (!!) ; O F ' . . ; E " Q ' ' E (!?! R J R E ' ; . E $ ' 0 $ 'O P F E$4M (!?( ; O = 6 V G P ' ' [$ E 'O F > \ F 4 ' U P F6MF . J ' ' O $ . " [ F F6MF\

90

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


*

H ! '

G B WQOVPgWOU !( OQ B O?ODOD

Informacje dla Autorรณw &

>

" B

% ;" Og =

ODWq ( "8 L ' %

% " 8 " % > ;

E

8 =)%

%

' : % 8 %

% % % '

% =)%

8 ' %=

" L %

A %=) 8 " =)%

' %

"

h ' : 8 '

8 % " ' % =

" 8 % % =

[' ' Ah\( j L

% % " h ; 8 '

% " 8 " % % 8 %

% A%

8 % ' 8 ) =

L ; "

' 8 % (

Wskazรณwki dla Autorรณw " ! # H

"

8 ' %= P % % Pomiary Automatyka Robotyka 8

"8 E " h8 =)%

# + > [ 8 % =)%

TD L \ =h 8 "

" > h " H ?H L "

P A %= [ " %= 8 ' %

% 8 % "\ > " " % [ '=h %

WCD>ODD " L \ =h 8 "

" > " % [C>T " \ =h

8 " =h

" " > " % % h E > =h

8 " [ ' =( " \ > 8 8 "

8 " =h

8 " =h " >

' =h 8 "

=h " > " %= ? A ? =h% = " '

8 # % ( 8" (% (=8 ' ( `

% % ( qDD 8 (

WDDD 8 " " % 8 "

%=) A % (

H 8 E '=h E L )

% = = D U " %

8 8 % E '=h %

W " % [QD DDD L

"8 %= ' qDDD % O " %=

L \ % = ( T " ;

" ( 8 8 L

8 % =)% % h '=h E "

= " 8 % h % ( Nie drukujemy komunikatรณw! j " ) ' E )%

' A% " " % H L

[ =h \ '=h %

CDD>VCD L % # A ( ! %= " " ' 8

" L L

=h =

" " % =

% % (

* 8 ' %=)

% 8 =)

:% ) 8 " E (

$

)6 6 " ย # ! !ย (

H

8 " ) % )

8 E E (

H

L " %

8 ' %= ") 8

8 " 8 " (

& L E 8 % = =

" %= =h% ' " ) " E

' "

H 8 %

" ) ' E 8 "

" % 8 " h

u L (

1 ) 6 $

6

L

= %=h (

8 L= 8 = % = ( * " =)%

% = ;

" )E "

" =)% 8 %

> H L % A %=h

' A% ( j 8 8 % = 8 8 %

" % 8 ! % L

= " #

8 =h " ( 8 8

; % 8 ' L 8 "

! %=)(

Kwartalnik naukowotechniczny Pomiary Automatyka Robotyka jest indeksowany w bazach BAZTECH, Google Scholar oraz INDEX COPERNICUS K6 ^ (!?)/ T %+BL% O w bazie naukowych G O MX6M>0M F H H ' realizacji idei Otwartej Nauki, ' G G naukowo-technicznym Pomiary Automatyka Robotyka. F $> ; G naukowe w kwartalniku Pomiary Automatyka Robotyka wynosi obecnie (! K naukowych i recenzowanych J # ' ' ' ? (!?B % (TB!(L F ' naukowe โ automatyka, elektrotechnika i elektronika.

gW


GBvb! H @ j H HY$b!ž

1 " & ! " ! # ! %= P % % Pomiary Automatyka Robotyka

; =)% 8 h " B

% ;" " )%)

" h %

H L

H ?H L L

8 8 " 8 8 =h%

% =)% + 1. &

€ wymieniowego Autora # >

% = " % 8 8 L

( ^ " " 8_ =(

8 " "

H L

8 ' %= " "L' L %

8 " 8 ' %= '

' L

="% ( 2. & # ! #‹ jej powstanie > % = " + > 8 ; " "

" '

=)%

8 " 8 %

"

h ' =

"8L

' = " '

L ?

h =)

8 % 8

8 % 8 ' %= > 8 ; " h8 =

8 8 ^ " _ (

" h8 = " %= L =

" ' " )% %

8 " "

= "8L

= =

8 h % "

8 8 " " " '

L " "

8 % 8 ' %= Â?

gO

P

O

M

I

A

! %= %

= % %=

8 "

8 ) " h8

) % ) ;

% ) 8

8 " %

" ' % = (

3. & „ ! # 9‹ ! "

# > 8 8

A " 8 ' %= 8

" %= P' %

" " ' 8

= " 8 # %=

u L L 8 h; % (

^A % "% " _ > = "

# %= ' =

= % =

" % :% 8 ' %=

# %= ' 8 h

A " ' :(

*

8 ' =

L ;

# =)% % %

= # %= '

' %= " 8 # " ;

% 8 = % " %

> " " " % ;

" E E "

( & 8 "

% ? 8 % % % % %

" ); % (

przeniesienie praw

" ! # "

Y`Œ & % ) 8 =h%

8 ' %= " h8 = 8 "

=) % 8 " %

%h( Y = " 8 8 "

8 8

% = ( 8 8 %

% = %

) (

Redakcja kwartalnika Pomiary Automatyka Robotyka &

* % " % L 8 ' % P % %

*

H ! ' 8 "

8 " " " % L

8 ) h % " 8 " jbG 8(+

Krzysztof Malinowski, Control System Design: Think Broad and Be Inquisitive, ISSN 1427-9126, R. 24, Nr 2/2020, 5–10, DOI: 10.14313/PAR_236/5.

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


czasopisma

pomiary

sprawdzian

miara

POLSPAR

eksperyment

automatyka PIAP

seminarium

kalendarium

szkolenie

kwartalnik

federacja

nauka

publikacje

automatyka

stowarzyszenie

HORIZON 2020 " ); innowacje organizacja projekt konkurs

konferencje

relacja

POLSPAR

POLSA

publikacje

AutoCAD streszczenie

agencja kosmiczna

dr h.c.

innowacje

IFAC

ZPSA

8 u

profesura

recenzje

relacja

szkolenie

doktorat

robotyka seminarium

sterowanie

H

esa

szkolenie


94

P

O

M

I

A

R

Y

A

U

T

O

M

A

T

Y

K

A

R

O

B

O

T

Y

K

A

NR

2/2020


cH<G G$H H H HB BHY b ¡

Dynamika i sterowanie wybranymi procesami biochemicznymi 4 $ ' , ) + 9 $ - ( 3 8 - $ 4 + $ $ - - 5$ ( $

* " " ) h% "

" h % 8 h% = ; =" % 8 ' %=

% % " 8 " % = =)% % " h

' ! 8 " [ !\ ( (

^ # * % "" _ %

^H88

% _( 8 ' %=

% = " h 8 ' %

= % = % " ' 8 % " ' % % L % L ) h =) ;

( h E " % L 8 " ; %

# % = % " % '

' # % % ( % L ) h " 8

8 % "L # %= =

[8 %= ' 8 \ % " % ' % % 8 =)% % " h L; 8

8 % ( 8 8

8 % "

") 8 % 8 8 %

[ 8( ' 8 8 \ ; '" E = " " )% % " P "% %= % 8 " h "% % =

% %= % %

8

" % % % = % % [ 8(

" h; 8 8 8

\( ; % 8

8 8 " h8 "% %=

"

8 = E 8 % " 8 ; = " ; ' E L; ( )

% " %= = %

8 % " ' % % % = " = " h8 %

'L " =)% ( % 8 8 % 8 % P' % % L % " ) h% " " h8 =)% + W( & 8 8 8 = % =)% % " )% %

" P "% %= 8 8 " '" [ E

" =)% \ ; 8 ; ( & ; ; ' " '"

=) " L ( O( &' 8 = %

" =)% = ' % 8 L

8 % " = %

) :

% ) 8 % " # %= = :% % A% 8 ( Y "

' # % = = 8 "

; E

8 ;) % "% %= 8 8 " '" 8

% " % % 8 " % 8 L 8 % " ( q( & 8 8

%

% ) 8 % " # %= = L '" = " h " h8 " )% % " P "% %= (

& 8 8

8 " h ; 8Lu # % ' %=

= % " = 8

' % "8 % ( Q( B " h8

" ' %

8 % " # %= 8Lu ) 8 ) L

" h; % )

E % " 8Lu 8 ; = L =

'" = " h " h8

" ' % % ( C( " =)% 8 8

8 % " # %= 8Lu 8 " ; E " )% % " P "% %= 8 8 " " " % %=

8 *G L

" ' = " h; (

* ; 8

8 ;

% h

= " " 8 % " '

% " 8Lu ( @# E " ; 8 ' % % " L 8 %

) A %=) % =( 8 8 L ; 8 " " 8 % ) " ' E h

% " 8Lu ( U( j ;

% % 8 8 % 8 L

; 8 " % 8

8 " % % h % 8 L' %

'=h % " Â ( * " ; ; E " -

MG ; ' M % = i Informatyki (kierunek automatyka i robotyka) F œ H K(!!) L F . ( % . ' # X ' R . > G (!?( ' H K ' G L % % J G # $ $ . (@ . (!(! X ' - [M % = = \ F œ H ' Q ' G . ' G SG . H J ' J G

" %= % = " ' % " L 8L P8 8 % "

% " " %

L " [ 8( %= 8 % = \( b L 8 '

' % =) # % # = 8 %= " h 8 " )( & 8 8

%

8 % "

# %= 8 8" 8 =

" % % % 8 % % ' = # % "

" ( Y " 8 " =)

; % %= 8 ;) % "% %= 8 % " # %= 8 8 " "

L%

" '" L =)% % " L ; ' E ; " " % 8 % " % ' % % % 8

8 (

$ . " Q Pomiary Automatyka Robotyka

95


bB Y! ÂĄ !@ H H

VI edycja Konkursu Konstrukcji ' ' G . Q ž - 6 6 * F $ ! $ " + ( $ ! 8 $ - 3 $ $ G + $ $ - ( G + G - $ $ - $ $ - + $ ( 5 5+ $ $ -F ' (F

=)% h ' 8 % :"

% " L b

" 8 =h

% =h = %= " " % 8L

" ( B 8 %

' " h " % : " )% % Zbij kokos z KOKOSem: Zdalne prelekcje w czasach zarazy 8 % " L = "8 % %

' " " h " =) ) % ( * %= " '

% " L

8 % ) h

; " '

"

" = % % % " % (

& 8 "

"

qD

ODOD ( % %= " h

8 h % '

" :(

B 8 " 8 " % L

%= % % = =hE A L Og v " L ¢ v " %= "

8 #

L " h8 = 8 # v % '

% = "

" %= (

= 8 " "

gU

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

8 %= '

" % 8 = L 8 "=) " ) % % ; "8 "L' ( * % " pG %= " " %=

% % ' )E v =( c > =

8 = > qD = 8 % " %

L " L ; = 8 h%

( & % h" " %=

L 8 " % C " h%

%

% ¢ & % h % pG %= " " %= % % " + > H!$ !b<b$ > FL u 8 b b£ B ! ' L * % " " =� %

8 = = " %= ' : 8 %

; 8 = % 8 " =)% % " h " Â? > Gv@ Y* !Hj@ > ' P "P

* " L * % " " = H * h % Â? = "

8 # %=

' "8

O

B

O

T

Y

K

A

NR 2/ 20 20


*

H ! '

G B WQOVPgWOU !( OQ B O?ODOD

8 %

" '

8 "8 =

% % " % ย

% ' %) 8 = = " 8 "8

% 8 % L

8 A 8 " E = " ย > p@cG @ > FL u $

% B L %= * % FL =ย

" % "8 ' =) " %

8h ) " % )ย @ $

8 = %

"

) 8 " ) # % % L

" = % % % ย > "8 %= = !HG Hยก > H

< ;

"8 b!* * %

:" = H % % ย

% 8 = = " % ' ;

8 ;) 8 8 8 " %

8 ' " 8 % % ย > b @! > B ; %

B % " %=

H H$b! H L % Pc % =

ย 8 = = " 8 )%

< % % ย 8 ; "8 " " %= " ;)% 8 8

L; = 8 " ( " " & % h % " % = ยข $ % %= " " %=

% % ' =) 8

h ( ! %= 8 " h h%

8 =)% % L "

" % " % = * = (

%= "8 ; % 8 '

" % = "

8 E % )

" h% % ) " h

8 % ( < " % h =h % "8

8 h%

% " ;

% 8 % = ( > = c = * = (

" " %= % %

L '

' E " h ' * L ( pG %=h

" b b "8 A * b (H(

* L * = '

* "

= * :" (H(

S ' J

. >

gV


¡jH!&@BGH bB Y!

$ ' 6 (!(! młodzi młodzi

innowacyjni innowacyjni yj yj

S.J " F - - [$ ' 6 \ . ' S . G ] 4 ' U P F 6 M F J F6MF " ' H H

. H G '

Ocenie konkursowej, jak co roku, poddano % = E 8 % " % 8 % [ " " % ; " % \

% % + 8 L

' " % L h

% L 8 % % %

8 " " 8 % % ; :(

" A

CW 8 % > U 8 % " % OO 8 % " " Oq 8 % ; " ( " =

%= % L %

" h * %

" " > 8 8 OW 8 %

H L % Pc % > "

8 %( * 8 '

%

< " [* % < " % \

:" [* % :" \ %

[* % ] )" \ [* %

" \ F [* % FL \

* [* % * :" \ ! "

[* % ! " " \ % %

[& % 8 " Y " $ % P % \ "

[ ="

H $ % % \(

• 8 #( ( '( ;( % = $ = % >

% L " ! ' % % * % " " = • 8 #( ( '( ;(

& :" >

H ! ' *HB = % 8 = 8" %

8 %

8 h; L;

[ % 8

P % % ^*

H ! ' _ " h % ' ;

HY$b H$¡ H ^ # H ' ! ' %" G " "_\( "= " " Wq "8 L

" % 8 % L

' E 8 WT % ODOD ( 8 % " mmGp # %= B P$ % % = ^H %= > B % * "8 _ HY$b H$GbB ODOD( "= % '" L

% "

" h " "

' " "= (

< " #

% : ; "8 "L' )

% = % 8 = u ( B " 8

' " h "

* "% 8 " bpGjPWg(

8 ' " h " =)%

8 % h % % : "

8 8

L; ( $ 8 % 8 % '

' " "

'

' ( & " % "

" h 8 % " " L

8 % "8 =)% % " h

8 " ) % ) " h " %

% % ; %

' ( B ' L

) % " % ) %=) % " % ) " ) * " Q(D(

"= " = " 8 " = %= " + • 8 #( '( ;( " %8 > G "

< : " % *HB > 8 % )% • 8 #( ;( " % " > P%

"( ' % P = % *GH* • ;( % :" > %=

*

H ! ' • 8 #( '( ;( &' B " >

G " < : " % *HB • 8 #( ( '( ;( " b " "

> % * % " " =

gT

P

O

M

I

A

R

j ;( H # 8 %

=

^ ' # "8 " % " #

% 8 8 " "_ ¥F)%

% L; % u L % " ) : 8 " % ¦

8 ' ; =)% ) " ) % h " 8 % " 8 " 8 " % 8 % )% % L; % u L ( < ' = =)

'L " %=h % % " L = =

8 " % L ' h L (

" %= % % ") ' 8 )

% 8 % "

8 ' L # =) % ( ! #v

" 8 "

%

8 " %= %=

% % ( b8 % L ) " 8 )

" h < " " ) L " " h

# = 8 % % # = L

# = 8 % = ( v = 8

% % = " 8

" A < " " ( 8 8 # = < " " = 8 % %

; ; E # %= % 8 %

8 % # %= % ""

" L =) % ' 8 % = % 8 % " L =) % ; % %

" " " ( v =

8 % = = " 8 8

; % #

" A

< " " 8 %) %

# = ( * 8 8 = " h

h ; % % % L

8 %

8

; % " 8 = "

< " " = L = " ;

" ( B

A L; % " " %

L% " L 8 8 =)% %

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


*

H ! '

G B WQOVPgWOU !( OQ B O?ODOD 2009

2010

2011

2012

2013

2014

2015

2016

2017

2018

2019

2020

AGH Akademia GĂłrniczo-Hutnicza

2

5

5

3

19

4

4

3

5

3

7

7

Akademia Morska w Gdyni Uniwersytet Morski w Gdyni

–

1

–

–

–

–

–

–

1

–

1

–

Akademia TechnicznoHumanistyczna w Bielsku-Białej

1

1

–

–

–

–

4

–

–

–

–

–

Instytut Badań Systemowych PAN

–

–

–

–

2

–

–

–

–

–

–

–

Państwowa Wyşsza Szkoła Zawodowa w Sanoku

1

–

–

–

–

–

–

–

–

–

–

–

Państwowa Wyşsza Szkoła Zawodowa w Tarnowie

–

–

–

1

2

–

2

–

–

–

–

–

Państwowa Wyşsza Szkoła Zawodowa w Zamościu

–

–

–

–

–

1

–

–

–

–

–

–

Politechnika Białostocka

–

1

–

3

–

1

–

–

5

6

2

1

Politechnika Częstochowska

–

–

–

–

1

–

–

–

–

–

–

–

Politechnika Gdańska

5

3

8

7

12

5

4

6

3

7

9

6

Politechnika Koszalińska

–

–

–

–

1

1

–

–

–

–

–

–

Politechnika Krakowska

–

5

6

1

3

–

–

1

–

–

1

2

Politechnika Lubelska

–

–

–

–

–

–

–

1

–

–

1

–

Politechnika Ĺ Ăłdzka

1

7

–

4

8

1

5

1

2

–

1

1

Politechnika Opolska

4

2

–

1

2

1

6

–

2

2

1

–

Politechnika Poznańska

2

2

3

–

10

1

6

2

5

1

1

1

Politechnika Rzeszowska

1

–

–

–

2

–

2

–

4

–

–

1

Politechnika ĹšlÄ…ska

7

5

6

4

10

8

2

6

5

7

1

6

Politechnika Świętokrzyska

–

–

–

1

2

–

–

–

–

–

1

–

Politechnika Warszawska

18

17

18

13

22

11

17

14

17

5

3

21

Politechnika Wrocławska

4

5

5

2

8

6

8

1

–

7

–

2

Polsko-Japońska Akademia Technik Komputerowych

–

–

–

1

–

–

–

–

–

–

–

–

Uniwersytet MikoĹ‚aja Kopernika w Toruniu

–

1

–

–

1

1

–

1

1

–

–

–

Uniwersytet Rzeszowski

–

–

–

–

3

1

1

–

–

–

–

–

Uniwersytet TechnologicznoPrzyrodniczy w Bydgoszczy

–

2

–

–

1

–

–

–

–

–

–

–

Uniwersytet WarmiĹ„sko-Mazurski w Olsztynie

–

1

–

–

–

–

–

–

–

–

1

–

Uniwersytet Warszawski

–

–

–

–

–

–

–

1

–

–

–

–

Uniwersytet ZielonogĂłrski

–

–

1

–

2

1

–

–

1

–

1

–

Wojskowa Akademia Techniczna

–

1

–

1

2

1

–

–

–

–

4

2

WyĹźsza SzkoĹ‚a Informatyki Stosowanej i ZarzÄ…dzania w Warszawie

4

–

–

–

–

–

–

–

–

–

–

–

Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

1

2

–

–

3

1

2

2

5

3

3

1

Uczelnia

gg


B! q?ODWC

% " L

% = % # = " %= 8 8 =( 8 ;

8 8

= E " )%

" "

( ;( " 8 %

^ " {P"8 % ' " ` "

% " % # ' _

ÂĽ<

8 % 8 = % ) 8 h

{P8 " ' # = L

) " % ÂŚ 8 " h ) ) 8 %

%=) " ' " '

" # = !G "# " % % % # = ( & 8 8

8 8 '

" 8 L H*

[ ( 8 % P H88

* 8 \( " P "

" ) ' ) 8 E

; % "

" '" %= ' =

L = " = L% [ ' " '" %=

" =\ 8 " % " L ( b 8

" % 8 % H* ;

" E L ; = 8 % 8 L h " ) 8 h % )( * ;( & " 8 %h ) ^ "

% % = 8 %

" ' % 8

h' " % _( = % '

8 % 8 %= " " "8 % = 8 h' % " % % % 8

=)% % "8 E ' h % =

" " ( 'L = " ' = " 8 8

8 ) % ) " " % ' % ) :( % A

8 8 = " 8 8

' " % = % L % "8 " 'L ' ( j

= % = " % L "

8 %= " % % ' =)% ( 8 % % 8 (

8

'

8 L h "8 " ' " " % % ( b

% ; " " "

' 8 " 8 E " "

OC VT§ =)% " % E

8 %= 8 TQ WC§( !L ; ' = % 8

" % E

8 8 8 = % (

Prace doktorskie

I Nagroda

dr inş. Michał Maciejewski – Co-Simulation of Transient Effects in Superconducting Accelerator Magnets Politechnika Šódzka, Wydział Elektrotechniki, Elektroniki, Informatyki i Automatyki Promotor – prof. dr hab. inş. Andrzej Bartoszewicz

II Nagroda

dr inş. Anna Stief – Combining data from disparate sources for condition monitoring purposes AGH Akademia Górniczo-Hutnicza, Wydział Elektrotechniki, Automatyki, Informatyki i Inşynierii Biomedycznej Promotor – dr hab. inş. Jerzy Baranowski, prof. AGH

dr inĹź. MichaĹ‚ MarzÄ™cki – Opracowanie konstrukcji i parametrĂłw technologicznych Zintegrowanego Detektora Punktu Rosy wykonanego Wyróşnienie w technice druku strumieniowego Politechnika Warszawska, WydziaĹ‚ Elektroniki i Technik Informacyjnych Promotor – prof. dr hab. inĹź. Ryszard Jachowicz

Wyróşnienie

dr inş. Paweł Mazurek – Bayesian solutions of problems related to non-invasive and non-intrusive monitoring of elderly persons Politechnika Warszawska, Wydział Elektroniki i Technik Informacyjnych Promotor – prof. dr hab. inş. Roman Z. Morawski Prace dyplomowe magisterskie

I Nagroda

mgr inş. Piotr Falkowski – Projekt konstrukcyjny egzoszkieletu wspomagającego podnoszenie ludzkiej kończyny górnej, do badań moşliwości sterowania za pomocą sygnałów EMG Politechnika Warszawska, Wydział Mechaniczny Energetyki i Lotnictwa Promotor – dr hab. inş. Cezary Rzymkowski, prof. PW

II Nagroda

mgr inĹź. Malwina Molendowska – Single shell Q-space biomarkers in diffusion magnetic resonance imaging of the brain AGH Akademia GĂłrniczo-Hutnicza, WydziaĹ‚ Elektrotechniki, Automatyki, Informatyki i InĹźynierii Biomedycznej Promotor – dr inĹź. Tomasz PiÄ™ciak

mgr inĹź. Fabian Bogusz – PrĂłbkowanie oszczÄ™dne w obrazowaniu dyfuzji metodÄ… rezonansu magnetycznego na potrzeby oceny wĹ‚aĹ›ciwoĹ›ci mikrostruktury mĂłzgu Wyróşnienie AGH Akademia GĂłrniczo-Hutnicza, WydziaĹ‚ Elektrotechniki, Automatyki, Informatyki i InĹźynierii Biomedycznej Promotor – dr inĹź. Tomasz PiÄ™ciak

Wyróşnienie

mgr inş. Mateusz Czyşniewski – Wybrane metody odtwarzania stanu systemów dynamicznych Politechnika Gdańska, Wydział Elektrotechniki i Automatyki Promotor – dr inş. Rafał Šangowski Prace dyplomowe inşynierskie

I Nagroda

inş. Dominik Trocki – Opracowanie sterowania ręcznego oraz zrobotyzowanego stanowiska lakierniczego Politechnika Warszawska, Wydział Mechatroniki Promotor – prof. dr hab. inş. Mariusz Olszewski

II Nagroda

inş. Piotr Michałowski – Zastosowanie kamery termowizyjnej do nawigacji pojazdu typu UAV Wojskowa Akademia Techniczna, Instytut Optoelektroniki Promotor – dr inş. Grzegorz Bieszczad

inĹź. Zuzanna Klawikowska – Wykorzystanie metod tĹ‚umaczenia decyzji do opracowania strategii obronnych przed wrogimi atakami na gĹ‚Ä™bokie Wyróşnienie sieci neuronowe Politechnika GdaĹ„ska, WydziaĹ‚ Elektrotechniki i Automatyki Promotor – dr inĹź. MichaĹ‚ Grochowski

' O $ . " Q inĹź. Mateusz PajÄ…k, inĹź. Marcin RacĹ‚aw – SzeĹ›cioosiowy manipulator z chwytakiem Wyróşnienie Politechnika GdaĹ„ska, WydziaĹ‚ Elektrotechniki i Automatyki Promotor – dr hab. inĹź. Robert Piotrowski inĹź. MiĹ‚osz Rzepecki – Wspomaganie wybranych procesĂłw produkcyjnych specjalizowanymi rozwiÄ…zaniami robotyki i automatyki Wyróşnienie Politechnika WrocĹ‚awska, WydziaĹ‚ Elektroniki Promotor – dr inĹź. Andrzej JabĹ‚oĹ„ski

WDD

P

O

M

I

A

R

Y

•

A

U

T

O

M

A

T

Y

K

A

•

R

O

B

O

T

Y

K

A

NR 2/ 20 20


Kalendarium wybranych imprez Data konferencji $ " :

="%

Informacje dodatkowe

WO>WV ? DV ? ODOD qW ? WD ? ODWg

<

Niemcy

www: 8+?? ( # %ODOD(

CO( h %

# %= L

ODOD

DV>Dg ? Dg ? ODOD

* " %

* "

OO * @ % %"

H88 % "

@*@ ODOD @ @ pG!$YH

DV>WW ? Dg ? ODOD Wg ? WO ? ODWg

v %=

4th GvH " 8

H % %

@ % "

$ % "

H @ $ ODOD pG!$YH

WD>WW ? Dg ? ODOD

' <

WVth GvH # %

* ' j % "

@ ' " "

*j@ ODOW

WT>OD ? DC ? ODOW

= <

i Hercegowina

WVth GvH 8 "

G # * ' "

# %

GB b ODOW

DT>WW ? DU ? ODOW

* # "

8

WVth GvH 8 " v

j % 8 "

#

# $ % % * % "" "

Hv@*!b @ ODOW

DV>Dg ? DU ? ODOW

< 8 "

h

OQth G 8 "

% $

#

B " " "

$B ODOD

OQ>OT ? DT ? ODOD WO ? DW ? ODOD

'

<

qD(DT>Dq(Dg ? ODOW

Jokohama Japonia

www: 8+?? ( ODOW(

mail: ODOWX ( (% (=8

DV>Dg ? DU ? ODOW

< 8 "

h

www: 8"+?? % ODOW(

qD(DT>Dq(Dg ? ODOW

Jokohama Japonia

www: 8+?? ( ODOW(

mail: ODOWX ( (% (=8

Nazwa konferencji W" p GvH

""

GvH Pp ODOD

mmGGG "" #

G "

#

G @ b ODOW WVth GvH 8 "

G # * ' "

# %

GB b ODOW mmGGG "" #

G "

#

G @ b ODOW

www: 8"+?? ( ODOD(8 ?

mail: ( % = X ODOD(8

www: 8+?? ( 8 ODOD(% ?

mail: # X 8 ODOD(%

www: 8"+?? ( " ODOD( (% ( %(

www: 8"+?? ( # %P% ( ? "? 8 ' P % "P P ' P P" " "PWV P8 "PODOW

mail: = (= %X ' ( ('

www: 8"+?? % ODOW( ?

mail: # X % ODOW(

www: 8"+??" # 8 % ""ODOW( ??

www: 8"+?? "ODOD( (% ( %( ?


45 51

G * " " % $ " * B

7

&' % % " H = < :

- $ . 4-* _4 4 6 . ' +

59

* "

63

j " ' % * *

69

=

77

+! & 26 $ $ ! & *

# %`,)

# !

7 ! # "

!

75 $5' 7

% j = < =

#

" _


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.