Software for Fluid Power Technology


From Editor

The purpose of the Software Review section of the Journal is to present information to the reader about engineering software, including simulation programs, to highlight their specific features and their "fitness to purpose" in the unique field of fluid power and motion control. It is, of course, impossible to establish evaluation criteria matching the needs of all readers, therefore readers should not look for absolute ratings but more or less "fuzzy" opinions of the reviewer. A software program is like a wrench, just a tool to solve problems. It is good to solve some problems and not so good for others and this depends on both the nature of the problem and the users' attitude - and generally when we review software we do not know either. A software tool can be highly specialised and great for a some applications but not so well suited for others, on the other hand another software tool can be more flexible and generally applicable but without outstanding features. It is impossible, and even misleading, to say which one is better. What we hope to accomplish is to give the reader information necessary to take his/her own decision.

Object-Oriented Multi-Pole Modelling and Simulation
Environment for Fluid Power Systems
Part 1: Fundamentals

Contact Information


   
Vendor:  Tallinn University of Technology, Institute of Machinery and Institute of Cybernetics
Authors of the system: Gunnar Grossschmidt1, Mait Harf
Address: 1) Ehitajate tee 5, 19086 Tallinn, Estonia
               2) Akadeemia tee 21, 12618 Tallinn, Estonia
Telephone Number: 1) +372 519 89785, 2) +372 620 4215 
Fax Number: 1) +372 620 3264, 2) +372 620 4151
Email: gunnar.grossschmidt@ttu.ee, mait@cs.ioc.ee
Web: http://www.cs.ioc.ee/cocovila/
Platform: Java based, platform independent (tested on Windows, Linux, Mac OS)

1. Introduction


        The purpose of the paper is to propose an objectoriented modelling procedure for fluid power systems using multi-pole models with oriented causality and
propose to use for simulations the visual programming environment CoCoViLa. Most of existing modelling and simulation systems are object-oriented (description of the system as functional or component schemes) using equations with fixed causality or equations in non-causal form for each object. It is difficult to compose, solve and debug large and complicated equation systems. The static and the steady-state conditions are usually calculated through transient responses, which take much time. Our modelling procedure seems to be free from these inconveniences. The models of objects are described as multi-pole models with different oriented causalities. Dependences between the variables inside of objects are described using oriented graphs. The visual programming environment CoCoViLa which supports declarative programming in a highlevel language and automatic program synthesis is proposed for use for distributed simulations.

2. Fundamental Concepts



Concepts of the system and its components:


The object and the model areas of the technical systems should be differentiated:

Concepts of models and modelling:

Concepts of simulation:

3. Methods used for Modelling and Simulation of Fluid Power Systems


3.1 Modelling methods


I Functional and component schemes, causal modelling


    SimHydraulics™ MATLAB/Simulink package (International Journal of Fluid Power – IJFP, issue 5), ITI SimulationX (IJFP, issue 4), AmeSim (IJFP, issue
1), EASY5 (IJFP, issue 7), VisSim (IJFP, issue 2), DSHplus (IJFP, issue 10), BATHfp (IJFP, issue 9), WINSIMU (IJFP, issue9), Automation Studio™ (IJFP,
issue 17), HYDRO ANALYST (www.flotron.co.uk).
    The equations have been automatically constructed on the basis of hydraulic network schema with
mechanical elements, sensor blocks, block diagrams of signal processing operations, block elements representing mathematical functions and user-defined blocks.
       Mostly the unidirectional graphical models for equation construction are used which are not suitable for hydraulic and mechanical components, because
they have feedback.
    In package ITI SimulationX (for systems with components of various nature), the four-pole dynamic models of hydraulic and mechanical elements in sequence
inertia-elasticity-inertia-etc. are used.
    AmeSim allows dragging and dropping icons, representing components, from selectable sets of standard and specialized libraries. The software is based on a full multi-pole approach, which allows connections between components to exchange power flow information. Submodel Editing Tool generates C or Fortran code skeleton equipped with appropriate calls and description of inputs and outputs and proper interface with the other AmeSim components. As result the equation system is composed.
    As a result, the MM is presented as a system of the ordinary differential equations (ODEs) or differentialalgebraic equations (DAEs). The equation systems need be checked for solvability. It is impossible to have more complicated relations for components (logical expressions, inner iterations, functions, subroutines etc.).

