• Ready for review
  • Grim Reefer

    Members: @Mary Dertinger (RIT Student) @Alex Moczarski (RIT Student) @Sam Larson @Richard Sommers (RIT Student) @Louis Fleisher (RIT Student) @Dean O'Brien (RIT Student) @Jonathan Godfrey (RIT Student) @Braxton L. Crandall (RIT Student)

    Attachments: Grim Reefer Schematics, Grim Reefer Manual (test and launch instructions), Payload data Analysis (data from Grim Reefer, RRC3 and Radiosondes IREC), L1 test flight data (fast.csv, slow.csv), L1 test flight data (L1 graphs), IREC data (merged.csv)

    Status: Completed; successful READ THE FAILURE SECTION BEFORE YOU COPY ANYTHING!!

    Project: IREC 2023-24 payload “Ritchie” mission was to record flight data and footage of reefing event.

    Grim Reefer Requirements:

    • Detect boost and landing

    • Read loadcell output

    • Control camera power

    • Ability to arm on pad

     

    image-20240710-211950.png

     

     

    image-20240710-212041.png

     


    Component Overview

    Requirement

    Component

    Requirement

    Component

    Processing power

    STM32

    USBc to UART

    CP2102N

    Debugging

    SWD connector, reset header, debugging header

    Board status indicators

    LEDs and Buzzer

    Store data locally

    Flash mem → W25Q512JV

    Voltage rail sensor

    INA260

    Temp and humidity

    BME280

    Altimeter

    MS5611

    IMU

    LSM6DL

    ADC

    MCP3561R

    Loadcell reading

    Fully Differential Amplifier → LMH5401

    Loadcell

    50kg ATO Tension and Compression

    7.4V Camera Power controller

    Load Switch → TPS22810

    3.3V rail for Grim Reefer

    Buck → TPS565208DDCT

    5V for load cell

    LDO → TPS7B8450QWDRBRQ1

    Cameras

    RunCam Split v4

    Camera connectors

    2 pin JSTXH

    Battery connector

    2 pin screw terminal Link

    Arm on pad

    FingerTech screw switch and buzzer (to note if grim is flight ready)

    Load cell connector

    4 pin screw terminal

     


    Power Delivery

    Powered by a 2S Li Ion battery at 5000mAh. We needed three Voltage rails, excitation, grim reefer and cameras.

    • 5V for Load Cell Excitation

      • Needs to be stable because load cell measures voltage as it undergoes compression/tension. Resistance chances during compression/tension therefore measuring a different voltage (classic V=IR) so excitation voltage for load cell must be stable throughout entire measurement to get best results.

      • For highest input to output ratio the excitation voltage should be run near max, which was recommended on the datasheet as 10V. We had concerns with the 10V supply being unstable and getting too hot. Temperature also changes resistance so we would have had to correspond what temperature the load cell was throughout flight and compensate for that in our analysis. We decided that 5V was acceptable for this application especially since we picked a 50kg loadcell instead of a 100kg loadcell.

    • 7.4V for 2x Cameras (only on during flight → enables load switch once boost is detected and disables after 24 minutes)

      • Camera's voltage ranges from 5V-25V but need to be aware of power consumption and temperature. It is worth noting that these cameras were power hungry, and we would have been cutting it close with battery life if not for boost detection.

    • 3.3V for Grim Reefer

      • Needs to be relatively stable to support sensor suite and STM32.

      • We have a simple LC filter on this rail see below in figure labeled 3.3V LC Filter.

    Voltage Rail

    Component

    Rational

    Voltage Rail

    Component

    Rational

    7.4V (Cameras)

    Load switch TPS22810

    Cameras could take any voltage between 5-25V and were only going to be powered on during flight so we didn't have to worry too much about power consumption.

    3.3V (Grim Reefer)

    Buck from 7.4V (Battery) to 3.3V TPS565208DDCT

    Grim reefer needs relatively stable voltage for sensors. LDO has lower noise floor but is less efficient - put a simple LC filter to help mitigate noise on Buck. LDO vs Buck

    5V (load cell excitation)

    LDO from 7.4V (Battery) to 5V TPS7B8450QWDRBRQ1

    Load cell excitation needs to be stable - fluctuations in excitation will affect the measurement.


    Boost/Landing Detection

    Two ways:

    • Acceleration based: 5G for 1/4 of a second

    • Altitude based: 500ft gain in altitude over 5 seconds.

    The acceleration-based boost detection was the mechanism that triggered first for the flight and the L1 test flight.


    Load Cell reading

    Requirement: Read a 10ms event with a CALCULATED maximum force of 27kg.

    • 50kg Load Cell Load Cell ATO Link → we had a granularity of about 6 grams.

    • Fully Differential Amplifier was picked was the LMH5401. This chip was definitely over speced (sorry Louis this one kinda broke da bank) but it worked well for our application. Has ability to implement certain gain - we did 12dB.

    • Anti-Aliasing filter, fairly simple and standard to implement in these types of applications. If you are an EE/MicroE you will learn all about it in Linear Systems, if not read about it here Anti-aliasing link. Pretty much you need to filter out unwanted frequencies that you could potentially misread. Cut off frequency should be 1/2 of max sampling rate (thanks Nyquist) so ours was 5kHz because we have to sample at 10 kHz to get enough data for a 10ms event. Simulation done in LTspice (spice is life) - shown below in figure Filter Sim.

    • Load cell excitation was run at 5V to GND. Usually load cells have +/- excitation voltage shown in Typical Load Cell Wiring diagram but instead of having a negative excitation we ran it to GND. You lose part of your input/output range (differential centered around 0 with +/- excitation vs differential centered around half of your excitation), but it was simpler to use GND and worked for our application.

    • Load cell calibration @Richard Sommers (RIT Student) and @Mary Dertinger (RIT Student) hung a bunch of known masses on the load cell then in the same order put on, they were taken off -hysteresis- shown below in Load Cell Calibration/Data.

     

     

    Weight (g)

    Force (N)

    Voltage (V)

    Weight (g)

    Force (N)

    Voltage (V)

    5855

    57.43755

    0.00086

    8480

    83.1888

    0.00165

    12695

    124.538

    0.00275

    16920

    165.9852

    0.0035

    21395

    209.885

    0.0049

    25540

    250.5474

    0.0061

    33150

    325.2015

    0.0083

    36840

    361.4004

    0.0088

    39820

    390.6342

    0.0099

    45425

    445.6193

    0.0114

    49410

    484.7121

    0.0125

    54385

    533.5169

    0.0137

    49455

    485.1536

    0.0125

    43950

    431.1495

    0.0114

    39600

    388.476

    0.0101

    31980

    313.7238

    0.00821

    28290

    277.5249

    0.00717

    23815

    233.6252

    0.00582

    21185

    207.8249

    0.00518

    17195

    168.683

    0.00375

    12970

    127.2357

    0.00286

    8825

    86.57325

    0.00192

    4610

    45.2241

    0.00055

    1655

    16.23555

    0.00018


    Control Camera Power

    We used the load switch TPS22810 from TI. Pretty simple implementation just don't mess up a 10 ohm for a 10 kohm resistor. CAM_EN goes to GPIO on STM. JSTXH were used to connect to cameras. Cameras must record for 12 minutes to properly save file (it will be corrupted if not) so we had the camera power run for 24 minutes to make sure we got everything. Upward facing camera video & Scenic Camera video


    Successes

    This was a successful project - it had a few hiccups, but it completed its objectives.

    Success

    Rationale

    Would implement again?

    Success

    Rationale

    Would implement again?

    Boosting/landing detection

    Very helpful - eliminates worry for excessive power drain on pad. See Grim Reefer Instructions/github for more details on SW implementation

    YES

    Controlling camera power

    Eliminates worry for excessive power drain on pad

    YES

    Load cell reading (sorta)

    Mission requirements but could use schematics/grim again for similar projects

    Yes - as needed

    Sensor suite

    Mission requirement for boost detection and helped us understand flight events especially when flight is not nominal.

    Yes, but fix MS5611 mistake and I2C lockup issue. We got lots of helpful flight data for rocket and payload - see Payload Data summary attachment

    L1 test flight

    Wanted to test boost/landing and overall functionality of Grim.

    YES, super helpful and great to add in Tech Report - see L1 test flight data attachment

    Battery/power scheme (see Payload Analysis for voltage readings throughout flight)

    Had to meet component voltage supply requirements.

    Yes, would use batteries / setup again.


    Failures

    Every project has its failures… here is a comprehensive list of ours (any figure/schematic explicitly mentioned are in the Failure Figure expand below)

    Failure

    Solution

    Future Mitigation

    Failure

    Solution

    Future Mitigation

    Wrong transistor on buzzer which was copied off of Auto Pilot Module (Q1 on schematics). Originally used AO3400A, a N channel mosfet see schematic below, Buzzer Schematic Failure. Need a resistor on this implementation.

    Removed and replaced with a digital npn but could also have replaced with a sub-logic mosfet. Digital transistor is not a discrete transistor, it has a pull-down resistor and a current limiting resistor built in. It is simpler but can be either fully on or fully off, hence digital. This is ideal for our buzzer application.

    Check schematics that are copied from other boards, especially when they have not been fully tested. We need a deeper level schematic check.

    MS5611 Schematics issue - SCK wired in I2C mode which was copied off of Sensor Module (U1 on schematics, see MS5611 Schematic Failure below)

    Remove MS5611 and use BME280 for altitude (slower refresh rate but still suitable).

    Check schematics that are copied from other boards, especially when they have not been fully tested. We need a deeper level schematic check.

    10 ohm resistor from 7.4 V → GND on load switch (R26 on schematics, see 10 ohm Resistor Schematic Failure)

    Took off resistor - several had already completely popped off

    We need a deeper level schematic check.

    MCP3561R was oriented wrong on breakout (See MCP3561R Incorrect Orientation Photo)

    De-soldered and re-soldered chip with help from @Jim Heaney (See MCP3561R Correct Orientation Photo)

    May have been JLC issue but if not - always check the component on JLC especially the ones we import components that are not made ourselves.

    I2C lock up issue

    WIP (same as sensor mod)

    WIP

    Issue with INA260 on camera rail ?

    WIP

    WIP

    Load cell sensor breaking - load cell underwent excess forces, but it read the initial snatch force then -8000 for rest of flight - see payload analysis attachment

    Still determining failure mode (Likely due to ~7.5 sec free fall after deployment causing an unexpectedly high snatch force) so unable to pinpoint exact solution. We could have gone up to a 100kg load cell, but issue would have likely still occurred.

    Likely more of a recovery failure, but make sure the static line to the parachute bag is strong enough, and assume there will be very high forces, and it's better to have less sensitive data than none at all.

     

    Camera Exposure adjustment caused the first few seconds of video to be very overexposed, giving us less information immediately following separation (Minor, not sure if this belongs here)

    None taken

    Add some bright LED’s next to the cameras to lessen the difference between the inside of the tube and the sky.

    Measuring the acceleration of the buzzer (LOL see graph - Buzzer Accel - below. For more detail see Payload Analysis pdf.

    WIP

    WIP