Development of Dynamic Simulation Platform of ...

16 downloads 58132 Views 5MB Size Report
Feb 6, 2000 - Figure 2-7 Example of Attitude Determination System: Star Sensor ........................ 12 ...... Arduino using serial communication. Figure 2-33 ...... Output subsystem, to display the real time data, to store data to workspace, and to.
Development of Dynamic Simulation Platform of Reaction Wheels Controlled Cubesat Model Undergraduate Thesis

Written by Ryan Fadhilah Hadi 13610009 Supervised by Dr. Rianto Adhy Sasongko Dr. Ridanto Eko Poetro

AERONAUTICS AND ASTRONAUTICS FACULTY OF MECHANICAL AND AEROSPACE ENGINEERING INSTITUT TEKNOLOGI BANDUNG 2015

LEMBAR PENGESAHAN Judul

: Development of Dynamic Simulation Platform of Reaction Wheels Controlled Cubesat Model

Penulis

: Ryan Fadhilah Hadi

NIM

: 13610009

Pembimbing

: 1. Dr. Rianto Adhy Sasongko 2. Dr. Ridanto Eko Poetro

Tujuan

: 1. Mengembangkan Design Tool Dinamika Cubesat untuk mendukung proses perancangan platform simulasi. 2. Merancang, membuat, menguji, serta mengevaluasi ADCS dari Cubesat sederhana serta platform inersia. 3. Mengembangkan sistem simulasi untuk menjalankan proses

simulasi,

termasuk

hubungan

antara

sistem

terpasang terhadap stasiun, user interface, serta fungsi lain yang dibutuhkan.

Bandung, 10 Maret 2015 Dosen Pembimbing I

Dosen Pembimbing II

Dr. Rianto Adhy Sasongko

Dr. Ridanto Eko Poetro

NIP 132230099

NIP 132230098

i

PREFACE At first, I want to praise The Almighty Allah SWT for his gracious mercy and tremendous blessing that enables me to accomplish this undergraduate thesis titled Cubesat Simulation Platform Development for Dynamic Simulation Using Reaction Wheels. This thesis is presented to fulfill the requirement in attaining bachelor degree in Aeronautics and Astronautics, Faculty of Mechanical and Aerospace Engineering, Institut Teknologi Bandung. In this script, I also would like to appreciate Dr. Rianto Adhy Sasongko and Dr. Ridanto Eko Poetro who are willing to be author’s advisors in conducting the research. Their valuable assistance and guidance have aided me much in completing this thesis. Moreover, I would also like to give greatest honor to my beloved mother, Prihatni Dwiatmi Virgowati, S.Psi; My dear sister, Anniesa Marshadiany, S.S; and to the man who inspired me the most, my father, Hadi Soehartono, S.E, M.M, Alm. Without their motivations and timeless prayers that are done for me, this thesis will never be able to be completed. I also want to say thank you to all of my friends that have inspired me in the process of finishing this thesis: Lab Getar, AE 2010, KMPN, Kongres KM-ITB 2013-2014, Cakrawala EV, Remaja Tua Ganesha Touchdown, Apres!, UKB, YLI, Indonesia Technologies, and others who have forced and pushed me to finish this thesis to the very end. Special thanks to author’s fellow colleagues: Ray Ozma, Rivaldy Varianto, Mukhtar Amin, Siti Vivi Octaviany, Rochenry, Wildan Syauqi, and others who have accompanied me in the last week of the deadline for the draft. In the end, I want to address my greatest gratitude to the reader. I hope this book can be useful and can be used for further research. I apologize if there are mistakes in this book, and I hope there is nothing useless inside.

Sincerely,

Ryan Fadhilah Hadi

ii

ABSTRAK Penggunaan teknologi Cubesat telah berkembang secara pesat dalam beberapa tahun terakhir. Saat ini, semakin banyak riset dan misi yang dapat dilakukan oleh Cubesat. Selain itu, jumlah pengguna Cubesat juga semakin bertambah, baik pemerintah, sekolah, ataupun perusahaan komersil. Hal ini memacu sekolah dan kampus-kampus ternama di dunia untuk berperan serta di dalamnya. Walaupun begitu, dana yang dibutuhkan untuk mengembangkan Cubesat tidaklah kecil, dan biaya peluncuran Cubesat hingga saat ini masih sangat tinggi. Hal ini harus diimbangi dengan persiapan dan riset yang benar-benar matang, untuk mengurangi risiko terjadinya kegagalan. Kondisi ini dapat dicapai dengan membuat sarana simulasi yang dapat digunakan untuk mengimitasi kondisi yang dihadapi oleh Cubesat, sehingga Cubesat dapat dirancang dan diproduksi seefektif mungkin. Salah satu bagian dari Cubesat yang dapat disimulasikan adalah performa dinamiknya. Performa ini dikemas dalam sebuah sistem yaitu Attitude Determination and Control System (ADCS). Dalam perancangan Cubesat, sistem ini harus dipertimbangkan sematang mungkin mengingat terbatasnya ruang dan daya yang dimiliki oleh Cubesat, padahal ADCS merupakan salah satu sistem penunjang yang cukup penting. Oleh karena itu, model Cubesat untuk mensimulasikan kemampuan kendali pada Cubesat harus dikembangkan. Skripsi ini merupakan awal dari pengembangan sarana simulasi tersebut, di mana model Cubesat, penyangga inersia, serta sistem untuk mendukung Hardware In Loop Simulation (HILS) dibangun. ADCS pada sarana simulasi dibuat sederhana menggunakan microcontroller, reaction wheel digunakan sebagai actuator, serta sistem HILS dicapai dengan menggunakan kombinasi Matlab & Simulink melalui komunikasi serial. Sarana simulasi yang dibuat kemudian dapat digunakan untuk mengimitasi kondisi tertentu satelit, sehingga konfigurasi ADCS yang digunakan dapat diuji dan diteliti. Hal ini akan sangat berguna bagi pengembang Cubesat, khususnya pada bagian kendali sikap. Selain itu, sarana simulasi ini juga dibuat agar dapat terus dikembangkan dan disesuaikan dengan kebutuhan riset-riset selanjutnya.

