Interactive satellite ground management terminal based on mobile internet

1. Research significance

1.1 The results of the project are of positive significance to different groups of people.
In this era of rapid development of the aerospace industry, the aerospace industry has a great influence on the masses, but as one of the most important modern high-tech, all kinds of people understand to some extent The knowledge about it seems unattainable.
Smart phones are almost a must-have for all kinds of people in today's society. An aerospace mobile app can meet the needs of all kinds of people. Unfortunately, it is difficult for programmers to develop professional aerospace products. APP, aerospace workers rarely have the opportunity to learn and use the development software for developing mobile apps. People who have both high mobile programming capabilities and high aerospace professionalism are often already working in major aerospace research institutes and dedicated to national defense. Xin realized such a "teaching" APP.
This APP can break this situation through the following functions it realizes. 1. Display the number of orbits and temperature of the satellite in orbit, and dynamically display the image and remaining power when the satellite is in motion. The client can communicate with the server under local area network conditions to update the satellites in orbit. 2. Able to display 3D models of satellites. 3. Through gesture detection, the user can realize the attitude control of the satellite, and can dynamically display the current attitude angle of the satellite. 4. The function of APP accessing the website built by JavaScript is realized, and the knowledge of spacecraft system and the official website of Beidou satellite navigation system and the official website of Space-Track are integrated.
For relevant teaching workers, this APP can assist in classroom teaching. After the relevant teachers let the students download this convenient and fast mobile APP, the students can feel the interactive GUI man-machine interface, realize the function of controlling the satellites that are difficult to control in the real world, and can also understand the Euler attitude of the satellites The relationship between the angle and the position prescribed by the satellite deepens students’ impression of classroom content and improves classroom efficiency.
Insert picture description here
For students, this APP can give them a visual and intuitive understanding of aerospace knowledge. In this APP, students can watch the animation of the satellite moving around the earth, and understand the relationship between the six number of the satellite's orbit and its orbit, which deepens their understanding of knowledge.
Insert picture description here
For aerospace enthusiasts, this APP meets their needs to a large extent. Aerospace enthusiasts often need a vivid aerospace app to satisfy their curiosity and thirst for knowledge. This APP will undoubtedly become their best choice.
For the masses, this APP has great popular science. The general public can control the attitude of the satellite by themselves, watch the animation of the satellite moving around the earth, and quickly learn about the knowledge of the spacecraft system and the status of the Beidou satellite navigation system to promote the popularization of the general public’s knowledge of aerospace.
Insert picture description here
For scientific researchers, this APP improves their work efficiency. Researchers usually need reliable and high-precision data to support their work, which makes it extremely difficult for them to obtain data, and this APP can help them quickly obtain a variety of reliable and high-precision aerospace Class data has increased their work rate. Insert picture description here
In addition, this APP facilitates the management of satellites by satellite management ground base station personnel. This APP realizes the satellite management function based on the mobile Internet. It uses mature wifi technology to control the satellites in orbit. It changes the mode of satellite control based on the fixed ground base station, which makes the satellite control more convenient and improves the efficiency of satellite management.
In summary, this APP has the ability to meet the needs of different groups of people and has great research significance.

2. Project research process

2.1 Selection of the client platform The
operating systems of smart phones on the market mainly include Android, IOS and Windows Phone. In the first half of 2016, the share of Android in the Chinese mobile phone market was 67.8%, and that of IOS was 27.2%. From the analysis of market share, the most popular smartphone operating system is the Android operating system.
Insert picture description here
Since the release of version 4.0 of the Android operating system, Google has begun to focus on the optimization of the Android system, optimizing a series of consumer concerns such as network communication power consumption, memory management, and permission management. Now, even ordinary Android phones can achieve continuous and smooth work for a long time, especially after Huawei launched the Ark compiler, the operating experience of Android phones has been improved to be comparable to that of Apple's IOS operating system.
Insert picture description here
According to the advantages of Android phones, we finally choose the Android system of Android phones as our test system.
2.2 Selection of development software The
Android system is divided into 4 layers from bottom to top. Each layer encapsulates the bottom layer and exposes the calling interface to the upper layer. The 4 layers are: Linux Kernel, middleware , Application Framework (Application Framework), application (Application). Android is an open and free mobile terminal platform. The bottom layer is based on the Linux kernel, including operating system, middleware, and application software. The application program runs on the top level of the Android system and is generally developed using the JAVA programming language.
The development tools for developing Android applications can generally be IntelliJ IDEA, Eclipse or Android-studio.
IDEA is a Java integrated development environment launched by JetBrains. Android studio is developed based on IDEA Commutity Edition, because the Community version is not only free but also open source. Although Android-Studio is developed based on IDEA, Android-studio is a pure Android development environment, which is more conducive to the development of Android apps.
Eclipse is a veteran development tool. You can develop android programs after adding ADT plug-ins. Because it is open source, it is easier to develop projects. But Android-studio provides integrated Android development tools for development and debugging, which has more advantages. 1. Andorid-studio is more convenient to build program interface. Building the APP interface in Eclipse, not only the effect is too different from the real machine, but also the speed is very low. But the Android-studio interface display is very clear, and the modification is very fast. 2. Android-studio printing information is more detailed. Android-studio printing information is everything, almost all problems encountered in the project, including writing, design, development, packaging, construction, etc. error messages will be printed on the console To facilitate the accurate discovery and location of the problem. On the other hand, the print information in Eclipse is much shaky, except for LogCat, it is the console, and sometimes there is an extra comma "," in the layout file. 3. AndroidStudio edit history is more detailed. We use Android-studio to modify code, modify layout files, or delete files on the workbench. The records are very detailed. Every operation is recorded, and every operation can be undone. After deleting the file in Eclipse, the previous editing records will be cleared, and you will often make mistakes when you restore the file in time. How to roll back so many previous operations is a big problem unless you use a version control tool. 4. AndroidStudio smart recognition is more powerful. Intelligent recognition is a very big highlight in Android-studio. For example, if we enter Fp, Android-studio will automatically push us options containing FP or fp, or even %F(f)%P§, no matter how much there is in between The system can recognize the characters, or the case is different, and push them to us. 5. Android-studio resource files can be previewed in the code. During development, the content of the resource file can be previewed in the code in real time. This not only includes layout files, picture files, and even the colors defined in the colors.xml file, which can be seen in the code editor. This is for Eclipse It is difficult to achieve. 6. Andorid-studio provides more than 10 different views. The development interface provides us with more than ten views. The content and focus of each view, as well as the code structure presented at the end, are different, which is very powerful and convenient. For example, if you prefer to display the content of each project, just select Project on the left and switch to Project or Project files at the top, and the information of each project will be displayed separately.
In summary, we finally chose Android-studio for APP development.
2.3 Communication
between server and client There are two ways to realize the communication between server and client, one is to use TCP protocol, the other is to use UDP protocol.
The use of the TCP protocol for client-server communication has the characteristics of reliability and stability, because before TCP transmits data, there will be a three-way handshake to establish a connection, and during data transmission, there are confirmation, window, retransmission, and congestion control mechanisms. After the data is transmitted, the connection will be disconnected to save system resources, which is of great significance to the reliable and high-precision data required by the aerospace field. The use of UDP protocol for communication is unreliable and unstable. Because UDP does not have the reliable mechanisms of TCP, it is easy to lose packets if the network quality is not good during data transmission.
In summary, we finally chose Android-studio for APP development.
2.4 Satellite
3D model There are two ways to develop satellite 3D model using Android-studio, using integrated OpenGL language and importing the 3D model developed by unity.
OpenGL is an open 3D graphics software package, which is independent of the window system and operating system, and applications developed based on it can be easily transplanted between various platforms. It has seven functions: 1. Modeling: In addition to providing basic point, line, and polygon drawing functions, the OpenGL graphics library also provides complex three-dimensional objects (balls, cones, polyhedrons, teapots, etc.), as well as complex curves and surfaces. Drawing function. 2. Transformation: The transformation of OpenGL graphics library includes basic transformation and projection transformation. The basic transformation has four transformations: translation, rotation, and variable ratio mirroring. Projection transformation has two transformations: parallel projection (also called orthographic projection) and perspective projection. The transformation method is beneficial to reduce the running time of the algorithm and improve the display speed of three-dimensional graphics. 3. Color mode setting: There are two OpenGL color modes, namely RGBA mode and color index (Color Index). 4. Lighting and material settings: OpenGL light includes Emitted Light, Ambient Light, Diffuse Light and Specular Light. Material is expressed by light reflectance. The color of the object in the scene that is finally reflected to the human eye is the color formed by multiplying the red, green and blue components of the light and the reflectivity of the red, green and blue components of the material. 5: Texture mapping (Texture Mapping). Use OpenGL texture mapping function to express the surface details of objects very realistically. 6: Bitmap display and image enhancement. In addition to basic copy and pixel reading and writing, the image function also provides special image effect processing for blending, antialiasing and fog. The above three items can make the simulated object more realistic and enhance the effect of graphic display. 7: Double buffering animation (Double Buffering) double buffering is the front buffer and the back buffer. In short, the background buffer calculates scenes and generates pictures, and the front buffer displays the pictures that the back buffer has drawn. It can realize the visual satellite simulation function with strong interaction.
Unity’s built-in tools are not complete; poor rendering, poor lighting system, and bugs in shadow bake, which can barely reach the entry level of 2A games; poor controller support, some functional engines such as handle vibration and VR controller spatial positioning No integration, a third-party plug-in or additional code is required; no material editor, a third-party plug-in is required; Prefab does not support inheritance; there is no built-in Level Stream support.
In summary, we finally chose OpenGL as the language for developing satellite 3D models.

3. Project innovation

1. Satellite management based on mobile Internet. The use of mature wifi technology changes the previous satellite control based only on the fixed ground base station mode, making the satellite control more convenient and improving the efficiency of satellite management.
2. Visual satellite simulation with strong interaction. The satellite attitude control can be realized through gesture detection, and the static six elements of the orbit can be converted into dynamic satellite motion animation, which assists teachers in teaching, helps students understand aerospace knowledge, and promotes the popularization of the general public to understand aerospace knowledge.
3. Integrate major aerospace websites. You can quickly learn about the aerospace system by opening this mobile APP, and you can also easily access the Beidou satellite navigation system official website and the US Air Force Space-track official website. This is not only conducive to scientific researchers to obtain relevant aerospace data, but also conducive to training students Passion for aerospace.
4. Promoted the popularization of aerospace knowledge. As one of the most important high and new technologies in modern times, aerospace has the characteristics of high threshold and high standards. However, with its advantages of strong interactivity and popular science, aerospace is not so remote, which is very useful for related teaching work. The readers, students, and the general public are of great significance.

Four, application prospects

1. Satellite ground base station staff can use this APP to control satellites more conveniently and improve the efficiency of satellite management.
2. With its strong interactive visual satellite simulation and integration of major aerospace websites, it assists teachers in teaching, helps students understand aerospace knowledge and cultivates students’ interest in learning, and promotes popularization of the general public’s understanding of aerospace knowledge. Has a strong popular science.
3. Researchers can quickly obtain aerospace data through this APP, which improves work efficiency.

Five, harvest and experience

1. When we set up the server and communicate with the client, the satellite list is not updated, and Baidu cannot solve it. Finally, we translated the problem we encountered into English, searched on the Bing International Edition, and finally found a solution. Our gains are: a. Although Android provides the Invalidate method to refresh the interface, Invalidate cannot be called directly in the thread because it violates the single-threaded model: Android UI operations are not thread-safe, and these operations must be Called in the UI thread. b. When we encounter problems that cannot be solved by searching in search engines in Chinese, we can try searching in English, which may have unexpected gains.
2. When we defined a larger file for the background of the main interface of Android-studio, all the activities of the entire project suddenly displayed errors and could not run. This means that the results of our hard work for six months will be Unable to show, the project was paralyzed. We checked the seven thousand lines of source code one by one during the May 14th holiday, and finally found out the problem: Android Studio is based on IntelliJ IDEA, and IDEA has a default file size. Restricted: When our project is very large, the R file may exceed this maximum value, causing the IDE to display abnormally. At this time, we can customize this maximum value to fix it.
3. We use imageview to set the user login background, but the interface displayed in the real machine test is different from that in the resource file. After investigation, we found the reason. It turned out that the picture in our resource file was in JPG format instead of PNG format. JPG is a lossy format, and PNG is a lossless format. When JPG processes images with many colors, depending on the compression rate, some intermediate colors that are less recognized by the naked eye are sometimes removed. But for the basic requirement of losslessness, PNG will strictly retain all the color numbers. The Android interface can use PNG, it is best to use PNG, because the 32-bit PNG color transition is smooth and supports transparency. JPG is a pixel-compressed picture, and the quality has deteriorated. In fact, the icons used in res are all in PNG format, which means that Google recommends using PNG format images.

6. Outlook

1. The current 3D model of our satellite is still very different from the actual satellite. We need to further texture the 3D model to make it more like a real satellite and improve the user experience.
2. We also want to further realize the function of aerospace data conversion. For example, the conversion of space coordinate system, this APP can convert the reference system commonly used in space-related satellite applications and deep space exploration, which not only helps students understand the knowledge of space coordinate system, but also helps scientific researchers process data in batches. Improve work efficiency.
3. In this APP to realize the satellite communication based on the local area network, it can monitor all the satellite equipment under the local area network and automatically determine whether the current orbit is running the new satellite to join, which is convenient for the work of the satellite management personnel.

Guess you like

Origin blog.csdn.net/weixin_44612221/article/details/107000653