Great job, and nice video! I think your MOI test may be a little off- to get rotational MOI measurements you need to run a bi-filar pendulum test instead of the single swinging test shown in the video, though perhaps you did that and it's just not shown here. Either way, congrats!
Thank you Joe! The mono long-string pendulum definitely propagated a lot of errors in the MOI result, so I’ll look into other ways to find it experimentally. In the project I ended up choosing a value between the experimental one, and the estimated one from an OpenRocket model. There’s a ton of room for improvement! Good luck on your space shot!
Hi! I really love this project! I have a couple of suggestions, though you seem to be already aware of them. 1) Improve electronics: make a proper PCB, or send it to be made by JLCPCB or PCBWay. Both are cheap for prototypes. Make sure accelerometers have sturdy mounts so vibrations stop introducing noise.That may allow you to increase the response of your software filters on the software side. The AVR is way more than enough for the things it has to do here, but proper software optimization is usually not an option in prototypes like this, so a more powerful uC may be a good idea. I recommend the Pi Pico because having two cores can be really advantageous in applications where timing is crytical. On the PCB side, add a couple of general power outputs using power transistors. 2) Simplify parachute deploying: although your system worked well, I think you can streamline the design of the deploying mechanism by using a car door locking system actuator. It's easier to drive (no PWM required), cheap, fast and powerful enough to use only one to open both sides by the use of a lever or a cam. 3) Moment of inertia: accurate MOI measurement is as crucial as precise your simulation is. The tune of any PID system is a 100% manual process at the end of the day, so I would just use the values you already have and trim them manually. In case you really want accurate MOI for your simulation, I would empirically find the center of mass and mount the complete rocket on a test stand, attached to a pulley and a weight. It's sort of an impractical method on a big rocket, but as precise as measuring MOI gets. 4) More improved electronics: you can apply corrections to the accumulated errors of your accelerometers/gyros with a regular zeroing routine by the use of a magnetometer (compass) or a GPS (funnier to implement, but likely to weight more). I see that other people have suggested improving the maths and that's valid too. I have a final recommendation about electronics, on the software side (4:01): when you are working with parameters that have known boundaries and no linear relationship (like your servo angle and your rocket motor angle), avoid mathematical representations and replace them with a lookup table. I see you made a mathematical representation of the relationship of both movements an loaded that into the uC. The uC loves doing logic stuff, but not math stuff, so whenever possible just use a lookup table. It will be faster and, in cases when you don't have a $hit ton of combinations possible, will also take less memory. I really loved the project. It's always nice to see someone do a good job :)
Thank you for the suggestions! I’ll look deeper in the concepts and components you mentioned! About the look up table: I initially thought about it but I was having more memory issues (because of some libraries that I ended up ditching) than loop time issues (loop time during flight came out to be around 13ms ) so I left it that way. Anyways I see how there’s a lot of room for improvement and a ton of things to learn!
@@nicola_gaiani hello , here is Daisy from jlcpcb . I'm interested in this project and want to sponsor it . Please feel free to contact me for any needs .
Well done! Also, you did an excellent job of explaining your project, very thourough. I have the urge to make many suggestions for improvements but I really don't think you need them.
@@HarmanRobotics thank you! And please tell me the suggestions! I know the design is far from perfect and there are many issues, there’s probably something I missed
Very impressive and well thought out design. Planning for failure and continued leaning, with lots of design for assembly built in. All in your first iteration!!
Nicely done - I can appreciate how much work you put into that. I am wrestling with PID thrust vectoring myself for my next video, so I am impressed with how stable yours was. Keep up the great work.
Honestly, I have no idea how any of this works, but I really enjoyed your explanations. I also think you’ll go viral with this type of project and content.
This is awesome! I have a small comment to make about the servo angle to motor angle function: try to use lookup tables when possible, doing trigs and float divisions can add a lot of delay and delay variance, which will mess up the assumptions you make when translating the dynamics into discrete-time. The time between measurement and action is expected to be constant in most discretization techniques.
Congrats with a successful launch! Yay! 100% go with a better MCU next time, AVR is old crap :). I would suggest STM32, or ESP32 if you want BLE/Wi-Fi. I also see 2 mistakes you made, hope you don't mind hearing about them ;) 1) I used the same method to measure moments of inertia and all math seems to be right, but the problem is that with such a long rope the effect of the moment of inertia on oscillation period is very small. So in the end when you apply Huygens-Steiner theorem you get like I_cm = I_p - mL^2 , where both I_p and mL^2 are quite big and I_cm is very small. So in this case I_cm is just dominated by errors in measurements of time, length etc. Do the same thing, but reduce L. I didn't use the rope at all, I just put an axis through my rocket close to the top, and used it as a pivot point. 2) If I got it right from your code -- to get a rocket orientation you just take gyro data and accumulate it in variables. That is not how 3D rotations work unfortunately :). That worked because all rotations were quite small so in this case the deviation did not become big enough to ruin the launch. 3D body orientation has quite tricky math, I would suggest using quaternions-based approach next time. Good luck! Keep it up!
First of all thanks! I bought some esp32 boards to start experimenting with them! Thanks for the mcu suggestions , I might go with a printed circuit next time. It’s a bit overwhelming, but I’m starting to learn KiCad and pcb design principles. I remember encountering what you say about the MOI calculations… so I made an educated guess between calculations from the experiment, and the MOI from my OpenRocket model (that I didn’t show in the video). And your way of getting the MOI makes a lot of sense About the angle estimate calculations: Yes! I overlooked it and realized my mistake after the launch, when I was inspecting data: if a certain set of rotations is applied to the rocket, it doesn’t zero out at the same position with my calculations… not great. After the launch I did Euler angle conversions, but I’ll definitely have to study and implement quaternion math to avoid gimbal locks. Thankfully I didn’t get enough oscillation during powered flight to send the rocket horizontally. I just noticed I have already watched the quaternion video on your channel! Thank you for the suggestions and the critiques, they are surely helpful
Fantastic video, you deserved all i could do on it, like and subscribe, looking forward to seeing new materials. Sowing that to my kid, hoping he gets interested in it.
Some manufacturers use basic granular black powder covered by plastic/cardboard/resin as an ejection charge, by being careful you can open the top of the motor and just empty it, that would solve your need to eject it. Also i just finished designing a very complex flight computer and i would definitely recommend you to upgrade to a much more responsive mcu, i've worked with stm32 and esp32, both work wonderfully. Great video btw, keep it up
Well produced video! Where you from? Looks like it will work with a higher power motor and a faster refresh rate. Good analysis so I've subscribed to see how the next version does! Try some integza ideas out!
Super complimenti veramente. Anche io sogno di poter creare un progetto del genere, per caso sai darmi qualche consiglio su dove studiare da autodidatta tutto ciò (oltre all'uni ovviamente)
Absolutely wonderful. I wish I was half as competent as you are when I was your age! 😄 (E adoro che tu abbia lasciato le esclamazioni in italiano in sottofondo durante le prove e il lancio. 😏)
@@nicola_gaiani I'm a highschool sophmore so I haven't learned a lot of Calc and Physics but I've trying to learn it on my own. I also have some experience with microcontrolers and electronics
@@danmax3418 Simulink from yt videos about PID controllers, and when I didn’t know how to add a certain simulink block, I just googled and found the MATLAB documentation. Cad first from some part walkthrough, then I just tinkered around. Same thing for electronics, and 3d printing. I tinkered and when I didn’t know something, I just googled it, or found a creative solution.
@@nicola_gaianiI get it, i know pretty well cad and 3d printing but i can’t find a way to start designing pcb’s.. Can you suggest me some videos or documents that can offer me a start for this?
Super good video. i think you should improve the audio setup since it's one of the most important parts of a video and in this video the audio was pretty bad.
Madonna! This is outrageously massive. I would like to pursue mechanical engineering at university, but I guess I've started too late to think about it, as I had almost no idea of what you were talking about 😅. Could you please tell me how you learnt the skills to undertake this project? I would like to craft something myself. Thank you. Keep it up 💪
You haven’t started too late at all. Most of the things you see in the video, using a Cad, 3D printing, simulating a physical system, making a control system, and designing all these parts… are stuff I knew almost nothing about before starting the project. It was always about approaching the next step, and learning how to figure it out. And if you put enough dedication into it, you can do it! In fact, I didn’t even know I could have finished the project when I started it. Some important things that I suggest you need to study are the concepts of integral and derivatives, and some physics regarding dynamics. Plus, I’m already in University and you are not, so you have plenty of time!
Great job, and nice video! I think your MOI test may be a little off- to get rotational MOI measurements you need to run a bi-filar pendulum test instead of the single swinging test shown in the video, though perhaps you did that and it's just not shown here. Either way, congrats!
Thank you Joe!
The mono long-string pendulum definitely propagated a lot of errors in the MOI result, so I’ll look into other ways to find it experimentally.
In the project I ended up choosing a value between the experimental one, and the estimated one from an OpenRocket model. There’s a ton of room for improvement!
Good luck on your space shot!
patiently waiting for the liquid rocket engine video....
I knew i was going to find you here. *Breaths Heavily....* nah jk lol.
Also subbed
Damn this guy knows his stuff
09:34 peak italian enjoyment. Complimenti, progetto bellissimo!
😂❤
Hi! I really love this project!
I have a couple of suggestions, though you seem to be already aware of them.
1) Improve electronics: make a proper PCB, or send it to be made by JLCPCB or PCBWay. Both are cheap for prototypes. Make sure accelerometers have sturdy mounts so vibrations stop introducing noise.That may allow you to increase the response of your software filters on the software side. The AVR is way more than enough for the things it has to do here, but proper software optimization is usually not an option in prototypes like this, so a more powerful uC may be a good idea. I recommend the Pi Pico because having two cores can be really advantageous in applications where timing is crytical. On the PCB side, add a couple of general power outputs using power transistors.
2) Simplify parachute deploying: although your system worked well, I think you can streamline the design of the deploying mechanism by using a car door locking system actuator. It's easier to drive (no PWM required), cheap, fast and powerful enough to use only one to open both sides by the use of a lever or a cam.
3) Moment of inertia: accurate MOI measurement is as crucial as precise your simulation is. The tune of any PID system is a 100% manual process at the end of the day, so I would just use the values you already have and trim them manually. In case you really want accurate MOI for your simulation, I would empirically find the center of mass and mount the complete rocket on a test stand, attached to a pulley and a weight. It's sort of an impractical method on a big rocket, but as precise as measuring MOI gets.
4) More improved electronics: you can apply corrections to the accumulated errors of your accelerometers/gyros with a regular zeroing routine by the use of a magnetometer (compass) or a GPS (funnier to implement, but likely to weight more). I see that other people have suggested improving the maths and that's valid too.
I have a final recommendation about electronics, on the software side (4:01): when you are working with parameters that have known boundaries and no linear relationship (like your servo angle and your rocket motor angle), avoid mathematical representations and replace them with a lookup table. I see you made a mathematical representation of the relationship of both movements an loaded that into the uC. The uC loves doing logic stuff, but not math stuff, so whenever possible just use a lookup table. It will be faster and, in cases when you don't have a $hit ton of combinations possible, will also take less memory.
I really loved the project. It's always nice to see someone do a good job :)
Thank you for the suggestions! I’ll look deeper in the concepts and components you mentioned!
About the look up table: I initially thought about it but I was having more memory issues (because of some libraries that I ended up ditching) than loop time issues (loop time during flight came out to be around 13ms ) so I left it that way.
Anyways I see how there’s a lot of room for improvement and a ton of things to learn!
@@nicola_gaiani hello , here is Daisy from jlcpcb . I'm interested in this project and want to sponsor it . Please feel free to contact me for any needs .
this is indredible man. i hope you get into every school and get every aerospace opportunity possible.
Well done! Also, you did an excellent job of explaining your project, very thourough. I have the urge to make many suggestions for improvements but I really don't think you need them.
@@HarmanRobotics thank you! And please tell me the suggestions! I know the design is far from perfect and there are many issues, there’s probably something I missed
Very impressive and well thought out design. Planning for failure and continued leaning, with lots of design for assembly built in. All in your first iteration!!
people like you inspires a lot. All I am waiting for a 3d printer
Nicely done - I can appreciate how much work you put into that. I am wrestling with PID thrust vectoring myself for my next video, so I am impressed with how stable yours was. Keep up the great work.
Figataahhh! Molto felice di sapere che ci sono altri italiani interessati al mondo razzi
Honestly, I have no idea how any of this works, but I really enjoyed your explanations. I also think you’ll go viral with this type of project and content.
Italy looks well on its way to orbit with this bloke😮💨😉
Great job. Organized, and it just works. !
This is awesome! I have a small comment to make about the servo angle to motor angle function: try to use lookup tables when possible, doing trigs and float divisions can add a lot of delay and delay variance, which will mess up the assumptions you make when translating the dynamics into discrete-time. The time between measurement and action is expected to be constant in most discretization techniques.
Crazy that this thing flew upright first try. Good job
Congrats with a successful launch! Yay!
100% go with a better MCU next time, AVR is old crap :). I would suggest STM32, or ESP32 if you want BLE/Wi-Fi.
I also see 2 mistakes you made, hope you don't mind hearing about them ;)
1) I used the same method to measure moments of inertia and all math seems to be right, but the problem is that with such a long rope the effect of the moment of inertia on oscillation period is very small. So in the end when you apply Huygens-Steiner theorem you get like I_cm = I_p - mL^2 , where both I_p and mL^2 are quite big and I_cm is very small. So in this case I_cm is just dominated by errors in measurements of time, length etc. Do the same thing, but reduce L. I didn't use the rope at all, I just put an axis through my rocket close to the top, and used it as a pivot point.
2) If I got it right from your code -- to get a rocket orientation you just take gyro data and accumulate it in variables. That is not how 3D rotations work unfortunately :). That worked because all rotations were quite small so in this case the deviation did not become big enough to ruin the launch. 3D body orientation has quite tricky math, I would suggest using quaternions-based approach next time.
Good luck! Keep it up!
First of all thanks!
I bought some esp32 boards to start experimenting with them! Thanks for the mcu suggestions , I might go with a printed circuit next time. It’s a bit overwhelming, but I’m starting to learn KiCad and pcb design principles.
I remember encountering what you say about the MOI calculations… so I made an educated guess between calculations from the experiment, and the MOI from my OpenRocket model (that I didn’t show in the video). And your way of getting the MOI makes a lot of sense
About the angle estimate calculations: Yes! I overlooked it and realized my mistake after the launch, when I was inspecting data: if a certain set of rotations is applied to the rocket, it doesn’t zero out at the same position with my calculations… not great.
After the launch I did Euler angle conversions, but I’ll definitely have to study and implement quaternion math to avoid gimbal locks. Thankfully I didn’t get enough oscillation during powered flight to send the rocket horizontally.
I just noticed I have already watched the quaternion video on your channel!
Thank you for the suggestions and the critiques, they are surely helpful
This is so cool! I have no background in rocket science but I love tinkering with arduino and 3d printing I'll try this out 🎉❤thanks
Great job. Greetings from Brazil
очень круто! Мне нравится смотреть подобные видео на ютубе, хоть я сам ничем таким не занимаюсь. Вышло очень интересно, и я жду продолжения)
I got a blast out of this video. I think this channel is going to take off. Well done.
Man, you're a genius. Congratulations
This is really impressive
Drummer and still intrest in mechatonics. Thats awesom.❤❤
Great work, really good control for the first test flight.
Well explain
brother this is crazy, wonder if you ever decided to study this field, keep it up man!!!!!!!!!!!!!!!!!!!!!!!!
Really impressive and inspirational !!! Thanks for taking the time and effort of making and sharing this video!
Keep up the good work
Best regards
Fantastic video, you deserved all i could do on it, like and subscribe, looking forward to seeing new materials. Sowing that to my kid, hoping he gets interested in it.
Appreciate it!
Good job nicola ❤ keep inspiring us 😍 love from India
Hai spaccato bro, complimenti
looking forward for the other projects 👍👍👍👌👌👌
Bravoooo ! Can't wait for the next chapter. Grande Nicola! Unico consiglio: non fermarti, continua così !
Hey man! Impressive work you've done. Keep going!
great job! loved the process.
incredible! thanks for sharing. i love what you did with this rocket
Thank you!
Tunned to this channel, looks promising
congratulations from iran🎉
Well, looking forward for the next iteration :D
This is fantastic, great job bruv
Some manufacturers use basic granular black powder covered by plastic/cardboard/resin as an ejection charge, by being careful you can open the top of the motor and just empty it, that would solve your need to eject it.
Also i just finished designing a very complex flight computer and i would definitely recommend you to upgrade to a much more responsive mcu, i've worked with stm32 and esp32, both work wonderfully.
Great video btw, keep it up
Thank you for the ejection suggestion! And I will definitely upgrade to a better mcu
Complimenti! Un grandissimo lavoro, mi sono iscritto per vedere i prossimi progetti
Great job. Keep it up man
IF possible make a detailed video for this project , playlist or something ! It would be a great help!!!
That's super impressive
Well produced video! Where you from? Looks like it will work with a higher power motor and a faster refresh rate. Good analysis so I've subscribed to see how the next version does! Try some integza ideas out!
Thanks 🎉
Wow! Nice work!
Great video, for some reason I thought this video is going to be simple and I actually said "it's not rocket science", wtf was I thinking
Great man
Super complimenti veramente. Anche io sogno di poter creare un progetto del genere, per caso sai darmi qualche consiglio su dove studiare da autodidatta tutto ciò (oltre all'uni ovviamente)
Great work. Great video
Genius!
Keep pushing man! Great job!
Absolutely insane! I wanna build one too, could you send me the STL files?
WOW! amazing job
Great job! 👍
This is so cool!
nice job.
this was a good watch ngl, congrats man
Hi, very cool video and congrats to your successful launch! Could you please publish the 3d files for the parachute system?
impressive, very nice
amazing job
That is pretty amazing
great video , great job , keep going!!
Auguri.
Wish I paid more attention during simulink lectures... and italian lectures ._.
Congratulations 🎉❤
ottimo lavoro
Loved the video great stuff.
COOOL ROCKET SIR
nice bro how many Months Going to build this project
@@sithummarasighe5465 about 2-3 months
Absolutely wonderful. I wish I was half as competent as you are when I was your age! 😄 (E adoro che tu abbia lasciato le esclamazioni in italiano in sottofondo durante le prove e il lancio. 😏)
Ahahah grazie!
Awesome Video, I was thinking of doing something like this. Where would you recommend I get started?
If you already have some physics and calculus notions, you could try with Cad or tinkering with electronics
@@nicola_gaiani I'm a highschool sophmore so I haven't learned a lot of Calc and Physics but I've trying to learn it on my own. I also have some experience with microcontrolers and electronics
good luck bro, keep it up
Impressive!!!
Great job !! 🔥🚀
Here's a sub.
Nice work, keep going.
That's so cool! Excluding the school, from where did you learn all these, especially simulab?
@@danmax3418 Simulink from yt videos about PID controllers, and when I didn’t know how to add a certain simulink block, I just googled and found the MATLAB documentation.
Cad first from some part walkthrough, then I just tinkered around. Same thing for electronics, and 3d printing. I tinkered and when I didn’t know something, I just googled it, or found a creative solution.
@@nicola_gaianiI get it, i know pretty well cad and 3d printing but i can’t find a way to start designing pcb’s.. Can you suggest me some videos or documents that can offer me a start for this?
@@danmax3418 For PCBs I suggest you watch some Phil’s Lab walkthrough on yt
legend
What rocket motor were you using? Also amazing project
Thank you! A Tsp E-20
You could switch to a esp32s3 where you got way more processing power bluetooth, wifi and native usb support :)
@@Baba_Kush thank you! I’m probably going to develop a flight computer for the next iteration, and I’ll choose between esp32 and stm32
Very cool! Are the pins also 3D printed?
Yes they are
That’s literally amazing and Inspirational. Are u in highschool or university?
Uni
amazing!
Super good video. i think you should improve the audio setup since it's one of the most important parts of a video and in this video the audio was pretty bad.
@@vp_bot thank you for making me notice that, I appreciate it!
This is really cool but can your TH-cam revenues cover the parts and software licenses you use ?
Bel lavoro
Nice! I am 14 years old and building my own robot as well.
Good job!
What kind of robot. I am also very interested in robots
Madonna! This is outrageously massive. I would like to pursue mechanical engineering at university, but I guess I've started too late to think about it, as I had almost no idea of what you were talking about 😅. Could you please tell me how you learnt the skills to undertake this project? I would like to craft something myself. Thank you. Keep it up 💪
You haven’t started too late at all.
Most of the things you see in the video, using a Cad, 3D printing, simulating a physical system, making a control system, and designing all these parts… are stuff I knew almost nothing about before starting the project.
It was always about approaching the next step, and learning how to figure it out. And if you put enough dedication into it, you can do it!
In fact, I didn’t even know I could have finished the project when I started it.
Some important things that I suggest you need to study are the concepts of integral and derivatives, and some physics regarding dynamics.
Plus, I’m already in University and you are not, so you have plenty of time!
@@nicola_gaiani thank you very much. At this point I can't wait for your next projects, and I'll start learning for mine
i’m aiming to do stuff like this
Bravo!
Grandissimo @BPSspace ti fa na pippa😂😂😂
Can you share the simulation control system for reference please
What is that simulation software you're using?
Good luck ❤🇱🇰
WAITING FOR FUTURE FLIGHTS
A little bit of tuning and you are good! 👍
incrivel, o brasil te assiste
How did you learn these things? and what university course do you attend? anyway congratulations!!!
@@davidevolp3hero523 Thank you! I learned most of the things online, but I attend aerospace engineering.
@@nicola_gaianiWhat year are you attending university?
great job never give up 🤓🤓
May I suggest a better radio communication other than the modules you showed. :)
@@House0fwax sure tell me! I’m aware those module are a bit crappy