II Functional and component schemes, non-causal modelling


    Dymola (IJFP, issue 18) includes a graphical object- oriented modelling based on unified objectoriented language Modelica for non-causal modelling of physical systems. Description of the system as functional and component schemes is used. The graphtheoretical algorithms are used to determine which variables must be found by each equation. The ODE or DAE are composed. EcosimProE (www.ecosimpro.com) is a mathematical tool capable of modelling any kind of dynamic
system represented by DAE or ODE and discrete events. EcosimPro is an integrated visual environment.

III Bond graphs

The key of bond graph modelling is the representation (by a bond) of power as the product of efforts and flows with elements acting between these variables and
junction structures to put the system together (Fishwick, 2007).
    The bond graph symbol gives us four informations: the existence of physical link between two systems by the bond, the type of power (hydraulic, mechanical,
electric…) by the power variables, the power positive direction by the half arrow and the causality by the stroke (Fishwick, 2007).
    The system bond graph is composed of basic bond graph elements: source of effort (SE), source of flow (SF), resistance (R), capacitance (C), inertia (I), transformer (TF), gyrator (GY), 0-junction (0) (law Σ f = 0, f - flows) and 1-junction (law Σ e = 0, e - efforts).
    Bond graphs are not common in modelling of fluid power systems. Bond graphs are not oriented to components, but to bond graph elements. It made the models
very complex and not easy understandable. The bond graph R, C, I elements are expressed as two-pole elements. Therefore, feedbacks are not taken into account.
The common bond graph symbols are not usable as visual language for automatic program synthesis. For this reason it is necessary to have for potential and flow
variables graphical correspondence.
    In OHC-Sim (IJFP, issue 6) an oil-hydraulic circuit can be constructed on the display with using Graphical User Interface. Simulation program for the whole circuit is automatically created by connecting the twopole mathematical models for components registered in the database. The equation system is automatically
composed.

IV Multi-formalism, multi-domain-modelling languages: MS1TM, 20-Sim

MS1TM (www.lorsim.be) is an interactive environment for modelling, simulation and analysis of nonlinear dynamic systems. Models can be introduced as Bond Graph, Block Diagram or DAEs.
    20-Sim (IJFP, issue 20) supports modelling using non-causal mathematical equations, domain-oriented components, block diagram elements and bond graphs.
The equation systems are subjects to solve.

V Distributed modelling

In HOPSAN (IJFP, issue15) to connect the elements, the unit transmission line (UTL) elements with time delay are used. The UTL elements have only one form of causality (inputs for that hydraulic UTL fourpole elements are the volume flow rates).

VI Multi-pole modelling

DYNAST (IJFP, issue 7) is a unified physical-level modelling of mixed physical-domain systems and is based on the multi-pole approach. The system dynamics
can be represented by a dynamic diagram, representing the system sub-models. The poles are denoted graphically by pins sticking out of the multi-pole symbols.
A set of differential, algebraic or algebradifferential equations is automatically composed.

3.2 Simulation methods (methods of solving)


I Central integration of the ordinary differential equations (ODE) or differential-algebraic equations (DAE) through a solver

    Most numerical techniques are based on diffe-rence methods. A universal solving method for ordinary differential equations does not exist and practitioners
should select a method based on requirements such as speed, accuracy and necessity to simulate the mathematical stiff equation systems.
    The numerical methods most frequently used fall into the following categories: Taylor methods, Runge–Kutta methods, multistep methods, and extrapolation
methods.
    The Runge–Kutta methods are among the most popular. The best seller of all Runge–Kutta methods is the fourth-order classical method. The following general conclusions about central integration methods may be pointed out.
    Equation systems are not suitable for large and complicated models. It is not reasonable to describe means of a large equation system with thousands parameters
and hundred variables having complicated relations. Such equation systems are difficult to compose, solve and debug.
Most of these simulation systems don’t enable direct simulation static or steady-state conditions of the system (without calculating the transient response which takes much time for large systems even using modern computers). Simulation of static or steady state conditions enables one to set up system configuration and parameters. The results of the simulations are as initial data for further simulations of dynamics in each possible working point of the system.

II Decentralized integration algorithms: HOPSAN (IJFP, issue 15).

There is no necessity to solve a large system of nonlinear differential equations at each time step. For solving, one uses the Newton-Raphson iteration method
and the Jacobian matrix. Decentralized algorithms are preferred for large systems with components having complicated inner relations.

