-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nav routines as modules #512
Conversation
the skid landing from osam is really strange, not completely sure what was the idea behind. |
…ns for atan2 are zero not really sure what the max_ref values should be in the case where the route_ref angle can't be computed... set to max on both axes for now... see also issue paparazzi#512
anything missing to merge this ? |
Naming of init/run functions still has to be harmonized... |
Not discussing new code filenames names as good as I can ;) but other issues.
|
How about simiply drop instead of bomb? Would also make more sense wrt. to things like outback challenge. |
it is both about the object, the course and the release, maybe unshackle ;) but anyhow drop is already much better a term, thx. I'm looking in direction of payload, release, drop, I think the shoot in the code is release, the bombi called store. in the code the word bomb is intermixed and means different things e.g. bomb_trigger_delay is release_trigger_delay and bomb_x is object_x or store_x |
Catapult and bungee are definitely to different way to takeoff and they need different procedures
already done
done
already removed
mostly harmless
the actual benefit is not the smoothing but the time sync at arrival point, which is way from being perfect and handy to use. Should be kept anyway I think. |
also still needs proper naming of the functions, and maybe should be renamed from nav_smooth to nav_synced_arc or something like that? |
Some ramblings: Reason: function names show up in flightplans, and flightplans are likely to be created by people with not so much inner autopilot working or programming experience. The flight plan terms and functions should be very descriptive and well named to easy flightplan writing (It kind of having a Flightplan "language") Maybe already done but source code changes are at lightning speed nowadys ;) and some text where still in my scratchnotes
nav_gls.c *Rename poly_survey_adv Since poly is not to obvious (well yes to us geeks..) and adv is surely not clear, I know it should mean adv(anced) but why would we add that all things as advanced in PPRZ ;) for nav_smoothing.c |
Discsurvey is gone.. nav_survey_disc otherwise. Shame that it is gone it was another nice example of how to extend nav routines. (yes, I know one could dig in code history but that is no to likely for most to do) Anyhow it is maybe just me being sentimental over code gone over time... ;) BTW thx to all for giving good naming a good deal of thinking and discussion, in the end it will make pprz usage more joyful for people starting in PPRZ |
Not quite following, it was renamed to nav_line_border for now (which seems fine to me).
You mean we should add the old "extra" navigation routines by default, rather than having the user load the respective module? Or what do you mean?
Already renamed to nav_survey_poly_adv. We could rename to nav_survey_polygon_advanced, but then names are starting to get really long...
Yep, still has to be renamed..
nav_survey_disc is there... but it needs docs, so if you have used that, could you plz write a short doc section for it? |
Concerning the function name, I would vote for "start" finally. The reasons are that nobody could come with a "good" solution and there are as many pros/cons for all candidates. But also because the modules are already using start/stop functions for stuff called before periodic calls and outside of the general init phase, so there is at least some consistency here. |
These would actually be more aptly named "pre_start" and "post_stop", where the start and stop refers to the starting/stopping of the periodic function of that module. Personally I would vote for "prep" (or if that is not clear the long version "prepare") or setup. |
nice find, this pre_ and post_ namings are not all that bad. |
…ng for start and run functions
now performed with sectors at compilation time
- rename nav_survey_poly_adv to nav_survey_polygon - nav_bomb.xml is now nav_drop - dox fixes
So what do we do about naming now? Also are there any volunteers to check differences between the two polygon survey and line functions? |
I still suggest to keep the current names (mostly because it doesn't make such a big difference in the end, and we have other stuff to do...). For the differences:
The lines modules can probably be kept, with some doc on osam. For the surveys, it is up to photogrammetry users to tell which coverage function is the best, and they can probably be merged in the end (in an other pull request). Smooth nav needs a better interface but it can be done later, so this pull can be merged. |
It cannot be merged yet, some names are still not correct and some flight_plans need to be updated for the new names. |
to get altitude fixes for nav routines * master: (81 commits) [rotorcraft] gps_sim_hitl: set gps alt and hmsl [rotorcraft] simple HITL by using ref as gps [ins] gps_passthrough type for rotorcrafts [ins] no baro update if vf_reset && !baro_initialized [ins] vf_extended: rename update_alt to update_z [ins] Made it possible to use GPS altitude [ins] hf_float: remove inline from functions [ins] hf_float: fix compilation with GPS_LAG [ins] IIR filter replacing mean in hff Use PPM [usec] values for radio config files with SBUS [actuators] dualpwm fixes for nps [actuators] actuators driver that generates dual pwm pulses. [ground_segment] add libprcre to natnet [math] fix resolution in ltp_def rotation matrix [conf] remove obsolete BARO_HAS_BOARD defines [chibios] fix compilation with chibios [datalink] Fixed some small issues with UDP datalink [follow] Fixed following module [modules] Added a module for following based on received remote GPS [ardrone] Updated gains and reference model for inside ... Conflicts: sw/airborne/modules/nav/nav_drop.c sw/airborne/subsystems/navigation/OSAMNav.c sw/airborne/subsystems/navigation/poly_survey_adv.c sw/airborne/subsystems/navigation/spiral.c
also fix init function for nav_catapult
for new nav survey modules
find conf sw/airborne/modules \( -name "*.xml" -o -name "*.[ch]" \) -exec sed -i 's/nav_\([a-z_]*\)start(/nav_\1setup(/g' {} \;
basic flight plan only uses standard routines, nav_line is now in versatile and other custom flight plans
Fixedwing extra navigation routines as modules <subsystem name="nav" type="extra"/> doesn't exist anymore, instead load only the desired navigation routine as module: <modules> <load name="nav_survey_polygon.xml"/> </modules> nav function names have been harmonized: - nav_foo_setup(x, y) is usually called once to set the parameters (previously mostly called init) - nav_foo_run() is the function to be called every time until the routine is done
First step at cleaning up navigation by converting extra navigation routines to modules (#48 and solving #47)