aikido:master

Last commit made on 2023-03-10
Get this branch:
git clone -b master https://git.launchpad.net/aikido

Branch merges

Branch information

Name:
master
Repository:
lp:aikido

Recent commits

fb0cfa9... by Varun Bhatt <email address hidden>

Add control and control_ros dependencies to ros robot (#633)

faf690f... by Rajat Kumar Jenamani <email address hidden>

Controller Switching through RosRobot (#621)

* example interface

* add separate placeholder for new robot interface

* include required FCL dep

* set root robot

* test plan to config

* add collision checking

* first commit before templatizing subrobot registration

* minor updates

* minor updates and move TODOs to issues

* nit name change

* Remove RosPositionCommandExecutor and pr_control_msgs, will refactor with updated control_msgs

* Re-add pr_control_msgs as dep

* Add Executor base class, add empty header files for RosJointGoup Executors

* Add pass-through Position/Velocity/Effort Executors based on JointGroupCommandAction

* Ran make format

* Summarize changes in CHANGELOG

* Add cancel command to pass-thru executors

* Add KinematicSimulationPositionExecutor

* Added KinematicSimulationVelocityExecutor (builds, not tested)

* Add test for KinematicSimulationPositionExecutor

* Fixed linker errors, still doesn't quite pass PositionExecutor tests

* Working tests for KinematicSimulationPositionExecutor

* Add test for KinematicSimulationVelocityExecutor

* Allow execute to overwrite previous pos/vel commands, plus remove XCode test dep until fixed

* Make format

* Initial commit to add JacobianVelocityExecutor

* Update CHANGELOG

* Template ROS, Kinematic, and base executor classes for easier review

* Addressed comments and ran make format

* Updated control.hpp list to reflect templating.

* Remove extra reference to deleted classes, and install new deps for CI

* Split off ROS-specific functions of Robot into subclass, update interface to re-add basic planning functions, and get the whole thing to build

* No longer globally require urdf and srdfdom, only for robot_ros

* Explicitly add control as component dependency for robot since we use KinematicSimulationTrajectoryExecutor (and will use others in the future)

* Re-ran make format for clang-format-10

* Added RNG and trajectory post-processing management to Robot

* Added summary to CHANGELOG and added WorldPtr functionality

* Fixed formatting on docstring

* Flesh out step functionality to propogate to all subrobots

* Switch to configuration interface instead of state interface, plus add skeleton locking

* Add ability to specify postprocessor for each plan

* Forgot postprocessor in function def

* Make format

* Expose metaskeleton

* Enforce root robot MetaSkeleton to be true Skeleton, and subrobots are ReferentialSkeletons referencing the root Skeleton

* Move all implementations to cpp file

* Fixed segfault by early cast of goalState, plus limited statespace to controlled metaskeleton, plus have child robots handle their own collisionfree generation to ensure statespaces match

* Fixed segfaults plus tested both self and world collision checker

* Don't init subrobots with shared_ptr root, as this dobule-frees everything on destruction

* Make format

* Make loadSkeletonFromURDF externally accessible

* Get world from parent robot

* Addressed comments and add DoF resource manager

* Finished addressing comments by checking traj statespae vs provided Dofs

* Ran make format

* Added control::Executor test, and fixed up other executor tests

* Null check on TrajectoryExecutor in ConcreteRobot

* Re-added PlanToOffset with default vector field parameters

* Update DART version in README

* WIP: Updated Robot.hpp

* WIP: New executor swapping interface

* Removed merge conflict artifacts

* [WIP] JacobianExecutor builds

* Make format

* [WIP] Executor list compiles, now needs unit tests

* [WIP] Ran make format

* Added tests to new Robot executor interface

* Add const back to dofs getter

* Ran make format

* Add tests for JacobianExecutor

* Using RosJointModeCommandClient + RosJointModeCommandExecutor as joint mode switching action client

* Removed JointModeCommandExecutor and added executor utility overrides to ros::Robot

* VisualServoingExecutor now builds

* Added VisualServoingExecutor Tests

* Update CHANGELOG

* Make tighter default lambda

* Update CHANGELOG

* RosRobot sub robots are RosRobots

* Changed executor <-> controller switching order + added descriptions

* Switched dynamic casting with getter for mDoFs

* Setup ROS::NodeHandle in constructor

* Ran Make Format

* RosRobot CANNOT add default Robot executors, as this instantly breaks the invariant between controller and executor lists

* RosRobot needs to have shared control of the NodeHandle

* Spelling fix

* Add getter/setter for visual servoing properties

* Pass NodeHandle by reference, remove std move

* Make sure NodeHandle management is done with const pass by reference

* Changed logic for mode controller and ros service controller clients

* Switched executor id to string + removed override for activate executor by type

* Made activateExecutor(ExecutorType) visible in RosRobot

* Added load controller client + bug fixes

* Minor edits to remove untouched files

* [WIP]: add hardware_interface dependency

* Addressed PR Comments

* Changed dependencies

* Addressed PR Comments + Removed dependencies due to local build errors

* Added check for controller status before stopping + removed mNode member

* Addressed ownership of ros controller clients

* Ran make format

* Switch off PPA to official repo for DART

---------

Co-authored-by: Aditya Vamsikrishna Mandalika <email address hidden>
Co-authored-by: Aditya Vamsikrishna Mandalika <email address hidden>
Co-authored-by: Ethan Gordon <email address hidden>

d652fb8... by Ethan Gordon <email address hidden>

Remove Bionic and Switch to Repo DART (#631)

* example interface

* add separate placeholder for new robot interface

* include required FCL dep

* set root robot

* test plan to config

* add collision checking

* first commit before templatizing subrobot registration

* minor updates

* minor updates and move TODOs to issues

* nit name change

* Remove RosPositionCommandExecutor and pr_control_msgs, will refactor with updated control_msgs

* Re-add pr_control_msgs as dep

* Add Executor base class, add empty header files for RosJointGoup Executors

* Add pass-through Position/Velocity/Effort Executors based on JointGroupCommandAction

* Ran make format

* Summarize changes in CHANGELOG

* Add cancel command to pass-thru executors

* Add KinematicSimulationPositionExecutor

* Added KinematicSimulationVelocityExecutor (builds, not tested)

* Add test for KinematicSimulationPositionExecutor

* Fixed linker errors, still doesn't quite pass PositionExecutor tests

* Working tests for KinematicSimulationPositionExecutor

* Add test for KinematicSimulationVelocityExecutor

* Allow execute to overwrite previous pos/vel commands, plus remove XCode test dep until fixed

* Make format

* Initial commit to add JacobianVelocityExecutor

* Update CHANGELOG

* Template ROS, Kinematic, and base executor classes for easier review

* Addressed comments and ran make format

* Updated control.hpp list to reflect templating.

* Remove extra reference to deleted classes, and install new deps for CI

* Split off ROS-specific functions of Robot into subclass, update interface to re-add basic planning functions, and get the whole thing to build

* No longer globally require urdf and srdfdom, only for robot_ros

* Explicitly add control as component dependency for robot since we use KinematicSimulationTrajectoryExecutor (and will use others in the future)

* Re-ran make format for clang-format-10

* Added RNG and trajectory post-processing management to Robot

* Added summary to CHANGELOG and added WorldPtr functionality

* Fixed formatting on docstring

* Flesh out step functionality to propogate to all subrobots

* Switch to configuration interface instead of state interface, plus add skeleton locking

* Add ability to specify postprocessor for each plan

* Forgot postprocessor in function def

* Make format

* Expose metaskeleton

* Enforce root robot MetaSkeleton to be true Skeleton, and subrobots are ReferentialSkeletons referencing the root Skeleton

* Move all implementations to cpp file

* Fixed segfault by early cast of goalState, plus limited statespace to controlled metaskeleton, plus have child robots handle their own collisionfree generation to ensure statespaces match

* Fixed segfaults plus tested both self and world collision checker

* Don't init subrobots with shared_ptr root, as this dobule-frees everything on destruction

* Make format

* Make loadSkeletonFromURDF externally accessible

* Get world from parent robot

* Addressed comments and add DoF resource manager

* Finished addressing comments by checking traj statespae vs provided Dofs

* Ran make format

* Added control::Executor test, and fixed up other executor tests

* Null check on TrajectoryExecutor in ConcreteRobot

* Re-added PlanToOffset with default vector field parameters

* Update DART version in README

* WIP: Updated Robot.hpp

* WIP: New executor swapping interface

* Removed merge conflict artifacts

* [WIP] JacobianExecutor builds

* Make format

* [WIP] Executor list compiles, now needs unit tests

* [WIP] Ran make format

* Added tests to new Robot executor interface

* Add const back to dofs getter

* Ran make format

* Add tests for JacobianExecutor

* Using RosJointModeCommandClient + RosJointModeCommandExecutor as joint mode switching action client

* Removed JointModeCommandExecutor and added executor utility overrides to ros::Robot

* VisualServoingExecutor now builds

* Added VisualServoingExecutor Tests

* Update CHANGELOG

* Make tighter default lambda

* Update CHANGELOG

* RosRobot sub robots are RosRobots

* Changed executor <-> controller switching order + added descriptions

* Switched dynamic casting with getter for mDoFs

* Setup ROS::NodeHandle in constructor

* Ran Make Format

* RosRobot CANNOT add default Robot executors, as this instantly breaks the invariant between controller and executor lists

* RosRobot needs to have shared control of the NodeHandle

* Spelling fix

* Add getter/setter for visual servoing properties

* Pass NodeHandle by reference, remove std move

* Make sure NodeHandle management is done with const pass by reference

* Changed logic for mode controller and ros service controller clients

* Switched executor id to string + removed override for activate executor by type

* Made activateExecutor(ExecutorType) visible in RosRobot

* Added load controller client + bug fixes

* Minor edits to remove untouched files

* [WIP]: add hardware_interface dependency

* Addressed PR Comments

* Changed dependencies

* Addressed PR Comments + Removed dependencies due to local build errors

* Added check for controller status before stopping + removed mNode member

* Addressed ownership of ros controller clients

* Ran make format

* Switch off PPA to official repo for DART

* Add ikfast dep and remove bionic

* Add ikfast dep to cmake

* Consolidate deps within dartsim

* Add external dart deps explicitly

* Add odelcpsolver as dep in cmake build

---------

Co-authored-by: Aditya Vamsikrishna Mandalika <email address hidden>
Co-authored-by: Aditya Vamsikrishna Mandalika <email address hidden>
Co-authored-by: RKJenamani <email address hidden>

549bca6... by Ethan Gordon <email address hidden>

Extend Robot.cpp to allow setting/getting of Default VF Params (#630)

* Remove bug where Kunz hangs on empty trajectory

* Update CHANGELOG

* Increase timeout and add fuzzy zero to robot trajectory execution

* Shorten timeout again, that wasn't an issue

* Add VFParams getter/setter to Robot class

bd2e675... by Ethan Gordon <email address hidden>

Remove bug where Kunz hangs on empty trajectory (#629)

* Remove bug where Kunz hangs on empty trajectory

* Update CHANGELOG

* Increase timeout and add fuzzy zero to robot trajectory execution

* Shorten timeout again, that wasn't an issue

55ca618... by Ethan Gordon <email address hidden>

Add planToPoseOffset via VectorFieldPosePlanner (#628)

* Add planToTwist via VectorFieldPosePlanner

* Update CHANGELOG

* Tested PlanToTwist on JACO 2 and fixed bugs/tests

* Addressed comments, renamed to PlanToPoseOffset

* Increase test coverage, address final nit

bb5e7ce... by Heramb Nemlekar <email address hidden>

Icaros/r0jointignore (#623)

* ignore R0 joints

* ran make format

* added WeldJoint to comments and updated CHANGELOG

Co-authored-by: Ethan Gordon <email address hidden>

ce7dd79... by Ethan Gordon <email address hidden>

Update code maintainers (#627)

7012618... by Ethan Gordon <email address hidden>

Add ability to clear frame and trajectory markers from Rviz (#625)

* Add ability to clear frame and trajectory markers from InteractiveMarkerViewer

* update CHANGELOG

* Remove default arg

d5e4223... by Ethan Gordon <email address hidden>

Make sure self-collision chcks entire skeleton, not just subrobot (#624)