Mission Requirements - cmu-argus-2/documentation GitHub Wiki

Level 1

  1. The spacecraft shall conform to the latest version of the CubeSat Design Specification
  2. The spacecraft shall be compatible with the ExoLaunch EXOpod Nova deployment system
  3. The spacecraft shall be compatible with the environments specified in the latest SpaceX Rideshare Payload User's Guide.
  4. The spacecraft shall be capable of operating in a sun-synchronous orbit typical of SpaceX Transporter launches.
  5. The spacecraft shall detumble to a residual angular velocity less than 3 deg/sec.
  6. The spacecraft shall demonstrate orbit determination with absolute position errors less than 50 km.
  7. The spacecraft shall downlink at least 10 images of the Earth in at least VGA (640x480) resolution.

Level 2

Mechanical

Structure

  1. The CubeSat shall follow all dimensional requirements pertaining to a 1U craft (A 1U craft shall fit within a 10 cm x 10 cm x 10 cm prism and shall weigh a maximum of 2 kg, subject to change based on the dispenser). [Level 1 Requirements 1, 2]

Measurement in CAD + measurement after production. Mass properties measured in CAD + device measured on weighing scale (CubeSat official procedure). Verified using calipers.

  1. No components on the sides of the CubeSat shall protrude further than 6.5 mm normal to the surface (subject to change based on the dispenser). [Level 1 Requirement 2]

Any protrusions will be dimensioned carefully in CAD and compliance will be verified on the final build using calipers (see CIFP).

  1. The CubeSat structure should be made from hard anodized aluminum alloy (70xx/60xx/50xx). [Level 1 Requirement 1, 2]

Anodized surfaces will be tested for contact at randomly selected points using a digital multimeter.

  1. The CubeSat rails shall have minimum width of 8.5mm. [Level 1 Requirement 2]

Rail dimensions will be measured in CAD and verified using calipers.

  1. The edges of the rails shall have a minimum radius of 1 mm. [Level 1 Requirement 2]

Rail dimensions will be measured in CAD and verified using calipers.

  1. The rails of the CubeSat shall have a minimum surface area of 6.5mm x 6.5mm contact with neighboring rails. [Level 1 Requirement 2]

Rail dimensions will be measured in CAD and verified using calipers.

  1. The CubeSat Rail shall have at least 75% contact with the dispenser rails and 25% of the rails may be recessed as per CubeSat Design Spec Section 2.2.9. [Level 1 Requirement 1, 2]

Measurement in CAD + verified via visual inspection of final CubeSat.

  1. The center of gravity of the CubeSat shall fall within +/- 2 cm of the X and Y axes and +/- 2 cm of the Z axes, measured from the geometric center of each axis. (Table 2 CubeSat Design Spec) [Level 1 Requirement 1, 2]

Mass properties to be measured in CAD to determine center of gravity.

  1. The CubeSat shall pass random vibration testing. [Level 1 Requirement 2]

Payloads with 4-point interfaces shall be tested with SpaceX provided adapters to represent the Launch Vehicle stiffness and shall conform to Rideshare Payload Requirements or Notching of the primary mode of the payload can be done.

  1. The CubeSat shall pass shock testing. [Level 1 Requirement 2, 3]

Shock test levels and durations should conform with Rideshare requirements mentioned in Section 6.7.5.

  1. The CubeSat shall have a separation mechanism to detach from other CubeSats sharing the dispenser space. (separation spring guidelines detailed in 2.2.14 of CubeSat requirements). [Level 1 Requirement 1]

Separation springs should have max force <6.7 N and stroke length >2.5mm Spring requirements based on manufacturer Tests/specific requirements dependent on dispenser

  1. The CubeSat structure shall be compatible with the ExoLaunch EXOpod Nova development system (dispenser). [Level 1 Requirement 2]

Conduct Mechanical compatibility test. Volume and mass will be measured in CAD.

  1. The CubeSat will have deployable solar panels and a deployable antenna, which should be deployed within 10 seconds (TBD) after release from the dispenser. In the case where these fail to deploy, other subsystems of the CubeSat shall still be able to operate without interruption. [Level 1 Requirement 4, 5, 6, 7]

