DEVELOPMENT OF A CYBER DESIGN MODELING DECLARATIVE LANGUAGE FOR CYBER PHYSICAL PRODUCTION SYSTEMS

DEVELOPMENT OF A CYBER DESIGN MODELING DECLARATIVE LANGUAGE FOR CYBER PHYSICAL PRODUCTION SYSTEMS IGOR NEVLIUDOV, VLADYSLAV YEVSIEIEV, JALAL HASAN BAKER, M. AYAZ AHMAD, VYACHESLAV LYASHENKO Department of Computer-Integrated Technologies, Automation and Mechatronics, Kharkiv National University of Radio Electronics, Ukraine Department of Physics, Faculty of Science, University of Tabuk, Saudi Arabia Department Informatics, Kharkiv National University of Radio Electronics, Ukraine


INTRODUCTION
Modern high-tech production is not possible without the implementation of Industry 4.0 concepts, the basis of which is the creation of Digital Twins, which are implemented in the form of cyber-physical production systems (CPPS). CPPS is the synthesis of physical (sensors, executing mechanisms) and cybernetic (control programs, monitoring, decision-making, visualizations) components in a single information space [1][2][3][4][5]. Considering the cybernetic component as a set of software and modules that, using the Human-Machine Interface (HMI), to interact with users at levels from Supervisory Control And Data Acquisition (SCADA) to Enterprise Resource Planning System (ERP) [6][7][8][9][10][11]. A critical analysis of publications showed that the development of CPPS software is based on the following methodologies: Rapid Application Development (RAD), Rational Unified Process (RUP), Disciplined Agile Delivery (DAD), is partially possible, but none of the listed methods does not allow automation of CPSS cyber part development process [12][13][14][15]. Based on their own experience in creating CPPS, the authors developed a declarative HMI cyber-design modeling language based on the properties of object-oriented programming languages GUI elements.

Definition of the CPPS cyber design modeling language keywords
Let us define the concept of a cyber design modeling language for CPPS as a declarative (nonprocedural) language, the purpose of which is to define and describe terminologies based on models and relationships between metadata and domain data and ways of transforming them.
Within the framework of the research data, we define the following keywords: Form (Windows Form)some dedicated and uniquely identified part of the subject area.
Within the framework of these studies, it has the following properties: Purpose is a description of the parameters necessary and sufficient for displaying and modeling a visual presentation Form .  (2) EventForm is an event or group of events (action) that can occur (have already occurred or will occur) with the subject area at some moment or time interval. It can be identified by time (necessity) and the object to which the event belongs. Only one user-initiated event can occur with one object at a time.   olutions ContainerS is a named description of reactions when an event or a group of events occurs at a certain point in time to an element (group of elements) or subject area. Has a rigidly structured structure (depending on the high-level programming language and development environment), which is necessary to achieve the development goal or is indicated in the TR.

Development of specifications for the CPPS cyber-design modeling language
The following data model language specification is proposed: -allowed alphanumeric characters that are supported by development environments for high- -key words: basic concepts in the form of words reserved in the developed NM and are used to describe key features are described above.
-identifiers, used to indicate the following features: As you can see, unlike keywords, the proposed identifiers can theoretically be redefined, but this gives the errors possibility, as a result of which the identifiers listed above are included in the fixed key layers dictionary.
-literals, a specific set of values that are not represented by an identifier.
String literals are represented as a sequence of allowed characters with different types of writing (uppercase and lowercase) letters. E.g., name_form, the name of the form that is used in the parameters Caption , Name etc., And also assigning a unique name. ( name ) for each ariable LingusticV , which contains a certain piece of program code. An example of "save in the database", "calculate the result", etc., which are set by the end user for the convenience of using the developed language. Reserved literals represent a word, phrase or abbreviation, which makes it possible to select one or another property of the parameter necessary to achieve the requirements specified in the technical specification by the customer. An example would be a shape property , and also specialized, that is, belong to a certain visual form that describes the specifics of a particular element. But, it should be noted that reserved characters for determining the values of one or another visual components parameter that have the same purpose, but can perform different specified functions and process events in the same development environment. Text / linguistic (char) allows you to assign to a parameter logically ordered values of symbols that contain explanations necessary for the user or the graphic elements name necessary for the convenience of working with CPPS. Also, this type of value representation is used to set a specific name ariable LingusticV , which is assigned to the event EvenForm ,   Commentsall characters and lines written inside this construction are ignored by the modeling language (ML) interpreter and are perceived as comments. Alphanumeric characters of national alphabets supported by the operating system and development environment are allowed.

Types of presented values
The limitation for comments is that the sequence should not exceed 255 (FF) characters.
?** (question mark with two asterisks) shows that the given characters are followed by a comment, which is ignored by the ML interpreter. **? (two asterisks and a question mark)shows that after the given characters, the comment ends and then the text that is not ignored by the ML interpreter.
To adapt the developed syntax for ML describing, we proposed to use the Beckus-Naur form.
The rationale for this choice was that the extended Backus-Naur form is used to describe context-free grammars and makes it possible to simplify and shorten the description [16][17][18]. The 529 DEVELOPMENT OF A CYBER DESIGN MODELING DECLARATIVE LANGUAGE extended Backus-Naur form is described in the international standard ISO / IEC -14977 [19].
Analysis of ISO / IEC-14977 showed that the extended Backus-Naur form makes it possible to develop an intuitively simple and adaptive formal language for representing and describing the necessary data for CPPS development based to object-oriented programming approaches.

CPPS cyber-design modeling language syntax diagram development
Based on the proposed above specification of the language matamodel, the authors propose the following syntax diagram, which is shown in Figure 1   For ease of reading and presentation of the developed declarative language (Figures 1 and 2), it is necessary that it has the qualities of understanding and reading. This can be achieved using at least three principles of language representation [20], namely was: -maximally linear; Based on the proposed assumptions and recommendations for the declarative language being developed, the CPPS developer proposes the following type of model language notation style, which makes it possible to simplify and standardize the code.  Use of "/" (slash) will allow the ML interpreter to determine the degree of a visual element nesting (belonging) to another, that is, to implement a CPPS structure tree in the development environment. Figure 3 Figure 6 shows a fragment of the RadStudio XE6 development environment with a generated user interface in accordance with meta description 12. Based on the proposed syntax diagram presented in Figure 1, the following event method description is proposed ( event ) for Form and m ElementFor . Based on example 1, we will  (14) where cod is a a piece of program code in the selected object-oriented language.

Experimental research
As a result of the method description 13 implementation, the developer receives the generated program code shown in Figure 7. Let us consider a fragment of method description example using an example 6 implementations of more complex code constructions that was generated in the design process of the "Automated standardization system "NORMA" (copyright certificate of Ukraine . An example of the generated program code after editing by the developer is shown in Figure 8. which can be supplemented during the CPPS development work. This solution allows adapting the proposed method description to any object-oriented language, and also allows the developer to expand the DB with new "Container Solutions", which will reduce the time at the programming stage in the future. The proposed solutions were implemented in the "Computeraided design software for cyber-physical manufacturing systems" copyright certificate of Ukraine No. 74576 dated 09.11.2017.

CONCLUSION
As a result of the consistency of the modeling language syntactic constructions developed terminological basis and the terms in which the main structural components are described. In practice, it allowed us to develop an interpreter that is able to automatically translate the developed graphical interface (HMI), compiled in terminology close to a certain subset of natural language, its properties and properties of GUI elements, as well as events on the basis of which interaction with the user is implemented into the format of development environment commands and high-level language programming on which the CPPS cybernetic component is being