4. Causality Problems



The causality is a relation between the phenomena, where one phenomenon causes another. The time factor makes the observing of the causality more complicated.
We must differentiate the physical and mathematical causality. The physical causality appears between the physical values of the real system. The relations between the physical values can be oriented (e.g., the relations for hydraulic and mechanical inertia, resistance and elasticity), unilateral (e.g. the relations for most electrical functional elements - FE), reciprocal (e.g., action and reaction) or unidirectional (e.g., relation for a diode).
    The relations in physical systems can act between variables of the same type (potential or flow variables) or between variables of various types.
The oriented consequence can perform feedback to its cause (e.g., action and reaction). The feedback can also appear through inner natural dependences. The
physical causality in FEs of real systems is not uniquely determined.
    The mathematical causality expresses mathematically the relation of one value (output value) from the other values (input values). The mathematical model
(MM) can represent the relations also in non-causal form (right side of the equation equals to zero). The correspondence of the mathematical causality to the physical causality for the whole system is obligatory, but not always obligatory for the system components.
    In principle, it is natural if the correspondence of the mathematical causality to the physical causality is guaranteed. The physical causality is determined by the
propagation of the action in the real system. But for intermediate FEs the external physical causality for each one is not always easy to establish.
    If the action (input) for the system is a potential (or flow) variable and the output for the system is of the same type, then for all the system elements we can also have inputs as the potential (or flow) variables. Then the action propagates directly trough all the elements and in each element changes of his value appear. If the disturbance (input) and the output variables of the system are not of the same type, then the assign of the physical and the mathematical causality is more complicated.
For composing the mathematical model we must interrupt the direct orientation of the same type of variable and determine the element, which changes the type of variable. In principle, this element can be any element in the chain.
    Determination of the above mentioned mathematical causality is obligatory for static and steady-state conditions, and also for calculation of the frequency response,
especially by using the harmonic linearization of nonlinear dependences. Calculation of the transient response by using the given mathematical causality concepts
requires equations with differenttiation procedure. But the integration procedure gives higher precision of the results, and so integration is preferred. Therefore,     another scheme of causality is needed to build up for calculation the transient responses by using mostly the integration procedures.
       The relations of MMs must be presented in a causal form in calculation program. The causality of separate equations must guarantee the capability of solution of the whole equation system. The solvability of an equation system in the existing packages should be proved with the help of special computer programs. In some cases it is necessary to add artificial elements to the system to guarantee the solvability of the equation system. In case of composing the block schemes of multi-pole models this task should be solved graphically.
    The MMs with non-causal equations are used in package Dymola. This approach is simple to use. One must not deal with the causality problems. The noncausal
equations are translated by special programs to causal equations for solution. The symbolic equation solving accomplishes the aim. But the non-causal equations
are not always useful for complicated relations. Many non-linear dependencies (e.g., hysteresis, backlash)and some devices (e.g. pressure reducing valves,
pressure compensated flow control valves etc.) have only one kind of causality. Also, the MM as a program cannot be translated into another type of causality.
    Causality is especially important by using the multilevel calculation method (on the functional element FE or subsystem SS level and on the global level of their
connection) and also by connecting the various packages. In these cases we must have available the MMs with various causality.
    The nearest to physical nature of various technical systems is the multi-pole mathematical models of their elements and subsystems (Grossschmidt et al., 1997).
The multi-pole models of the objects describe the ports, which have oriented input and oriented output variables in pair, as it is in most real physical systems.
The two-pole MMs, whose poles take into account only one input and one output variable, can be used in cases when the other pole is disregarded (in most electrical
systems) or when we need to use only a two-pole MM. In other cases we must implement the separate feedbacks (for mechanical, hydraulic and pneumatic
systems). The multi-pole model concept enables us to describe graphically the input and output variables for each FE or SS, which facilitates the model developing.

5. Multi-pole Models


5.1 General


Most used models are the two-pole and the fourpole models (Fig. 1).



An output coupled power-split transmission

Fig. 1:
Two- and four-pole models of technical system FEs

The two-pole models (Fig. 1) express the relations between flow variables B1 and B2 (form b), potential variables A1 and A2 (form a), potential variable A1 and
flow variable B1 (forms g and h). Elementary FEs (inertia, damping, resistance, elasticity) of two-pole models are expressed by one equation.
    The four-pole models (Fig. 1) show the relations between pairs of potential and flow variables (A1, B1 and A2, B2). One of the variables in pair must be the input.