iii

ABSTRACT The utilization of cubesat technology has sharply increased in the last few years. At this moment, the type of research and mission that can be done by Cubesat has grown. Moreover, the number of Cubesat user is also going up, either it is government, education institution, or private company. This condition forces the best schools and colleges all over the world to take part and be involved on it. Even though, the fund that is necessary for Cubesat development is not small, and the cost for Cubesat launch is still high. Therefore, this situation has to be supported by well-established plan and research to reduce the risk of failing. This can be achieved by building simulation platform that can be used to imitate the condition that is faced by Cubesat, so that Cubesat can be effectively designed and produced. One of the part of the Cubesat that can be simulated is its dynamic performance. This feature is done by Attitude Determination and Control System (ADCS). In the design process, this system has to be considered well according to the limitation in Cubesat’s space and power, yet it is one of the most fundamental supporting system in the Cubesat. Hence, a Cubesat model to simulate its attitude control performance has to be developed. This thesis is the beginning of this simulation platform development, where the cubesat model, inertia platform, and system that is prepared to support Hardware In Loop Simulation (HILS) is built. ADCS in the simulation platform is simplified, reaction wheel acts as the actuator, and the HILS system is achieved by using combination of MatLab & SimuLink through serial communication. The simulation platform that is produced then can be used to simulate a particular condition of the Cubesat, so the ADCS configuration and setting that is used can be tested and observed. This can be helpful for Cubesat developer, especially in the attitude control part. Moreover, this simulation platform is also produced to be developed and adjusted based on the further research that will be conducted.

iv

TABLE OF CONTENT LEMBAR PENGESAHAN .................................................................................................................. i PREFACE ............................................................................................................................................. ii ABSTRAK ............................................................................................................................................ iii ABSTRACT ......................................................................................................................................... iv TABLE OF CONTENT .......................................................................................................................v LIST OF FIGURES ........................................................................................................................... vii LIST OF TABLE ................................................................................................................................. ix CHAPTER I INTRODUCTION........................................................................................................ 1 1.1 Background .......................................................................................................................... 1 1.2 Purpose of Research ......................................................................................................... 3 1.3 Scope of Work ..................................................................................................................... 3 1.4 Methodology ........................................................................................................................ 3 1.5 Writing Schematic ............................................................................................................. 4 CHAPTER II LITERATURE STUDY ............................................................................................. 5 2.1 Satellite .................................................................................................................................. 5 2.1.1 Definition ................................................................................................................ 5 2.1.2 Category .................................................................................................................. 6 2.1.3 Subsystem .............................................................................................................. 8 2.1.4 Cubesat .................................................................................................................. 12 2.2 Attitude Determination and Control System ........................................................ 17 2.2.1 Attitude Determination................................................................................... 17 2.2.2 Control System ................................................................................................... 22 2.3 Dynamic of Spacecraft ................................................................................................... 24 2.3.1 Definition of Reference Frames ................................................................... 24 2.3.2 The Representation of Attitude ................................................................... 26 2.3.3 Definition of Rigid Body.................................................................................. 30 2.3.4 General Attitude Dynamics............................................................................ 32 2.3.5 Space Environment Disturbance ................................................................. 33 2.4 Simulation Platform ....................................................................................................... 34 2.4.1 Definition and Purposes ................................................................................. 34 2.4.2 Type of Simulation Platform ......................................................................... 34 2.4.3 Hardware in Loop Simulation (HILS) ........................................................ 37 CHAPTER III DESIGN PROCESS ............................................................................................... 39 3.1 Design Tool ........................................................................................................................ 39 3.1.1 System Architecture ......................................................................................... 39 3.1.2 Configuration Tool ............................................................................................ 40 3.1.3 Dynamic Simulation Tool ............................................................................... 42 3.1.4 Closed Loop Simulation Tool ........................................................................ 44 3.2 Hardware Design ............................................................................................................. 45 3.2.1 Cubesat Configuration Design ...................................................................... 46 3.2.2 Inertia Platform Design................................................................................... 49 3.3 Software Design ............................................................................................................... 50 3.3.1 System Architecture ......................................................................................... 50 3.3.2 Microcontroller Scheme ................................................................................. 51 3.3.3 HILS Interface Design ...................................................................................... 56 v

