bps.space Thrust Vectoring Control rocket build thread

The Rocketry Forum

Help Support The Rocketry Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Howdy folks, Joe from BPS.space here! Thanks for putting together this thread, can't wait to see how the build comes out!

Regarding email, BPS is a full time job right now but I'm still getting the hang of the work load. I do my best to not let things slip through the cracks but if you don't get an email response feel free to check back in with a followup!

Otherwise happy to answer questions here too
 
He's always responded to mine, answered all my silly questions, even though I've yet to spend $ with him. Seems to be an ambitious/intelligent/dedicated guy. Although I've yet to see any other than Joe's fly, I do see one of his tvc systems in my future since they're absolutely irresistible after seeing his videos. Looks like a challenge rather than just a build, that I like.
 
Last edited:
Just found this thread, so I'm still reading old posts.
I suspect that OR height estimates are a bit exaggerated, since some of the thrust will be angled, but I can live with the presumed error (likely on the high side) of 10-20%.
That's a huge overestimate of the loss due to vectoring. Watching the video, it looks like the maximum vectoring angle is only 5 or 10 degrees. The vertical component of the thrust goes with the cosine of the angle, so at worst it's cos(10) or about 98% of full thrust. (Of course we all know that there are other reasons that sims tend to be optimistic, but the thrust vectoring should be negligible.)
 
OK, on to PID (proportional integral derivative) calibration, so that the device knows how much to change the angle of thrust to properly correct for your particular rocket veering off vertical.

What is PID?
Basic overview: https://www.mathworks.com/videos/un...art-1-what-is-pid-control--1527089264373.html


To actually tune the Signal R2, you need to hang it off a platform (ceiling, table), and measure the following:
  • Loaded Mass (kg)
  • String Length (m)
  • StringCOM (m)
  • Rotation Time (s)
  • COM-TVC (m)
  • Average Thurst (N)
Here is me hanging the Nerds rocket:
Signal R2 tuning.jpg

Interestingly, given rocket's relatively high baseline weight, the delta weight from two motors (F10 and F15) did not change the measurements all that much.

Once the measurements are taken, you input them into the Signal R2 app, hit "tune", and upload the derived PID value to the onboard computer:
Signal R2 tuning screenshot 1.png Signal R2 tuning screenshot 2.png

At this point, I am ready for a test flight.
Today/tomorrow the winds are north of 20 mph, but Sunday looks calmer, and with some luck, I will test fly the rocket, and post the video then.

a
 
Wow! From post #36 it looks like there is a little bit of calibration for any given rocket model. Good Luck on the flight! Keep us posted.
Yep, definitely.
In a perfect world, maybe some even some delta calibration between different motors as well.

The former makes intuitive sense, as different rockets will have different mass, different positioning of TVC mount relative to CG, and thus different moment if inertia.

The latter matters to the extent it effects mass and CG. In my observations, delta swing time between F10 and F15 motors was 1.32 seconds vs. 1.35 secs, so not much.

a
 
The average thrust is certainly different between them though. I'd imagine that has some effect on the coefficients
 
OK, on to PID (proportional integral derivative) calibration, so that the device knows how much to change the angle of thrust to properly correct for your particular rocket veering off vertical.

What is PID?
Basic overview: https://www.mathworks.com/videos/un...art-1-what-is-pid-control--1527089264373.html


To actually tune the Signal R2, you need to hang it off a platform (ceiling, table), and measure the following:
  • Loaded Mass (kg)
  • String Length (m)
  • StringCOM (m)
  • Rotation Time (s)
  • COM-TVC (m)
  • Average Thurst (N)
Here is me hanging the Nerds rocket:
View attachment 377996

Interestingly, given rocket's relatively high baseline weight, the delta weight from two motors (F10 and F15) did not change the measurements all that much.

Once the measurements are taken, you input them into the Signal R2 app, hit "tune", and upload the derived PID value to the onboard computer:
View attachment 377997 View attachment 377998

At this point, I am ready for a test flight.
Today/tomorrow the winds are north of 20 mph, but Sunday looks calmer, and with some luck, I will test fly the rocket, and post the video then.

a


That is interesting. Are there detailed explanations for determining the PID parameters, or is it all just a black box app?

Alan (old GNC engineer)
 
That is interesting. Are there detailed explanations for determining the PID parameters, or is it all just a black box app?

Alan (old GNC engineer)
BPS Space has very good videos on everything involved. Fair warning though, be prepared to spend a bit of time watching, they are somewhat addictive. Joe Barnard is very good at producing clear and concise tutorials.
 
BPS Space has very good videos on everything involved. Fair warning though, be prepared to spend a bit of time watching, they are somewhat addictive. Joe Barnard is very good at producing clear and concise tutorials.
I just checked his web page. He has a video on his APP, but it just a show and tell on how to enter numbers into the APP. So it is a black box app, at least at this point.
 
That is interesting. Are there detailed explanations for determining the PID parameters, or is it all just a black box app?

The translation logic for deriving P.I.D. coefficients for X and Y-axis are pretty much a black box.
I have neither studied, nor properly googled the PID computational logic to provide a better insight.
Perhaps Joe B will chime in, if he feels like he can do so.

a
 
Happy to chime in! Deriving correct PID gains based on the tuning values that are obtained through testing is not easy, and ultimately imperfect. In a perfect world, everyone would have a full linearized simulation of their vehicle with flex/slop/aero dynamics and all, and you'd tune your PID controller through that by running lots of simulations until you reached a stable flight.