Mechanical testing of deployment mechanism to ensure reliability, testing of the CubeSat in both the deployed and stowed configurations --

--

Thermal

  1. The CubeSat shall survive in a high-vacuum environment with high temperatures in accordance with the CubeSat-to-dispenser ICD requirements. The acceptable thermal range of CubeSat should be -40℃-75℃. The survival themal range of CubeSat should be -40℃-75℃. [Level 1 Requirement 3]

Thermal Bakeout Testing, TVAC cycling testing

  1. The CubeSat shall have a Total Mass Loss (TML) of less than or equal to 1.0%.The CubeSat materials shall have a Collected Volatile Condensable Material (CVCM) of less than or equal to 0.1%. [Level 1 Requirement 2]

The CubeSat shall pass thermal bakeout testing. Thermal vaccum and thermal cycle test levels and durations should conform with Rideshare requirements mentioned in Section 6.7.10.

  1. The CubeSat shall be capable of withstanding vacuum levels of 10^-10 torr (TBD) and temperatures of -65 to +125 °C (TBD) without sustaining damage that prevents it from performing any functions.[Level 1 Requirement 3, 4]

Conduct TVAC testing based on SpaceX Rideshare Payload User's Guide

  1. The batteries of the CubeSat shall remain within the temperature range of -30 to +80 C (TBD) at all times during the mission. [Level 1 Requirement 3]

Thermal Simulation, Thermal Bakeout Testing

  1. All materials used on the CubeSat that are exposed to vacuum shall be found on the NASA Outgassing Materials list to have acceptable levels of outgassing. [Level 1 Requirement 1]

Outgas Testing, Cross Check Materials List

--

Embedded

Power

  1. The CubeSat shall source at least 25% more energy per orbit than consumed. [Level 1 Requirement 4/7]

Test the solar panels in a simulated space environment and measure the amount of energy generated over the course of an orbit. Then measure amount of energy expended during that simulated orbit and ensure that the energy sourced is at least 25% greater than the energy consumed.

  1. The CubeSat shall contain solar panels that can safely charge the CubeSat’s battery: maintain a temperature range of 10C to 50C, voltage range of 3.0V to 4.1V, charge current of at most 1A. - [Level 1 Requirement 1/4]

Simulate the various power outputs of the solar panel with electronic power supplies and ensure that the BMS only enables charging the cell if the cell falls within the prescribed conditions in the requirement.

  1. The CubeSat shall maintain the battery voltage during discharge between 3.0V and 4.1V. [Level 1 Requirement 1/4]

The battery voltage during operation will be continuously measured and compared to the recommended voltage range. The test passes if the voltage stays between 3.0V and 4.1V the entire time.

  1. The CubeSat shall maintain the battery temperature during discharge between -30C to 50C. [Level 1 Requirement 1/4]

The battery temperature during operation will be continuously measured and compared to the recommended temperature range. The test passes if the temperature stays between -30C and 50C the entire time.

  1. The CubeSat shall be equipped with the smallest size battery with sufficient capacity to power all operational modes during a 2700-second dark orbit period. [Level 1 Requirement 4]

Calculate the power consumption of the CubeSat based on the operational modes and determine power consumption for the best-case, average-case, and worst-case scenarios. Testing should ensure that under all three scenarios, the battery cells can supply sufficient power and maintain the CubeSat's functionality.

  1. The CubeSat shall generate all necessary voltage rails, including 1.8V, 3.3V, and 5V, for powering features with ±5% tolerance range. [Level 1 Requirement 4]

Measure the output of all generated voltage rails to verify that each voltage is within ±5% tolerance range. Testing should ensure that these voltages remain stable under various load conditions during operation.

  1. The CubeSat shall enable or disable individual power consuming elements of the CubeSat within 1±0.5 second after the automated program in the microcontroller sends out commands and within 10±2 seconds after the ground station sends out commands. [Level 1 Requirement 4]