Only in this way can we take into account the input and the output in the same port. Models of this form express the physical content of processes with feedback.
Four forms of such four-pole models, or otherwise, four forms of mathematical causality exist. They are denoted by letters G, H, Y and Z as in electric circuits.
Elementary FE four-pole models are expressed by two equations.
    As an example of the six-pole model, the model of a piston in hydraulic cylinder is considered. The piston (Fig. 2) has four pairs of variables, where Q1, Q2 -
volumetric flow rates, xP, vP - position and velocity of the piston (with mass m and viscose damping coefficient h), FP - force on the piston, x, v - position and
velocity on the piston rod, F - force on the piston rod.


   


User interface mask for entering input parameters

Fig. 2: Piston in hydraulic cylinder with pairs of variables






  Four forms (causalities) of six-pole models for a piston in hydraulic cylinder exist (Fig. 3).




Double-click the images to enlarge them
and click once to make them thumbnail size again.

                                    



                        Fig. 3: Six-pole models of a piston in hydraulic cylinder                                 

    The six-pole models Gh, Hh and Yg can be used for static and steady state conditions, if m = 0 and h = 0. For transient response the model Yg if m = 0 and h = 0
and model Yh, if m ≠ 0 and h ≠ 0 are used.
    Six-pole models will describe the tee couplings. Six forms of six-pole models of the tee couplings exist. Here the dependences are very simple and, therefore, all these forms can be described through the same noncausal equations. Here the symbolic solution method can be used.
    The six-pole models of elementary FEs are expressed through three equations. The multi-pole models may have more poles, as we can see from the examples
below.

5.2 Composing block schemes of multi-pole models

    For composing the block scheme for each FE and SS a multi-pole model has to be chosen (Grossschmidt et al., 1985, 1987, 1997, 1998).
The types of the multi-pole models will be selected depending on:

Table 1: Possible four-pole models of elementary functional elements for static, steady state conditions and transient response (models with differentiation)

Functional element Sign Models
Hydraulic resistance RR GRR, HRR, YRR
Hydraulic leakage LE GLE, HLE, YLE
Hydraulic volume elasticity VE GVE, HVE
Hydraulic inertia HI GHI, HHI
Mechanical elasticity EL GEL, HEL, YEL
Mechanical inertia IN GIN, HIN
Mechanical damping DA GDA, HDA

Table 2: Possible four-pole models of elementary functional elements only for transient response (models with integration)


Functional element Sign Models
Hydraulic volume elasticity VE ZVE
Hydraulic inertia HI YHI
Mechanical inertia IN YIN
Mechanical damping DA YDA

Also the more complicated FEs can have the models with preferred causality. Every block may have several mathematical models differing in estimated factors. Thus, mathematical models of different complexity can be also chosen.
    Possible connection modes of the mechanical and hydraulic element four-pole models in sequence and parallel are described in (Grossschmidt et al., 1987).

5.3 Examples of composing the multi-pole models of hydraulic systems

5.3.1 Flow control valve

    The principal scheme of a two-way pressure compensated flow control valve is shown on Fig. 4.
Notations: SP - spool valve; RS - spool valve slot; RR7 - adjustable flow control resistor; RR3, RR4, RR5, RR6 - constant local resistors; A1, A2, A3 - effective
working areas of the pressure compensator valve; Q1…Q7 - volumetric flows; p1...p6 - pressures; x - displacement of the pressure compensator valve.
    The multi-pole model of a two-way pressure compensated flow control valve for steady state conditions, frequency respond and transient respond is shown in
Fig. 5. In case of valve mass m = 0 and valve viscose damping coefficient h = 0 we can have the same model for all characteristics. The volume elasticity of the fluid
is not taken into account in this case and therefore we don’t need to use the integration procedures.
    On the block scheme Fig. 5 the valve slot RS is as multi-pole model of form Y expressed with additional feedback input as valve displacement x. The couplings
are represented as interface elements IE1…IE4. For constant resistors RR3 and RR4 the multi-pole elements of form G are used, for flow control resistor RR7
and for resistor RR6 the elements of form H and for resistor RR5 the model of form Y are used. For the spool valve displacement x six-pole model gY is used.



  Fig. 4: Principal scheme of a pressure compensated



  Fig. 5: Multi-pole model of a two- way pressure compensated flow control valve