As you might guess, most folks don't have access to engineering software like that, and something so time-intense would turn people away from actually flying their build. Instead, last summer I ran several hundred Monte Carlo style flight simulations with different vehicle parameters to find trend lines between mass, COM-TVC distance, thrust, etc. As it turns out, if you can figure out the the maximum angular acceleration that the TVC mount can impart on the vehicle when gimbaled at a given angle, there's usually a polynomial or power series function which can output each gain(P, I, and D) and you just use that with the max angular acceleration as an input.

We're way into the technical weeds here, but it's worth mentioning this is still imperfect. This method continues to improve with access to more flight data but every now and then I'll find a limit or have a slightly wobbly flight. It's also worth mentioning that because of the Signal iOS and Android app, any Signal R2 user will continue to get updates to this tuning math, so even if you don't fly much, your stability will continue to improve as time goes on.

The app and tuning math will remain a black box for now, there's a tremendous amount of intellectual property involved and as a business I'd like to protect that. Hope this helps shed a little light here, and hope it all makes sense :)
 
Joe: You've obviously got a huge "investment" here, no one can expect you to simply hand over the key. Keep up the good work.
 
Black Boxes are cool! I guess I would consider a state controller instead of PID. State controllers can offer really high performance control and only have two gains K1 and K2, if plant is modeled as second order. That's better than the three gains of a P,I,D and it eliminates the I's and D's..... A state controller will greatly broaden the controller's tolerance to plant(rocket/motor) variances and could make user interface simpler with only K1 and K2.

For really, really good; Try Dead Beat State Controller. They are odd in a way that there is not a continuous time model. They do need three K's...

Rockets are so much fun!
 
This is an immediate reply because I'm so excited but I've been doing just that, literally within the last 4 days! PIDs do work fine, but I've got a cold gas thruster system in the works and development on that has prompted me to start moving over to state space control! Way more flexible for multi-input multi-output systems like active rockets.
 
This is an immediate reply because I'm so excited but I've been doing just that, literally within the last 4 days! PIDs do work fine, but I've got a cold gas thruster system in the works and development on that has prompted me to start moving over to state space control! Way more flexible for multi-input multi-output systems like active rockets.

Now your going to have a less wobbly system if implemented correctly! Keep going...

Cold Gas Thrusters? This sounds coldish and fun as heck!
 
What are good composite motor options? The F10 Apogee Medalist looks promising, are there others?
 
I like the 32mm G12 reload. Similar thrust curve to the F10, but more N-sec (90-ish), and cheaper to fly (if you have the 32mm casing). But I would love to do some projects with the G8. Indeed I have two BIG R/C Rocket Gliders (60" span and 72" span) that would be awesome to boost with a 17-second burn.
 
The longest burning 29mm motors available to use with TVC are the

Aerotech G8ST (17.7 s) (composite)
Apogee F10 (7.0 s) (composite)
Estes F15 (3.45 s) (Black Powder)

Worth noting:
Apogee E6 (5.8 s) (composite) 24mm motor
The new Aerotech H13ST (16.8 s) (composite) Not NFPA certified due to casing exceeding regulated temps
 
afadeev: How's it coming?

Mr. Barnard: Two questions. First, if people using your product were to send flight logs back to you, would that help you refine you calibration algorithm? That is to say, you could (and I don't know if you do) record the 6-axis accel and gyro information along with the real time corrections during a flight, then provide a method for users to send you the log, analysis of which might be of value.

Second, what about non circular rockets? I see in afadeev's pictures above that you apparently take string/swing data once, and the x-axis and y-axis coefficients are all the same. On something like a Delta-4 Heavy, Falcon Heavy, or Atlas-V Heavy, which all have in-line trios of main booster sections, the x-axis and y-axis moments of inertia would be quite different. Does you software accommodate that? Will a future version do so? (No, I'm not suggesting putting three TVSs in the model, though that certainly would be very cool. I guess putting fixed motors in the two sides and a TVS in the middle would be easier, as the control effort doesn't have to be shared. But then, small differences in the motor performance might overwhelm the control authority of just one unit? And multiple units could null out roll as well as pitch and yaw. Maybe the three control boards would have to talk to each other? This tangent is getting too long.)
 
Last edited:
Hey there - happy to answer these!

Flight logs would be great to look at! Every bit of flight data I have gets used in the tuning of the algorithm. It's not required, if users want to keep their data that's fine, but any bit they send back gets used to help tune everyone's future flights.

Non symmetric rockets can be controlled too. In a DIVH or FH scenario, the mass moment of inertia will be different for the different axes, so you'd need different PID gains for the X and Y control. A few Signal R2 customers have expressed interest in doing this, and I think there might be a few builds in the works? Basically, you do the tuning process twice, one for each axis. Signal lets you program different PID gains for the two axes if you want. That's how I tuned my Falcon Heavy model:

Three core builds with TVC are very uncommon because of their complexity. While it might take about a day to get everything tuned and prepped for flight for a signal core vehicle, FH took about 6 full days. TVC in model rockets is already difficult to get right. Signal R2 simplifies it a bit, but if a 3-core vehicle is something you're interested in building, even if there's only one Signal system instead of 3, I highly recommend getting familiar with a single core setup first. Hope this answers the questions!
 

Latest posts

Back
Top