Send out enable/disable commands from the microcontroller and observe whether the system can receive the command and shut down the power of the designated components/functions within 1±0.5 second; Send out enable/disable commands from the ground station and observe whether the system can receive the command and shut down the power of the designated components/functions within 10±2 second.

  1. The CubeSat shall monitor the power consumption of each individual power consuming element with an error range at most ±5% and shall log and store the power data every 30 seconds. [Level 1 Requirement 4]

Measure the voltage of the power consumption of each individual activating electrical components and compare it to the data logged by the system and calculate whether the error is within ±5%.

  1. The CubeSat shall have necessary over-current protection devices. [Level 1 Requirement 1]

Manually trip the circuit to ensure the protection device is correctly protecting the circuit. This can be done with a current injection test.

Software

  1. The CubeSat shall have fault-tolerance software with autonomous error detection and recovery mechanisms, with error detection and correction up to two bits. [Level 1 Requirement 7]

Simulate bit errors in software, and ensure that downstream software detects and redos the associated calculation to ensure that bit errors are not propagated.

  1. The CubeSat shall implement a software watchdog, which ensures Cubesat functionality every 20 seconds. [Level 1 Requirement 7]

Trigger failure condition manually (i.e. no response for X cycles), and ensure that software catches the failure condition.

  1. The CubeSat shall control the camera systems, with any time dependent shots taken within 1 second of their designated time. [Level 1 Requirement 7]

Have the microcontroller send out a request for a picture, and ensure that the picture has an RTC timestamp within 1 second of the designated time.

  1. The CubeSat shall be able to interface with all required avionics, being able to command time-dependent systems within 1 second of their designated time. [Level 1 Requirement 7]

Write unit tests that command external systems. Utilize the same control system to monitor the response of the system and ensure that it's within 1 second.

Hardware

  1. The CubeSat shall withstand random vibration levels of up to 5.57 grms across a frequency range of 20 Hz to 2000 Hz in each axis, as defined in the SpaceX Rideshare Payload User's Guide (Table 4-6). (Level 1 Requirement 3)

Test will be conducted through an outside vendor. After the test, the CubeSat will be inspected for structural integrity, with all components checked for loosening, damage, or displacement.

  1. The CubeSat shall survive within the bounding conductive boundary temperature range of -20°C to 69°C during the mission phases from liftoff to payload deployment, as defined in the SpaceX Rideshare Payload User's Guide (Table 4-11). (Level 1 Requirement 3)

Test will be conducted through a thermal vacuum chamber over multiple cycles. During the test, all critical systems will be monitored for performance, ensuring proper functionality without degradation. After the test, the CubeSat will be inspected for any physical damage due to thermal stress.

  1. The CubeSat shall implement a hardware watchdog that monitors activity every 10 seconds. [Level 1 Requirement 7]

Write a test routine that deliberately causes the CubeSat’s main processor to stop responding for a duration longer than the watchdog timeout (e.g., 10 seconds). Verify that the watchdog successfully triggers a system reset within the defined timeout period. Watchdog Fault Injection: Simulate multiple system faults like software hangs or infinite loops in different subsystems (e.g., communication, power control) and confirm that the watchdog activates correctly, resetting the system to restore normal operation.


2.? Comms/Ops


2.?.1 Communication


2.?.1.1 Driven by Standards and Regulations:

2.?.1.1.1. Operators shall obtain and provide documentation of proper licenses for the use of radio frequencies per CDS 2.4.1. [Level 1 Requirement 1]

Test/verification: Confirm operators have the required licenses.

2.?.1.1.2. Per CDS 2.4.2 Argus-2 shall comply with their country’s radio license agreements and restrictions. [Level 1 Requirement 1]

Test/verification: Confirm documentation of the radio license agreements and restrictions.

2.?.1.1.3. The radio transceiver shall operate on the specified bandwidth of the amateur radio frequency bands for CubeSats - UHF, and at the specific frequency that is to be assigned [update this once a frequency is known]. [Level 1 Requirement 1]

