Themes of publications
The scheme of graphic programming for Management Information System constructed on principles of circuit emulation.   / Theme:  Computer science /  / Authors:  Kovalev Sergey /

( Reduced version of the text )

The foreword systems of graphic programming Existing presently are the tool means, allowing to develop the applied software for controllers of systems of automatics not resorting to traditional programming. In the field of Management Information System  they have reached the greatest development, becoming the integral component so-called SCADA (Supervisory Control And Data Acquisition) and SOFTLOGIC systems.

At traditional programming the algorithm of management, developed the programmer, is realized by a writing by it of sequence of program operators. Thus that the algorithm has preliminary been outlined by the programmer on a leaf of a paper means or is even presented in a head. The idea of Graphic Programming consists that the algorithm is drawn not on a paper, and on the screen of the display. Thus, development of programs of management consists in "assembly" of algorithms of management from ready "cubes" - functional blocks - in the environment of the graphic editor.

The basic purpose, at creation of such tool means, pursues idea of creation of operating programs for systems of automatics without participation of programmers.

Than such disgrace is caused?

The matter is that old dream of designers of Management Information System was an idea about the uniform specification of the project in a chain " the customer - the technologist - the programmer ". Its decision would allow representatives of different professional groups - to the customer, the technologist and the programmer - unequivocally to understand each other.

How business now are?

The result of teamwork of the customer with the technologist - is the certain algorithm presented in the form of graphic figure or the verbal description - that acts as a basis of the document named by the technical project , which is assured by press of the organizations. It is necessary for programmer to work informal operation of translation of this document on language of machine codes - software product given to the customer. Here all troubles also begin. In most cases transition from algorithmization before programming represents the certain problem. The programmer should finish thinking how to present its calculator in clear language for it - language of program codes. Thus it turns out, that the program displays how the programmer could understand initial algorithm. Finally two algorithms are formed: one on a paper, for the reporting and documenting of design decisions, and another - in listing the program.

Often occurs so, that columns of algorithm, developed the programmer, does not converge with columns initial algorithm. In other words, columns appear not isomorphic. In what it can result? - to that "places" the program developed by the programmer, can work not how it has been conceived by the technologist. In what it is expressed? - in forgotten spacecrafts ( which antenna it has wrongly been induced not in that party), the shops of factories landed in air and factories, etc.

On the other hand, programming, despite of the mass character, remains art. Therefore each programmer programs how is able. For today all attempts completely to formalize or automate process of a writing of programs have appeared unsuccessful. Therefore the degree of expenses of time and the means allocated for the project, directly depend on abilities and ambitions of the programmer.

Besides, It appears the uniform holder the logic information and the person, capable to understand the creation and on which the destiny of the project, finally, depends. There is nothing and speak about a case, when the person can simply leave at the height of the project.

Except for notorious " the human factor " there is another, not less terrible, is an avalanche growth of a program code in the software products, connected with growth of functional complexity of algorithms of management. Therefore more and more efforts it is necessary from the developer on a writing and adjustment of a code, leaving there are less than forces and time for study of the task and optimization. Process of correction of mistakes more and more reminds «patchig holes».

According to data of the report National institute under standards and technology, the volume of economic losses from erroneous software only in the USA reaches several billions dollars a year that makes nearby 1 % of a national total internal product. (Research Triangle Institute, NIST Planning Report 02-3, May 2002).

Modern SCADA systems - whether all so is good?

Presently among IT-experts the idea is widely widespread, that occurrence of any sort SCADA and SOFTOGIC systems allows to solve the above-stated problems.

Actually all is far not so.

Though each such system can and not request a profound knowledge of hardware maintenance of controllers, equally are complex enough systems, which demand enough greater efforts and time for development. These are volumes of the documentation, and besides programming languages, let and another to sense, for example - consecutive function charts, relay logic, functional block diagrams. And from universal languages (BASIC, C, Pascal) still nobody refused. Moreover, any programmer, by development of serious Management Information System  will prefer universal languages as graphic designing for the present remains more toy and beautiful advertising packing to existing systems of designing.

Thus, still early to speak, that for such systems it is already possible to plant directly technologist. So still early to speak, that modern means of graphic programming already allow to develop the unique (through) design documentation for a chain: " customer -technologist - programmer ".

Not superfluous will recollect also, that successful introduction of such systems is practically impossible without preliminary purchases at firms-suppliers of research ranges which integration is planned on object. Otherwise there is a risk to receive non-working system or, at least, not optimized.

To functional complexity it is necessary to add also a problem of resources. In fact for the majority of known systems the necessary resources of the PC, that in conditions of the industry automatically supposes use of dear industrial computers, instead of cheaper microprocessor controllers.