3.3.4 Graphical User Interface Design .................................................................. 58 CHAPTER IV MANUFACTURING PROCESS .......................................................................... 60 4.1 Hardware Manufacture ................................................................................................. 60 4.1.1 Cubesat Model .................................................................................................... 60 4.1.2 Inertia Platform ................................................................................................. 64 4.2 Software Manufacture ................................................................................................... 66 4.2.1 Microcontroller Scheme ................................................................................. 66 4.2.2 HILS Interface ..................................................................................................... 71 CHAPTER V TEST AND EVALUATION ................................................................................... 75 5.1 Test and Evaluation of Simulation Platform ......................................................... 75 5.1.1 Data Handling and Visualization ................................................................. 76 5.1.2 Command Handling .......................................................................................... 79 5.2 Functional Test ................................................................................................................. 80 5.2.1 Static Test ............................................................................................................. 80 5.2.2 Dynamic Test ...................................................................................................... 82 5.3 Platform Evaluation ........................................................................................................ 84 5.3.1 Design Evaluation ............................................................................................. 84 5.3.2 Manufacture Evaluation ................................................................................. 85 5.3.3 Component Selection Evaluation ................................................................ 86 CHAPTER VI CONCLUSION AND FUTURE WORKS ........................................................... 88 6.1 Conclusion .......................................................................................................................... 88 6.2 Future Works .................................................................................................................... 89 REFERENCES .................................................................................................................................. 91 APPENDIX A Arduino Code ........................................................................................................ 93 APPENDIX B Matlab Code........................................................................................................ 101 APPENDIX C Cubesat Database ............................................................................................. 127

vi

LIST OF FIGURES Figure 2-1 Cassini Orbiting Saturn............................................................................................ 5 Figure 2-2 Example of OBDH in Cubesat, Pumpkin Inc .................................................... 9 Figure 2-3 Solar Panel Used in Space ..................................................................................... 10 Figure 2-4 Deployable Antenna Used in Cubesat .............................................................. 10 Figure 2-5 An Insulation Layer in Huygens ......................................................................... 11 Figure 2-6 Reaction Control Thruster ................................................................................... 11 Figure 2-7 Example of Attitude Determination System: Star Sensor ........................ 12 Figure 2-8 Structure of Galileo, ESA's Navigation Satellite ........................................... 12 Figure 2-9 F-1 Ardusat, an Example of Cubesat................................................................. 13 Figure 2-10 The Number of Cubesat-Class Mission Launched Each Year ............... 13 Figure 2-11 Classification of Recorded Launched Cubesats ......................................... 15 Figure 2-12 Outline of the SCOTSAT Conceptual Design ............................................... 15 Figure 2-13 Accelerated Development Cycle of SCOTSAT Program .......................... 17 Figure 2-14 Pointing Control Definitions ............................................................................. 18 Figure 2-15 GPS Satellites Constellation .............................................................................. 19 Figure 2-16 Micro Sun Sensor for Nano Satellite .............................................................. 20 Figure 2-17 How Static Earth Horizon Sensor Works ..................................................... 21 Figure 2-18 Star Sensor Example, Star Tracker VST-41M ............................................. 21 Figure 2-19 How Capacitive Accelerometer Works ......................................................... 22 Figure 2-20 Boeing 376 Satellite, One of the Popular Spin Stabilized Satellite ..... 23 Figure 2-21 ChargerSat-1, An Example of Gravity Gradient Controlled Cubesat from University of Alabama ....................................................................................................... 23 Figure 2-22 GCI Reference Frame ........................................................................................... 25 Figure 2-23 SCI Reference Frame ............................................................................................ 25 Figure 2-24 ORC Frame ............................................................................................................... 26 Figure 2-25 SBC Frame ................................................................................................................ 26 Figure 2-26 Euler 2-1-3 Rotation Process............................................................................ 28 Figure 2-27 Definition of Rigid Body ..................................................................................... 30 Figure 2-28 An Example of Air-Bearing Microsatellite Simulator .............................. 34 Figure 2-29 Gyroscope Mechanism ........................................................................................ 35 Figure 2-30 Air Bearing Tabletop Configuration .............................................................. 35 Figure 2-31 Air Bearing Dumbbell Configuration ............................................................. 36 Figure 2-32 Magnetic Levitating Platform ........................................................................... 37 Figure 2-33 HILS Combination ................................................................................................. 38 Figure 3-1 System Architecture of Design Tool ................................................................. 39 Figure 3-2 Configuration Tool Interface ............................................................................... 41 Figure 3-3 Open Loop Simulation Tool Interface .............................................................. 43 Figure 3-4 Open Loop Simulation Block in Simulink ....................................................... 43 Figure 3-5 Spacecraft Dynamic Block .................................................................................... 44 Figure 3-6 Closed Loop Simulation Tool Interface ........................................................... 45 Figure 3-7 Exploded View of Designed Cubesat Model .................................................. 46 Figure 3-8 Configuration Design Tools Utilization ........................................................... 47 Figure 3-9 Open Loop Simulation Tools Utilization ......................................................... 48 Figure 3-10 Rotation Axis in the Inertia Platform ............................................................ 49 Figure 3-11 Simulation System Workflow ........................................................................... 50 Figure 3-12 Components Point to Point Diagram ............................................................. 51 vii

