2023-2024 Qubo Software Projects: Difference between revisions

end effector
No edit summary
(end effector)
 
== End-effectors ==
This includes: torpedo launcher, claw, marker dropper.
 
marker dropper = device that releases a small object, a "marker" that is identifiable to our team. A recurring RoboSub task is dropping markers into bins.
 
Jeffrey Fisher: My understanding is that these end-effectors are not complete, but that we can work with prior iterations. Even if it won't go on the robot right away, it will be worthwhile to get the code in place so we are ready when mechanical finishes the new designs, and to begin testing the functionality. Testing is very important because accuracy is important for all three of these end-effectors.
 
== New DVL (1-2 people) ==
 
* The DVL speaks JSON over TCP. See [https://waterlinked.github.io/dvl/dvl-protocol/ WaterLinked's protocol documentation].
** There is also a serial interface, but we will not use it because (1) it is slower and (2) I'm pretty sure theone pointreason offor getting this DVL was that we can talk to it over Ethernet --- Jeffrey Fisher.
* '''Goal:''' setupSetup communication between Qubo's main computer and the DVL.
* '''Goal:''' Make the DVL data available to the rest of the code over ROS.
* Language: Likely C++
* There are existing libraries for interfacing with this DVL. It is probably worth evaluating them.
** At a quick glance, this one seems worth checking out: https://github.com/paagutie/dvl-a50. It's already using the JSON library I was planning to use, so if we write our own in C++ it will probably be quite similar to this one. --- Jeffrey Fisher
** Here's a bunch: https://github.com/search?utf8=%E2%9C%93&q=dvl+a50&type=repositories
** Jeffrey Fisher: Some things worth considering:
*** How often will we have to change this code?
*** How likely are there to be bugs?
*** Will depending on a 3rd-party ROS library make it hard to upgrade in the future? How separate are the DVL protocol and ROS portions of the 3rd-party library? How hard would it be to patch the library ourselves for a newer ROS version?
 
== Embedded software ==