Skip to content

Commit

Permalink
add lessons learned from RoboSub23 nav tube documentation (#1072)
Browse files Browse the repository at this point in the history
* add lessons learned from RoboSub23

* include nav tube and lessons23 in index for doc

* Remove duplication navigation tube doc from #1096

---------

Co-authored-by: Cameron Brown <[email protected]>
  • Loading branch information
andrespulido8 and cbrxyz authored Feb 23, 2024
1 parent b84c524 commit 4474cf7
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -617,8 +617,8 @@ def as_PoseTwist(

def as_PoseTwistStamped(
self,
linear: Sequence[int] = [0, 0, 0],
angular: Sequence[int] = [0, 0, 0],
linear: Sequence[float] = [0, 0, 0],
angular: Sequence[float] = [0, 0, 0],
) -> PoseTwistStamped:
"""
Returns a :class:`~mil_msgs.msg.PoseTwist` message class with the pose
Expand All @@ -639,8 +639,8 @@ def as_PoseTwistStamped(

def as_MoveToGoal(
self,
linear: Sequence[int] = [0, 0, 0],
angular: Sequence[int] = [0, 0, 0],
linear: Sequence[float] = [0, 0, 0],
angular: Sequence[float] = [0, 0, 0],
**kwargs,
) -> MoveToGoal:
return MoveToGoal(
Expand Down
3 changes: 2 additions & 1 deletion docs/subjugator/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ SubjuGator 8
Enabling <enabling>
Cameras <cameras>
PID Controller <pid>
Nav Tube <nav_tube>
Navigation Tube <navtube>
Watercooling <watercooling>

electrical
Expand All @@ -28,5 +28,6 @@ RoboSub

RoboSub <robosub>

Lessons from 2023 <lessons23>
Lessons from 2022 <lessons22>
Lessons from 2019 <lessons19>
13 changes: 13 additions & 0 deletions docs/subjugator/lessons23.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Lessons from RoboSub 2023

Paraphrasing Dan Frank, “it's clear that if we had made all these mistakes back in Gainesville, we could have been in way better shape for the competition”.

* **Make a plan and be familiar with the sub** - We should create a solid checklist that spells out all the basic stuff we need to nail before we leave. This should cover nailing down sub moves commands, getting familiar with the missions we already have written, testing those missions in the pool, and making sure our kill system is on point and integrates well with our software. Having a game plan for finals that's solid and picking out a reliable run that can get enough points to really boost our chances is really important. Let's not leave our presentation prep for the last minute – we need to make the presentation and practice at least a week before the competition hits. We should have deadlines for all of these.

* **Make a plan and be familiar with the sub** - We need to have a Plan B when someone can't make it or falls sick. At least 2-3 people need to be able to rock the sub operation, change and charge batteries, replace mechanical things, etc. Roles in the team need to be crystal clear during the competition.

* **Track issues and maintenance of parts** - We should track intermitten issues; investigate them, and deal with them, before leaving. The issues showed up every now and then, but we brushed them off thinking they’ll go away. They should've been solved earlier. Also we need a proper log of when we're swapping out parts or using them. That way, we know when it's time for replacements. We only made the move of MacArtney connector switch after stumbling on a Slack conversation from 2019. Having a grip on the tether's age would've helped sort things out sooner.

* **Easier debugging and Sub Status** - When hardware kills don't unkill after rebooting and sticking the kill wand back in, we should've cracked open those CAN messages to see what was going wrong. Having all this info on a screen or sent to our computers would've made life simpler. About lights and screens, having status symbols or messages on screens for errors or warnings from each board would make debugging easier. Same goes for side lights on the sub – they'd be useful for the electrical and softwar.

* **Document** - Since hardware takes more effort than firmware, we could try to make it easier to write working prototype firmware to have more time for making hardware. We currently have MIL written drivers, but they have inconsistent documentation and are confusing for some members to use (especially the ones for CAN).
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ Navigation Computer
===================

The navigation computer consists of a Gumstix Overo Computer-on-Module that mounts to a carrier board. The carrier board contains headers for the Teledyne Dopper Velocity Logger (DVL) connector board, Analog Devices Inertial Measurement Unit (IMU), and the pressure sensor. At one point, the navigation computer was also connected to a GPS antenna.

.. warning::

No documentation or PCB design files exist for the navigation computer carrier board and there are no more functioning spare boards. Additionally, only the newer GumStix Overo COM boards are available to purchase (with a lead time of roughly 1 year) which may not be compatible with the current system. Be very careful when working inside of the navigation tube.
Expand Down

0 comments on commit 4474cf7

Please sign in to comment.