Test/verification: Ensure that the transmitted signal is within the allocated UHF band and at the specified frequency. Confirm the signal complies with regulatory requirements for power and bandwidth. Verify that the transceiver operates consistently and stably within this frequency range under nominal and varying conditions.

2.?.1.1.4. All deployables such as booms, antennas, and solar panels shall not deploy before a minimum of 30 minutes after Argus-2's deployment switch(es) are activated during dispenser ejection per CDS 2.4.4. [Level 1 Requirement 1]

Test/verification: Confirm with the avionics and mechanical team that there are protocols/mechanisms to prevent the release of the antenna prior to 30 min after ejection.

2.?.1.1.5. Argus-2 shall have at least three independent inhibitors to prohibit the inadvertent release of any deployable structures such as antennas or solar panels per CDS 2.3.8. [Level 1 Requirement 1]

Test/verification: Confirm with the mechanical team that there are 3 independent methods to prevent the release of antennas.

2.?.1.1.6. Per CDS 2.4.5 Argus-2 shall not generate or transmit a signal earlier than 45 minutes after on-orbit deployment. [Level 1 Requirement 1]

Test/verification: Conduct mock deployments before launch and verify with data received from the spacecraft.

2.?.1.2 Driven by Level 1 Requirements:

2.?.1.2.1. The communication system shall support two-way communication, enabling both command uplinks and telemetry, sensor readings, GPS data, and image downlinks.

Test/verification: Conduct a full communication system test by uplinking commands and downlinking telemetry and image data. Ensure that command execution confirmation is received after each command. [Level 1 Requirement 6/7]

2.?.1.2.2. The communications subsystem shall include a redundancy mechanism to ensure basic communication in case of primary system failure. [Level 1 Requirement 6/7]

Test/verification: Simulate a primary communication system failure by disabling the main communication system during a ground station contact. Test by attempting to establish communication with the CubeSat and transmit basic telemetry and emergency commands.

2.?.1.2.3. The ground station shall be capable of receiving signals from Argus-2 with a minimum gain of 10dBi (?) [Level 1 Requirement 6/7]

Test/verification: Conduct a ground station reception test using a signal generator to emulate the CubeSat transmission. Set the signal power and distance to simulate the actual communication link budget, considering the satellite's altitude and operational distance.

2.?.1.2.4. The communications subsystem shall achieve a minimum link margin of 10 dB between Argus-2 and the ground station, accounting for free-space path loss, atmospheric losses, antenna gain, and power availability. [Level 1 Requirement 6/7]

Test/verification: Conduct a link budget analysis and achieve a link margin of 10 dB or more.

2.?.1.2.5. Argus-2 shall be capable of transmitting and receiving data at a rate of min 1 kb/s for low data transmission rates and min 10 kb/s for high data transmission rates. [Level 1 Requirement 6/7]

Test/verification: Attempt to transmit/receive data at a rate of 1 kb/s and 10 kb/s for the duration of one ground pass.

2.?.1.2.6. Ground station can receive at least 10 images in VGA resolution from the satellite. [Level 1 Requirement 7]

Test/verification: test on the ground that the ground station can receive at least 10 images in VGA resolution.

2.?.1.2.7. The communications system shall implement a coding scheme (protocol) to ensure data integrity during transmission. [Level 1 Requirement 1/6/7]

Test/verification: Perform an end-to-end data transmission test by sending known data packets (e.g., test patterns or telemetry data) from the spacecraft’s communication system to the ground station. Introduce artificial noise or signal degradation to simulate realistic space conditions (e.g., low SNR).

2.?.1.2.8. The communications subsystem shall ensure that the Energy per Bit to Noise Power Spectral Density Ratio (Eb/N0) is maintained at a minimum of 10 dB for reliable data transmission. [Level 1 Requirement 6/7]

Test/verification: Perform ground station link testing and measure the Eb/N0 to ensure it meets the specified minimum under nominal operating conditions.

