
Ask HN: Is it practical to create a software-controlled model rocket? - ph0rque
Is it practical to launch a model rocket and have it land in a controlled manner, like Falcon 9, using hardware on the level of arduino and open-source software?
======
phoboslab
BPS.space is attempting it.

Test Launch:
[https://www.youtube.com/watch?v=QQt-9SSJ51c](https://www.youtube.com/watch?v=QQt-9SSJ51c)

Test Landing:
[https://www.youtube.com/watch?v=lXy-x6lkQvQ](https://www.youtube.com/watch?v=lXy-x6lkQvQ)

~~~
mentos
Ah wow I watched a bunch of his videos last summer but forgot to check up on
his progress. Incredible!

I wonder what scale you would need to get the rocket into space/orbit? SpaceX
should fund this guy to find out, could prove to be a valuable bootcamp for
real SpaceX employees in the future?

~~~
gibybo
>I wonder what scale you would need to get the rocket into space/orbit?

There's a great "what if" xkcd about using solid fuel model rocket engines
(the same type used in BPS.space's rockets) to get to space and orbit.

[https://what-if.xkcd.com/24/](https://what-if.xkcd.com/24/)

The summary is that you may be able to use a stupendously large number of them
to get to space, but orbit is physically impossible. You'll need a different
propulsion method.

The smallest rocket that has ever carried a payload to orbit is the SS-520.
It's ~30 feet tall, ~2 feet in diameter and weighs ~5,700 pounds. It set the
record in February 2018, so it's a pretty recent record.

~~~
mentos
That SS-520 looks like they just took a model rocket and scaled it up 30x,
very cool.

------
GhostVII
It isn't quite a model rocket, but there is an interesting video of someone
making a single-fan drone using thrust vectoring. Not quite like a Falcon 9
but the same idea, vertical take off and landing, and shaped like a rocket.

[https://www.youtube.com/watch?v=RMeEh5OUaDs](https://www.youtube.com/watch?v=RMeEh5OUaDs)

~~~
omegabravo
Tom Stanton has similar videos

[https://www.youtube.com/watch?v=_kd64VE3A1c](https://www.youtube.com/watch?v=_kd64VE3A1c)

------
mplewis
Be really careful. Adding guidance to a hobby rocket may classify it as a
missile, and you will need to start looking into ITAR.

~~~
gpm
Not an american, but I thought ITAR just restricted export (including of
information though), hence the I(nternational) and T(rade)?

~~~
mikeyouse
Export doesn’t just mean “shipping a rocket to the Middle East” if you write
up a detailed guide on how to build these and supply the code to make it work,
you’d likely be at risk.

------
dogma1138
I’m pretty sure that your problem isn’t going to be the software but rather
the engine and the rocket itself.

Hobby rockets use simple solid fuel engines you’ll need to build an actual
liquid rocket engine with controlled thrust that can be reignited the rocket
it self also need to be large enough to be aerodynamically controlled and
hobby rockets tend to be too light so they’ll simply tumble in the wind.

While you don’t need to build something the size of a falcon 9 for propulsive
landing you’ll need something way larger than any hobbiest rocket I know of
for sure.

If you just want the control part then simulating it is likely going to be a
better use of your time, you can even build your own auto-pilot for something
like Kerbal Space Program it won’t be the real thing but it would at least be
achievable.

~~~
computerex
You don't necessarily need a liquid rocket engine if doing something like the
hoverslam, because you'd just time the burn correctly and fire engine at full
power.

~~~
dogma1138
The problem is that you can't stop a solid fuel engine as it has the oxidizer
mixed in it, unless it requires some sort of a catalyst that you can control.

Hybrid engines which use solid fuel and a liquid/gaseous oxidizer can be
controlled better but these are often very hard to reignite.

So this means you'll have to have additional engines that are used just for
the slam landing, technically possible but again might be harder to construct
than a liquid engine since solid fuel engine ignition is also fairly
inconsistent.

The Soyuz capsule uses rockets to soften the landing but these technically
aren't propulsive landing and the landing forces tend to vary quite a bit
between landings.

Overall when I think about this problem as a hobby the software isn't going to
be the biggest blocker here especially considering the speeds/altitudes that
we are talking about as well as the overall mass of the rocket, in fact since
these rockets are going to be considerably smaller and would travel
considerably slower you could absorb much more of their relative energy via
hydraulics so the amount of precision needed for the slam/hover landing isn't
as great.

------
ccleve
It's likely to be difficult. I heard a good analogy once: imagine balancing a
broom, handle pointed straight down, on one fingertip. It's not that hard. Now
imagine balancing a toothpick. Impossible.

Scale matters. Bigger things are more stable.

~~~
tlb
Specifically, you need reaction time faster than sqrt(l/g), where l is the
distance between the engine and the center of mass, and g is gravity. But l=30
cm is still with the range of commodity hobby servos to vector the engine.

The same effect makes walking robots harder at small scale, unless they cheat
by having large feet and stiff ankles.

~~~
saagarjha
How did you get the sqrt(l/g) figure? I can see how this is dimensionally
correct and passes a sanity check, but why is the coefficient one?

~~~
tlb
If you take an inverted pendulum of length l in gravity g, and perturb it
slightly from vertical the error grows like e^(t/sqrt(l/g)). So if you're off
by 1 degree, you'll be off by 2.718 degrees sqrt(l/g) seconds later. (The real
function involves hyperbolic cosines, but they grow like e^t).

If you can react 2x as fast the control problem is easy. If you can react 1x
as fast, the control problem is feasible but requires accurate tuning.

For average-height humans on earth, the height of the center of mass is about
1.3m, so sqrt(l/g) is about 350 mS. Human response time, from the inner ear to
the ankle muscles is about half of that. That gives some intuition for how
hard it is to balance with 2x faster response. Balancing a yardstick on your
finger is closer to 1x faster response.

------
elil17
People definitely do thrust vectoring and control systems on model rockets,
like this system: [https://bps.space/signal](https://bps.space/signal)

This could theoretically be used to land vertically, though that hasn’t been
achieved.

------
xtagon
You may be interested in following Tom Stanton on YouTube. He built a radio
controlled SpaceX model a few months ago.[1] It was barely controllable, and
wasn't designed with actual propulsion engines, but still very cool.

As others have been commenting, it's a completely different ballgame if you
want to use propulsion engines and still be able to land it. At that point,
you're just building a smaller version of the real SpaceX rockets, and that
sounds much more difficult (not to discourage anyone from trying!).

[1]
[https://www.youtube.com/watch?v=ZsEBiAahAYM](https://www.youtube.com/watch?v=ZsEBiAahAYM)

------
robertAngst
> Is it practical to create a software-controlled model rocket?

No, but that is what people will tell you about every idea from Facebook to a
pet rock.

If you want to do it, good luck. It will not be easy.

If you want a simple project- Add your arduino, get GPS, accelerometer and a
noise maker. (Edit: if you are really ambitious, get it to communicate live)

See if you can optimize anything. I would guess your goal is to play in
embedded C++ anyway.

------
tlb
The control software is within hobbyist range, if you're prepared to crash a
lot of rockets during testing. But the hardware is hard -- you need a
throttleable engine.

------
mixmax
Copenhagen Suborbitals do thrust vectoring, and if I remember correctly the 4
jetvanes are controlled by an arduino .

The software is written by one guy in his freetime. Pretty amazing feat,
considering how difficult it is, and that he has no way of testing it before
the actual launch. It worked flawlessly the first time.

Here's a video of the Nexø 1 launch that uses the system to control the rocket
on its ascent.

[https://www.youtube.com/watch?v=8iTg55Ktkn4](https://www.youtube.com/watch?v=8iTg55Ktkn4)

This video shows some technical data streamed live from the rocket that gives
a good overview of what the jetvanes are doing. Notice the graphic in the
lower left corner; The H in the middle is the floating launch platform (12x14
meters) and the moving red dot is the position of the rocket in the X-Y plane.
On the whole trip it never moves more than a few meters from the center.
Really impressive stuff...

[https://www.youtube.com/watch?v=Km7-2Ds6_Xs](https://www.youtube.com/watch?v=Km7-2Ds6_Xs)

I know it's not exactly what you're asking, but it's close, so I thought it
might have some value.

------
squirrelicus
I can't speak to anything legal, that's its own topic.

But for all the model rockets I've seen, their mass ratios are quite small,
and their motors don't allow for throttling. They blow their load as fast as
they can and then drift down.

Software is not the biggest problem, you need a hobby quality throttling and
gimbaling rocket motor, and I'm not sure if they even exist.

------
kahlonel
Arduino hardware is barely capable of running a simple one-variable PID loop
at a high sampling rate, say 1Khz. A rocket control software will require a
full-blown MIMO model with complex transfer functions. You'll also need high
ports speed; Arduino won't cut it. At the very least you'll need something
like a Cortex-R5.

------
jfoucher
This guy [0] does it with regular solid fuel rocket motors. Since the engines
cannot be throttled, I think he has to try and light them at just the right
moment, which does not seem particularly easy...

[0]
[https://www.youtube.com/watch?v=8_hJ48LCXWs](https://www.youtube.com/watch?v=8_hJ48LCXWs)

------
avmich
If you dig up archives of Armadillo Aerospace - John Carmack's rocket company
- you'll see videos of smallish rockets doing just that. "Smallish" as in "you
can lift one from the ground, fueled, with your hands... perhaps".

------
dqpb
This is a weird question. Model rockets aren't practical. Hobby's aren't
practical. Hobby's are fun, and educational. A software controlled model
rocket would be fun and educational and challenging. You should do it.

~~~
erikpukinskis
This is true, but...

One of my hobbies is baking bread. I've seen professional bakers bake 100%
whole wheat loaves with an open crumb. It's semi-magic and not practical. They
literally spend years failing at it, learning every variable, sourcing
different artisanal flours and setting up a professional workspace.

I do try it sometimes, and I always fail. It's interesting, but...

Sometimes I actually want to eat some nice bread. There are times when I say,
just do a 33% whole wheat loaf Erik, it's fine. It is practical and it's still
fun and it's a nice day doing my hobby. There's still plenty of sport in it
and plenty to learn.

------
ufmace
It depends on what you mean by "practical". It's probably possible to do if
you throw enough money at it, but would probably not have any practical
purpose.

I don't think there's any open-source software for this, but the software
isn't really the problem anyways. It's more about getting sensors that are
accurate enough and actuators for thrust direction and power that are accurate
and fast enough. I don't think there's anything off the shelf for this, and
building and testing it, at that scale, is possible, but not cheap or easy.
Once you get all of that together, the software is a relatively small and
simple problem, and probably too specific to your exact setup for it to make
sense to open-source.

Probably the biggest problem is that model rockets use solid-fuel engines,
which cannot be controlled once ignited and probably don't have the greatest
consistency in thrust and time. Short version is you ain't gonna do a
propulsive landing with that. You'd have to build your own micro-scale liquid-
fuel rocket engine. I don't know that much about building rocket engines, but
it sure looks like building ones on the scale to take commercially viable
weights into orbit is very hard. I'm going to bet that building one on a micro
scale would be substantially harder and probably require the services of
several experts in the field.

If you're interested in the area, see what info you can find about military
missiles, like for MANPADS, guided anti-armor missiles, and some of the
lighter AAMs. Every one I've heard of uses solid-fuel engines too, but they do
have good control systems for guidance. I don't think any of them care much
about the exact thrust levels, just get it going good and fast and the active
guidance systems can handle the rest. But you're gonna need that precise
thrust control if you want to land propulsively. Relatedly, if you tried to
actually build your landable model rocket, I would expect the appropriate
Government agency in your jurisdiction to take a very keen interest in exactly
what you plan to do with these things. It may involve spending lots of time
and money to convince them that you definitely won't give any of your stuff to
whatever the relevant agency considers to be a terrorist group or rouge state.

------
colechristensen
This isn't a computing hardware or software problem, it's an aerodynamics and
propulsion, structures problem.

A team of engineering graduate students with a bit of funding might succeed,
but the cost and custom hardware would be pretty high. The problem also gets
more difficult as the rocket gets smaller.

Also, failed rockets are flying bombs, not something to be done lightly.

~~~
twtw
It's also quite a challenging control problem, which at the end of the day
turns into a software problem.

You can see what spacex (probably) does to turn it into a tractable problem
for real time control in
[http://www.larsblackmore.com/iee_tcst13.pdf](http://www.larsblackmore.com/iee_tcst13.pdf)
(Blackmore leads entry, descent, and landing at spacex).

~~~
colechristensen
My point being that the design of the control system is the hard part and the
software implementation while not trivial isn't _the problem_ being solved.

And the design of the control system for a small model rocket and whatever
control authority can be created for it in hardware are super hard compared to
however it is implemented.

~~~
twtw
Sure, I was just pointing out that control wasn't on your list - it doesn't
fall under any of aerodynamics or propulsion or structures.

------
ffbonioadfnio
What do you mean by "practical?" Model rockets are for hobbyists. Practicality
isn't a part of the equation. The only reason to fly a model rocket at all is
that it's cool.

There's no "practical" reason to make it land vertically. Model rockets can
land safely using parachutes.

------
ju-st
Maybe try with electrical propulsion like this one [Ikarus electric "rocket"
\- Thrust-vectored flying ducted fan]
[https://www.youtube.com/watch?v=RMeEh5OUaDs](https://www.youtube.com/watch?v=RMeEh5OUaDs)

------
pabs3
There is a competition for college students to create a rocket that can return
a payload to a specific location:

[http://www.argoniacup.com/](http://www.argoniacup.com/)

------
blihp
As others have mentioned, the burn of the solid propellant used can't be
controlled. However, you could look at things like gyros, thrust vectoring or
servo controlled fins to give you more a more controlled ascent. That wouldn't
help with the descent which is traditionally unpowered. Maybe a small charge
to flip the rocket around and then use servo fins to control its glide
direction on the way back down.

------
privong
I haven't heard of anyone doing this as a project, I bet it would be a
challenging, and I think it would be awesome for you to try it.

------
yigitdemirag
Is there any open-source -physically realistic- rocket flight simulation
software that one can build/test landing algorithms on?

------
ForHackernews
Years ago, I remember reading this guy's website where he was building a
homemade cruise missile: [https://www.theage.com.au/world/diy-cruise-
missile-20030604-...](https://www.theage.com.au/world/diy-cruise-
missile-20030604-gdvtkr.html)

I don't know whether he got shut down by the authorities or not.

~~~
newman8r
I was actually curious how cruise missiles were defined in itar. The
definition of missiles is really broad and actually includes lots of UAVs.

> “Missiles”. (All) Rocket systems (including ballistic missiles, space launch
> vehicles, and sounding rockets) and unmanned aerial vehicle systems
> (including cruise missiles, target drones, and reconnaissance drones)
> “capable of” delivering at least 500 kilograms payload to a range of at
> least 300 kilometers.

~~~
dmurray
> The definition of missiles is really broad...delivering at least 500
> kilograms payload to a range of at least 300 kilometers.

Not as broad as I would have thought. You could do a lot of damage with 499 kg
of TNT, and nuclear bombs weigh less. Little Boy was 64 kg of uranium
according to [0].

[0][https://en.m.wikipedia.org/wiki/Little_Boy](https://en.m.wikipedia.org/wiki/Little_Boy)

~~~
nostrademons
The fissile core is a tiny part of the weight of a nuclear weapon, though.
Little Boy weighed almost 10,000 lbs; it took a lot of explosive, metal, and
circuitry to detonate it.

~~~
darkpuma
The Little Boy was seriously overbuilt. The W9, W19 and W33 warheads are
examples of gun-type bombs similar to Little Boy with comparable cores and
yields, but in much smaller packages.

A gun-type bomb doesn't require a very complex system to set it off. The
complicated bomb was Fat Man, an implosion bomb, that required very precisely
calculated explosive lenses and precise timing circuits.

------
ummonk
Yes. This was essentially what armadillo aerospace and Masten Space Systems
did back in the day.

------
ZiiS
It was posible to launch Apollo 11 with less powerful electronics. Mechanicaly
it is a bit expensive but many 'amater' clubs achive controled flight, a few
to the edge of space.

------
PaulHoule
You will blow up several engines if you try to make a liquid fueled engine.
Get yourself a copy of

[https://www.amazon.com/Rockets-Missiles-Men-Space-
Definitive...](https://www.amazon.com/Rockets-Missiles-Men-Space-
Definitive/dp/B004H3G0WI)

which is the story of a German rocket club which first got shut down by the
Nazis because "somebody could get hurt" and then the Nazis thought it over...

Probably your best bet is a hypergolic monopropellant such as hydrogen
peroxide.

~~~
walshemj
Trying to buy high test hydrogen peroxide (high concentration) might well get
you flagged by the police as its used in bombmaking

~~~
gpm
High concentration hydrogen peroxide is insanely dangerous, and where I live
doing this would be illegal, so I _really_ don't recommend it.

But from previous research it sounds _really_ simple to concentrate (up to
70%) if you can acquire enough low concentration hydrogen peroxide. So much so
that it kinda scares me that I have a bottle of 3% hydrogen peroxide in my
house.

Edit: Again, this is a bad idea, but here's the title of my source: Methods
for Concentration of Hydrogen Peroxide To Obtain It in Anhydrous Form

