Use with AUVs #96
Replies: 2 comments
-
Hey, thanks for the interest! I think you've come to the right place 😃 I've actually been using it with the BlueROV2 in DAVE/Gazebo quite a bit in recent months, and the altimeter/depth widget was added specifically for sending a target depth to the AUV depth controller as a sort of first step towards supporting some sort of Z axis control.
Yeah that would be a great addition, but I've never quite had a super clear idea on what would be the best way to do it UX-wise. So far my best idea was to add a sort of graph box to the modal window that would show a "sideways" profile map that has:
Then one could just pick and slide each point up and down to adjust the Z values. There's some caveat in terms of what max/min Z we display on the graph and what happens when points bunch too close together that needs some further thought. Maybe some sort of scrolling for the box I guess? In any case, it's definitely planned and would be super useful for both AUVs and aircraft but I haven't really properly had the time or urgent need to really dive (ha) into it. If you want to take a stab at it as a PR in the meantime, it would be most welcome. Contributing.md has a short rundown of the project layout, and I can give you some pointers if you have any questions.
At least for surface vessels the current setup actually works pretty well. Connect to the boat wifi, load up the map, set and publish waypoints, the onboard planner takes the route and does its thing outside wifi range, returns back (hopefully), wifi reconnects and I can teleop the boat back for collection and stop bag recording, all from just a smartphone. What I've seen people do for AUVs is to give them a short tether with an antenna buoy at the end which gives you some leeway during testing if say, your nav stack crashes when it's submerged...
That would be great to have, and in theory if there was a tile server that complied with the web standard for map tiles it would be plug and play with just the URL change. I've tried this in the past with a few offerings that sort of had some routes mapped but it didn't really work properly for some reason. A funny workaround I've been using for displaying a small local map was to publish a TF link at a known origin for it, and then set a robotmodel widget image to display there. Having a more proper way of rendering custom images on specific locations would be a great addition for many use cases regardless (maybe also even a browser-uploaded image overlay that you can scale and rotate in the fixed frame). Again haven't really gotten around to it yet.
Ha yes, well it would be quite a rework and I'm still not entirely convinced that it would be all that usable on mobile. I think porting it to something that actually uses better GPU acceleration than canvas with a more workable abstraction than WebGL like Pixi.js or Three.js would be a good move eventually once there's better WebGPU support, and I guess adding some kind of 3D might be an option at that point. TBD
Afaik most people use MOOS-IvP instead of ROS for AUVs and that comes with pMarineViewer as the mission planner, but given that it's ~20 years old it's not exactly the most user friendly thing. There's also Ardupilot MP but I haven't heard of anyone using it underwater. Both of these are also top down 2D, for 3D I think only Foxlglove Studio really has full 3D rendering, but afaik it doesn't really have any mission planning capabilities and it was mainly designed around self driving cars. |
Beta Was this translation helpful? Give feedback.
-
Awesome, thanks for the great and thorough response. I will take a look at the code and try to cook up a PR. UX: For display, I was thinking it would be fairly straightforward to display a small number by waypoints when Anyway, for now, I need to just get the tool running. I'll take a look at your code and the "contributing" document and see what I can figure out in the way of devex for just running the tool locally on my machine. Thanks for your encouragement! I really like what you've done here and I agree that I'm in the right place. |
Beta Was this translation helpful? Give feedback.
-
How adapted is Vizanti to use with AUV mission planning? I see some limited functionality for depth control, however it seems fair to say that most of the path planning is adapted to 2d missions. As you know, AUVs operate in 3 dimensions, and do much of their mission out of contact with the base station. Even so, there does exist a need for surface manuevering control, as well as mission planning, and this project looks like it has that part totally figured out.
I'm a senior javascript dev, so I'm happy to help make adaptions for my project, I was just wondering what work has already been done and how major the project developers would judge the work to be of extending vizanti for AUV use. Vizanti has clearly been written with extensibility in mind, so I judge it is at least possible. Id also be open to hearing about other projects that better meet the mission, if you know of any.
Really all i would say is necessary as a bare minimum for AUV use would be:
There are also plenty of nice-to-haves for AUVs
Anyway this is an amazing project and looks very well thought out, I look forward to trying it.
Beta Was this translation helpful? Give feedback.
All reactions