Flight plan development language allowing automatic flight planning for automated spacecraft
Purpose The article considers the flight plan development language, used in software complex for automated spacecraft (SC) flight planning [1] to describe instruction structures [4] and prepare the initial flight plan data. Design/methodology/approach The language of the flight plan development is based on methods of structural, modular and object-oriented programming. [3] Like other high-level languages, the language of the flight plan development consists of characters, tokens (basic structure), expressions, operators and classes. The problem of developing a new language stems from the need to develop a tool allowing describe commands used to plan the flight control and actions performed according to them. The flight plan development language uses six types of data such as integer, character, logic, calendar date, time and n-tuple to store control commands parameters vector. All calculations made are control commands execution time operations. This language defines variables for command time values storage. Each variable consists of type and name. The type determines the properties of a variable, and the name points for which command it is necessary to make calculation. Calculation of values is performed using the operations, which determine what time operations should be performed. In addition to time operations, this language defines execution of conditional operations. Conditional operations are used to set the conditions for issuing control commands implemented during n a spacecraft communication with ground control station. To provide repetitive calculations the language uses the cycle statement. To describe more complex language constructions, used to compile a flight plan, «classes» were included. These Classes are used to describe the command structures. They represent a model carrying out an action executed by either SC, or a Ground Automated Control Complex. The elements that constitute such a structure can be both control commands and command structures themselves except the given one. The language of the flight plan development was created for a formalized description of the command structures and the initial data used to compile a flight plan in an automated way. It allows describe the flight plan elements and structures more clearly, hiding the details of their realization. Its helps to provide the input data preparation for an automated spacecraft flight planning software complex. Findings This work results in creation of the flight plan development language for an unmanned spacecraft automated flight planning software complex. It aid in the description of structures and preparation of the input data used for compiling the flight plan in an automated way. The developed language made it possible to formalize the description of the flight plan command structures, the initial data structure and simplify the way to describe them, while reducing the number of operators used in the description. The created flight plan development language was implemented at the Mission Control Center (MCC) software as part of a complex of automatic spacecraft mission planning and has been used to prepare the initial data for the flight control of space crafts of scientific and socio-economic purpose. Research limitations/implications The flight plan development language can be applied during preparation of the flight plan initial data to control an automatic spacecraft of scientific and socio-economic purpose. Originality/value 1. The flight plan development language has been created to describe the command structures and initial data preparation for flight plan made by an automated way with use of software complex of unmanned spacecraft automated flight planning. It was designed based on high level programming languages C ++ and C #. 2. The created flight plan development language allows structuring the initial data and to make it easy to read. Control commands are the basic elements of the flight plan. A simplified description of the flight plan structure allowed presenting a plan in the form of separate blocks and hiding from a human the details of its implementation using classes implemented to describe the command structures, which are based on the control commands. 3. The application of the flight plan development language for flight planning software complex of automated spacecraft has reduced the number of operators necessary to describe the initial data. This allowed reducing the time assigned for the preparation of the initial data and the number of errors introduced into the plan. 4. The flight plan development language as a part of flight planning software system was implemented in the MCC and was used for preparation of the initial data for an unmanned spacecraft of scientific and socio-economic purpose flight control.