Skip to content

New 3 dof setup#108

Merged
HGardiner1 merged 7 commits into
umdloop:mainfrom
IshanDutta11:new-3DOF-setup
May 2, 2026
Merged

New 3 dof setup#108
HGardiner1 merged 7 commits into
umdloop:mainfrom
IshanDutta11:new-3DOF-setup

Conversation

@IshanDutta11
Copy link
Copy Markdown
Contributor

  • Adds parameter to determine whether to use 2DOF or 3DOF controllers
  • Adds parameter that lets you deactivate talon from launch file
  • Splits up all the controllers into arm/wrist/end effector, which will make future development easier when incorporating different kinds of wrists/end-effectors
  • Modified the controller switcher to handle proper changes of 2DOF and 3DOF. Prevents you from switching to 3DOF controllers when use_3dof is false. Also prevents controller switching to controllers that are only part of the arm (if you want to change from joint trajectory controller back to 2DOF joint by joint setup, you must input a 2DOF arm, wrist, and joint controller, if you only do one it fails)

IshanDutta11 and others added 7 commits April 27, 2026 23:38
* update to latest

* update rear ackermann controller

* Removed bad paramters

* remove todo nodes

* Flipped the turning

* swap the right and left speed

* working on rover

* updated athena_drive.launch.py

* updated zed launch

* maybe fix the zed issue

* updated drive urdf

* ackermann guarding

* teleop config testing

* Added steering limits

* Revert ZED-related changes from nav_testing_2324

Restores upstream/main versions of:
- sensors.launch.py (publish_odom/map defaults, gps_launch)
- zed.launch.py (publish_tf/publish_map_tf back to LaunchConfiguration)
- zed_macro_sim.urdf.xacro (color + rgb_sensor link/joint)
- athena_drive.urdf.xacro (unconditional zed include + original origin)
- nav_bringup.launch.py (remove zed_to_base_footprint static tf)

* added arm bringup files

* bring over arm can id update as well

---------

Co-authored-by: Adrian Cires <ciresadrian@hotmail.com>
Co-authored-by: UMDLoop Jetson Orin NX <umdloop@gmail.com>
… the individuality and interchangeability of each subsection. This commit has a separate joint by joint controller for arm (composed of base_yaw, shoulder_pitch, and elbow_pitch), 3 wrist controllers (joint by joint for 3dof, 2dof, and an orientation controller for 3DOF), and gripper claw. If we ever decide to add more joints to arm, use a different kind of wrist control scheme, or have a different kind of end effector entirely, the components as well as the code can now be swapped in and out for it.
…d, so it now functions with this arm setup (will require considerations of drive and always active controllers in yaml file). Also made a 2dof and 3dof trajectory controller config.
@HGardiner1 HGardiner1 merged commit da0426c into umdloop:main May 2, 2026
1 check passed
@IshanDutta11 IshanDutta11 deleted the new-3DOF-setup branch May 11, 2026 23:50
ethanhchoi pushed a commit to ethanhchoi/athena-code that referenced this pull request May 19, 2026
* configured for a 3dof controller, we can improve base design later

* extra fixes before actual testing

* Update with real life testing code (umdloop#78)

* update to latest

* update rear ackermann controller

* Removed bad paramters

* remove todo nodes

* Flipped the turning

* swap the right and left speed

* working on rover

* updated athena_drive.launch.py

* updated zed launch

* maybe fix the zed issue

* updated drive urdf

* ackermann guarding

* teleop config testing

* Added steering limits

* Revert ZED-related changes from nav_testing_2324

Restores upstream/main versions of:
- sensors.launch.py (publish_odom/map defaults, gps_launch)
- zed.launch.py (publish_tf/publish_map_tf back to LaunchConfiguration)
- zed_macro_sim.urdf.xacro (color + rgb_sensor link/joint)
- athena_drive.urdf.xacro (unconditional zed include + original origin)
- nav_bringup.launch.py (remove zed_to_base_footprint static tf)

* added arm bringup files

* bring over arm can id update as well

---------

Co-authored-by: Adrian Cires <ciresadrian@hotmail.com>
Co-authored-by: UMDLoop Jetson Orin NX <umdloop@gmail.com>

* working, but code wise it should not be prismatic, suitable for now

* allows the user to deactivate the talons and have a mock hardware replacement for just those joints

* Separates arm into 3 subsections, arm, wrist, and end effector due to the individuality and interchangeability of each subsection. This commit has a separate joint by joint controller for arm (composed of base_yaw, shoulder_pitch, and elbow_pitch), 3 wrist controllers (joint by joint for 3dof, 2dof, and an orientation controller for 3DOF), and gripper claw. If we ever decide to add more joints to arm, use a different kind of wrist control scheme, or have a different kind of end effector entirely, the components as well as the code can now be swapped in and out for it.

* Realized a lot of controller switcher functionality had to be modified, so it now functions with this arm setup (will require considerations of drive and always active controllers in yaml file). Also made a 2dof and 3dof trajectory controller config.

---------

Co-authored-by: Mohammad Durrani <46766905+mdurrani808@users.noreply.github.com>
Co-authored-by: Adrian Cires <ciresadrian@hotmail.com>
Co-authored-by: UMDLoop Jetson Orin NX <umdloop@gmail.com>
Co-authored-by: duttaishan01 <duttaishan01@FIGARO.myguest.virtualbox.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants