Introduction Background: A spacecraft such as the International Space Station is in a simplified Earth orbit. As the spacecraft circles the Earth its orientation relative to the Sun continuously changes. The structure of the spacecraft casts continuously varying shadows upon the solar arrays.
Introduction(Cont..) Objective: Graphically model the shading of sunlight on the solar panels of an orbiting spacecraft. Analytically determine the area of the solar panels exposed to sunlight and the resulting incident radiant energy.
Project Overview We shall create an application that visualizes the International Space Station in a simplified Earth orbit; The overall application is implemented in Unity. The proposed application will determine the area of the solar arrays exposed to direct sunlight and the amount of power deposited by the sunlight onto the arrays. Unity is a 3d game engine which would be used for the above project.
Project Overview(Cont.) Unity, will be used to render the visualization of the spacecraft. Unity is available on multiple platforms, including the iPhone/iPod Touch. Figure: Spacecraft Solar Arrays Shading Visualization
Requirements The requirements are subdivided into: Functional requirements Non-functional requirements
Requirements(Cont..) Functional requirements The application shall do the following: Computes the position of the sun with respect to the Earth and ISS. Rotate the ISS such that solar arrays are perpendicular to the direction of the sun. Numerically display the shaded area of each solar array, in square meters, and the percentage of the array that is in sunlight. Display the current date and time in UTC.
Requirements(Cont..) The application shall allow the user to pause the time, reset the time to the element set epoch, reset the time to the current (real) clock time, and advance the time forward or backward in 1x, 10x, 100x, and 1000x multiples of real time. The application shall allow the user to input the epoch (year, month, day, hour, minute, second in Universal Coordinated Time (UTC)) and the following Keplerian elements of the ISS: a) semi-major axis in meters b) eccentricity (unit less number between 0 and 1, inclusive) c) inclination in degrees d) right ascension of the ascending node in degrees e) mean anomaly in degrees f) argument of periapsis in degrees
Requirements(Cont..) Non - functional requirements The application is developed in Unity game engine, where we will be importing the assets like ISS and 3D model of Earth and a point source of light which will act like sun.
Environment (tools & technologies) Tools Using Rational Unified Process Initiated Construction phase TECHNOLOGY AREAS: Unity 3D graphics Orbital Mechanics
Tools & Technologies (Cont..) Unity pro Unity is a 3d game engine and an authoring tool for creating 3D video games or other interactive content such as architectural visualizations. Unity has two important views namely game view and project view. Game Objects can be imported into the project view and can be viewed through the game view.
Sample Code Of On Mouse Move
ISS Architecture Figure: International Space Station
ISS The ISS as of now is the largest satellite orbiting the earth. The solar alpha rotary joint (SARJ) is the main rotary joint which allows the solar arrays to track the sun. The following is a small video showing the external image of the ISS around the planet.
Use case diagram
Use case diagram(Cont..) User controls camera Normal Flow: User opens the project. User shall enter the position coordinates for the camera or shall control that by using the GUI. The view shall be updated to the specified coordinates.
Use case diagram(Cont..) User inputs epoch Normal Flow: User opens the project. User shall input the epoch (year, month, day, hour, minute, second in Universal Coordinated Time (UTC)) User opens the application in the Unity web browser and then he shall be able to input the time and control the time and pause the time.
Works Completed Created SRS document. Completed the design phase. Imported the ISS and Earth into Unity.
Future Work Planning to start scripting in Unity. Calculation of the sun position vector. Numerically calculating the area of the solar arrays in sunlight. Visualizing the application with the necessary requirements graphically in Unity.