Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The same reference numerals denote the same or similar parts in the drawings, and thus, a repetitive description thereof will be omitted.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the subject matter of the present disclosure can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known methods, devices, implementations, or operations have not been shown or described in detail to avoid obscuring aspects of the disclosure.
The block diagrams shown in the figures are functional entities only and do not necessarily correspond to physically separate entities. I.e. these functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor means and/or microcontroller means.
The flow charts shown in the drawings are merely illustrative and do not necessarily include all of the contents and operations/steps, nor do they necessarily have to be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the actual execution sequence may be changed according to the actual situation.
It will be understood that, although the terms first, second, third, etc. may be used herein to describe various components, these components should not be limited by these terms. These terms are used to distinguish one element from another. Thus, a first component discussed below may be termed a second component without departing from the teachings of the disclosed concept. As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.
It is to be understood by those skilled in the art that the drawings are merely schematic representations of exemplary embodiments, and that the blocks or processes shown in the drawings are not necessarily required to practice the present disclosure and are, therefore, not intended to limit the scope of the present disclosure.
Fig. 1 is a schematic diagram of a measurement, operation and control platform of a commercial satellite in the prior art. In the satellite remote measurement and control, a station control and task plan is the core of a satellite measurement, operation and control system, and a functional diagram and a system interface of the measurement, operation and control system are shown in fig. 1.
The functional module may include:
system and network management: the device and user management and configuration of the software platform are responsible;
measurement and control arrangement: the system is responsible for customized compiling and solving processing according to a satellite measurement and control instruction list and a display and control requirement, and is divided into display and control arrangement and instruction arrangement;
measurement and control processing: processing remote control and remote measurement instructions according to the result of the measurement and control arrangement, completing instruction management, code table management, remote control framing, remote measurement analysis, remote measurement distribution and task arrangement aiming at a certain specific action, and also completing information playback, ringlet comparison and other processing;
display control treatment: the returned satellite telemetering information can be displayed in the modes of characters, graphs and the like, and the state of the satellite can be displayed through two-dimensional and three-dimensional graphs;
and (3) displaying comprehensive situation: the two-dimensional and three-dimensional graph and character information display of the comprehensive situation state of various information in charge of the operation of the constellation communication system;
and (4) storage processing: storing data of remote control and remote measurement in a database and file form;
carrying out satellite management: and completing the operation control management functions of the satellite, including orbit information processing, planning and arrangement, and various control and processing of the ground station network.
FIG. 2 is a block diagram illustrating a test system for testing a run-time platform according to an example embodiment. As shown in fig. 2, the test apparatus 20 for testing, transporting and controlling a platform may include: the dynamic data device 202, the automation control device 204, the test, operation and control platform 206, the server 208, and the testing device 20 for the test, operation and control platform may further include: a test server 210 and an interface test device 212.
The dynamics data device 202 is used for simulating the satellite operation condition according to preset parameters to generate simulation data; the dynamics data apparatus 202 is also used to simulate the conditions of the various phases of the satellite flight to generate simulation data corresponding to the different phases.
The automation control device 204 is used for generating a simulation operation instruction and inputting the instruction into the test, operation and control platform;
the measurement, operation and control platform 206 is configured to obtain the simulation data and/or the simulation operation instruction, perform internal processing, and generate comprehensive state display data;
the server 208 is configured to obtain the simulation data and the integrated state display data, and generate a test result of the test, operation, and control platform according to the simulation data and the integrated state display data.
The test server 210 is configured to obtain input and output data of the server and perform a performance test on the server. The server 208 needs to record the working states of all phases of the satellite and the running state of the ground test equipment in real time, the required data volume is large, the requirement on the database of the server 208 is high, and the test server 210 is also used for testing the performance of the database of the server 208, so that the integrity of data recording and the timeliness of query are ensured.
The interface testing device 212 is used for testing the interface of the test, operation and control platform.
The interface testing device 212 is further configured to set the interface between the dynamic data device 202, the automation control device 204, the test, operation and control platform 206, the server 208, and the test server 210 and the format of transmission data, so as to ensure interface data matching between components.
The interface testing device 212 is further configured to verify correctness of interface matching among the dynamic data device 202, the automation control device 204, the test, operation and control platform 206, the server 208, and the test server 210, and can simulate actual telemetry and remote control data of a satellite, detect whether a related data structure of the satellite is correct, and detect whether performance meets requirements.
FIG. 3 is a block diagram illustrating a test system for testing a run-time platform according to another exemplary embodiment. As shown in fig. 3, the system architecture 30 may include a dynamics data device 301, an automation control device 302, a test and operation control platform 303 to be tested, a network 304 and a server 305. The network 104 is used to provide a medium for communication links between the dynamics data device 301, the automation control device 302, the test and operation control platform 303 to be tested, and the server 305. Network 304 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The dynamics data device 301, the automation control device 302, the server 305 may interact with the test, operation and control platform 303 to be tested through the network 304 to receive or send messages, etc. The dynamics data device 301, the automation control device 302 and the server 305 may be installed with various communication client applications, web browser applications, search applications, instant messaging tools, mailbox clients, social platform software, etc.
Dynamics data device 301, automation control device 302 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablets, laptop portable computers, desktop computers, and the like.
The dynamic data device 301 may, for example, generate simulation data by simulating the operation of the satellite according to preset parameters; the automation control 302 may, for example, generate simulated operation instructions based on the test script; the measurement, operation and control platform 303 acquires the simulation data and/or the simulation operation instruction to generate comprehensive state display data; the server 305 generates a test result of the test, operation and control platform according to the simulation data and the comprehensive state display data.
Furthermore, the satellite dynamics data in the dynamics data device 301 is written by MATLAB and data simulation is completed on the dynamics model of simulink, and the simulation data is sent to the measurement, operation and control platform 303.
The operation and measurement control platform 303 receives the simulated data transmitted by the dynamic data device 301, analyzes and unpacks the simulated data, performs measurement and control processing, transmits the simulated data to each subsystem for functions of remote measurement, task planning, task scheduling and scheduling, three-dimensional situation processing and the like, generates a remote control command according to the simulated data, performs customized encoding and decoding processing on the remote control command according to a satellite measurement and control command table and a display and control requirement, and performs simulation annotating on the remote control command by dividing the display and control encoding and command encoding processing.
The simulated telemetry data is sent to the server 305, the server 305 sends the request result to the client, the user curve is displayed and compared with the data, and the performance of database write query data is tested in the process.
The automation control means 302 monitor the interface of each step of the overall system.
The dynamics data device 301 may, for example, perform a simulation calculation of the satellite attitude and orbit dynamics, including a calculation of a satellite attitude and orbit model, a calculation of a sensor and actuator model, and acquisition and output of control interface signals, and finally output simulation data.
More specifically, the actuator model system can comprise modules such as high-precision ephemeris forecast, orbit keeping calculation, orbit maneuver calculation, orbit control calculation rechecking, orbit control effect evaluation and software parameter setting, has the functions of low-orbit satellite orbit keeping and maneuver, can calculate satellite orbit control related parameters according to requirements and recheck the orbit control parameters, and can evaluate the orbit control effect after actual orbit control is executed.
The purpose of orbit keeping is to ensure the application scene of the satellite, and according to the typical application (remote sensing and communication) requirements of the low-orbit satellite, the targets for orbit keeping can be divided into subsatellite point drift control, phase keeping control, ascending intersection point right ascension angle keeping control and the like, the targets for orbit maneuvering can be divided into three types, namely changing semimajor axis, coordinating control of orbit semimajor axis, eccentricity and near-place amplitude angle, and adjusting control of ascending intersection point right ascension and orbit inclination angle.
When the dynamics data device 301 is actually applied, a suitable orbit control target can be selected according to different application scenarios of orbit keeping and orbit maneuvering, and orbit control parameters are calculated so as to generate simulation signals.
Furthermore, the calculation of the orbit control quantity needs to be converted into various parameters required by the execution of the satellite, and the various parameters are injected to the satellite for actual orbit control, so that the dynamics data device 301 needs to output the orbit control execution parameters, that is, the dynamics data device 301 finally outputs the orbit control data including the startup time, the startup duration, the thrust direction and the like by loading the satellite propulsion system model.
Due to the importance requirement of the orbit control, before the orbit control calculation data is applied to the dynamics data device 301, the orbit control calculation amount needs to be rechecked and recalculated, so that the operation safety of the task is ensured.
The automation control means 302 may, for example, simulate the operation of a browser by a real user using the selenium automation test framework. When the test script is executed, the browser automatically clicks, inputs, opens, verifies and other operations according to the script code, just as a real user does, the application program is tested from the perspective of the terminal user, and the function result of the whole test, operation and control platform is checked.
The server 305 may, for example, perform satellite software annotation processing on the results, operate the interface on the database, and configure the interface with remote control commands, run on the remote control and telemetry annotation computer while locally storing the operation records, and complete the data sent from the signal automatic acquisition machine and the dynamics target machine and write the data into the database.
At present, a dynamic data device 301, an automation control device 302 and a server 305 are developed on an existing measurement, operation and control platform 303, and the main functional parts of the system are completed. The software corresponding to the measurement, operation and control platform 303 is divided into a front part and a rear part. The software back end is used for processing data and services, carrying out corresponding operation on the services according to requirements, and carrying out operations such as storage, query and the like on the data. The platform needs to meet data splicing, assembling and integrating of a large number of satellites in the later stage, the software platform needs to meet processing requests of massive data such as satellite remote control data and data transmission data, and the platform system guarantees stability and reliability of the whole project under the condition of massive requests through technical means such as service function modularization, distributed databases and read-write separation.
And the software front end realizes the collection of user requests and the display of the feedback data of the back end. The front-end software has a good color matching scheme and reasonable function partition, so that a user can quickly become familiar with various functions of the software and has good user interaction experience. The front end can be compatible with various platforms, so that a user can perfectly run software on various terminals.
In the test of the test, operation and control platform 303, a plurality of test distribution models are loaded to test the functions of the system, the system processes simulation satellite data according to different distribution models, the simulation data under the models are sent to the test, operation and control platform 303, the test results are written into the server 305, and finally, the functional performance parameters of the satellite test, operation and control system are obtained through statistical analysis.
And finally, taking out the performance parameters obtained by the test from the database, analyzing and comparing simulation results, analyzing and integrating the system, and displaying to obtain a test result. In order to develop further improvements in system functional performance.
At present, the test system for the test, operation and control platform developed according to the method disclosed by the invention is used for testing the existing test, operation and control system, obtains data of functional test and performance test, and provides a direct basis for evaluation of the system.
Fig. 4 is a flowchart illustrating a testing method for testing a motion control platform according to an exemplary embodiment. The test method 40 for testing, operating and controlling the platform at least includes steps S402 to S408.
As shown in fig. 4, in S402, simulation data is generated according to the preset parameters to simulate the operation of the satellite. The method comprises the following steps: generating a celestial body track according to the simulation time interval, the celestial body parameters and the celestial body initial conditions; generating orbit data of the satellite based on the gravitational constant, the star mass and the star position; generating attitude data for a satellite based on the celestial body track and the orbital data; and generating the simulation data based on the attitude data and the orbit data.
In S404, a simulation operation instruction is generated based on the test script. Generating a test script based on a selenium automated test framework; the test script calls a browser to operate so as to generate a simulation operation instruction.
In S406, the measurement, operation, and control platform obtains the simulation data and/or the simulation operation instruction, and generates comprehensive state display data. The test, operation and control platform acquires the simulation data and carries out internal processing to generate the comprehensive state display data; and/or the measurement, operation and control platform acquires the simulation operation instruction and performs internal processing based on the simulation operation instruction and the method simulation data to generate the comprehensive state display data.
In S408, a test result of the test, operation, and control platform is generated according to the simulation data and the comprehensive state display data. Simulation test results can be generated, for example, from the simulation data and the simulation operation instructions; and comparing the comprehensive state display data with a simulation test result to generate a test result of the test, operation and control platform.
According to the test method for the test, operation and control platform, simulation data are generated by simulating the running condition of the satellite according to preset parameters; generating a simulation operation instruction based on the test script; the test, operation and control platform acquires the simulation data and/or the simulation operation instruction to generate comprehensive state display data; the function and performance of the operation and control platform of the commercial satellite can be tested by generating the test result of the operation and control platform according to the simulation data and the comprehensive state display data, so that the stable operation of the operation and control platform is ensured, and the safety of the operation and control platform is improved.
It should be clearly understood that this disclosure describes how to make and use particular examples, but the principles of this disclosure are not limited to any details of these examples. Rather, these principles can be applied to many other embodiments based on the teachings of the present disclosure.
Fig. 5 is a flowchart illustrating a testing method for testing a motion control platform according to another exemplary embodiment. The process 50 shown in fig. 5 is a detailed description of "simulation data generation based on simulation of satellite operation conditions according to preset parameters" at S402 in the process shown in fig. 4.
As shown in fig. 5, in S502, a celestial body trajectory is generated according to the simulation time interval, celestial body parameters, and celestial body initial conditions. The celestial body parameters are a universal gravitation constant G and a celestial body instruction. The initial condition of the celestial body is the initial position and the initial velocity of the celestial body.
In S504, orbit data of the satellite is generated based on the gravitational constant, the star mass, and the star position. And inputting the gravitational constant, the star mass and the star position into a dynamic model of the simulink to generate orbit data of the satellite.
The attitude angle of the satellite in the pitch axis is shown in fig. 6, and the attitude angular velocity of the satellite in the pitch axis is shown in fig. 7.
In S506, attitude data of the satellite is generated based on the celestial body track and the orbit data. And inputting the attitude data and the orbit data into a sensor model, an executing mechanism model and a control interface model to generate the simulation data.
In S508, the simulation data is generated based on the attitude data and the orbit data.
Those skilled in the art will appreciate that all or part of the steps implementing the above embodiments are implemented as computer programs executed by a CPU. When executed by the CPU, performs the functions defined by the above-described methods provided by the present disclosure. The program may be stored in a computer readable storage medium, which may be a read-only memory, a magnetic or optical disk, or the like.
Furthermore, it should be noted that the above-mentioned figures are only schematic illustrations of the processes involved in the methods according to exemplary embodiments of the present disclosure, and are not intended to be limiting. It will be readily understood that the processes shown in the above figures are not intended to indicate or limit the chronological order of the processes. In addition, it is also readily understood that these processes may be performed synchronously or asynchronously, e.g., in multiple modules.
FIG. 8 is a block diagram illustrating an electronic device in accordance with an example embodiment.
An electronic device 800 according to this embodiment of the disclosure is described below with reference to fig. 8. The electronic device 800 shown in fig. 8 is only an example and should not bring any limitations to the functionality and scope of use of the embodiments of the present disclosure.
As shown in fig. 8, electronic device 800 is in the form of a general purpose computing device. The components of the electronic device 800 may include, but are not limited to: at least one processing unit 810, at least one memory unit 820, a bus 830 connecting the various system components (including the memory unit 820 and the processing unit 810), a display unit 840, and the like.
Wherein the storage unit stores program code that can be executed by the processing unit 810, such that the processing unit 810 performs the steps according to various exemplary embodiments of the present disclosure described in this specification. For example, the processing unit 810 may perform the steps shown in fig. 4 and 5.
The memory unit 820 may include readable media in the form of volatile memory units such as a random access memory unit (RAM) 8201 and/or a cache memory unit 8202, and may further include a read only memory unit (ROM) 8203.
The memory unit 820 may also include a program/utility 8204 having a set (at least one) of program modules 8205, such program modules 8205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may comprise an implementation of a network environment.
Bus 830 may be any of several types of bus structures including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
The electronic device 800 may also communicate with one or more external devices 800' (e.g., keyboard, pointing device, bluetooth device, etc.) such that a user can communicate with devices with which the electronic device 800 interacts, and/or any devices (e.g., router, modem, etc.) with which the electronic device 800 can communicate with one or more other computing devices. Such communication may occur via input/output (I/O) interfaces 850. Also, the electronic device 800 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) via the network adapter 860. The network adapter 860 may communicate with other modules of the electronic device 800 via the bus 830. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with the electronic device 800, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, as shown in fig. 9, the technical solution according to the embodiment of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which may be a personal computer, a server, or a network device, etc.) to execute the above method according to the embodiment of the present disclosure.
The software product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable storage medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable storage medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., through the internet using an internet service provider).
The computer readable medium carries one or more programs which, when executed by a device, cause the computer readable medium to perform the functions of: simulating the running condition of the satellite according to preset parameters to generate simulation data; generating a simulation operation instruction based on the test script; the test, operation and control platform acquires the simulation data and/or the simulation operation instruction to generate comprehensive state display data; and generating a test result of the test, operation and control platform according to the simulation data and the comprehensive state display data.
Those skilled in the art will appreciate that the modules described above may be distributed in the apparatus according to the description of the embodiments, or may be modified accordingly in one or more apparatuses unique from the embodiments. The modules of the above embodiments may be combined into one module, or further split into multiple sub-modules.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which may be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
Exemplary embodiments of the present disclosure are specifically illustrated and described above. It is to be understood that the present disclosure is not limited to the precise arrangements, instrumentalities, or instrumentalities described herein; on the contrary, the disclosure is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.