5.3.2 Hydraulic drive

    The principal scheme of a hydraulic drive is shown in Fig. 6.
Notations: ME – electric motor; PH – hydraulic pump; TU1, TU2 – tubes; FC – three-way flow control valve; CA1, CA2 – fluid volume elasticities of cylinder
rooms; PI – piston with rod; VP - pressure control valve.
    The multi-pole model of the hydraulic drive steady state conditions is shown in Fig. 7.
Notations: ω - angle velocity of the pump; M - pump driving moment; QP - pump volumetric flow; pP - pressure at pump outlet; QTU1, pTU1 - volumetric flow
and pressure at of the right end of tube TU1; QPI1, QPI2 - volumetric flow at the left and right side of the piston; pP11, pP12 - pressure at the left and right side of the piston; QTU2, pTU2 - volumetric flow and pressure at of the right end of tube TU2; QT1, QT2 - volumetric flows to tank; p0 - pressure in the tank; v - velocity of the piston; F - load force on the piston rod.
    The multi-pole model of the hydraulic drive transient response which takes into consideration the fluid volume elasticity’s of cylinder rooms (models ZCA1 and
ZCA2) is shown in Fig. 8. Six-pole model YhPI is used for piston, four-pole model GTU2 for tube TU2 and fourpole model YVP for pressure valve VP.



  Fig. 6: Principal scheme of a hydraulic drive

  Fig. 7: Multi-pole model of the hydraulic drive steady state conditions

  Fig. 8: Multi-pole model of the hydraulic drive transient response

6. Oriented Graphs


6.1 General

    Oriented graphs graphically represent the oriented relations between variables. All the variables are presented as nodes of the graph. The arcs with arrows
represent the oriented dependencies between variables.
    The signal flow graph is an oriented graph, which expresses a linear equation system (each variable is
linearly related with other variables trough transfer factors). The linear dynamic equation system is expressed as equations in Laplace transformation. Signal
flow graphs can be simplified. Also, we can find a resulting transfer factor using the Mason formula.
    Oriented graphs of non-linear dependences can have transfer factors, depending on variables as well. These graphs are not subjects to transformations.
The oriented graph graphically expresses the structure of the system, variables and relations between variables. The equations with necessary oriented causality
must be written proceeding from oriented graph.
    The oriented graph of a hydraulic system can be composed by connecting the partial oriented graphs. Nodes of the oriented graphs can be connected together
if they express variables of the same physical content and if at least one of the connected nodes is a source in the corresponding graph.

6.2 Examples of composing the oriented graphs

6.2.1 Oriented graphs of four-pole elements

The four-pole models of forms G and H represent the orientation in both directions (transfer functions G12, G21, H12 and H21) with corrections through the cross
dependencies (transfer functions G11, G22, H11 and H22 in Fig. 9).



  Fig. 9: Signal flow graphs of four-pole models of forms G,
H, Y and Z

The four-pole models (Fig. 9) express the following equations.

Model G:
A2 = G12·A1 + G22·B2; B1 = G11·A1 + G21·B2.
Model H:
A1 = H21·A2 + H11·B1; B2 = H22·A2 + H11·B1.
Model Y:
B1 = Y11·A1 + Y21·A2; B2 = Y12·A1 + Y22·A2.
Model Z:
A1 = Z11·B1 + Z21·B2; A2 = Z12·B1 + Z22·B2.

The four-pole models of forms G and H of the elementary FEs for calculation the transient response include the members with differentiation procedure in
cross dependencies. Mostly the four-pole models of forms G and H are used for calculation of the static and steady-state conditions.
    Also the frequency characteristics can be calculated, if we take the Laplace operator s equal to jω (j - imaginary variable, ω - angular velocity) (only for linear systems). In case of non-linear dependences (valve flow characteristics, dry friction etc.) we can use the harmonic linearization of the non-linear dependences.
Then the frequency characteristics depend on the amplitude of vibrations. Such characteristics can be found for separate valves. Finding frequency characteristics
for large nonlinear systems is very difficult. Therefore, it is better to find the frequency characteristics by means of Fourier analysis of the transient response in
case of harmonic construct.
    The four-pole models of forms Y and Z of the elementary FEs change the type of variable, which proceed through other elements of the system. In the fourpole