It is not necessary to forget also about a problem of multiprocessor processing, when all to "schedule" should be put aside and manually to start designing interfaces an exchange. And, having wandered over the WWW, we shall find out numerous materials ,which testify that this problem as a whole still far from the final decision even at a theoretical level.

Besides, more full to see advantages of system of the graphic programming constructed on principles of circuit emulation, in comparison with huge number of systems already known for today, it is necessary to understand - and in what the ideology of work of the last consists?

And for this purpose, first of all, it is necessary to realize precisely, that any known System of Graphic Programming is under construction on three foundations: the graphic editor (the editor of drawing of schemes), the graphic compiler and systems of performance. As to editors of drawing here problems like would be not present: even to design such "piece" on forces practically to any programming student (the truth which studies, instead of costs in turn behind the diploma).

And here graphic compilers - are much more serious than a thing. "Duties" of this components include revision of graphic figure of the project and generation of an initial code of the program, that differently the programmer had to type "handles". Then the initial code is compiled in some intermediate code. All this work is carried out by the programmer on a workstation (PC). After that the file of an intermediate code can be loaded into the built in controller. There the special interpreter of an intermediate code - system of performance is loaded also.

For what the intermediate code is necessary? Only as much a possible to simplify the interpreter (system of performance). It is done with the unique purpose - to have an opportunity "to put" it in any microprocessor platform.

Now it is clear, that a basic difference between SCADA systems and usual systems of visual programming, such as DELPHI, Visual C, Visual Basic (, etc.) is not present. Therefore as in both cases initial texts of programs are generated on visual components which have been used in the project.

Classical example can be nationally known program ISAGRAF (from ICS Triplex ISAGRAF Inc.). Here at compilation of a file of the graphic project the intermediate, so-called Tic-code, which is then loaded into the built in controller is generated. There the so-called Tic-interpreter which carries out function of system of performance is loaded in addition. In not less national program LABVIEW (from National Instruments) generated initial texts are coded in a so-called intermediate G-code, and after is interpreted carried out directly on the PC from LABVIEW environment.

Such "focus" possibly with ease could reach and developers LABVIEW, it is enough them to realize only an opportunity of a unloading in operating system (controller) the G-interpreter, which built in in the environment. And I had even to hear, that in last versions of the program this function even is already realized.

On the same principles it is constructed widely known SCADA Delta V.

In parallel above the considered ideology exists little bit excellent, it consists that at a stage of work of the graphic compiler the intermediate code is generated not, and executive at once ,which is loaded into an industrial computer. The truth to speak, in this case, about system of performance it is not necessary, as in this case it is changed for the so-called environment of execution - hard &software system for what, are certainly necessary already resourses of PC.

Such ideology, as a rule, also is offered known systems of graphic programming. In LABVIEW for this purpose there is addition Application Builder for LABVIEW, that allows to generate оptimized  code similar to a program code of the C-compiler. Such code still can be named - RUN-TIME the module. System ISAGRAF also allows to spend generation of a usual C-proceeding code, which the usual C-compiler we receive "classical" RUN-TIME the module.

Idea RUN-TIME of modules has found application and in other systems of class HMI and SCADA, for example in Lookout for Windows (the same firm). And also widely known Ultralogic (Ultralogic) in which the file, settles down in the controllers of type ADAM combined with the personal computer.

What is the circuit emulation?

So, in a basis of new ideology " the program of Circuit Emulation " lays author's. What it is necessary to understand as this word-combination? In fact any electronician will object, that is not present in the nature of programs such , and it will be absolutely right. So-called programs-simulators, such as Micro-CAP from " Spectrum SoftWare ", PSpice from " MicroSim Corp. ", etc. what during the Soviet epoch at us could be named programs modelling of electronic devices.

The principle of circuit emulation allows to organize simply and effectively procedure of visualization proceed in debugged Management Information System of processes. For this purpose will enough attach the personal computer to a platform for the period of adjustment. Visualization can be spent both in a mode of real time, and in a step-by-step mode - in a so-called mode of cycles.

The program-visual analyzer installation on such PC, will play a role of a multichannel oscillograph ,which mirror displays levels of signals in corresponding circuits of algorithm of management of Management Information System . For a case of two-level (multilevel) Management Information System , where presence of the PC operators, the visual analyzer is represented in the form of pictures of technological process.

 



Contact emailsimula@ukr.net

Contact phone: +38(044)543 36 07

Country: Ukraine

City: Kiev, 02192

Address: 73 app., 21-b ,Malyshko str.

Back to the list