Terrapin-Rocket-Team / Payload

Code and PCBS for the payload team
MIT License
0 stars 2 forks source link

Navigation development #7

Open nate-roy opened 2 months ago

nate-roy commented 2 months ago
mallamacimj commented 2 months ago

9/11/24

Did this week

Next Week

9/18/24

Did this week

Next Week

9/25/24

Did this week

Next week

ChenJeff123 commented 2 months ago

9/11:

Didn't get anything done. Next week will look over old descent path code and integrate wind correction code

9/18:

Brushed up on descent path code. Looked over wind correction code - need some questions answered. Will hopefully fully integrate next week.

9/25:

Integrated wind correction code into descent simulator. (Edit: doesn't work as intended still). Need to add graphs with change in velocity over time, as well as functionality to plot multiple graphs at once with different variables.

10/2:

Finally has functional wind simulation. (Not fully tested, could have bugs still) Now have graphs of vehicle velocity over time in x and y axes. Need to test further and add functionality for multiple overlayed plots with different parameters.

10/9:

Overlayed wind corrected and non wind corrected graphs. (They aren't exactly one-to-one due to different randomly generated wind). Also, the velocity graphs are for the wind corrected version. image

10/23:

Most of descent simulator is finished: ability to add run simulations of multiple starting points, with/without wind correction. Working plots of position, velocities, and heading. Still sometimes messes up though. image Still need to do: incorporate wind estimation.

10/30:

Wind estimation is still in progress :((. Hope to get that done by next week.

11/6:

Still working through some issues with wind estimation.

11/13:

Wind estimation have been incorporated.

rowleyhc commented 2 weeks ago

10/28: Finished writing and testing some basic navigation simulation that incorporates the angle limitation command: Image Image Image From playing around with different targets and starting headings/points, it seems like the goalCommand function(which effectively limits the difference between the goal and actual angle that the controller uses) is working properly, and doesn't cause any issues. However, as can be seen the the heading is still changing very rapidly(about 180 degrees in 0.1 seconds, which seems to be the maximum the controller will output(1800 degrees/second)), which is still going to cause some issues. This seems to be a limitation of the controller function, rather than the goalCommand functionon. A rough band-aid solution for now seems to be just multiplying output pwm by 1/20, which produces a much more reasonable turn rate: Image Image Image To do: figure out a better way to limit the turn rate so that the pwm output still allows the motor to be more responsive and isn't unnecessarily scaled down

10/30: Rewrote goalCommand function so that turn rate is fully limited by it and pwm can be left unchanged: Image Image

11/13: Started working with Simulink, made a simulation with the same capabilities as the python one I made earlier, though using the functions for angular acceleration Michael generated from the rotation testing. Image Image Image Image Image Moving around in a rough circle(some variation suggests further PD tuning needed): Image

To do: -Keep troubleshooting edge cases that seem to break the model(a lot of this just seems like error due to how Simulink solves the system, which seems very sensitive to the tuning of the PD controller and how close the vehicle is to the target) -Incorporate more realistic motion simulation by modeling the parachute connection as non-rigid and with forces -Eventually, model wind, which would affect the vehicle's motion and also move the center of the circle(the rocket)