model of form Y the potential variables are as inputs and the flow variables are as outputs. In the fourpole model of form Z conversely the flow variables are as inputs and the potential variables are as outputs. The four-pole models of forms Y and Z of the elementary FEs for calculation the transient response include the transfer functions with integration procedure.
The four-pole model of form Y for mechanical and hydraulic inertia expresses only the dynamics. The hydraulic volume elasticity four-pole model of form Z is used for dynamics only. For mechanical inertia and damping and for hydraulic inertia and resistance the four-pole model of form Z does not exist. The four-pole model of form Y does not exist for mechanical elasticity and for hydraulic volume elasticity.

6.2.2 Oriented graphs of six-pole elements of a piston in a hydraulic cylinder

The oriented graphs corresponding to six-pole models in Fig. 3 are shown in Fig. 10.



  Fig. 10: Signal flow graphs of a piston in a hydraulic cylinder
six-pole models


The four-pole models (Fig. 9) express the following equations. The six-pole model forms of a hydraulic piston
(Fig. 10) are expressed by following equations.
Model G│h:
vP = (1/A2) ·Q2;
Q1 = A1·vP;
p2 = (A1·p1 – F – (mS + h) vP)·(1/A2);
v = vP.
Model H│h:
vP = (1/A1) ·Q1;
Q2 = A2·vP;
p1 = (– A2·p2 – F – (mS + h) vP)·( – 1/A1);
v = vP.
Model Y│g:
vP = v;
Q1 = A1·vP;
Q2 = A2·vP;
F = A1·p1 – A2·p2 – (mS + h)·vP.
Model Y│h:
vP =(1/(mS + h))·(A1·p1 – A2·p2 – F);·
Q1 = A1·vP;
Q2 = A2·vP;
v = vP.

Models of forms G│h, H│h and Y│g include the procedure of differentiation. For simulation of transient responses, these models are not recommended. The
models are suitable for steady-state conditions (we must take the Lagrange operator S = 0). The model Y│h include the procedure of integration. Therefore
this model is recommended to use in simulation of the transient response.

6.2.3 Oriented graph of a two-way pressure compensated flow control valve

The oriented graph of a two-way pressure compensated flow control valve in correspondence to the scheme in Fig. 4 and the block scheme in Fig. 5 is
shown in Fig. 11.


  Fig. 11: Oriented graph of a pressure compensated two-way
flow control valve


In correspondence to oriented graph we can write the equations. The graph Fig. 11 shows that we have many loop dependences. The equation system can be
solved using iteration. For enabling the iteration we must split some nodes so that all loops are cut down. For the graph (Fig. 11) the nodes x, p3, p5, p6 and Q7 are
split. Accordingly, for simulation we have a model, consisting five iteration equations. The other variables can be found using dependences from this five iterated
variables.

7 Programming Environment

    A new programming environment CoCoViLa is currently used as a tool in modelling and simulation of the fluid power systems. CoCoViLa is mainly based on
the similar principles as the previously used programming environment NUT (Tyugu et al. 1997).
    CoCoViLa is a programming environment, which supports declarative programming in a high-level language, automatic program synthesis and visual programming.
CoCoViLa is elaborated in the Institute of Cybernetics at the Tallinn University of Technology, in 2005-2008. The CoCoViLa environment is Java based, free and platform-independent.
    The compiler-compiler of visual languages CoCoViLa (Fig.12) supports a language designer in the definition of visual languages, including the specification
of graphical objects, syntax and semantics of the language. CoCoViLa provides the user with a visual programming environment, which is automatically generated from the visual language definition.
    When a visual scheme is composed by the user, the following steps - parsing, planning and code generation - are fully automatic. The compiled program then provides a solution for the problem specified in the scheme, and the results it provides can be feedback into the scheme, thus providing interactive properties.


  Fig. 12: Technology of visual programming in CoCoViLa

    Automatic synthesis of programs is a technique for the automatic construction of programs from the knowledge available in specifications. Having a specification
of a class, we are, in general, interested in solving following problems:
    Find an algorithm for computing the values of components y1,..., yn from the given values of components x1,..., xm.