Figure 3-13 Arduino Pro Mini 16MHz 5V with ATMega 328........................................ 52 Figure 3-14 MPU6050 .................................................................................................................. 53 Figure 3-15 HC-06 ......................................................................................................................... 53 Figure 3-16 Hobbyking Brushless Car ESC 10A w/ Reverse ........................................ 54 Figure 3-17 C2403 Brushless Outrunner 2100kV ............................................................ 55 Figure 3-18 HILS Architecture.................................................................................................. 56 Figure 3-19 Graphical User Interface Design ...................................................................... 58 Figure 4-1 Set of Side Walls ....................................................................................................... 60 Figure 4-2 (a) Main and (b) Secondary Structure ............................................................. 61 Figure 4-3 Design of Bearing Slot ............................................................................................ 61 Figure 4-4 Photo of Bearing Slot .............................................................................................. 62 Figure 4-5 Lathe Process ............................................................................................................ 62 Figure 4-6 the Photo of Reaction Wheel Assembly .......................................................... 63 Figure 4-7 the Photo of Clay Ballast ....................................................................................... 63 Figure 4-8 Frame Sizing .............................................................................................................. 64 Figure 4-9 Type of Locking Pin................................................................................................. 65 Figure 4-10 Reinforcement Support ...................................................................................... 65 Figure 4-11 Bearing Slot ............................................................................................................. 66 Figure 4-12 Wiring Layout ......................................................................................................... 70 Figure 4-13 Whole System of Simulink that is developed ............................................. 71 Figure 4-14 Input Subsystems .................................................................................................. 72 Figure 4-15 Dynamic Model Subsystem ............................................................................... 72 Figure 4-16 Control Law subsystem ...................................................................................... 73 Figure 4-17 Output subsystem ................................................................................................. 73 Figure 5-1 Simulation Platform ................................................................................................ 75 Figure 5-2 Serial Monitor Print Screen ................................................................................. 76 Figure 5-3 (a) Yaw, Pitch, and Roll, and (b) Real Gravity Data .................................... 77 Figure 5-4 Screenshot of Receiving GUI................................................................................ 78 Figure 5-5 GUI in operation ....................................................................................................... 80 Figure 5-6 Static Test: Angle Measurement ........................................................................ 81 Figure 5-7 Static Test: Angle Measurment for more than one axis ............................ 81 Figure 5-8 Dynamic Test: Reaction Wheels......................................................................... 82 Figure 5-9 Dynamic Test: Gyroscopic Phenomenon ........................................................ 83 Figure 5-10 Dynamic Test: Gyroscopic Phenomenon with Reaction Wheels ........ 83 Figure 5-11 Drifting Path in Euler Rotation ........................................................................ 84 Figure 5-12 Gimbal Lock Phenomenon ................................................................................. 84 Figure 5-13 Illustration on Gravity Gradient Effect ......................................................... 85 Figure 5-14 Afro ESC Slim 20A ................................................................................................. 87

viii

LIST OF TABLE Table 2-1 Mission/Payload Type ............................................................................................... 6 Table 2-2 Category Based on Mass ........................................................................................... 7 Table 2-3 Category Based on Trajectory ................................................................................ 7 Table 2-4 Potential Accuracy of Referenced Object ......................................................... 18 Table 2-5 Example of Magnetometer ..................................................................................... 20 Table 2-6 Types of Motion ......................................................................................................... 31 Table 3-1 Systems and Intefaces of Used HILS Concept ................................................. 56 Table 3-2 GUI Parts ....................................................................................................................... 58

ix

