Version 2021.1 of Princeton Satellite Systems toolboxes for MATLAB is now available! Over 50 new functions and scripts are included. Many other existing functions have been improved.
One new function is AtmNRLMSISE.m, an atmosphere function based on the NRL MSISE model. It is uses extensive flight data and includes sun effects. It computes the overall density and the number density of all atmospheric constituents. Our function has an easy to use interface that automatically incorporates the sun information and lets you input your spacecrafts ECI coordinates. You can also choose to use the original interface. Here is a comparison with the existing scale height model.
We provide a complete set of functions for planning lunar missions in the Missions module. The software includes landing control systems and trajectory optimizaton tools. You can use our Optical Navigation system for your cis-lunar missions and explore our cutting-edge neural network terminal descent software.
Here are two images from an optical navigation simulation for a solar sail.
Solar Sail and Earth paths in the heliocentric frame.Navigation camera view.
The Spacecraft Control Toolbox provides you with a lot of ways to do things, so you can use your own creativity to perform analyses or design a mission.
As a Summer 2021 intern, my first project was to complete the structural design of a 1U CubeSat that will fly in orbit with and observe the NASA Solar Cruiser. The 1U CubeSat needed to follow the CubeSat design specifications set by the California Polytechnic State University; it needed to have specific dimensions, needed to weigh a certain amount, and needed to be able withstand structural loads and natural frequency/vibrational loads. In order to design and test the CubeSat, I used Fusion360’s design and simulation softwares. I based my design of the CubeSat off of the engineering drawing provided by the California Polytechnic State University’s “CubeSat Design Specification” manual.
I designed the initial model in Fusion360 as one part made up of different components, as shown below:
CubeSat Initial Design Home View
CubeSat Initial Design Top View
The top of the CubeSat faces the positive z-direction, while the front faces the negative y-direction and the right side faces the positive x-direction. The CubeSat also needed four deployable solar panels attached by hinge mechanisms to the four edges of the top face. The panels needed to start parallel to the walls and then, when deployed by some mechanism, needed to swing upward in the positive z-direction.
After designing the idealized CubeSat, I ran multiple modal frequency analyses and structural analyses in order to make sure the CubeSat could withstand the proper loads. First, I ran modal frequency analyses, with fixed boundary conditions for a cantilever beam. The natural frequencies for the first four modes of the CubeSat are shown in the following table:
Mode
Frequency (Hz)
1
518.5
2
518.5
3
518.6
4
518.8
CubeSat natural frequencies for the first four modes, calculated by Fusion360
The above natural frequencies calculated in Fusion360 are very similar to the theoretical natural frequencies of a cantilever beam, given by the formula:
This formula is from the following site: https://amesweb.info/Vibration/Cantilever-Beam-Natural-Frequency-Calculator.aspx
Where “E” is the modulus of elasticity (also known as Young’s Modulus), and “I” is the area moment of inertia. This formula can be used to find the natural frequencies of a cantilever beam for any mode of vibration, “n”.
My results were also similar to other experimental results. For example, a study titled “Design, Analysis, Optimization, Manufacturing, and Testing of a 2U CubeSat” published in the International Journal of Aerospace Engineering performed a modal frequency analysis of a 2U CubeSat and found the following natural frequencies for the first four modes:
Mode
Frequency (Hz)
1
490.5
2
506
3
565
4
640
These results are from the following study: https://www.hindawi.com/journals/ijae/2018/9724263/
These results are similar to the ones I found in my modal frequency analyses.
After running the modal frequency analyses, I ran a few structural load analyses. The CubeSat frame had a honeycomb structure, which I modeled in Fusion360, and was made up of Aluminum 7075 material. The CubeSat needed to be able to withstand a maximum pressure differential of 15.2 psi (0.104 MPa) created by the Space Launch System (SLS) ascent into space, according to NASA’s Space Launch System Program’s White paper.
The maximum displacement of the CubeSat’s structure due to the applied force was 0.009 m, which is very low. Fusion360 calculates Von Mises stresses, and the maximum stress was 16.08 MPa, which is well under Young’s Modulus of Aluminum 7075 (71.7 GPa). The safety factor of the structure was 8+ everywhere on the structure, meaning the structure is much stronger than the 15.2 psi (0.104 MPa) load applied.
After running the modal frequency and static stress analyses in Fusion360 and getting the desired results, the CubeSat was ready to be modeled as 3D printable parts and 3D printed with PLA on the FlashForge Creator Pro printer:
Front View of the 3D Printer.
Top View of the 3D Printer
The initial CubeSat design in Fusion360 had to be modified and broken up into different parts that were each 3D printable; after printing each part, I assembled them to form the whole CubeSat. I decided to break the initial design up into the following 3D printable parts: the top, the bottom, four separate side walls, four separate side rails, four deployable solar panels; finally, I needed to add four hinges plus four rods to attach each of the solar panels to the main structure (similar to a door hinge mechanism). This allowed the solar panels to rotate on a hinge from their initial position up to 180 degrees upward and back. Photos of the different 3D printed parts are shown below:
One of Four Deployable Solar Panels and Door Hinge Mechanisms.
One of Four Side Walls.
One of Four Support Rails.
Top Part of the CubeSat, Plus Four Deployable Solar Panel Systems Attached.
Different View of the Top Part with the Deployable Panels Attached.
Bottom Part of the CubeSat.
After 3D printing all the necessary parts, I needed to assemble them. I modeled screw holes in Fusion360 on each 3D printed part in specific locations, so that I would not need to bore holes manually after the parts were printed. I ordered screws for plastic from McMaster Carr, so I knew the correct diameter and length for the screw holes I modeled in Fusion360. This way, the parts were ready to be assembled immediately after 3D printing. Images of the final assembled 1U CubeSat are shown below:
Top View of the Fully Assembled CubeSat (Panels Not Deployed).
Front View of the Fully Assembled CubeSat (Panels Not Deployed).
Angled View of the Fully Assembled CubeSat (Panels Deployed).
3D printing the final product was an iterative process, so I ended up assembling two different CubeSats entirely and printing a multitude of different versions of each part until I assembled the final product correctly. During the printing process I ran into many problems with the design of the parts, as well as issues with the printer itself. Some design problems included incorrect part sizes, incorrect screw hole placement, incorrect screw hole tolerancing/sizing, and incorrect dimensions of the overall assembled cube. Some printer issues included warping and two nozzle clogs. Some of my parts warped due to a lack of adhesion between the printer bed and the filament coming out of the nozzle, meaning the corners of these parts bent upward and were no longer usable. I solved this problem by reducing the heat of the 3D print bed to make sure the filament could cool down correctly on the bed. On a couple of occasions, parts would not print at all or the filament would come out tangled and would not stick to the bed; I solved this problem by taking apart the nozzle and manually unclogging it so that the filament could come out correctly. I also re-leveled the bed, to make sure the nozzle was close enough to the printer bed so that when the filament initially came out of the nozzle it would stick to the bed immediately. Photos of intermediate designs are shown below:
This Initial Fully Assembled CubeSat was too Tall for a Standard 1U CubeSat by 6.5mm (The Walls were also too Big and Missing Screw Holes).
This Hinge for the Deployable Panel has a Barrel Diameter that was too Small for the Attachment Rod to Fit.
This Support Hinge had Screw Holes Placed Incorrectly.
Overall, this project was educational, challenging, and fun! I learned a new CAD software, Fusion360, which will be useful in the future, and I practiced my engineering design and 3D printing skills!
Overall, this project was educational, challenging, and fun! I learned a new CAD software, Fusion360, which will be useful in the future, and I practiced my engineering design and 3D printing skills!
One of their students, Savva Morozov, undertook a project to build a miniature 2-axis sun sensor for a CubeSat. Here is his blog post!
My name is Savva, I’m a senior at Princeton Int’l School of Math & Science. This summer I designed, built and tested a 2-axis solar tracking sensor for Princeton Satellite Systems.
The sensor can determine the relative position of the sun using a set of photodiodes. Bearing in mind that the solar sensor would be used in vacuum environment, I decided to make the sensor out of printed circuit boards (PCBs) and solder them to each other. Originally, I wanted to 3D print the sensor, but shifted to the PCB solution to eliminate the risk of outgassing.
Picture 1: solar tracking sensor, 2nd prototype.
My solar sensor design resembles the shape of a square-based pyramid that is approximately the size of a quarter. It consists of 5 PCBs: 4 sides and a base to which the sides are attached. Each side contains a photodiode, and by measuring the voltage outputs from at least 2 of the diodes, the device can determine the sunlight’s direction.
One of the initial problems I encountered was the handling and attachment of the photocells to the side PCBs. Each cell came with an anode and cathode wires already soldered to its front and back. I desoldered the cathode wire from every cell and affixed them to the PCB using a space grade silver conductive epoxy. This way I attached the cell to the device and grounded its cathode at the same time. I thought I killed two birds with one stone, but instead I killed two photodiodes: they were damaged in the soldering process. I resolved the issue in the second prototype: I threaded the cathode wire into a hole in a side PCB and then glued the diode to that same board. This way I didn’t have to use soldering iron at all, preventing possible risks. I then connected the cathode of every photodiode to a common ground and outputted the voltage readings from each cell in a single data bus.
Picture 2: Solar sensor, 2nd prototype, quarter for scale.
The diode, being attached to the outer side of the satellite, might be exposed to light that is reflected off the Earth or satellite surfaces. To partially prevent this, I soldered a shield to the edge of the sensor. Each surface of the shield would be covered with non-reflective material to further decrease the amount of ambient light.
To protect the diodes from the impacts of micrometeoroids and other space debris, I plan to cover the diodes with a thin shield of hard glass crystalline window (tempered glass or sapphire).
Testing the first prototype indicated a number of drawbacks that were solved in the second. Such problems are attaching the shield and the cells to the device, decreasing sensor’s size while increasing its aperture, and making the assembly process simpler.
I also calibrated photocell’s voltage outputs and their exact positions to account for manufacturing imperfections and for those created during the manual assembly of the device. I wrote a program to calculate the vector of sunlight direction and using Processing IDE created a visual representation of my sensor as well as its output result:
Picture 3: Visual illustration of a working solar sensor.
In order for my sensor to survive the vacuum environment, I attempted to use only space qualified materials in the device’s assembly: PCBs, solder, epoxy, and sheets of copper. I have finished working on the development stage of designing the solar sensor. Testing procedures on my last prototype showed that such device would be ready for further usage and launch.
CubeSats have caused a renewed interest in magnetic control of satellites, and passive hysteresis damping in particular. Modeling actual hysteresis rods on a satellite is not trivial, and generally requires empirical data on the properties of the rods selected. Our newest CubeSat simulation demonstrates damping using rods in LEO. A permanent magnet is modeled using a constant dipole moment, and we expect the satellite to align with the magnetic field and damp. We evaluate the results by plotting the angle between the dipole and the Earth’s magnetic field and the body rates.
First, let’s verify the magnetic hysteresis model in the toolbox using the bulk material properties in orbit. We use a dipole model of the Earth’s magnetic field. The nice hysteresis curves below confirms that we are computing the derivatives of the magnetic field correctly in the body frame, which requires careful accounting of rotating coordinates. Also we stay within the saturation limits which means our magnetic flux derivatives are correct too.
Hysteresis curves from simulating magnetic hysteresis in orbit
We will assume the rods are 1 mm radius and 95 mm length, with rods placed perpendicular to each other and the permanent magnet. Three rods are used per axis. The apparent rod parameters are taken from the literature. The actual rods will not reach saturation while in orbit, so we will see a minor loop.
Minor loops from damping rods using apparent properties
The rods produce only a small amount of damping per orbit, so we have to run for many orbits or days to see significant damping – in some passive satellites, the total time allotted for stabilization is two months! In this case we test the rods’ ability to damp the torque induced by turning on a torque rod with a dipole of 1 AM2 and allowing the CubeSat to align itself with the magnetic field, starting from LVLH pointing.
Damping in LEO using hysteresis rods
Simulating the rods is time-intensive, with a timestep of about 4 seconds required – which makes a simulation of several days on orbit take several minutes of computation. Once performance of the rods has been verified, a simple damping factor can be substituted.
This new simulation along with the functions for hysteresis rod dynamics will be in the new version of our CubeSat Toolbox, due for release in June!
References:
F. Santoni and M. Zelli, “Passive magnetic attitude stabilization of the UNISAT-4 micro satellite”, Acta Astronautica,65 (2009) pp. 792-803
J. Tellinen, “A Simple Scalar Model for Magnetic Hysteresis”, IEEE Transactions on Magnetics, Vol. 34, No. 4, July 1998
T. Flatley and D. Henretty, “A Magnetic Hysteresis Model”, N95-27801 (NASA Technical Repoets Server), 1995
We’ve been working on Asteroid Prospector, a 6U CubeSat to explore Near Earth Objects, for the past two years. It is quite a challenge to pack all the hardware into a 6U frame. Here is our latest design:
The nadir face has both an Optical Navigation System camera and a JPL designed robot arm. The arm is used to grapple the asteroid and get samples. The camera is used both for interplanetary navigation and close maneuvering near the asteroid.
Our fuel load only allows for one way missions but could be increased for sample return missions by adding another xenon tank, making it more of a 12U CubeSat. With that in mind, we wondered if we could do a Mars orbital mission with our 6U. It turns out it is possible! We would start in a GPS orbit, carried there by one of the many GPS launches. The spacecraft would spiral out of Earth orbit and perform a Hohmann transfer to Mars. Even though we are using a low-thrust ion engine, the burn duration is a small fraction of the Hohmann ellipse time making a Hohmann transfer a good approximation. We then spiral into Mars orbit for the science mission as seen in a VisualCommander simulation.
The low cost of the 6U mission makes it possible to send several spacecraft to Mars, each with its own instrument. This has the added benefit of reducing program risk as the loss of one spacecraft would not end the mission. Many challenges remain, including making the electronics sufficiently radiation hard for the interplanetary and Mars orbit environments. The lifetime of the mechanical components, such as reaction wheels, must also be long enough to last for the duration of the mission.
We’ll keep you posted in future blogs on our progress! Stay tuned!
Yosef and Amanda are giving a seminar on our Spacecraft Control Toolbox in Sheffield, England on October 1, 2013. This event has been arranged through our UK distributors, MeadoTech Ltd. A big thank you goes out to Dr. Mohamed Mahmoud and Ruth Jenkinson!
Asteroid Prospector is a 6U CubeSat designed to survey asteroids. It uses a Busek Ion engine to spiral out of earth orbit and rendezvous with an asteroid. It then uses its reaction control thruster system, which employ ECAPS green propellant thrusters, to perform near-asteroid operations. Here is a picture of the spacecraft in circular orbit mode.
The simulation is running in our Simulation Framework. The graphical display uses our VisualCommander client on the Mac.
The flight software is implemented in our ControlDeck C++ class library. Both the simulation and control software are available as part of our Aero/Astro vehicle control products.
We presented our Asteroid Prospector mission concept on Tuesday Aug 13th, 2013 the Small Satellites Conference in Logan, Utah in Session VI: Strength in Numbers. A copy of our paper is available here.
PSS attended the Small Satellite Conference in Logan, Utah, Aug 12-15. The conference site, on the campus of Utah State University, couldn’t have been more beautiful! View from the SmallSat venue, Logan Utah
The technical program, conference organization, and venue were all outstanding! I bumped into several PSS MATLAB Toolbox customers and representatives from companies PSS has teamed with on past projects.
SmallSat signs guiding the way!
I also had the pleasure of connecting with a number of new companies and teams working on advanced small satellite projects. We presented our Asteroid Prospector paper as part of the Strength in Numbers Session. The presentation was well received and we had a number of individuals express interest and provide feedback on the concept afterwards.
Amanda on the last day of the conference
On Wednesday evening, I was able to take advantage of the organized group activities and participated in the hike in Logan Canyon. It was a great week! Hope to see you all again next year!
I remember the day my dad brought home our very first VCR. It was a glorious invention. No longer were our family outings constrained by the TV Guide. This nifty VCR would magically record our favorite shows and allow us to play them back whenever we wanted. It wasn’t long before we had a cabinet full of unlabeled tapes — most of which were never watched again, except while searching for something we accidentally recorded over. But still, it was cool.
That first day, my dad and I watched “The Empire Strikes Back”. Twice! Being just five years old, this was my first “real” movie. I remember in the opening scenes, the huge imperial star destroyer floating ominously across the screen. It seemed to go on forever. Okay, so this is a spacecraft.
Fast forward 32 years. Everything seems to have gotten… smaller.
We can now manage our DVR, record our own digital movies, tweet, text and call from that little smartphone in our pocket. And those huge spaceships from 1980’s fiction? They are now about the size of that first VCR.
We’ve recently designed a 6U CubeSat capable of escaping Earth orbit, rendezvousing with an asteroid, and returning to Earth. Its called “Asteroid Prospector”. It’s shape is 12 x 24 x 36 cm, which is about 5 x 10 x 15 inches, and it weighs about 40 lbs. In other words: its a 1981 VCR. But it goes a lot faster.
Earth departure spiral for the Asteroid Prospector
The Asteroid Prospector is propelled through space using a Busek Bit-3 ion thruster. It uses electric power to accelerate ions out the nozzle at high speed, pushing the spacecraft in the opposite direction of the ion stream. This gives us a small thrust of 1.9 mN, but it can operate for nearly 3 years on just 5 kg of propellant! We are presenting the spacecraft design, mission analysis and example asteroid rendezvous simulations at the upcoming SmallSat conference.
Fast forward another 32 years. Is that a spaceship in your pocket?
We will release SCT 11 and ACT 5 this week! New features in SCT include tools for attitude profiling and visualization, libration point orbits and transfers, image analysis functions, brushless DC motor functions, updated Kalman Filters and smoothers, and a new UKF-compatible sensor suite.