Find an algorithm for computing the values of all components that can be computed. The automatic synthesis of programs is based on proof search in intuitionistic propositional logic.
    From a user’s point of view the CoCoViLa framework consists of two components: Class Editor and Scheme Editor. The Class Editor is used for defining models of components of schemes as well as their visual and interactive aspects. The Scheme Editor is a tool for the language user. It is intended for developing schemes and for compiling (synthesizing) programs from the schemes according to the specified semantics of a particular domain. The Scheme Editor is implemented using Java Swing library. It provides an interface for visual programming, which enables one to compose a scheme from shapes of classes. The environment generated for a particular visual language allows the user to draw, edit and compile visual sentences (schemes) through language-specific menus and toolbars.
    Having developed the visual language we are able to load it in the Scheme Editor and build schemes by putting visual objects on the drawing canvas and connecting them through poles.
    The Scheme Editor is fully syntax directed in the sense that the correctness of the scheme is forced during editing: drawing syntactically incorrect diagrams is
impossible.
    The way to handle large schemes in the Scheme Editor is to use hierarchical composition in building the scheme. Any part of a scheme can be encapsulated as a
separate class, so a large scheme can consist of a hierarchy of schemes, where each scheme object can contain sub-schemes. This means that schemes can be
viewed in several different levels of abstraction, in order to encapsulate and manipulate parts of the scheme which are relevant to a particular issue.
    When the visual classes have been built by software developers who must understand the problem domain as well, the language user need not be a software expert,
but can work on the level of visual programming, arranging and connecting objects to create a scheme. Manipulating the scheme – a visual representation of a
problem, is the central part of the user’s activities.
    Implementing of the proposed model composing methodology and using for simulation the programming environment CoCoViLa for hydraulic-mechanical
load sensing fluid power system is shown in Part 2.

Conclusions



      In the paper, an object-oriented modelling procedure based on multi-pole models with using the visual programming environment CoCoViLa is proposed for
fluid power systems. The multi-pole models take into account the action propagation in both directions as it occurs in hydraulic and mechanical systems. For composing a model for the whole fluid power system, it is necessary to build suitable multi-pole models of objects and connect them between themselves. The models for static or steadystate conditions and for transient response must be different, when the model of component do not consist static or steady-state condition (the multi-pole models form Z for dynamic).
    Composing of multi-pole models enables one to find the best model, where all the oriented causalities of objects are graphically settled.

The oriented mathematical dependences between variables of an object (e.g. various hydraulic valves) are convenient to express as oriented graphs. The proposed model composing procedure enables one to compose the model as a program for each object for use in distributed simulations. Composing and solving of the equation system for whole fluid power system is avoided.
The used visual programming environment CoCoViLa supports declarative programming in a highlevel language and automatic program synthesis. CoCoViLa is free, platform-independent, Java based. CoCoViLa supports a language designer in the definition of visual languages, including the specification of graphical objects, syntax and semantics of the language.

Acknowledgement

This research was supported by Estonian Science Foundation (Grant No. 7091).

References

Fishwick, P. 2007. Handbook of Dynamic System Modelling, Chapter 26, Peter Breedveld, Port-Based Modeling of Engineering Systems in Terms of
Bond Graphs. Taylor & Francis Group, LLC.

Grigorenko, P., Saabas, A. and Tyugu, E. 2005. COCOVILA - Compiler-Compiler for Visual Languages. Proc. of the 5th Workshop on Language
Descriptions, Tools and Applications, v. 141, n. 4 of Electron. Notes in Theor. Comput. Sci., pp. 137- 142. Elsevier.

Grossschmidt, G., Vanaveski, J. and Pahapill, J. 1987. Blockschemazusammenstellung der hydromechanischen Systeme aus Mehrpolmodellen der Funktionalelemente, 7. Fachtagung Hydraulic und Pneumatik. Vorträge - Teil 1,2, Dresden, DDR, S.138-146.

Grossschmidt, G. 1997. Principles of Modelling and Simulation of Technical Chain Systems. Simulation in Industry, 9th European Simulation Symposium
October 19-22, Passau, Germany, pp. 705-712.

Grossschmidt, G. and Vanaveski, J. 1998. Causality of Mathematical Models of Technical Systems. Proc. of the 12th European Simulation Multiconference
ESM´98, Simulation - Past, Present and Future, June 16-19, Manchester, United Kingdom, pp. 191-195.

International Journal of Fluid Power 2000 to 2006. Software for Fluid Power Technology. Issues 1 to 20.

Tyugu, E. and Valt, R. 1997. Visual programming in NUT. Journal of visual languages and programming, v. 8, 1997, pp. 523-544.



BACK



©2009 Fluid Power Net All rights reserved. Disclaimer