Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SPAAAAAAAAACE

B4753ed732e72ff2568262c9387bbc4c?s=47 listrophy
August 12, 2014

 SPAAAAAAAAACE

Let's learn us a space exploration! In this talk, Brad will wax poetic on the particulars of getting into space, getting around in space, and getting things done in space. PID controllers, orbital insertion, and how rockets work by smashing molecules together. There may or may not be any math, programming, or vacuum-induced hypoxia in this talk.

B4753ed732e72ff2568262c9387bbc4c?s=128

listrophy

August 12, 2014
Tweet

Transcript

  1. None
  2. Carl Sagan Pale Blue Dot Photo in public domain via

    Wikimedia Commons
  3. Photos in public domain via Wikimedia Commons

  4. Photos in public domain via Wikimedia Commons Charlie Duke photo

    courtesy of charlieduke.net
  5. Apollo Guidance Computer Compared to iPhone 5S: • 284 times

    heavier • 2600 times slower (Hz) • 17 million times less memory Photo in public domain via Wikimedia Commons
  6. image credit: imgur.com/Cuwy6wZ

  7. YO HACKED

  8. image courtesy: kickstarter.com image courtesy: louxfamilyblog.com

  9. image courtesy: mic.com image courtesy: atlantablackstar.com

  10. Boeing Lockheed Martin United Space Alliance SpaceX Bigelow Aerospace Armadillo

    Aerospace Hamilton Sundstrand
  11. Brad Grzesiak CEO, Bendyworks @listrophy

  12. A Fire Upon the Deep Ashes of Victory At All

    Costs Earth Unaware Echoes of Honor Ender’s Game Children of the Mind Ender’s Shadow First Meetings Flag in Exile Honor Among Enemies Field of Dishonor An Incomplete List In Enemy Hands Mission of Honor On Basilisk Station Shadow Puppets Shadow of the Giant Shadow of the Hegemon Red Mars Speaker for the Dead The Short Victorious War War of Honor Wool The Honor of the Queen
  13. Pre-Bendyworks Photos courtesy NASA & Michael Fidler

  14. Launch Orbit Landing

  15. “Rocket Science”

  16. Launch

  17. Orbital Requirements • 1 Large Body, 1 Small Body •

    Circumferential Velocity • Only Gravity • No Intersection
  18. Let’s Do a Physics!

  19. Photo in public domain via Wikimedia Commons

  20. Portland Seattle 2.1º

  21. Portland → Seattle • 145 miles • 30 seconds •

    >17,000 mph
  22. Kinetic Energy Ek = ½ m v2 Ek / kg

    = ½ (17,000 mph)2 Ek / kg = 29.6 MJ
  23. Potential Energy Ep = mgh Ep / kg = (9.81

    m/s2)(330 km) Ep / kg = 3.2 MJ
  24. Kinetic (speed) vs. Potential (height) Speed = 29.6 MJ Height

    = 3.2 MJ
  25. Equatorial Surface Speed • 1,040 mph • With help: 16,000

    mph • Without help: 17,000 mph • Savings: ~5.4%
  26. Conservation of Momentum

  27. Momentum # p = mv! ! def momentum(grams, meters_per_second)! grams

    * meters_per_second! end
  28. Conservation of Momentum def system_momentum(objects)! objects.reduce(0) do |sum, (mass, velocity)|!

    sum + momentum(mass, velocity)! end! end! ! ! assert_equal \! system_momentum([[100 , 0 ], [100_000 , 0 ]]),! system_momentum([[100 , -10 ], [100_000 , 0.01 ]])! # g m/s g m/s
  29. Conservation of Momentum def system_momentum(objects)! objects.reduce(0) do |sum, (mass, velocity)|!

    sum + momentum(mass, velocity)! end! end! ! K = 1_000! assert_equal \! system_momentum([[100*K, 0*K], [100_000*K, 0*K ]]),! system_momentum([[100*K, -10*K], [100_000*K, 0.01*K]])! # kg km/s kg km/s (modified for rocketry)
  30. One Weird Trick!

  31. Converging-Diverging Nozzle choke SPEED! LIMIT 1 MACH Mach! 13 High

    Pressure
  32. Orbit

  33. Kepler’s Laws of Planetary Motion

  34. Kepler’s First Law Diagrams will not be to scale

  35. Eccentricity def type_of_trajectory(e)! case e! when 0.0 then :circle! when

    0.0...1.0 then :ellipse! when 1.0 then :parabola! else :hyperbola! end! end
  36. Eccentricities Eccentricities = {! earth: 0.0167,! venus: 0.0067,! neptune: 0.00868,!

    # ...! }
  37. Orbital Points of Interest peri- apo- Closest Farthest Earth Perigee

    Apogee Sun Perihelion Aphelion Any Periapsis Apoapsis
  38. Kepler’s Second Law Fastest Slowest

  39. Kepler’s Third Law # P₁² P₂²! # --- = ---!

    # a₁³ a₂³! ! def solar_period(distance_in_au)! Math.sqrt(! 365.26**2 / # earth's period! 1**3 * # earth's distance in AU! distance_in_au**3! )! end
  40. Orbital Periods Distance (AU) Duration (days) Earth 1.0 365.26 Venus

    0.73 (-27%) 226.5 (-38%) Mars 1.52 (+52%) 686.7 (+88%)
  41. Kepler’s Laws of Planetary Motion 1. Orbits are elliptical 2.

    Faster when closer; Slower when farther 3. Big orbits take longer
  42. Trip to Mars

  43. 29.8 km/s 32.7 km/s Leaving Earth

  44. Arriving at Mars 21.5 km/s 24.1 km/s Trip Length: 8.5

    months
  45. Hohmann Transfer Orbit

  46. Landing

  47. Landing • Moon • Mars • Earth (return trip)

  48. Earth Mars →

  49. Aerobraking • Distance so far: 364 million miles • Aerobraking

    window: <100 miles?
  50. Parachutes

  51. Retrorockets

  52. Sky Crane

  53. Kerbal Space Program

  54. Telemachus

  55. require 'excon'! require 'kuby'! ! link = Kuby::Link.new! link.connect! or

    fail 'Could not connect'! ! link.throttle_full! link.toggle_sas! ! link.stage! and sleep 2! ! prev_err = error =! integral = derivative = 0.0! ! prev_time = link.mission_time gitlab.com/listrophy/spaaaaaaaaace
  56. loop do! cur_time = link.mission_time! dt = cur_time - prev_time!

    error = 150.0 - link.altitude! integral = integral + error * dt! derivative = (error - prev_err)/dt! ! kp, ki, kd = 0.1, 0.003, 0.08! new_throttle = (kp*error + ki*integral + kd*derivative)! ! new_throttle = 1.0 if new_throttle > 1.0! new_throttle = 0.0 if new_throttle < 0.0! ! link.set_throttle new_throttle! ! prev_err, prev_time = error, cur_time! sleep 0.2! end gitlab.com/listrophy/spaaaaaaaaace
  57. Throttle → Height • Force = mass * acceleration •

    ∫ acceleration dt = velocity • ∫ velocity dt = height
  58. loop do! cur_time = link.mission_time! dt = cur_time - prev_time!

    error = 150.0 - link.altitude! integral = integral + error * dt! derivative = (error - prev_err)/dt! ! kp, ki, kd = 0.1, 0.003, 0.08! new_throttle = (kp*error + ki*integral + kd*derivative)! ! new_throttle = 1.0 if new_throttle > 1.0! new_throttle = 0.0 if new_throttle < 0.0! ! link.set_throttle new_throttle! ! prev_err, prev_time = error, cur_time! sleep 0.2! end gitlab.com/listrophy/spaaaaaaaaace
  59. Live Demo

  60. Launch, Orbit, Landing Nuclear Pulse Propulsion

  61. Photo in public domain via Wikimedia Commons

  62. Thank You @listrophy @bendyworks