The missile knows where it is at all times. He knows it because he knows where it isn't. By subtracting where it is from where it is not, or where it is not from where it is (whichever is greater), you get a difference, or deviation. The guidance subsystem uses deviations to generate corrective commands to guide the missile from a position it is in to a position it is not, and upon arriving at a position it was not in, it now is. Consequently, the position he is now in is the position he was not, and it follows that the position he was now in is the position he is not.
Great multi-discipline engineering and a high quality video to showcase it, bravo to you! Thanks for the time you've put into sharing your work with others.
This is a multidisciplinary masterpiece! As a student studying mechanical engineering right now, this type of thing is incredibly inspiring. Please keep the content coming! Love your work :)
For someone who doesn't have an engineering masters, I believe this guy's project is amazing. I hope we can support him to make that project an open source.
Totally agree! But even if the didn't want to release it as open-source nothing prevent us from developing something from scratch based on his ideas. He shared many details already, it is more than enough to start a new project. And you can even improve this idea using CAN instead of RS422, etc.
@@Jazz3006 from an admittedly quick Google search, I couldn't confirm what you're saying. Could you provide more details on what he can't open source this project?
@@Tyrone-Ward you should look up ITAR restrictions and think about what he is effectively developing and why the knowledge of how it all works would be bad in the hands of an enemy.
As well as the work, comments and the community feedback is also super showing the importance of the challenge tackled! I'd note that, this is a world-class work employing many advanced interfaces from diverse fields. I'd only take notes and enjoy this documentary! Thanks for sharing as many have said. I hope it'll be used for good. Congratulations sir, once again. Wish you the best!
+1. Also I don't fully under how the controls are covered by export restrictions. Does that mean the electronic components used for control are covered by ITAR? If he developed the control algorithms independently I presume they wouldn't be covered by export restrictions.
I've always wanted to build my own rocket with guidance system, but you actually did it ! With creative use of commercial sensor components and MCU, and your boards look great. I can totally see that the control system overall must have been challenging, especially on 3 axes and all within 10 msec. Great piece of work, and I enjoyed watching your presentation. Thanks ! P.S. I noticed you have a lot of UART communication channels, which take up a lot of hardware, and maybe that could be simplified with a single high speed CAN bus or so. But I admit I don't know the specifics of all your internal com needs.
You should put a small radar in the front (like an automotive radar). You could use it for guidance or perhaps to trigger the pyro... I mean parachute when it gets to a certain distance... I mean a certain portion of the flight.
radar is good but maybe you want your rocket to give a high five to a heat emitting object (whatever that maybe ;) ) I would be really interested in seeing what a hobby grade IR seeker would look like
@@abdullahahmed7781 Maybe put up a camera in the front so that the missi... sorry, model rocket can identify peoples and places it does not like and go to them to express its......displeasure.
This is super impressive, way cooler than any hobby projects I have done :) I have a few suggestions I think will greatly help you out in the long run, however, it might be more hassle short term. One is to use a RTOS, like you probably know since you briefly talked about timing. I think a RTOS will probably make it easier to use the board for different applications in the future too. Another is to use better ecad tool like KiCAD or Altium over Fusion's built in tool. You may also want to use a smaller pitch stacking/mezzanine connector instead of a flatflex cable.
With intensive vibrations the flexing of the cable is almost a required feature. Means the connector doesn't shake loose or break (whichever comes first).
@@someonespotatohmm9513 Without going to much into detail I think you will find that stacking mezzanine connector are way more common and reliable than flex ribbon cables in high vibration and shock applications such as aerospace, space, military and high-end industrial systems. A flex cable just flapping around would quickly break in the vibration fixture...
This is awesome. I am relatively new to electronics, and definitely not ready for a system as complex as this one, but this is nonetheless very inspiring to see. Thank you so much for sharing this. this will help many people (including myself) to learn. Keep up the amazing work.
As a programmer myself I always wonder how things work in code, and if im correct thats the first time for me ive seen rocket flight code :D Although you didnt fully explain how everything works it was still very much interesting, especially the mass calculation! Such an obvious requirement for the calculations but never thought that this needs to be calculated/used You earned a sub from me, looking forward to more videos
I've seen one where they had small tabs with a small servo controlling roll. I suspect that can be extended to pitch with say three fins. What would be interesting is to have those with top fins, not fins at the rear. The reason is if you have a two stage rocket, you only need the one control system. When the booster is dropped, they are now rear fins for the upper stage.
Dude, I did control system design, implementation HW, SW as a master thesis but this is a completely different level. Watched your video with an amusement. Wonderful job. How long did it take you from the beginning to get here?
It took me about four years to get here. I had some early experiments with active control that worked… ok. Learning all of the aero, guidance and control and PCB design took a while but I’m happy to have made it as far as I have!
Fantastic. Really nice code structure and division of work. Look into Clifford Algebra and Geometric Calculus as used in graphics. I think you can eliminate some matrix math. I would like to see more about the navigation and how/when initial conditions are set. How is gravity worked in? Like how does it tell g relative to accelerations from the motor?
You should definitely build a rail launch system. Also I worry about inertial coupling on the roll axis without control surfaces on the wings. You obviously did your homework though, cool project.
Good question! Vibrations are very common in rocket launches, and I was nervous about mezzanine connectors disconnecting, even momentarily during launch. The FFC let’s the two boards move/flex in relation to one another and still be connected. That being said, the 6-pin power connector is rigid anyways so maybe a mezzanine connector would have worked all along.
Oh yes a video about telemetry ! Tt's a subject very often put aside and then forget. What is the components you use, what data you filter and at what frequency you read them ? On ground, what chip again and what sofware, why did you chose this presentation and what command can you actually send to the vehicle ? A looooot of interresting subject to talk about !
Can you please talk more about matlab and HITL modeling, you barely mentioned them but I think for a lot of people it's a sort of dark magic art that would be really interesting to know about.
What’s about with the Export Restrictions? There are also Open Source projects available for Rocket Guidance, are those different in terms of which Law they need to comply with? So it wouldn’t be possible to Open Source this project later?
Export control restrictions are intentionally vague and vary country to country. This project probably doesn't fall into the spirit of USML restricted material, but parts of it fit into the letter, so it's better to be safe than sorry. Beyond that, there's a lot of safety procedures that go into active control flights even at this scale, and I'd hate for someone to just download some files, do some 3D printing and get themselves hurt.
@@LafayetteSystems Yeah that I can understand. I also Plan to do this as a Project in the future, so I don't need the plain code. But Publishing some recourses via you Learned all this stuff would be a great help. Im exited for future Videos!!!
nice layout. i see your not releasing any docs. i would like to see how you wired your pyro channels. perhaps a teeny part of the schematic? is there feedback to show if the igniters are connected?
Love your project! Have you considered something like freeRTOS? I code my flight computer with it, it's neat because you don't really have fixed frames, different tasks can run at different rates.
Thank you this is helpful for me as I'm building something similar but underwater. Why did you go with three separate IMUs? So far I'm going with a single BNO085 (bno055 with better firmware) and letting the IMU do calibration and sensor fusion on device. So why the multiple units?
Would you be able to do a software release excluding GNC? That’s obviously the most interesting part, but I’m also really interested in your tooling stack and use of HIL for verifying software components before flight. If you have any resources on what you’re using I’d really appreciate it. Thanks!
Very cool project! Are you using the readSensors serial.prints during flight? If not, you could make a flag to skip the serial prints, to free up some cpu resources during flight 😊
hi, do you make content exclusively on missiles? if not, can you make a video on how to make a radar? your channel looks serious and it's impossible to find someone making a radar (every "radar" videos contain a tutorial on how to make a sonar)
Why are multiple IO expanders used? I am not familiar with the MCU in question, but with that many pins I would assume that it would have plenty of peripherals (UARTS and GPIOs mainly for this application). Was it a limitation of the amount of the wires in the flex cable?
Good question! I could do without any IO expanders, but it would require a 36-pin FFC which is just comically large and it would eat up every last GPIO pin and UART on the MCU (let alone routing all of them to the cable connector). The I/O expanders help cut that down tremendously. All of the really important connections are directly to the flight computer (Servo PWM outputs, pyro arming and fire signals), whereas the non-critical stuff (booster/pad detection, LEDs, pyro continuity) is handled by I/O expanders and polled via I2C. That way, if an I/O expander fails for some reason, it doesn't accidentally fire pyro channels or something bad.
@@LafayetteSystems That makes a lot of sense. Using dedicated pins for critical functions is a good idea as well. I don't think there are any better solutions to be honest, without spending tons of money on higher-density connectors. Thanks for your reply. On the topic of flight critical hardware, had you considered implementing a 'watchdog' (not the correct term) MCU to monitor the flight state? As in, if there was an issue with your flight firmware, say it got spammed with interrupts or otherwise held up unexpectedly, a backup mcu could force an abort state, or override control to the pyros for example. Obviously, this would also be a failure point, and you would need at least 3 MCUs to have a proper voting system. And I assume that bottom board is already 70-90% full. So I guess its not really practical but I typed it up so I might as well send it :P What I mean, I guess, is in terms of redundancy, what choices did you make? Was there anything that would've been beneficial which you had to leave out of the final design? You did also mention a video on telemetry, that sounds like a great idea.
So cool - great work dude!
Wow
This guy is driving a mini space program all by himself. Thats fking cool dude
A private arms race
I know, I wish he'd offer up the files for sale.
@@ryanreedgibson ask him. Pretty sure it's illegal, but nobody needs to know
This is very, very cool - great job! Thanks also for the shout-out :)
The missile knows where it is at all times. He knows it because he knows where it isn't. By subtracting where it is from where it is not, or where it is not from where it is (whichever is greater), you get a difference, or deviation. The guidance subsystem uses deviations to generate corrective commands to guide the missile from a position it is in to a position it is not, and upon arriving at a position it was not in, it now is. Consequently, the position he is now in is the position he was not, and it follows that the position he was now in is the position he is not.
We did it Resdit
I opened the comment section to write this
thank you, i only opened this video for this comment. I will now close it before the missile finds out where i am
I only came for this comment.
He was asking for this.
Great multi-discipline engineering and a high quality video to showcase it, bravo to you! Thanks for the time you've put into sharing your work with others.
Thank you for this walk through on your rocket technology! Really cool and inspiring. You and BPS are doing a great progress for amateur rocketry!
Love the engineering on this channel.
What a world we live in where I can learn about building guided rockets on the internet.
for real🙏🦅🚬🇺🇸🇺🇸🇺🇸
This series has been so cool to watch. This is the kind of inspiring content the people NEED! You're THE PEOPLES' HERO!!
All the technology you've incorporated into this rocket is truly inspiring! I absolutely love it!
This is a multidisciplinary masterpiece! As a student studying mechanical engineering right now, this type of thing is incredibly inspiring. Please keep the content coming! Love your work :)
This is one of the coolest channels on TH-cam.
For someone who doesn't have an engineering masters, I believe this guy's project is amazing. I hope we can support him to make that project an open source.
Totally agree! But even if the didn't want to release it as open-source nothing prevent us from developing something from scratch based on his ideas. He shared many details already, it is more than enough to start a new project. And you can even improve this idea using CAN instead of RS422, etc.
I can't be open-source because of ITAR limitations.
@@AnotherByteData I can participate on that
@@Jazz3006 from an admittedly quick Google search, I couldn't confirm what you're saying. Could you provide more details on what he can't open source this project?
@@Tyrone-Ward you should look up ITAR restrictions and think about what he is effectively developing and why the knowledge of how it all works would be bad in the hands of an enemy.
Avionics is such a cool field! Thanks for sharing all the technical details!
As well as the work, comments and the community feedback is also super showing the importance of the challenge tackled!
I'd note that, this is a world-class work employing many advanced interfaces from diverse fields. I'd only take notes and enjoy this documentary! Thanks for sharing as many have said. I hope it'll be used for good.
Congratulations sir, once again.
Wish you the best!
You decided to self teach yourself and then you go ahead to make THAT!
Great work dude🔥🔥
I would love a video on the telemetry system! I am doing something similar and would love to see your approach.
+1.
Also I don't fully under how the controls are covered by export restrictions. Does that mean the electronic components used for control are covered by ITAR? If he developed the control algorithms independently I presume they wouldn't be covered by export restrictions.
This man deserves way more views
I've always wanted to build my own rocket with guidance system, but you actually did it ! With creative use of commercial sensor components and MCU, and your boards look great. I can totally see that the control system overall must have been challenging, especially on 3 axes and all within 10 msec. Great piece of work, and I enjoyed watching your presentation. Thanks !
P.S. I noticed you have a lot of UART communication channels, which take up a lot of hardware, and maybe that could be simplified with a single high speed CAN bus or so. But I admit I don't know the specifics of all your internal com needs.
You should put a small radar in the front (like an automotive radar). You could use it for guidance or perhaps to trigger the pyro... I mean parachute when it gets to a certain distance... I mean a certain portion of the flight.
Yeah...
Go to jail.
Do not pass GO.
Forfeit *ALL* 'human rights' and go straight to Guantanamo Bay.
radar is good but maybe you want your rocket to give a high five to a heat emitting object (whatever that maybe ;) ) I would be really interested in seeing what a hobby grade IR seeker would look like
@@abdullahahmed7781 also a good idea.
@@abdullahahmed7781 Maybe put up a camera in the front so that the missi... sorry, model rocket can identify peoples and places it does not like and go to them to express its......displeasure.
Great work! Kudos for calling out the part numbers
This is super impressive, way cooler than any hobby projects I have done :)
I have a few suggestions I think will greatly help you out in the long run, however, it might be more hassle short term.
One is to use a RTOS, like you probably know since you briefly talked about timing.
I think a RTOS will probably make it easier to use the board for different applications in the future too.
Another is to use better ecad tool like KiCAD or Altium over Fusion's built in tool.
You may also want to use a smaller pitch stacking/mezzanine connector instead of a flatflex cable.
With intensive vibrations the flexing of the cable is almost a required feature. Means the connector doesn't shake loose or break (whichever comes first).
@@someonespotatohmm9513 Without going to much into detail I think you will find that stacking mezzanine connector are way more common and reliable than flex ribbon cables in high vibration and shock applications such as aerospace, space, military and high-end industrial systems. A flex cable just flapping around would quickly break in the vibration fixture...
This is awesome. I am relatively new to electronics, and definitely not ready for a system as complex as this one, but this is nonetheless very inspiring to see. Thank you so much for sharing this. this will help many people (including myself) to learn. Keep up the amazing work.
Amazing video! Love the deep dive into code.
Would love to hear some of the learnings from PCB designing and manufacturing.
How did you learn all of this? Did you go to college? Or did you read a bunch of books and figured the rest out on your own?
Would love to see more about your ground station!
Love the video, but can you please send out the pcb chips out. Or sell the files for them, you could make some good side money.
Awesome!
Love you're videos. Any suggestions for a noob to electronics on how to select the components and getting started and building guidance systems?
Incredible work, I am very impressed by this rocket brain
alwase incredible, your a source of inspiration for me
yo man any chance on sharing the files, datasheets and general documents on the flight computer PCB's ?
Very impressive! I would love to see a telemetry follow up video. What RF module are you using for the full duplex (or half duplex?) communication?
Wow, well done
Is there any coming videos for the Matlab Simulation???
That should be the next video in the build series, all of the ground testing and simulations done before flight!
@@LafayetteSystemshaven’t watched the rest of your older vids but did you use rocket candy for fuel
As a programmer myself I always wonder how things work in code, and if im correct thats the first time for me ive seen rocket flight code :D
Although you didnt fully explain how everything works it was still very much interesting, especially the mass calculation! Such an obvious requirement for the calculations but never thought that this needs to be calculated/used
You earned a sub from me, looking forward to more videos
Cool explanation, your requirements are very interesting!
thank you for the inspiring content! keep it up!
mirco usb, still holdin on in 2024. Great breakdown!
I've seen one where they had small tabs with a small servo controlling roll. I suspect that can be extended to pitch with say three fins.
What would be interesting is to have those with top fins, not fins at the rear. The reason is if you have a two stage rocket, you only need the one control system. When the booster is dropped, they are now rear fins for the upper stage.
Dude, I did control system design, implementation HW, SW as a master thesis but this is a completely different level. Watched your video with an amusement. Wonderful job. How long did it take you from the beginning to get here?
It took me about four years to get here. I had some early experiments with active control that worked… ok. Learning all of the aero, guidance and control and PCB design took a while but I’m happy to have made it as far as I have!
Amazing work thanks for sharing!
Thanks for sharing, very nice project
Nice project! I love it.
May I ask why two accelerometer used?
Fantastic. Really nice code structure and division of work. Look into Clifford Algebra and Geometric Calculus as used in graphics. I think you can eliminate some matrix math.
I would like to see more about the navigation and how/when initial conditions are set. How is gravity worked in? Like how does it tell g relative to accelerations from the motor?
You should definitely build a rail launch system. Also I worry about inertial coupling on the roll axis without control surfaces on the wings. You obviously did your homework though, cool project.
Well done! I particularly like the hardware👍
Really amazing! do next one about telemetry!
13:44 lol I almost missed the joke you flashed there 😅
Very cool project! Is there a reason you used the FFC & Pinheader connection, instead of a mezzanine connector?
Good question! Vibrations are very common in rocket launches, and I was nervous about mezzanine connectors disconnecting, even momentarily during launch. The FFC let’s the two boards move/flex in relation to one another and still be connected. That being said, the 6-pin power connector is rigid anyways so maybe a mezzanine connector would have worked all along.
AMAZING JOB !
holy f, that is seriously impressive man
Oh yes a video about telemetry ! Tt's a subject very often put aside and then forget. What is the components you use, what data you filter and at what frequency you read them ? On ground, what chip again and what sofware, why did you chose this presentation and what command can you actually send to the vehicle ? A looooot of interresting subject to talk about !
If I had to guess, I'd think it knows where it is because it knows where it isn't.
Do you have a git repo where we can see the flight code?
Can you please talk more about matlab and HITL modeling, you barely mentioned them but I think for a lot of people it's a sort of dark magic art that would be really interesting to know about.
What’s about with the Export Restrictions? There are also Open Source projects available for Rocket Guidance, are those different in terms of which Law they need to comply with?
So it wouldn’t be possible to Open Source this project later?
Export control restrictions are intentionally vague and vary country to country. This project probably doesn't fall into the spirit of USML restricted material, but parts of it fit into the letter, so it's better to be safe than sorry. Beyond that, there's a lot of safety procedures that go into active control flights even at this scale, and I'd hate for someone to just download some files, do some 3D printing and get themselves hurt.
@@LafayetteSystems Yeah that I can understand. I also Plan to do this as a Project in the future, so I don't need the plain code. But Publishing some recourses via you Learned all this stuff would be a great help. Im exited for future Videos!!!
nice layout. i see your not releasing any docs. i would like to see how you wired your pyro channels. perhaps a teeny part of the schematic? is there feedback to show if the igniters are connected?
Just Awesome dude 👌
Please video only about communication between rocket and ground station
can you exspand on the Complinary filters that you use? i'm gessing you avrage the values or what else do you do to clean up the data?
Love your project! Have you considered something like freeRTOS? I code my flight computer with it, it's neat because you don't really have fixed frames, different tasks can run at different rates.
The missile knows where it is at all times. It knows this because it knows where it isn't.
I couldn't help myself.
Very interesting, why didn't you use a scheduler like FreeRTOS to manage the functions?
really cool, do you sell the board and other pats? Or the whole design?
good job, keep it
Thank you this is helpful for me as I'm building something similar but underwater. Why did you go with three separate IMUs? So far I'm going with a single BNO085 (bno055 with better firmware) and letting the IMU do calibration and sensor fusion on device. So why the multiple units?
Would you be able to do a software release excluding GNC? That’s obviously the most interesting part, but I’m also really interested in your tooling stack and use of HIL for verifying software components before flight. If you have any resources on what you’re using I’d really appreciate it. Thanks!
Very cool project!
Are you using the readSensors serial.prints during flight? If not, you could make a flag to skip the serial prints, to free up some cpu resources during flight 😊
Dude 😎 can become CEO on his own.
Cool stuff! What type of connectors do you use? You say MOLEX, but which one?
I was sure i would find a "missle knows where it is by knowing where it isn't" comment 😂
Very cool! 😮 What Technology stack do you use for the Ground Telemetry Station / Application?
hi, do you make content exclusively on missiles? if not, can you make a video on how to make a radar? your channel looks serious and it's impossible to find someone making a radar (every "radar" videos contain a tutorial on how to make a sonar)
The 8 times rotation matrix = ∞ joke is a good one :D
Why are multiple IO expanders used? I am not familiar with the MCU in question, but with that many pins I would assume that it would have plenty of peripherals (UARTS and GPIOs mainly for this application). Was it a limitation of the amount of the wires in the flex cable?
Good question! I could do without any IO expanders, but it would require a 36-pin FFC which is just comically large and it would eat up every last GPIO pin and UART on the MCU (let alone routing all of them to the cable connector). The I/O expanders help cut that down tremendously. All of the really important connections are directly to the flight computer (Servo PWM outputs, pyro arming and fire signals), whereas the non-critical stuff (booster/pad detection, LEDs, pyro continuity) is handled by I/O expanders and polled via I2C. That way, if an I/O expander fails for some reason, it doesn't accidentally fire pyro channels or something bad.
@@LafayetteSystems That makes a lot of sense. Using dedicated pins for critical functions is a good idea as well. I don't think there are any better solutions to be honest, without spending tons of money on higher-density connectors. Thanks for your reply.
On the topic of flight critical hardware, had you considered implementing a 'watchdog' (not the correct term) MCU to monitor the flight state? As in, if there was an issue with your flight firmware, say it got spammed with interrupts or otherwise held up unexpectedly, a backup mcu could force an abort state, or override control to the pyros for example. Obviously, this would also be a failure point, and you would need at least 3 MCUs to have a proper voting system. And I assume that bottom board is already 70-90% full. So I guess its not really practical but I typed it up so I might as well send it :P
What I mean, I guess, is in terms of redundancy, what choices did you make? Was there anything that would've been beneficial which you had to leave out of the final design?
You did also mention a video on telemetry, that sounds like a great idea.
I know it might seem like a dumb question but, what coding language are you using? I'm new to this field and want to learn more
wow.
16:18 We report the error code 1202 or 1201 (see apollo landing) 😉
What CAD do you use for the PCB design?
Would love to see one about Matlab / Simulink part
Hi ! very nice project. What class of engine are you using? What is the propulsion duration?
you can reprogram guidance software to hit any aircraft nearby promoting rocket into missile
Wow. That is a serious project for a well sized team of PhD and seasoned professionals.
I would definitely like a video on telemetry system
It's interesting how similarly you code is structured to rudimentary game engines
In short -Excelent project, 1000x super
Cool stuff
What type of onboard camera's do you use?
Shoutout to all the launch towers out there that got absolutely wrecked when launching their rocket babies.
super cool
Is your pc board assembly done outside...or do you do it?
do you sell these?
Hi, i wanna knwo how you did to learn pcb design ?
what is the reason to use memory flash and SD card? when should use one and when should use another? thanks
awesome
What controller is used in rocket technology?
didn,t know you could load teensy bootloader on new chip MK66FN2M0VLQ, that nice to know
In how many iterations have you developed this?
Could you comment on the component costs of all the electronics components -- especially all the specialized sensors?
probably about a hundred dollars
@@ulyu7071 I believe some of the specialized sensors can be expensive, but I would be curious about the cost of components used here.
Beeing Nicolaus Copernicus is extremly hard nowadys. Nicolaus Copernicus. A lot of thinks to learn in each area.
hi ! I want to buy an electronics kit and try to build this! could you know how to contact you?