1 CHAPTER I INTRODUCTION 1.1 Background Currently, the importance of spacecraft cannot be isolated from our daily activities. It has fundamental roles in current information era. The spacecraft itself can be defined as a vehicle designed to be able to travel and operate in the space environment. The first spacecraft ever succeeded to be operated by human is Sputnik 1, a vehicle designed and operated by Russian government, sent to low earth orbit in October 1957. The launch and operation of Sputnik 1 is marked as a milestone of humankind, and the beginning of the space era. At the time, spacecraft and space operation had become part of cold war between United States and Soviet Union– also known as the Space Race. This Space Race was the main reason of space technology development, which gives human kind abundant benefits. Spacecraft can be categorized into two type: manned and unmanned. Satellite is the example of unmanned spacecraft. The number of satellites operated by both government and private companies is approaching 2,000 satellites by the end of 2014. NASA defined satellite as moon, planet, or object orbiting a planet or star. In term of spacecraft, satellite can be defined as object or vehicle orbiting earth or other planet. Satellite also can be classified based on its function, height of orbit, and size. One of its categories based on its function and size is Cubesat. Cubesat is a micro sized satellite, cube shaped, and only has a simple function and mission. The idea originated from the first time the idea of Can Satellite announced by professors from California Polytechnic State University and Stanford University back in 1999. Since that moment, the idea has developed so much that almost every top engineering universities in the world are developing it now. Currently, quite a number of Cubesat are being designed, manufactured, and operated by students to study and develop satellite technology. Some space 1

agency like NASA and ESA also give students chance to launch their Cubesat to orbit earth in low orbit for free, piggybacking their rocket which having mission to outer space. In the process of designing and developing Cubesat, there are a lot of aspects that have to be specified. Satellite is a vehicle that easy to break, and outer space is also an environment full of uncertainty. So, every possible thing that may happen has to be calculated and planned to avoid failure. Therefore, a simulation of every component of satellite, including mission and launch simulation, is usually performed to check the reliability and performance of satellite with respect to disturbances in its mission environment. One of some systems that commonly simulated is Attitude Determination and Control System (ADCS), a system that responsible for determining the attitude and position of satellite, and controlling it based on its mission. The attitude can be determined based on data collected by operating sensors, and the control can be achieved by using actuators. The ADCS is a fundamental system because it affects mission significantly. Some examples where ADCS is important are when satellite has to send data to ground station, its antenna has to face the ground station position on earth to be able to transmit the data effectively; When satellite has to take pictures of a part of universe, or a specific galaxy, its camera has to face it directly. It is also applied for Cubesat. Although Cubesat only have simple mission, it still needs ability to determine and control its attitude. Unfortunately, Cubesat has limitations. It is limited in aspect of space, weigh, and power. So, ADCS installed on Cubesat has to be the best designed one. To develop this ADCS, a simulation platform can be developed. This research of author’s theses is intended to be a simulation platform for Cubesat ADCS development. It is also a continued development of previous research by Hagorly1, who made an inertia platform to simulate the dynamic performance of planar platform affected by reaction wheels. The main difference is that author’s research is developing the ADCS and platform for a specific size of Cubesat instead of planar satellite platform. 2

1.2 Purpose of Research The purpose of this research are: 1. To develop a Cubesat Dynamic Design Tool to support the design process of the simulation platform. 2. To design, manufacture, test, and evaluate a simple ADCS of Cubesat and a inertia platform to support it. 3. To develop a simulation system to run the simulation process, including the interface between embedded system and station, user interface, and functions needed.

1.3 Scope of Work In conducting the research, there are several assumptions used to limit the scope of work. These are: 1. The platform is designed for Cubesat, sized 10 x 10 x 10 cm and weigh less than 1 kg. 2. The embedded system is replaced by microcontroller. 3. The actuators used are modified brushless DC motor to mimic the function of reaction wheels.

1.4 Methodology To achieve author’s goals, the author first studied the literatures related with the subject. And then, author creates a simulation using MatLab and SimuLink. The simulation is also supported by design tool developed by author to ease the design process. After that, author do the experiment by conducting processes of design, manufacture, test, and evaluation to prove the simulation conducted before. The result of it then reported as this thesis.

3

1.5 Writing Schematic Introduction Consists of the background and purposes of the research, scope of problems, research methodology, and writing schematic. Literature Study Consists of literature about satellite, its categories and subsystems, and also articles about Cubesat. Then, the Attitude Determination and Control System (ADCS) is described. After that, the dynamic of spacecraft is explained. At the end, the simulation platform to support dynamic simulation. Lastly, the all about simulation platform are described. Design Process In this chapter, the process of designing hardware and software used in the simulation is explained. In the beginning, a concept of design tool used in designing the simulation platform is described. Manufacturing Process This chapter sums up all manufacture process done to build the simulation platform. It is divided into hardware and software section. Test & Evaluation After the design and manufacture, the simulation platform is tested and evaluated. The result of simulation then compared to numeric simulation done before. Conclusion and Future Works Consists of conclusion of the research, and future works that can be done to improve the result of the research.

4

2 CHAPTER II LITERATURE STUDY 2.1 Satellite 2.1.1 Definition Basically, satellite2 can be defined as moon, planet, or machine that orbits a planet or star. Moon is earth’s satellite, because it orbits earth. Earth also can be considered as satellite as it orbits Sun. Cassini-Huygens3 that is shown in Figure 2-1, an unmanned spacecraft sent to Saturn in 1997, is also a satellite because it orbits Saturn to study and analyze planet’s characteristics. In this discussion, the word ‘satellite’ refers to a machine that is launched into space and moves around Earth or another body in space. To differ it with Moon, Titan, or other natural celestial body orbiting planet, the term of ‘artificial’ are usually used.

