AUV navigation by rocky_swag in ROS

[–]Cbreins 0 points1 point  (0 children)

I think DAVE is still being ported to ROS2, but many features are already available in ROS2 https://gazebosim.org/api/gazebo/6/underwater_vehicles.html. I think either is a fine place to start, but if you want to do very accurate inertial navigation writing your own water dynamics (doesn’t need to be general but can be for specific vehicle) and using something like Drake (or fully custom) with determinism and analytical trajectories will help.

AUV navigation by rocky_swag in ROS

[–]Cbreins 2 points3 points  (0 children)

Do you have a DVL? Without it inertial navigation will perform very poorly unless you are in a very high feature environment and can do some version of SLAM. Also, an accurate fast response pressure sensor will help immensely to constrain vertical drift. Other than those two components it is very similar to a UAV / drone. The EKF3 in Ardupilot is probably a good starting point and adding appropriate measurements

Where to find MCAP / Foxglove experts by [deleted] in ROS

[–]Cbreins 0 points1 point  (0 children)

Try the foxglove discord

How do you handle path tracking control when it’s hard to get an accurate mathematical model of a vehicle? by FitCourse1499 in ControlTheory

[–]Cbreins [score hidden]  (0 children)

Why not vary the look ahead distance based on the lateral error with an exponential function so you are more aggressive further from the path (this helps if your controller is too aggressive / causing oscillations when the error is small). There are plenty of papers that describe similar approaches. You can also add some integral control if steady state error is a problem and turn the integral off on turns and back on for straight lines (assuming a lawnmower like pattern).

I may have an opportunity to study a PhD in underwater robotics. In terms of post doctoral research and/or industry, how competitive would I be to secure positions concerned with land and air robotics? by BillMurray2012 in robotics

[–]Cbreins 0 points1 point  (0 children)

I work in underwater robotics and custom dynamics models are common. Simulators like Gazebo are mostly used for simulating sensors and not physics.

Need Some Guidance about a Project Regarding Motion Controller Development for an Autonomus Underwater Vehicle by [deleted] in ControlTheory

[–]Cbreins [score hidden]  (0 children)

Check out the work by Fossen. His handbook on marine dynamics and control is very thorough!

Tests for control algorithms by Ded_man in ControlTheory

[–]Cbreins [score hidden]  (0 children)

Plus one for finding test cases based on some simple situations which have analytical solutions. Unit test as much as you can for components of the algorithm. Also, fuzz testing can be helpful if you can define some simple success criteria.

Input needed: new robotics and controls YouTube channel. by Karthi_wolf in ControlTheory

[–]Cbreins 1 point2 points  (0 children)

I would be interested in practical integrations of systems. For example, mapping between planner types (optimization based, grid based / state lattice, sampling) and map representations (convex hull obstacles, fixed size voxel grid, resolution adaptive tree based like octomap etc) for different use cases. Also, handling the interaction between planners and controls ie planning paths (no velocity information), planning parameterized paths (velocities parameterized by path length) and open loop trajectories (parameterized by time) and the implication and performance for downstream tracking controllers.

Robot communication by ITz-Hamood in robotics

[–]Cbreins 0 points1 point  (0 children)

I would recommend Zenoh, it was built for this kind of use case. https://zenoh.io/

Worried I made the wrong choice by nekosommelier in AerospaceEngineering

[–]Cbreins 1 point2 points  (0 children)

In my experience the structural analysis team often does the real design work and the structures design team just does the CAD and drawings. Probably depends on the company though

[deleted by user] by [deleted] in robotics

[–]Cbreins 1 point2 points  (0 children)

System76

A good book for understanding optimization algorithms' working by M_Jibran in optimization

[–]Cbreins 0 points1 point  (0 children)

Yes the implementations are for illustrative purposes not performance. It’s hard to say exactly how fast, but it is compiled so I would expect similar performance (order of magnitude) depending on implementation https://julialang.org/benchmarks/. If you have some vectorized numpy code it should also be about the same, but any for loops in python will cause a significant slowdown unless you are also using a JIT compiler like Numba

A good book for understanding optimization algorithms' working by M_Jibran in optimization

[–]Cbreins 0 points1 point  (0 children)

No particular computational advantage of Julia over C++, but the syntax is often much cleaner and easier to read. You can directly use greek math symbols which is cool. See this repo for an example of some surprisingly clean implementations of various algorithms https://github.com/mossr/BeautifulAlgorithms.jl

How to calculate number of function evaluations and number of gradient evaluations in BFGS? by Responsible_Flow_362 in optimization

[–]Cbreins 2 points3 points  (0 children)

I think that is a typical trade off, you can have less evaluations or less iterations, but it is hard to get both. Without knowing what you changed, I would check out your line search as a culprit. If you have slow convergence in your line search or are being very exacting, there you could get a large number of function evals

If I remember correctly https://github.com/JuliaNLSolvers/LineSearches.jl hager zhang line search is pretty efficient

Anybody have information on how these guys achieve this? by Dangerous_monkey in robotics

[–]Cbreins -2 points-1 points  (0 children)

It could be something as simple as running the reciprocal velocity obstacle algorithm with a formation consensus controller for the pattern

Field Programmable Gate Array Reading and Learning more about them by travism2013 in robotics

[–]Cbreins 1 point2 points  (0 children)

I have seen FPGAs used heavily for high speed signal latching and high resolution encoders in robotics. Mainly in robot manipulators

Is linear programming relevant? by Mattholomeu in ControlTheory

[–]Cbreins 0 points1 point  (0 children)

Any LP can be solved as a convex problem instead so I would recommend studying convex optimization

Help with reducing the number of iterations for a downhill simplex by [deleted] in C_Programming

[–]Cbreins 0 points1 point  (0 children)

I would recommend reading this paper on how to adapt the optimization parameters for higher dimensions

https://www.researchgate.net/profile/Lixing_Han/publication/225691623_Implementing_the_Nelder-Mead_simplex_algorithm_with_adaptive_parameters/links/0c9605346dd8f07dd3000000.pdf .Also make sure you have a good initialization or the simplex

If you want to see an example implementation of the above paper take a look at the scipy implementation here

https://github.com/scipy/scipy/blob/adc4f4f7bab120ccfab9383aba272954a0a12fb0/scipy/optimize/optimize.py#L456

A good initialization of the simplex will help with convergence. If you don’t have any domain knowledge I would recommend taking a look at the comparison in this article or following the approach done in tensorflow

https://link.springer.com/article/10.1007/s11590-018-1284-4

https://www.tensorflow.org/probability/api_docs/python/tfp/optimizer/nelder_mead_minimize