2.?.2 Operations


2.?.2.1 Basestation Related Requirements:

2.?.2.1.1. The communications team shall develop a data handling protocol that will store downlinked data and be able to display that data on the mission control dashboard. [Level 1 Requirement 6/7]

Test/verification: Confirm data handling and displaying works using mock data.

2.?.2.1.2. The communications subsystem shall implement a mission control dashboard to display telemetry data and Argus-2 health. [Level 1 Requirement 4/5/6/7]

Test/verification: The mission control dashboard correctly displays the received GPS data, altitude, etc.

2.?.2.1.3. The team shall develop an operations manual detailing the steps for uplinking commands, downlinking telemetry, and handling contingencies.

Test/verification: Ensure all operational steps (including handling contingencies) are followed as documented. The test should demonstrate that the team can uplink commands and downlink telemetry successfully and respond appropriately to simulated anomalies (e.g., communication blackouts, or command failures).

GNC

The spacecraft shall detumble to a residual angular velocity less than 3 deg/sec.

  1. The spacecraft shall reduce its angular velocity to less than 3 deg/sec in at most 48 hours.

Validated through simulation with different control algorithms, like PID or MPC, to control the states of spacecraft.

  1. The spacecraft shall determine its current angular velocity accuracy to within 0.1 to 1 deg/sec.

Validated through simulation with Kalman filter algorithms which estimate the states of spacecraft.

  1. The spacecraft shall be able enter a "coarse" estimation mode with an attitude estimation error of less than 5 degrees.

Validated through simulation with Kalman filter algorithms using IMU sensor.

  1. The spacecraft shall be able to enter a "fine" estimation mode with an attitude estimation error of less than 1 degree.

Validated through simulation with Kalman filter algorithms using IMU sensor and star tracker.

  1. Attitude controller shall meet stability criteria of 6 dB gain and 30 deg phase margin.

Test/verification: to be validated through simulation.

  1. The spacecraft shall be able to estimate the Earth's magnetic field to within xx Teslas.

Test/verification: to be validated through simulation.

The spacecraft shall demonstrate orbit determination with absolute position errors less than 50 km.

  1. The spacecraft shall be capable of obtaining “ground truth” position estimates with absolute position errors less than 1km.

Test/verification: to be validated through simulation.

  1. The spacecraft shall be able to point itself within xxx degrees towards the sun

Test/verification: To be validated through simulation.

Operations

  1. The GNC subsystem shall not exceed 200 g, as per the mass budget.

From CAD calculations and validated by weighing after sourcing components

  1. The spacecraft GNC subsystem shall have a peak power consumption below 2.5 Watts, as per the power budget.

Validated through simulation and validated by HIL testing

  1. The payload GNC subsystem shall have a peak power consumption below 2.5 Watts, as per the power budget.

Validated through simulation and validated by HIL testing

Vision

Camera Hardware & Calibration

  1. The camera system shall be optimized for capturing images between 450-700 km altitude.

Verification/test: Simulate the space environment and lighting conditions expected between 450-700 km altitude. Capture images and assess their clarity, focus, and overall quality.

  1. The camera system, in collaboration with the onboard ML model, shall support the GNC subteam in attitude determination with errors less than 15 degrees, and orbit determination with errors less than 50 kilometers.

Verification/test: Use a star tracker or another high-precision attitude determination system as a reference. Use simulated imagery with known landmarks and process these images with the onboard ML model to determine the spacecraft's attitude and orbit. Compare the attitude and orbit determined by the vision system to the reference to ensure errors are within 15 degrees and 50 kilometers.

  1. The camera shall capture RGB images (need to check the hardware).

Verification/test: Capture images using the camera system and verify that it can capture image in different wavelengths.

  1. The camera shall capture images with a minimum resolution of VGA (640x480), but higher resolution is preferred (Need to check the hardware).

Verification/test: Capture images using the camera system and verify that the resolution is at least VGA (640x480).

  1. The camera system shall have an onboard image compression capability to reduce the downlink bandwidth requirement.