Figure 2-1 Cassini Orbiting Saturn (Source: http://upload.wikimedia.org/wikipedia/commons/b/b2/Cassini_Saturn_Orbit_Insertion.jpg)

Currently, a number of nearly 2,000 artificial satellites4 are operating. Most of them are operated by government agencies such as NASA, ESA, and JAXA, while the rest of them are operated by private companies such as Horizons, RASCOM, and Intelsat. In the last few years, some small start-up companies have been joining the business, designing and planning their nanosatellites to be launch to orbit in the near future. These start-ups include Spire, a start-up that

5

focus on remote sensing satellite, Skybox and Planet Lab that use their satellites to map earth in high resolution.

2.1.2 Category Satellite can be categorized by many aspects, such as its orbit, mission, and size. Stark5 categorized its mission and orbit type as listed in the table below. Table 2-1 Mission/Payload Type Geostationary for low latitudes, Molniya and Tundra for high latitudes (mainly Russian),

Communication

Constellations of polar LEO satellites for global coverage

Earth Resources

Polar LEO for global coverage

Weather

Polar LEO, or geostationary

Navigation

Inclined MEO for global coverage LEO, HEO, GEO, and ‘orbits’ around Lagrange

Astronomy

Points

Space Environment

Various, including sounding rockets and HEO

Military

Polar LEO for global coverage, but various

Space Stations

LEO

Technology

Various

Demonstration

By its mission, satellite basically can be classified into military and nonmilitary. Non-military satellite services have three basic categories: 1. Fixed Satellite Services, satellites that handle hundreds of billions of voice, data, and video transmission tasks globally. 2. Mobile Satellite Systems, systems that help connect remote regions and objects to other part of the world. 3. Scientific

Research

Satellites,

satellites

that

provide

meteorological

information, space environment research, and any other research data intended to understand more about our earth and its surrounding.

6

By its body mass, Dubos6 categorized satellite into three categories as listed below: Table 2-2 Category Based on Mass Mass at Launch (kg)

Spacecraft Category

[0-500]

Small (S)

[500-2500]

Medium (M)

>2500

Large (L)

Examples FAST, JASON 1, NANOSAT 01 TOPEX-POSEIDON, GPS NAVSTAR II06 DirecTV 1R, HotBird 8

For small satellites, Konecny7 classified it into more specific categories based on mass as listed below: 

Large Satellites

: mass > 1000 kg



Medium Satellites

: mass 500 to 1000 kg



Mini Satellites

: mass 100 to 500 kg



Micro Satellites

: mass 10 to 100 kg



Nano Satellites

: mass 1 to 10 kg



Pico Satellites

: mass 0.1 to 1 kg



Femto Satellites

: mass < 100 g

Based on its trajectory or orbit, satellites also can be categorized into some categories by looking at its orbit shape (eccentricity), altitude, inclination, and synchronous classifications as listed below. Table 2-3 Category Based on Trajectory Orbit with e=1, circular shaped. The Circular Orbit

perigee and apogee point have same altitude

Eccentricity

Orbit with elength(rep_w) set(hObject,'Value',0); set(hObject,'String','Start','BackgroundColor',handles.c); set(handles.out_flag,'String','Stopped'); break; end end guidata(hObject,handles); function push_reset_Callback(hObject, eventdata, handles) if handles.start==0 msgbox('Please simulate first!'); handles.replay=0; end set(handles.plot_sat,'View',[45 45],'PlotBoxAspectRatio',[1 1 1],... 'XLim',[-2 2],'YLim',[-2 2],'ZLim',[-2 2]); delete(findobj(handles.plot_sat,'Type',{'Patch','Line','Text'})); handles=guidata(hObject); handles.i=1; set(handles.replay_t,'Value',0); guidata(hObject,handles);

118

Platform GUI FIG File

SLX File

Input Sub

119

Output Sub

120

Dynamic Sub DMP

Dynamic Sub Comp

Dynamic Sub Mat

function varargout = Interface(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Interface_OpeningFcn, ... 'gui_OutputFcn', @Interface_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end

121

if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end function Interface_OpeningFcn(hObject, eventdata, handles, varargin) handles=guidata(hObject); handles.output = hObject; clc; handles.loop=0; handles.mode=0; handles.run=0; handles.cnnct=0; handles.mrun=0; handles.simu='matlabSerialDMP'; handles.c=get(handles.but_connect,'BackgroundColor'); handles.buff=100; handles.index=1:handles.buff; handles.teta_x=zeros(handles.buff,1); handles.teta_y=zeros(handles.buff,1); handles.teta_z=zeros(handles.buff,1); handles.omega_x=zeros(handles.buff,1); handles.omega_y=zeros(handles.buff,1); handles.omega_z=zeros(handles.buff,1); handles.rpm_in_x=zeros(handles.buff,1); handles.rpm_in_y=zeros(handles.buff,1); handles.rpm_in_z=zeros(handles.buff,1); handles.rpm_out_x=zeros(handles.buff,1); handles.rpm_out_y=zeros(handles.buff,1); handles.rpm_out_z=zeros(handles.buff,1); handles.T_in_x=zeros(handles.buff,1); handles.T_in_y=zeros(handles.buff,1); handles.T_in_z=zeros(handles.buff,1); set(handles.plot_sat,'View',[45 45],'PlotBoxAspectRatio',[1 1 1],... 'XLim',[-2 2],'YLim',[-2 2],'ZLim',[-2 2]); delete(findobj(handles.plot_sat,'Type',{'Patch','Line','Text'})); guidata(hObject, handles); function varargout = Interface_OutputFcn(hObject, % varargout cell array for returning output args % hObject handle to figure % eventdata reserved - to be defined in a future % handles structure with handles and user data

eventdata, handles) (see VARARGOUT); version of MATLAB (see GUIDATA)

% Get default command line output from handles structure varargout{1} = handles.output; function edit_enabled_CreateFcn(hObject, eventdata, handles) set(hObject,'Enable','On','String','0'); function edit_disabled_CreateFcn(hObject, eventdata, handles) set(hObject,'Enable','Off','String','0'); function edit_port_CreateFcn(hObject, eventdata, handles) set(hObject,'Enable','On','String','COM4'); function rad_mode_Callback(hObject, eventdata, handles) handles=guidata(hObject); if get(handles.rad_matlab,'Value')==get(handles.rad_matlab,'Max') handles.mode=0; handles.simu='matlabSerialDMP'; else if get(handles.rad_dmp,'Value')==get(handles.rad_dmp,'Max')

122

handles.mode=1; handles.simu='simulinkDMP'; else if get(handles.rad_comp,'Value')==get(handles.rad_comp,'Max') handles.mode=2; handles.simu='simulinkComp'; end end end guidata(hObject, handles); function rad_ol_Callback(hObject, eventdata, handles) handles=guidata(hObject); param={'x' 'y' 'z'}; if get(hObject,'Value')==get(hObject,'Max') for i=1:3 set(handles.(['edit_RPM_in_' param{i}]),'Enable','On','String','0'); set(handles.(['edit_teta_tgt_' param{i}]),'Enable','Off','String','0'); end set(handles.but_ol,'Enable','On'); set(handles.but_cl,'Enable','Off'); handles.loop=0; end guidata(hObject, handles); function rad_cl_Callback(hObject, eventdata, handles) handles=guidata(hObject); param={'x' 'y' 'z'}; if get(hObject,'Value')==get(hObject,'Max') for i=1:3 set(handles.(['edit_teta_tgt_' param{i}]),'Enable','On','String','0'); set(handles.(['edit_RPM_in_' param{i}]),'Enable','Off','String','0'); end set(handles.but_cl,'Enable','On'); set(handles.but_ol,'Enable','Off'); handles.loop=1; end guidata(hObject, handles); function but_ol_Callback(hObject, eventdata, handles) handles=guidata(hObject); if handles.loop==0 set_param([handles.simu '/Input/sw_ol'],'sw','0'); set_param([handles.simu '/Input/sw_cl'],'sw','1'); set(handles.rad_ol,'Value',get(handles.rad_ol,'Max')); % msgbox('Open Loop Init','Notification'); end param={'x' 'y' 'z'}; for i=1:3 RPM_in(i)=str2num(get(handles.(['edit_RPM_in_' param{i}]),... 'String'))+90; set_param([handles.simu '/Input/RPM_' param{i}],'value',... num2str(RPM_in(i))); end guidata(hObject, handles); function but_cl_Callback(hObject, eventdata, handles) handles=guidata(hObject); if handles.loop==1 set_param([handles.simu '/Input/sw_ol'],'sw','1'); set_param([handles.simu '/Input/sw_cl'],'sw','0'); set(handles.rad_cl,'Value',get(handles.rad_cl,'Max')); % msgbox('Closed Loop Init','Notification'); end param={'x' 'y' 'z'}; for i=1:3 teta_tgt(i)=deg2rad(str2num(get(handles.(['edit_teta_tgt_' param{i}]),...

123

'String'))); set_param([handles.simu '/Input/tgt_' param{i}],'value',... num2str(teta_tgt(i))); end guidata(hObject, handles); function but_start_Callback(hObject, eventdata, handles) handles=guidata(hObject); if get(hObject,'Value')==get(hObject,'Max') load_system(handles.simu); set_param(handles.simu,'SimulationCommand','Start'); m1=msgbox('Starting Simulation...','Notification'); while(strcmp(get_param(handles.simu,'SimulationStatus'),... 'initializing')); set(hObject,'String','Starting Simulation...',... 'BackgroundColor',[0.2 0.2 0.2],... 'Enable','Off'); set(handles.rt_status,'String','Starting'); end set(hObject,'String','Stop Simulation',... 'BackgroundColor',[0.8 0.2 0],... 'Enable','On'); set(handles.rt_status,'String','Started'); close(m1); pause(5); m3=msgbox('Simulation Started','Notification'); uiwait(m3); handles.run=1; if(strcmp(get_param(handles.simu,'SimulationStatus'),... 'stopped')) m2=msgbox('Error in Running Simulation, Check Simulink File',... 'Warning'); uiwait(m2); open_system(handles.simu); handles.run=0; set(handles.but_connect,'String','Connect','BackgroundColor',... handles.c); set(hObject,'String','Start Simulation','BackgroundColor',... handles.c); set(handles.rt_status,'String','Stopped'); return; end if handles.mode==0 [com.s,mrun]=startSerial(get(handles.edit_port,'String')); end else handles.run=0; handles.mrun=0; handles.cnnct=0; set(handles.but_connect,'String','Connect','BackgroundColor',handles.c); set(hObject,'String','Start Simulation','BackgroundColor',handles.c); set(handles.rt_status,'String','Stop'); set_param(handles.simu,'SimulationCommand','Stop'); if handles.mode==0 stopSerial(); end end guidata(hObject, handles); function but_connect_Callback(hObject, eventdata, handles) handles=guidata(hObject); param_out={'teta' 'omega' 'rpm_in' 'rpm_out' 'T_in'}; xyz_out={'_x' '_y' '_z'}; vis_out={'sat'}; obj_out={'Patch' 'Plot' 'Line' 'Text'}; param_in={'esc_' 'ypr_' 'acc_'}; if handles.run==0 msgbox('Please simulate first!','Warning'); return;

124

end if or(get(hObject,'Value')==get(hObject,'Max'),handles.cnnct==1); handles.cnnct=1; set(hObject,'String','Disconnect','BackgroundColor',[0.8 0.2 0]); set(handles.but_start,'Enable','Off'); rto_all=get_param([handles.simu '/Output/Export'],'RuntimeObject'); if handles.mode==0 rto_send=get_param([handles.simu '/Dynamic Model/esci'],... 'RuntimeObject'); end else handles.cnnct=0; set(hObject,'String','Connect','BackgroundColor',handles.c); set(handles.but_start,'Enable','On'); end while and(handles.run==1,handles.cnnct==1) if handles.mode==0 esc_all=rto_send.InputPort(1).Data; writeSerial(com.s,esc_all); [input]=readSerial(com.s); k=1; for i=1:length(param_in) for j=1:length(xyz_out) set_param([handles.simu '/Dynamic Model/' param_in{i} ... xyz_out{j}],'value',num2str(input(k))); k=k+1; end end end if get(hObject,'Value')==get(hObject,'Min') handles.cnnct=0; break; end for i=1:length(vis_out) for j=1:length(obj_out) delete(findobj(handles.(['plot_' vis_out{i}]),'Type',obj_out{j})); end end for i=1:length(param_out) for j=1:length(xyz_out) for k=1:length(obj_out) delete(findobj(handles.(['plot_' param_out{i} xyz_out{j}]),... 'Type',obj_out{k})); end end end state_all=rto_all.InputPort(1).Data; draw_dynamic_state(state_all(1),state_all(2),... state_all(3),handles.plot_sat); draw_axis_state(state_all(1),state_all(2),... state_all(3),2,'-','B',handles.plot_sat); draw_axis_state(0,0,0,1,'--','I',handles.plot_sat); handles.teta_x=[handles.teta_x(2:end); state_all(1)]; handles.teta_y=[handles.teta_y(2:end); state_all(2)]; handles.teta_z=[handles.teta_z(2:end); state_all(3)]; handles.omega_x=[handles.omega_x(2:end); state_all(4)]; handles.omega_y=[handles.omega_y(2:end); state_all(5)]; handles.omega_z=[handles.omega_z(2:end); state_all(6)]; handles.rpm_in_x=[handles.rpm_in_x(2:end); state_all(7)]; handles.rpm_in_y=[handles.rpm_in_y(2:end); state_all(8)]; handles.rpm_in_z=[handles.rpm_in_z(2:end); state_all(9)]; handles.rpm_out_x=[handles.rpm_out_x(2:end); state_all(10)]; handles.rpm_out_y=[handles.rpm_out_y(2:end); state_all(11)]; handles.rpm_out_z=[handles.rpm_out_z(2:end); state_all(12)]; handles.T_in_x=[handles.T_in_x(2:end); state_all(13)]; handles.T_in_y=[handles.T_in_y(2:end); state_all(14)];

125

handles.T_in_z=[handles.T_in_z(2:end); state_all(15)]; set(handles.rt_clock,'String',num2str(state_all(16),3)); k=1; for i=1:length(param_out) for j=1:length(xyz_out) if and(k>=1,k

Suggest Documents