Verification/test: Capture multiple images in quick succession without downlinking. Ensure the system stores them without loss or corruption by then downlinking and verifying their integrity.

  1. The camera system shall feature a buffer or storage system to temporarily hold captured images before they are downlinked. (Give flexibility in when to downlink, in case of interruptions or priorities in communication)

Verification/test: Capture multiple images in quick succession without downlinking. Ensure the system stores them without loss or corruption by then downlinking and verifying their integrity.

  1. The camera system shall be optimized for Earth observation, considering factors like focal length, sensor sensitivity, and field of view.

Verification/test: Simulate an Earth-like test environment, and assess the camera's focal length, sensor sensitivity, and field of view. Capture images and ensure they meet the desired quality and specifications, and compare image quality with existing Earth-image datasets at similar orbit conditions.

  1. At all times, there must be at least one camera pointing to the earth and one pointing to stars.

Verification/test: Distribute the cameras with enough FOV accordingly. Using 3D models or simulations, verify that at any given moment, one camera can see a portion of the Earth while another can see a portion of the stars. This includes modeling potential spacecraft rotations or movements and ensuring that the camera FOVs are wide enough to maintain coverage.

Machine Learning Model for Feature Recognition

  1. The machine learning model inference time shall not exceed the time of the GPU uptime, shall account for GPU launch overhead, and shall account for slack room in device degradation in the expected lifetime.

Verification/test: profile machine learning inference time on the corresponding GPU type.

  1. The size of the model shall fit within the given memory system.

Verification/test: profile size of the model

  1. The machine learning model shall output ECEF/pixel correspondences in a format processable by the GNC team.

Verification/test: Decide on a data format with GNC and maintain ongoing communication with them about the interface between Vision and GNC.

  1. The system shall have a confidence value for the output.

Verification/test: Testable and simulated during training and testing.

  1. The system shall output landmark classification result from input image

Verification/tests: pipe sample output to GNC team to verify the format of the output.

  1. The model shall pass XXX terrestrial features (with ECEF 3D pixel correspondence) to the GNC team for orbit determination.

Verification/test: Testable and simulated during training and testing. Depends on the method for extracting terrestrial features.

  1. The model shall perform pre-processing on the images. This pre-processing will include the detection of blur and glare, blur recovery, for example, and will correct or throw out images that are unusable.

Verification/test: Laplacian Variance: A common method to detect blur is by computing the variance of the Laplacian of the image. Low variance indicates a blurred image. If we execute blur recovery, calculating the similarity between two images to evaluate the amount of blur pixels recovered.

Downlink, Power, & Storage

  1. The system shall be able to identify and downlink earth-facing images (of various locations on Earth) to feed to the landmark inference model (i.e., images in which the Earth occupies at least 75% of the image).

Verification/test: software test with arbitrary sets of images to test the selection algorithm.

  1. The system shall process raw input images with adjustments on exposure, brightness, sharpness etc....(when required)

Verification/test: Simulate various different possible condition for input images. Feed into the system and test the performance of the ML model with and without filters, and test the performance of the ML model.

  1. The system shall transmit raw input image onto the GPU

Verification/test: deploy the ML model on device, verify that 1) the model has access to the image on GPU, 2) the communication/launch overhead time on GPU.

  1. The system shall control input image rate into the ML model inference, e.g.: if the power can support 6X (where x is int) inference, at what ratios should we feed the next set of six images for inference?

Possible verification/test: test with different range of input rate and measure the model performance to find the best rate. The challenge is to have input images that emulate that scenario.

  1. The camera unit shall require at most XXX TB of memory on the camera capture board, corresponding to at most 1 high-FOV-low-res and 10 low-FOV-high-res images.

These are stored in batches so that the Jetson can batch process these images.

  1. The GPU's power requirement shall not exceed 15W and the GPU has maximum memory of 8GB

Based on Jetson Nano

⚠️ **GitHub.com Fallback** ⚠️