From b94c9fabd65d1450d481a8a79a51d0d51daa9048 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 17 Jan 2024 21:50:16 +0000 Subject: [PATCH] Deploy to GitHub pages --- AsibotConfiguration_8hpp_source.html | 224 ++ AsibotSolver_8hpp_source.html | 195 ++ BasicCartesianControl_8hpp_source.html | 263 +++ CartesianControlClient_8hpp_source.html | 192 ++ CartesianControlServer_8hpp_source.html | 239 +++ CentroidTransform_8hpp_source.html | 137 ++ ChainFkSolverPos__ST_8hpp_source.html | 134 ++ ChainIkSolverPos__ID_8hpp_source.html | 141 ++ ChainIkSolverPos__ST_8hpp_source.html | 143 ++ ConfigurationSelector_8hpp_source.html | 264 +++ FtCompensation_8hpp_source.html | 169 ++ GrabberResponder_8hpp_source.html | 131 ++ HaarDetectionController_8hpp_source.html | 136 ++ ICartesianControl_8h.html | 284 +++ ICartesianControl_8h_source.html | 271 +++ ICartesianSolver_8h.html | 108 + ICartesianSolver_8h_source.html | 165 ++ KdlSolver_8hpp_source.html | 192 ++ KdlTreeSolver_8hpp_source.html | 190 ++ KdlVectorConverter_8hpp_source.html | 119 ++ KeyboardController_8hpp_source.html | 185 ++ KinematicRepresentation_8hpp_source.html | 185 ++ LeapMotionSensorDevice_8hpp_source.html | 150 ++ LinearTrajectoryThread_8hpp_source.html | 132 ++ MatrixExponential_8hpp_source.html | 142 ++ ProductOfExponentials_8hpp_source.html | 159 ++ ScrewTheoryIkProblem_8hpp_source.html | 237 +++ ScrewTheoryIkSubproblems_8hpp_source.html | 279 +++ ScrewTheoryTools_8hpp_source.html | 131 ++ SpnavSensorDevice_8hpp_source.html | 142 ++ StreamingDeviceController_8hpp_source.html | 151 ++ StreamingDevice_8hpp_source.html | 215 ++ TrajGen_8hpp_source.html | 260 +++ TrajectoryThread_8hpp_source.html | 137 ++ WiimoteSensorDevice_8hpp_source.html | 146 ++ YarpTinyMath_8hpp_source.html | 126 ++ annotated.html | 153 ++ bc_s.png | Bin 0 -> 676 bytes bdwn.png | Bin 0 -> 147 bytes citelist.html | 88 + classOrderOneTraj-members.html | 98 + classOrderOneTraj.html | 145 ++ classOrderOneTraj.png | Bin 0 -> 434 bytes classOrderThreeTraj-members.html | 100 + classOrderThreeTraj.html | 452 +++++ classOrderThreeTraj.png | Bin 0 -> 439 bytes classTraj-members.html | 94 + classTraj.html | 133 ++ classTraj.png | Bin 0 -> 645 bytes classTrajectoryThread-members.html | 94 + classTrajectoryThread.html | 136 ++ classTrajectoryThread.png | Bin 0 -> 635 bytes classes.html | 132 ++ ...icslab_1_1AsibotConfiguration-members.html | 102 + classroboticslab_1_1AsibotConfiguration.html | 365 ++++ classroboticslab_1_1AsibotConfiguration.png | Bin 0 -> 1139 bytes ...1_1AsibotConfigurationFactory-members.html | 93 + ...ticslab_1_1AsibotConfigurationFactory.html | 204 ++ ...oticslab_1_1AsibotConfigurationFactory.png | Bin 0 -> 1298 bytes ...astOverallAngularDisplacement-members.html | 104 + ...rationLeastOverallAngularDisplacement.html | 254 +++ ...urationLeastOverallAngularDisplacement.png | Bin 0 -> 1137 bytes ...allAngularDisplacementFactory-members.html | 94 + ...eastOverallAngularDisplacementFactory.html | 204 ++ ...LeastOverallAngularDisplacementFactory.png | Bin 0 -> 1294 bytes classroboticslab_1_1AsibotSolver-members.html | 118 ++ classroboticslab_1_1AsibotSolver.html | 732 +++++++ classroboticslab_1_1AsibotSolver.png | Bin 0 -> 1099 bytes ...slab_1_1BasicCartesianControl-members.html | 160 ++ ...sroboticslab_1_1BasicCartesianControl.html | 1152 +++++++++++ classroboticslab_1_1BasicCartesianControl.png | Bin 0 -> 1533 bytes ...tesianControl_1_1StateWatcher-members.html | 92 + ...BasicCartesianControl_1_1StateWatcher.html | 109 + ...lab_1_1CartesianControlClient-members.html | 120 ++ ...roboticslab_1_1CartesianControlClient.html | 938 +++++++++ ...sroboticslab_1_1CartesianControlClient.png | Bin 0 -> 1166 bytes ...lab_1_1CartesianControlServer-members.html | 102 + ...roboticslab_1_1CartesianControlServer.html | 151 ++ ...sroboticslab_1_1CartesianControlServer.png | Bin 0 -> 1120 bytes ...oticslab_1_1CentroidTransform-members.html | 99 + classroboticslab_1_1CentroidTransform.html | 144 ++ ...cslab_1_1ChainFkSolverPos__ST-members.html | 98 + classroboticslab_1_1ChainFkSolverPos__ST.html | 353 ++++ classroboticslab_1_1ChainFkSolverPos__ST.png | Bin 0 -> 779 bytes ...cslab_1_1ChainIkSolverPos__ID-members.html | 102 + classroboticslab_1_1ChainIkSolverPos__ID.html | 327 +++ classroboticslab_1_1ChainIkSolverPos__ID.png | Bin 0 -> 740 bytes ...cslab_1_1ChainIkSolverPos__ST-members.html | 100 + classroboticslab_1_1ChainIkSolverPos__ST.html | 320 +++ classroboticslab_1_1ChainIkSolverPos__ST.png | Bin 0 -> 746 bytes ...slab_1_1ConfigurationSelector-members.html | 97 + ...sroboticslab_1_1ConfigurationSelector.html | 295 +++ classroboticslab_1_1ConfigurationSelector.png | Bin 0 -> 1770 bytes ...1ConfigurationSelectorFactory-members.html | 93 + ...cslab_1_1ConfigurationSelectorFactory.html | 205 ++ ...icslab_1_1ConfigurationSelectorFactory.png | Bin 0 -> 1804 bytes ...igurationSelectorHumanoidGait-members.html | 103 + ..._1_1ConfigurationSelectorHumanoidGait.html | 254 +++ ...b_1_1ConfigurationSelectorHumanoidGait.png | Bin 0 -> 1773 bytes ...onSelectorHumanoidGaitFactory-members.html | 94 + ...figurationSelectorHumanoidGaitFactory.html | 204 ++ ...nfigurationSelectorHumanoidGaitFactory.png | Bin 0 -> 1113 bytes ...astOverallAngularDisplacement-members.html | 101 + ...lectorLeastOverallAngularDisplacement.html | 250 +++ ...electorLeastOverallAngularDisplacement.png | Bin 0 -> 1775 bytes ...allAngularDisplacementFactory-members.html | 94 + ...eastOverallAngularDisplacementFactory.html | 204 ++ ...LeastOverallAngularDisplacementFactory.png | Bin 0 -> 1294 bytes ...tionSelector_1_1Configuration-members.html | 96 + ...onfigurationSelector_1_1Configuration.html | 135 ++ ...oticslab_1_1FkStreamResponder-members.html | 96 + classroboticslab_1_1FkStreamResponder.html | 132 ++ classroboticslab_1_1FkStreamResponder.png | Bin 0 -> 1029 bytes ...roboticslab_1_1FtCompensation-members.html | 123 ++ classroboticslab_1_1FtCompensation.html | 222 ++ classroboticslab_1_1FtCompensation.png | Bin 0 -> 977 bytes ...boticslab_1_1GrabberResponder-members.html | 95 + classroboticslab_1_1GrabberResponder.html | 129 ++ classroboticslab_1_1GrabberResponder.png | Bin 0 -> 1012 bytes ...ab_1_1HaarDetectionController-members.html | 101 + ...oboticslab_1_1HaarDetectionController.html | 147 ++ ...roboticslab_1_1HaarDetectionController.png | Bin 0 -> 716 bytes ...oticslab_1_1ICartesianControl-members.html | 108 + classroboticslab_1_1ICartesianControl.html | 904 +++++++++ classroboticslab_1_1ICartesianControl.png | Bin 0 -> 1027 bytes ...boticslab_1_1ICartesianSolver-members.html | 104 + classroboticslab_1_1ICartesianSolver.html | 760 +++++++ classroboticslab_1_1ICartesianSolver.png | Bin 0 -> 1248 bytes ...sroboticslab_1_1InvalidDevice-members.html | 106 + classroboticslab_1_1InvalidDevice.html | 258 +++ classroboticslab_1_1InvalidDevice.png | Bin 0 -> 1063 bytes classroboticslab_1_1KdlSolver-members.html | 115 ++ classroboticslab_1_1KdlSolver.html | 761 +++++++ classroboticslab_1_1KdlSolver.png | Bin 0 -> 1085 bytes ...sroboticslab_1_1KdlTreeSolver-members.html | 114 ++ classroboticslab_1_1KdlTreeSolver.html | 706 +++++++ classroboticslab_1_1KdlTreeSolver.png | Bin 0 -> 1109 bytes ...ticslab_1_1KeyboardController-members.html | 145 ++ classroboticslab_1_1KeyboardController.html | 263 +++ classroboticslab_1_1KeyboardController.png | Bin 0 -> 703 bytes ...lab_1_1LeapMotionSensorDevice-members.html | 118 ++ ...roboticslab_1_1LeapMotionSensorDevice.html | 395 ++++ ...sroboticslab_1_1LeapMotionSensorDevice.png | Bin 0 -> 1190 bytes ...lab_1_1LinearTrajectoryThread-members.html | 102 + ...roboticslab_1_1LinearTrajectoryThread.html | 154 ++ ...sroboticslab_1_1LinearTrajectoryThread.png | Bin 0 -> 771 bytes ...oticslab_1_1MatrixExponential-members.html | 101 + classroboticslab_1_1MatrixExponential.html | 365 ++++ ...sroboticslab_1_1PadenKahanOne-members.html | 100 + classroboticslab_1_1PadenKahanOne.html | 270 +++ classroboticslab_1_1PadenKahanOne.png | Bin 0 -> 815 bytes ...oboticslab_1_1PadenKahanThree-members.html | 101 + classroboticslab_1_1PadenKahanThree.html | 280 +++ classroboticslab_1_1PadenKahanThree.png | Bin 0 -> 823 bytes ...sroboticslab_1_1PadenKahanTwo-members.html | 106 + classroboticslab_1_1PadenKahanTwo.html | 309 +++ classroboticslab_1_1PadenKahanTwo.png | Bin 0 -> 810 bytes ...oboticslab_1_1PardosGotorFour-members.html | 103 + classroboticslab_1_1PardosGotorFour.html | 293 +++ classroboticslab_1_1PardosGotorFour.png | Bin 0 -> 816 bytes ...roboticslab_1_1PardosGotorOne-members.html | 99 + classroboticslab_1_1PardosGotorOne.html | 267 +++ classroboticslab_1_1PardosGotorOne.png | Bin 0 -> 815 bytes ...boticslab_1_1PardosGotorThree-members.html | 100 + classroboticslab_1_1PardosGotorThree.html | 277 +++ classroboticslab_1_1PardosGotorThree.png | Bin 0 -> 811 bytes ...roboticslab_1_1PardosGotorTwo-members.html | 103 + classroboticslab_1_1PardosGotorTwo.html | 293 +++ classroboticslab_1_1PardosGotorTwo.png | Bin 0 -> 807 bytes ...sroboticslab_1_1PoeExpression-members.html | 103 + classroboticslab_1_1PoeExpression.html | 541 +++++ classroboticslab_1_1RpcResponder-members.html | 107 + classroboticslab_1_1RpcResponder.html | 244 +++ classroboticslab_1_1RpcResponder.png | Bin 0 -> 1155 bytes ...slab_1_1RpcTransformResponder-members.html | 111 + ...sroboticslab_1_1RpcTransformResponder.html | 147 ++ classroboticslab_1_1RpcTransformResponder.png | Bin 0 -> 1147 bytes ...cslab_1_1ScrewTheoryIkProblem-members.html | 112 + classroboticslab_1_1ScrewTheoryIkProblem.html | 283 +++ ..._1ScrewTheoryIkProblemBuilder-members.html | 103 + ...icslab_1_1ScrewTheoryIkProblemBuilder.html | 215 ++ ...ab_1_1ScrewTheoryIkSubproblem-members.html | 95 + ...oboticslab_1_1ScrewTheoryIkSubproblem.html | 212 ++ ...roboticslab_1_1ScrewTheoryIkSubproblem.png | Bin 0 -> 2220 bytes ...oticslab_1_1SpnavSensorDevice-members.html | 112 + classroboticslab_1_1SpnavSensorDevice.html | 405 ++++ classroboticslab_1_1SpnavSensorDevice.png | Bin 0 -> 1127 bytes ...oboticslab_1_1StreamResponder-members.html | 95 + classroboticslab_1_1StreamResponder.html | 140 ++ classroboticslab_1_1StreamResponder.png | Bin 0 -> 1014 bytes ...oboticslab_1_1StreamingDevice-members.html | 105 + classroboticslab_1_1StreamingDevice.html | 453 +++++ classroboticslab_1_1StreamingDevice.png | Bin 0 -> 2342 bytes ..._1_1StreamingDeviceController-members.html | 109 + ...oticslab_1_1StreamingDeviceController.html | 175 ++ ...boticslab_1_1StreamingDeviceController.png | Bin 0 -> 1495 bytes ...lab_1_1StreamingDeviceFactory-members.html | 90 + ...roboticslab_1_1StreamingDeviceFactory.html | 149 ++ ...icslab_1_1WiimoteSensorDevice-members.html | 116 ++ classroboticslab_1_1WiimoteSensorDevice.html | 384 ++++ classroboticslab_1_1WiimoteSensorDevice.png | Bin 0 -> 1141 bytes ...t_1_1AsibotSolverTestFromFile-members.html | 94 + ...b_1_1test_1_1AsibotSolverTestFromFile.html | 130 ++ ...ab_1_1test_1_1AsibotSolverTestFromFile.png | Bin 0 -> 730 bytes ..._1_1BasicCartesianControlTest-members.html | 92 + ..._1_1test_1_1BasicCartesianControlTest.html | 120 ++ ...b_1_1test_1_1BasicCartesianControlTest.png | Bin 0 -> 733 bytes ...slab_1_1test_1_1KdlSolverTest-members.html | 93 + ...sroboticslab_1_1test_1_1KdlSolverTest.html | 127 ++ classroboticslab_1_1test_1_1KdlSolverTest.png | Bin 0 -> 668 bytes ...test_1_1KdlSolverTestFromFile-members.html | 92 + ...slab_1_1test_1_1KdlSolverTestFromFile.html | 120 ++ ...cslab_1_1test_1_1KdlSolverTestFromFile.png | Bin 0 -> 731 bytes ...test_1_1KinRepresentationTest-members.html | 91 + ...slab_1_1test_1_1KinRepresentationTest.html | 117 ++ ...cslab_1_1test_1_1KinRepresentationTest.png | Bin 0 -> 731 bytes ...ab_1_1test_1_1ScrewTheoryTest-members.html | 109 + ...oboticslab_1_1test_1_1ScrewTheoryTest.html | 181 ++ ...roboticslab_1_1test_1_1ScrewTheoryTest.png | Bin 0 -> 696 bytes closed.png | Bin 0 -> 132 bytes dir_1309cee196689adea45d11f37b8ed78d.html | 85 + dir_15768b185b6e8b816adf0c89b30bfe65.html | 85 + dir_17d4fdefd982442a79427fe9d98568ae.html | 85 + dir_1d6bf2fb1d016ec6b197455d198424da.html | 85 + dir_25c7435138c3ee6ac4c9babe8db7ecf9.html | 85 + dir_387a94d47062d4e808cee3de63065fcd.html | 85 + dir_487dfb5d6e3e441bbdba0aef32150596.html | 85 + dir_49e6bd22918cee17ddc14df5c827b459.html | 85 + dir_4e03118d576dd8e71b5dbe7081ce822d.html | 85 + dir_4f22d2c14b4bbce8870d40d37a8ebee2.html | 85 + dir_51393f38608496e2be890df69ecb13f1.html | 85 + dir_59425e443f801f1f2fd8bbe4959a3ccf.html | 85 + dir_75b15c0a6e736aa4482428563186dcc3.html | 85 + dir_7b0a5d1507c7f681cbfa1deb5990c6ea.html | 89 + dir_8976e5d03119516083eaca3ddca61311.html | 89 + dir_a52c22a8b79e169194d9c4bbc7c46367.html | 85 + dir_af0bcd1d9c8bf0be37b473fa7c916aed.html | 85 + dir_bbdaf73c7839257653cfce0d61f80663.html | 85 + dir_bc0718b08fb2015b8e59c47b2805f60c.html | 89 + dir_bfeb62c1259859bb2c79e7bf678570c2.html | 85 + dir_d050070cc3e4bbd91d897ff8856046e0.html | 85 + dir_d28a4824dc47e487b107a5db32ef43c4.html | 91 + dir_dfab584b716eccfc00a175735f16fb62.html | 85 + dir_e68e8157741866f444e17edd764ebbae.html | 85 + dir_f528a5afad561ac522bac3a41785be2e.html | 85 + dir_f98f57c538677273d6e3d52c55355c28.html | 98 + doc.png | Bin 0 -> 746 bytes doxygen.css | 1793 +++++++++++++++++ doxygen.svg | 26 + dynsections.js | 121 ++ files.html | 149 ++ folderclosed.png | Bin 0 -> 616 bytes folderopen.png | Bin 0 -> 597 bytes functions.html | 130 ++ functions_b.html | 87 + functions_c.html | 154 ++ functions_d.html | 100 + functions_e.html | 111 + functions_enum.html | 91 + functions_eval.html | 91 + functions_f.html | 105 + functions_func.html | 130 ++ functions_func_b.html | 84 + functions_func_c.html | 151 ++ functions_func_d.html | 100 + functions_func_e.html | 87 + functions_func_f.html | 102 + functions_func_g.html | 144 ++ functions_func_h.html | 86 + functions_func_i.html | 116 ++ functions_func_j.html | 84 + functions_func_l.html | 84 + functions_func_m.html | 119 ++ functions_func_p.html | 117 ++ functions_func_r.html | 109 + functions_func_s.html | 169 ++ functions_func_t.html | 103 + functions_func_u.html | 86 + functions_func_v.html | 84 + functions_func_w.html | 94 + functions_func_~.html | 105 + functions_g.html | 144 ++ functions_h.html | 86 + functions_i.html | 116 ++ functions_j.html | 96 + functions_l.html | 84 + functions_m.html | 125 ++ functions_o.html | 87 + functions_p.html | 117 ++ functions_r.html | 115 ++ functions_s.html | 180 ++ functions_t.html | 112 + functions_type.html | 98 + functions_u.html | 86 + functions_v.html | 87 + functions_vars.html | 118 ++ functions_w.html | 94 + functions_~.html | 105 + globals.html | 195 ++ globals_vars.html | 195 ++ group__AsibotSolver.html | 106 + group__BasicCartesianControl.html | 122 ++ group__CartesianControlClient.html | 97 + group__CartesianControlServer.html | 103 + group__KdlSolver.html | 103 + group__KdlTreeSolver.html | 94 + group__KdlVectorConverterLib.html | 84 + group__KinematicRepresentationLib.html | 84 + group__ScrewTheoryLib.html | 229 +++ group__TinyMath.html | 84 + group__TrajGen.html | 101 + group__YarpPlugins.html | 119 ++ group__cartesianControlExample.html | 86 + group__exampleYarpTinyMath.html | 97 + group__ftCompensation.html | 94 + group__haarDetectionController.html | 97 + group__keyboardController.html | 97 + group__kinematics-dynamics-applications.html | 84 + group__kinematics-dynamics-examples.html | 95 + group__kinematics-dynamics-libraries.html | 109 + group__kinematics-dynamics-programs.html | 103 + group__kinematics-dynamics-tests.html | 109 + group__screwTheoryTrajectoryExample.html | 91 + group__streamingDeviceController.html | 115 ++ hierarchy.html | 169 ++ index.html | 197 ++ jquery.js | 35 + ...ewTheoryLib_2LogComponent_8hpp_source.html | 93 + ...sibotSolver_2LogComponent_8hpp_source.html | 93 + ...sianControl_2LogComponent_8hpp_source.html | 93 + ...ntrolClient_2LogComponent_8hpp_source.html | 93 + ...ntrolServer_2LogComponent_8hpp_source.html | 93 + ..._2KdlSolver_2LogComponent_8hpp_source.html | 94 + ...lTreeSolver_2LogComponent_8hpp_source.html | 93 + md_doc_kinematics_dynamics_install.html | 128 ++ md_doc_teo_post_install.html | 123 ++ menu.js | 51 + menudata.js | 93 + modules.html | 109 + namespacemembers.html | 157 ++ namespacemembers_enum.html | 88 + namespacemembers_func.html | 148 ++ namespaceroboticslab.html | 478 +++++ ...paceroboticslab_1_1KdlVectorConverter.html | 263 +++ ...spaceroboticslab_1_1KinRepresentation.html | 863 ++++++++ namespaceroboticslab_1_1test.html | 323 +++ namespaces.html | 153 ++ nav_f.png | Bin 0 -> 153 bytes nav_g.png | Bin 0 -> 95 bytes nav_h.png | Bin 0 -> 98 bytes open.png | Bin 0 -> 123 bytes pages.html | 88 + ...nController_2LogComponent_8hpp_source.html | 93 + ...dController_2LogComponent_8hpp_source.html | 93 + ...eController_2LogComponent_8hpp_source.html | 93 + search/all_0.html | 37 + search/all_0.js | 22 + search/all_1.html | 37 + search/all_1.js | 8 + search/all_10.html | 37 + search/all_10.js | 21 + search/all_11.html | 37 + search/all_11.js | 35 + search/all_12.html | 37 + search/all_12.js | 18 + search/all_13.html | 37 + search/all_13.js | 4 + search/all_14.html | 37 + search/all_14.js | 47 + search/all_15.html | 37 + search/all_15.js | 7 + search/all_16.html | 37 + search/all_16.js | 4 + search/all_17.html | 37 + search/all_17.js | 4 + search/all_18.html | 37 + search/all_18.js | 11 + search/all_2.html | 37 + search/all_2.js | 32 + search/all_3.html | 37 + search/all_3.js | 11 + search/all_4.html | 37 + search/all_4.js | 21 + search/all_5.html | 37 + search/all_5.js | 12 + search/all_6.html | 37 + search/all_6.js | 20 + search/all_7.html | 37 + search/all_7.js | 6 + search/all_8.html | 37 + search/all_8.js | 15 + search/all_9.html | 37 + search/all_9.js | 8 + search/all_a.html | 37 + search/all_a.js | 18 + search/all_b.html | 37 + search/all_b.js | 5 + search/all_c.html | 37 + search/all_c.js | 15 + search/all_d.html | 37 + search/all_d.js | 5 + search/all_e.html | 37 + search/all_e.js | 8 + search/all_f.html | 37 + search/all_f.js | 17 + search/classes_0.html | 37 + search/classes_0.js | 10 + search/classes_1.html | 37 + search/classes_1.js | 5 + search/classes_2.html | 37 + search/classes_2.js | 17 + search/classes_3.html | 37 + search/classes_3.js | 5 + search/classes_4.html | 37 + search/classes_4.js | 4 + search/classes_5.html | 37 + search/classes_5.js | 4 + search/classes_6.html | 37 + search/classes_6.js | 6 + search/classes_7.html | 37 + search/classes_7.js | 9 + search/classes_8.html | 37 + search/classes_8.js | 5 + search/classes_9.html | 37 + search/classes_9.js | 4 + search/classes_a.html | 37 + search/classes_a.js | 5 + search/classes_b.html | 37 + search/classes_b.js | 13 + search/classes_c.html | 37 + search/classes_c.js | 5 + search/classes_d.html | 37 + search/classes_d.js | 13 + search/classes_e.html | 37 + search/classes_e.js | 5 + search/classes_f.html | 37 + search/classes_f.js | 4 + search/close.svg | 31 + search/enums_0.html | 37 + search/enums_0.js | 4 + search/enums_1.html | 37 + search/enums_1.js | 4 + search/enums_2.html | 37 + search/enums_2.js | 4 + search/enums_3.html | 37 + search/enums_3.js | 4 + search/enums_4.html | 37 + search/enums_4.js | 5 + search/enums_5.html | 37 + search/enums_5.js | 4 + search/enumvalues_0.html | 37 + search/enumvalues_0.js | 5 + search/enumvalues_1.html | 37 + search/enumvalues_1.js | 4 + search/enumvalues_2.html | 37 + search/enumvalues_2.js | 5 + search/enumvalues_3.html | 37 + search/enumvalues_3.js | 4 + search/enumvalues_4.html | 37 + search/enumvalues_4.js | 5 + search/enumvalues_5.html | 37 + search/enumvalues_5.js | 4 + search/enumvalues_6.html | 37 + search/enumvalues_6.js | 4 + search/enumvalues_7.html | 37 + search/enumvalues_7.js | 6 + search/enumvalues_8.html | 37 + search/enumvalues_8.js | 4 + search/enumvalues_9.html | 37 + search/enumvalues_9.js | 5 + search/files_0.html | 37 + search/files_0.js | 5 + search/functions_0.html | 37 + search/functions_0.js | 16 + search/functions_1.html | 37 + search/functions_1.js | 4 + search/functions_10.html | 37 + search/functions_10.js | 11 + search/functions_11.html | 37 + search/functions_11.js | 4 + search/functions_12.html | 37 + search/functions_12.js | 8 + search/functions_13.html | 37 + search/functions_13.js | 7 + search/functions_14.html | 37 + search/functions_14.js | 4 + search/functions_15.html | 37 + search/functions_15.js | 11 + search/functions_2.html | 37 + search/functions_2.js | 22 + search/functions_3.html | 37 + search/functions_3.js | 10 + search/functions_4.html | 37 + search/functions_4.js | 10 + search/functions_5.html | 37 + search/functions_5.js | 8 + search/functions_6.html | 37 + search/functions_6.js | 19 + search/functions_7.html | 37 + search/functions_7.js | 4 + search/functions_8.html | 37 + search/functions_8.js | 11 + search/functions_9.html | 37 + search/functions_9.js | 4 + search/functions_a.html | 37 + search/functions_a.js | 4 + search/functions_b.html | 37 + search/functions_b.js | 13 + search/functions_c.html | 37 + search/functions_c.js | 4 + search/functions_d.html | 37 + search/functions_d.js | 15 + search/functions_e.html | 37 + search/functions_e.js | 11 + search/functions_f.html | 37 + search/functions_f.js | 21 + search/groups_0.html | 37 + search/groups_0.js | 4 + search/groups_1.html | 37 + search/groups_1.js | 4 + search/groups_2.html | 37 + search/groups_2.js | 6 + search/groups_3.html | 37 + search/groups_3.js | 4 + search/groups_4.html | 37 + search/groups_4.js | 4 + search/groups_5.html | 37 + search/groups_5.js | 4 + search/groups_6.html | 37 + search/groups_6.js | 13 + search/groups_7.html | 37 + search/groups_7.js | 6 + search/groups_8.html | 37 + search/groups_8.js | 5 + search/groups_9.html | 37 + search/groups_9.js | 4 + search/mag_sel.svg | 74 + search/namespaces_0.html | 37 + search/namespaces_0.js | 7 + search/nomatches.html | 13 + search/pages_0.html | 37 + search/pages_0.js | 4 + search/pages_1.html | 37 + search/pages_1.js | 4 + search/pages_2.html | 37 + search/pages_2.js | 4 + search/search.css | 257 +++ search/search.js | 816 ++++++++ search/search_l.png | Bin 0 -> 567 bytes search/search_m.png | Bin 0 -> 158 bytes search/search_r.png | Bin 0 -> 553 bytes search/searchdata.js | 45 + search/typedefs_0.html | 37 + search/typedefs_0.js | 7 + search/typedefs_1.html | 37 + search/typedefs_1.js | 5 + search/variables_0.html | 37 + search/variables_0.js | 4 + search/variables_1.html | 37 + search/variables_1.js | 10 + search/variables_2.html | 37 + search/variables_2.js | 4 + search/variables_3.html | 37 + search/variables_3.js | 4 + search/variables_4.html | 37 + search/variables_4.js | 4 + search/variables_5.html | 37 + search/variables_5.js | 4 + search/variables_6.html | 37 + search/variables_6.js | 42 + splitbar.png | Bin 0 -> 314 bytes ..._1AsibotConfiguration_1_1Pose-members.html | 107 + ...icslab_1_1AsibotConfiguration_1_1Pose.html | 163 ++ ...sibotSolver_1_1AsibotTcpFrame-members.html | 90 + ...lab_1_1AsibotSolver_1_1AsibotTcpFrame.html | 101 + ...ryIkProblemBuilder_1_1PoeTerm-members.html | 91 + ...crewTheoryIkProblemBuilder_1_1PoeTerm.html | 106 + ...oryTest_1_1compare__solutions-members.html | 89 + ...ScrewTheoryTest_1_1compare__solutions.html | 98 + sync_off.png | Bin 0 -> 853 bytes sync_on.png | Bin 0 -> 845 bytes tab_a.png | Bin 0 -> 142 bytes tab_b.png | Bin 0 -> 169 bytes tab_h.png | Bin 0 -> 177 bytes tab_s.png | Bin 0 -> 184 bytes tabs.css | 1 + 586 files changed, 55586 insertions(+) create mode 100644 AsibotConfiguration_8hpp_source.html create mode 100644 AsibotSolver_8hpp_source.html create mode 100644 BasicCartesianControl_8hpp_source.html create mode 100644 CartesianControlClient_8hpp_source.html create mode 100644 CartesianControlServer_8hpp_source.html create mode 100644 CentroidTransform_8hpp_source.html create mode 100644 ChainFkSolverPos__ST_8hpp_source.html create mode 100644 ChainIkSolverPos__ID_8hpp_source.html create mode 100644 ChainIkSolverPos__ST_8hpp_source.html create mode 100644 ConfigurationSelector_8hpp_source.html create mode 100644 FtCompensation_8hpp_source.html create mode 100644 GrabberResponder_8hpp_source.html create mode 100644 HaarDetectionController_8hpp_source.html create mode 100644 ICartesianControl_8h.html create mode 100644 ICartesianControl_8h_source.html create mode 100644 ICartesianSolver_8h.html create mode 100644 ICartesianSolver_8h_source.html create mode 100644 KdlSolver_8hpp_source.html create mode 100644 KdlTreeSolver_8hpp_source.html create mode 100644 KdlVectorConverter_8hpp_source.html create mode 100644 KeyboardController_8hpp_source.html create mode 100644 KinematicRepresentation_8hpp_source.html create mode 100644 LeapMotionSensorDevice_8hpp_source.html create mode 100644 LinearTrajectoryThread_8hpp_source.html create mode 100644 MatrixExponential_8hpp_source.html create mode 100644 ProductOfExponentials_8hpp_source.html create mode 100644 ScrewTheoryIkProblem_8hpp_source.html create mode 100644 ScrewTheoryIkSubproblems_8hpp_source.html create mode 100644 ScrewTheoryTools_8hpp_source.html create mode 100644 SpnavSensorDevice_8hpp_source.html create mode 100644 StreamingDeviceController_8hpp_source.html create mode 100644 StreamingDevice_8hpp_source.html create mode 100644 TrajGen_8hpp_source.html create mode 100644 TrajectoryThread_8hpp_source.html create mode 100644 WiimoteSensorDevice_8hpp_source.html create mode 100644 YarpTinyMath_8hpp_source.html create mode 100644 annotated.html create mode 100644 bc_s.png create mode 100644 bdwn.png create mode 100644 citelist.html create mode 100644 classOrderOneTraj-members.html create mode 100644 classOrderOneTraj.html create mode 100644 classOrderOneTraj.png create mode 100644 classOrderThreeTraj-members.html create mode 100644 classOrderThreeTraj.html create mode 100644 classOrderThreeTraj.png create mode 100644 classTraj-members.html create mode 100644 classTraj.html create mode 100644 classTraj.png create mode 100644 classTrajectoryThread-members.html create mode 100644 classTrajectoryThread.html create mode 100644 classTrajectoryThread.png create mode 100644 classes.html create mode 100644 classroboticslab_1_1AsibotConfiguration-members.html create mode 100644 classroboticslab_1_1AsibotConfiguration.html create mode 100644 classroboticslab_1_1AsibotConfiguration.png create mode 100644 classroboticslab_1_1AsibotConfigurationFactory-members.html create mode 100644 classroboticslab_1_1AsibotConfigurationFactory.html create mode 100644 classroboticslab_1_1AsibotConfigurationFactory.png create mode 100644 classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement-members.html create mode 100644 classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.html create mode 100644 classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.png create mode 100644 classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory-members.html create mode 100644 classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.html create mode 100644 classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.png create mode 100644 classroboticslab_1_1AsibotSolver-members.html create mode 100644 classroboticslab_1_1AsibotSolver.html create mode 100644 classroboticslab_1_1AsibotSolver.png create mode 100644 classroboticslab_1_1BasicCartesianControl-members.html create mode 100644 classroboticslab_1_1BasicCartesianControl.html create mode 100644 classroboticslab_1_1BasicCartesianControl.png create mode 100644 classroboticslab_1_1BasicCartesianControl_1_1StateWatcher-members.html create mode 100644 classroboticslab_1_1BasicCartesianControl_1_1StateWatcher.html create mode 100644 classroboticslab_1_1CartesianControlClient-members.html create mode 100644 classroboticslab_1_1CartesianControlClient.html create mode 100644 classroboticslab_1_1CartesianControlClient.png create mode 100644 classroboticslab_1_1CartesianControlServer-members.html create mode 100644 classroboticslab_1_1CartesianControlServer.html create mode 100644 classroboticslab_1_1CartesianControlServer.png create mode 100644 classroboticslab_1_1CentroidTransform-members.html create mode 100644 classroboticslab_1_1CentroidTransform.html create mode 100644 classroboticslab_1_1ChainFkSolverPos__ST-members.html create mode 100644 classroboticslab_1_1ChainFkSolverPos__ST.html create mode 100644 classroboticslab_1_1ChainFkSolverPos__ST.png create mode 100644 classroboticslab_1_1ChainIkSolverPos__ID-members.html create mode 100644 classroboticslab_1_1ChainIkSolverPos__ID.html create mode 100644 classroboticslab_1_1ChainIkSolverPos__ID.png create mode 100644 classroboticslab_1_1ChainIkSolverPos__ST-members.html create mode 100644 classroboticslab_1_1ChainIkSolverPos__ST.html create mode 100644 classroboticslab_1_1ChainIkSolverPos__ST.png create mode 100644 classroboticslab_1_1ConfigurationSelector-members.html create mode 100644 classroboticslab_1_1ConfigurationSelector.html create mode 100644 classroboticslab_1_1ConfigurationSelector.png create mode 100644 classroboticslab_1_1ConfigurationSelectorFactory-members.html create mode 100644 classroboticslab_1_1ConfigurationSelectorFactory.html create mode 100644 classroboticslab_1_1ConfigurationSelectorFactory.png create mode 100644 classroboticslab_1_1ConfigurationSelectorHumanoidGait-members.html create mode 100644 classroboticslab_1_1ConfigurationSelectorHumanoidGait.html create mode 100644 classroboticslab_1_1ConfigurationSelectorHumanoidGait.png create mode 100644 classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory-members.html create mode 100644 classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.html create mode 100644 classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.png create mode 100644 classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement-members.html create mode 100644 classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.html create mode 100644 classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.png create mode 100644 classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory-members.html create mode 100644 classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.html create mode 100644 classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.png create mode 100644 classroboticslab_1_1ConfigurationSelector_1_1Configuration-members.html create mode 100644 classroboticslab_1_1ConfigurationSelector_1_1Configuration.html create mode 100644 classroboticslab_1_1FkStreamResponder-members.html create mode 100644 classroboticslab_1_1FkStreamResponder.html create mode 100644 classroboticslab_1_1FkStreamResponder.png create mode 100644 classroboticslab_1_1FtCompensation-members.html create mode 100644 classroboticslab_1_1FtCompensation.html create mode 100644 classroboticslab_1_1FtCompensation.png create mode 100644 classroboticslab_1_1GrabberResponder-members.html create mode 100644 classroboticslab_1_1GrabberResponder.html create mode 100644 classroboticslab_1_1GrabberResponder.png create mode 100644 classroboticslab_1_1HaarDetectionController-members.html create mode 100644 classroboticslab_1_1HaarDetectionController.html create mode 100644 classroboticslab_1_1HaarDetectionController.png create mode 100644 classroboticslab_1_1ICartesianControl-members.html create mode 100644 classroboticslab_1_1ICartesianControl.html create mode 100644 classroboticslab_1_1ICartesianControl.png create mode 100644 classroboticslab_1_1ICartesianSolver-members.html create mode 100644 classroboticslab_1_1ICartesianSolver.html create mode 100644 classroboticslab_1_1ICartesianSolver.png create mode 100644 classroboticslab_1_1InvalidDevice-members.html create mode 100644 classroboticslab_1_1InvalidDevice.html create mode 100644 classroboticslab_1_1InvalidDevice.png create mode 100644 classroboticslab_1_1KdlSolver-members.html create mode 100644 classroboticslab_1_1KdlSolver.html create mode 100644 classroboticslab_1_1KdlSolver.png create mode 100644 classroboticslab_1_1KdlTreeSolver-members.html create mode 100644 classroboticslab_1_1KdlTreeSolver.html create mode 100644 classroboticslab_1_1KdlTreeSolver.png create mode 100644 classroboticslab_1_1KeyboardController-members.html create mode 100644 classroboticslab_1_1KeyboardController.html create mode 100644 classroboticslab_1_1KeyboardController.png create mode 100644 classroboticslab_1_1LeapMotionSensorDevice-members.html create mode 100644 classroboticslab_1_1LeapMotionSensorDevice.html create mode 100644 classroboticslab_1_1LeapMotionSensorDevice.png create mode 100644 classroboticslab_1_1LinearTrajectoryThread-members.html create mode 100644 classroboticslab_1_1LinearTrajectoryThread.html create mode 100644 classroboticslab_1_1LinearTrajectoryThread.png create mode 100644 classroboticslab_1_1MatrixExponential-members.html create mode 100644 classroboticslab_1_1MatrixExponential.html create mode 100644 classroboticslab_1_1PadenKahanOne-members.html create mode 100644 classroboticslab_1_1PadenKahanOne.html create mode 100644 classroboticslab_1_1PadenKahanOne.png create mode 100644 classroboticslab_1_1PadenKahanThree-members.html create mode 100644 classroboticslab_1_1PadenKahanThree.html create mode 100644 classroboticslab_1_1PadenKahanThree.png create mode 100644 classroboticslab_1_1PadenKahanTwo-members.html create mode 100644 classroboticslab_1_1PadenKahanTwo.html create mode 100644 classroboticslab_1_1PadenKahanTwo.png create mode 100644 classroboticslab_1_1PardosGotorFour-members.html create mode 100644 classroboticslab_1_1PardosGotorFour.html create mode 100644 classroboticslab_1_1PardosGotorFour.png create mode 100644 classroboticslab_1_1PardosGotorOne-members.html create mode 100644 classroboticslab_1_1PardosGotorOne.html create mode 100644 classroboticslab_1_1PardosGotorOne.png create mode 100644 classroboticslab_1_1PardosGotorThree-members.html create mode 100644 classroboticslab_1_1PardosGotorThree.html create mode 100644 classroboticslab_1_1PardosGotorThree.png create mode 100644 classroboticslab_1_1PardosGotorTwo-members.html create mode 100644 classroboticslab_1_1PardosGotorTwo.html create mode 100644 classroboticslab_1_1PardosGotorTwo.png create mode 100644 classroboticslab_1_1PoeExpression-members.html create mode 100644 classroboticslab_1_1PoeExpression.html create mode 100644 classroboticslab_1_1RpcResponder-members.html create mode 100644 classroboticslab_1_1RpcResponder.html create mode 100644 classroboticslab_1_1RpcResponder.png create mode 100644 classroboticslab_1_1RpcTransformResponder-members.html create mode 100644 classroboticslab_1_1RpcTransformResponder.html create mode 100644 classroboticslab_1_1RpcTransformResponder.png create mode 100644 classroboticslab_1_1ScrewTheoryIkProblem-members.html create mode 100644 classroboticslab_1_1ScrewTheoryIkProblem.html create mode 100644 classroboticslab_1_1ScrewTheoryIkProblemBuilder-members.html create mode 100644 classroboticslab_1_1ScrewTheoryIkProblemBuilder.html create mode 100644 classroboticslab_1_1ScrewTheoryIkSubproblem-members.html create mode 100644 classroboticslab_1_1ScrewTheoryIkSubproblem.html create mode 100644 classroboticslab_1_1ScrewTheoryIkSubproblem.png create mode 100644 classroboticslab_1_1SpnavSensorDevice-members.html create mode 100644 classroboticslab_1_1SpnavSensorDevice.html create mode 100644 classroboticslab_1_1SpnavSensorDevice.png create mode 100644 classroboticslab_1_1StreamResponder-members.html create mode 100644 classroboticslab_1_1StreamResponder.html create mode 100644 classroboticslab_1_1StreamResponder.png create mode 100644 classroboticslab_1_1StreamingDevice-members.html create mode 100644 classroboticslab_1_1StreamingDevice.html create mode 100644 classroboticslab_1_1StreamingDevice.png create mode 100644 classroboticslab_1_1StreamingDeviceController-members.html create mode 100644 classroboticslab_1_1StreamingDeviceController.html create mode 100644 classroboticslab_1_1StreamingDeviceController.png create mode 100644 classroboticslab_1_1StreamingDeviceFactory-members.html create mode 100644 classroboticslab_1_1StreamingDeviceFactory.html create mode 100644 classroboticslab_1_1WiimoteSensorDevice-members.html create mode 100644 classroboticslab_1_1WiimoteSensorDevice.html create mode 100644 classroboticslab_1_1WiimoteSensorDevice.png create mode 100644 classroboticslab_1_1test_1_1AsibotSolverTestFromFile-members.html create mode 100644 classroboticslab_1_1test_1_1AsibotSolverTestFromFile.html create mode 100644 classroboticslab_1_1test_1_1AsibotSolverTestFromFile.png create mode 100644 classroboticslab_1_1test_1_1BasicCartesianControlTest-members.html create mode 100644 classroboticslab_1_1test_1_1BasicCartesianControlTest.html create mode 100644 classroboticslab_1_1test_1_1BasicCartesianControlTest.png create mode 100644 classroboticslab_1_1test_1_1KdlSolverTest-members.html create mode 100644 classroboticslab_1_1test_1_1KdlSolverTest.html create mode 100644 classroboticslab_1_1test_1_1KdlSolverTest.png create mode 100644 classroboticslab_1_1test_1_1KdlSolverTestFromFile-members.html create mode 100644 classroboticslab_1_1test_1_1KdlSolverTestFromFile.html create mode 100644 classroboticslab_1_1test_1_1KdlSolverTestFromFile.png create mode 100644 classroboticslab_1_1test_1_1KinRepresentationTest-members.html create mode 100644 classroboticslab_1_1test_1_1KinRepresentationTest.html create mode 100644 classroboticslab_1_1test_1_1KinRepresentationTest.png create mode 100644 classroboticslab_1_1test_1_1ScrewTheoryTest-members.html create mode 100644 classroboticslab_1_1test_1_1ScrewTheoryTest.html create mode 100644 classroboticslab_1_1test_1_1ScrewTheoryTest.png create mode 100644 closed.png create mode 100644 dir_1309cee196689adea45d11f37b8ed78d.html create mode 100644 dir_15768b185b6e8b816adf0c89b30bfe65.html create mode 100644 dir_17d4fdefd982442a79427fe9d98568ae.html create mode 100644 dir_1d6bf2fb1d016ec6b197455d198424da.html create mode 100644 dir_25c7435138c3ee6ac4c9babe8db7ecf9.html create mode 100644 dir_387a94d47062d4e808cee3de63065fcd.html create mode 100644 dir_487dfb5d6e3e441bbdba0aef32150596.html create mode 100644 dir_49e6bd22918cee17ddc14df5c827b459.html create mode 100644 dir_4e03118d576dd8e71b5dbe7081ce822d.html create mode 100644 dir_4f22d2c14b4bbce8870d40d37a8ebee2.html create mode 100644 dir_51393f38608496e2be890df69ecb13f1.html create mode 100644 dir_59425e443f801f1f2fd8bbe4959a3ccf.html create mode 100644 dir_75b15c0a6e736aa4482428563186dcc3.html create mode 100644 dir_7b0a5d1507c7f681cbfa1deb5990c6ea.html create mode 100644 dir_8976e5d03119516083eaca3ddca61311.html create mode 100644 dir_a52c22a8b79e169194d9c4bbc7c46367.html create mode 100644 dir_af0bcd1d9c8bf0be37b473fa7c916aed.html create mode 100644 dir_bbdaf73c7839257653cfce0d61f80663.html create mode 100644 dir_bc0718b08fb2015b8e59c47b2805f60c.html create mode 100644 dir_bfeb62c1259859bb2c79e7bf678570c2.html create mode 100644 dir_d050070cc3e4bbd91d897ff8856046e0.html create mode 100644 dir_d28a4824dc47e487b107a5db32ef43c4.html create mode 100644 dir_dfab584b716eccfc00a175735f16fb62.html create mode 100644 dir_e68e8157741866f444e17edd764ebbae.html create mode 100644 dir_f528a5afad561ac522bac3a41785be2e.html create mode 100644 dir_f98f57c538677273d6e3d52c55355c28.html create mode 100644 doc.png create mode 100644 doxygen.css create mode 100644 doxygen.svg create mode 100644 dynsections.js create mode 100644 files.html create mode 100644 folderclosed.png create mode 100644 folderopen.png create mode 100644 functions.html create mode 100644 functions_b.html create mode 100644 functions_c.html create mode 100644 functions_d.html create mode 100644 functions_e.html create mode 100644 functions_enum.html create mode 100644 functions_eval.html create mode 100644 functions_f.html create mode 100644 functions_func.html create mode 100644 functions_func_b.html create mode 100644 functions_func_c.html create mode 100644 functions_func_d.html create mode 100644 functions_func_e.html create mode 100644 functions_func_f.html create mode 100644 functions_func_g.html create mode 100644 functions_func_h.html create mode 100644 functions_func_i.html create mode 100644 functions_func_j.html create mode 100644 functions_func_l.html create mode 100644 functions_func_m.html create mode 100644 functions_func_p.html create mode 100644 functions_func_r.html create mode 100644 functions_func_s.html create mode 100644 functions_func_t.html create mode 100644 functions_func_u.html create mode 100644 functions_func_v.html create mode 100644 functions_func_w.html create mode 100644 functions_func_~.html create mode 100644 functions_g.html create mode 100644 functions_h.html create mode 100644 functions_i.html create mode 100644 functions_j.html create mode 100644 functions_l.html create mode 100644 functions_m.html create mode 100644 functions_o.html create mode 100644 functions_p.html create mode 100644 functions_r.html create mode 100644 functions_s.html create mode 100644 functions_t.html create mode 100644 functions_type.html create mode 100644 functions_u.html create mode 100644 functions_v.html create mode 100644 functions_vars.html create mode 100644 functions_w.html create mode 100644 functions_~.html create mode 100644 globals.html create mode 100644 globals_vars.html create mode 100644 group__AsibotSolver.html create mode 100644 group__BasicCartesianControl.html create mode 100644 group__CartesianControlClient.html create mode 100644 group__CartesianControlServer.html create mode 100644 group__KdlSolver.html create mode 100644 group__KdlTreeSolver.html create mode 100644 group__KdlVectorConverterLib.html create mode 100644 group__KinematicRepresentationLib.html create mode 100644 group__ScrewTheoryLib.html create mode 100644 group__TinyMath.html create mode 100644 group__TrajGen.html create mode 100644 group__YarpPlugins.html create mode 100644 group__cartesianControlExample.html create mode 100644 group__exampleYarpTinyMath.html create mode 100644 group__ftCompensation.html create mode 100644 group__haarDetectionController.html create mode 100644 group__keyboardController.html create mode 100644 group__kinematics-dynamics-applications.html create mode 100644 group__kinematics-dynamics-examples.html create mode 100644 group__kinematics-dynamics-libraries.html create mode 100644 group__kinematics-dynamics-programs.html create mode 100644 group__kinematics-dynamics-tests.html create mode 100644 group__screwTheoryTrajectoryExample.html create mode 100644 group__streamingDeviceController.html create mode 100644 hierarchy.html create mode 100644 index.html create mode 100644 jquery.js create mode 100644 libraries_2ScrewTheoryLib_2LogComponent_8hpp_source.html create mode 100644 libraries_2YarpPlugins_2AsibotSolver_2LogComponent_8hpp_source.html create mode 100644 libraries_2YarpPlugins_2BasicCartesianControl_2LogComponent_8hpp_source.html create mode 100644 libraries_2YarpPlugins_2CartesianControlClient_2LogComponent_8hpp_source.html create mode 100644 libraries_2YarpPlugins_2CartesianControlServer_2LogComponent_8hpp_source.html create mode 100644 libraries_2YarpPlugins_2KdlSolver_2LogComponent_8hpp_source.html create mode 100644 libraries_2YarpPlugins_2KdlTreeSolver_2LogComponent_8hpp_source.html create mode 100644 md_doc_kinematics_dynamics_install.html create mode 100644 md_doc_teo_post_install.html create mode 100644 menu.js create mode 100644 menudata.js create mode 100644 modules.html create mode 100644 namespacemembers.html create mode 100644 namespacemembers_enum.html create mode 100644 namespacemembers_func.html create mode 100644 namespaceroboticslab.html create mode 100644 namespaceroboticslab_1_1KdlVectorConverter.html create mode 100644 namespaceroboticslab_1_1KinRepresentation.html create mode 100644 namespaceroboticslab_1_1test.html create mode 100644 namespaces.html create mode 100644 nav_f.png create mode 100644 nav_g.png create mode 100644 nav_h.png create mode 100644 open.png create mode 100644 pages.html create mode 100644 programs_2haarDetectionController_2LogComponent_8hpp_source.html create mode 100644 programs_2keyboardController_2LogComponent_8hpp_source.html create mode 100644 programs_2streamingDeviceController_2LogComponent_8hpp_source.html create mode 100644 search/all_0.html create mode 100644 search/all_0.js create mode 100644 search/all_1.html create mode 100644 search/all_1.js create mode 100644 search/all_10.html create mode 100644 search/all_10.js create mode 100644 search/all_11.html create mode 100644 search/all_11.js create mode 100644 search/all_12.html create mode 100644 search/all_12.js create mode 100644 search/all_13.html create mode 100644 search/all_13.js create mode 100644 search/all_14.html create mode 100644 search/all_14.js create mode 100644 search/all_15.html create mode 100644 search/all_15.js create mode 100644 search/all_16.html create mode 100644 search/all_16.js create mode 100644 search/all_17.html create mode 100644 search/all_17.js create mode 100644 search/all_18.html create mode 100644 search/all_18.js create mode 100644 search/all_2.html create mode 100644 search/all_2.js create mode 100644 search/all_3.html create mode 100644 search/all_3.js create mode 100644 search/all_4.html create mode 100644 search/all_4.js create mode 100644 search/all_5.html create mode 100644 search/all_5.js create mode 100644 search/all_6.html create mode 100644 search/all_6.js create mode 100644 search/all_7.html create mode 100644 search/all_7.js create mode 100644 search/all_8.html create mode 100644 search/all_8.js create mode 100644 search/all_9.html create mode 100644 search/all_9.js create mode 100644 search/all_a.html create mode 100644 search/all_a.js create mode 100644 search/all_b.html create mode 100644 search/all_b.js create mode 100644 search/all_c.html create mode 100644 search/all_c.js create mode 100644 search/all_d.html create mode 100644 search/all_d.js create mode 100644 search/all_e.html create mode 100644 search/all_e.js create mode 100644 search/all_f.html create mode 100644 search/all_f.js create mode 100644 search/classes_0.html create mode 100644 search/classes_0.js create mode 100644 search/classes_1.html create mode 100644 search/classes_1.js create mode 100644 search/classes_2.html create mode 100644 search/classes_2.js create mode 100644 search/classes_3.html create mode 100644 search/classes_3.js create mode 100644 search/classes_4.html create mode 100644 search/classes_4.js create mode 100644 search/classes_5.html create mode 100644 search/classes_5.js create mode 100644 search/classes_6.html create mode 100644 search/classes_6.js create mode 100644 search/classes_7.html create mode 100644 search/classes_7.js create mode 100644 search/classes_8.html create mode 100644 search/classes_8.js create mode 100644 search/classes_9.html create mode 100644 search/classes_9.js create mode 100644 search/classes_a.html create mode 100644 search/classes_a.js create mode 100644 search/classes_b.html create mode 100644 search/classes_b.js create mode 100644 search/classes_c.html create mode 100644 search/classes_c.js create mode 100644 search/classes_d.html create mode 100644 search/classes_d.js create mode 100644 search/classes_e.html create mode 100644 search/classes_e.js create mode 100644 search/classes_f.html create mode 100644 search/classes_f.js create mode 100644 search/close.svg create mode 100644 search/enums_0.html create mode 100644 search/enums_0.js create mode 100644 search/enums_1.html create mode 100644 search/enums_1.js create mode 100644 search/enums_2.html create mode 100644 search/enums_2.js create mode 100644 search/enums_3.html create mode 100644 search/enums_3.js create mode 100644 search/enums_4.html create mode 100644 search/enums_4.js create mode 100644 search/enums_5.html create mode 100644 search/enums_5.js create mode 100644 search/enumvalues_0.html create mode 100644 search/enumvalues_0.js create mode 100644 search/enumvalues_1.html create mode 100644 search/enumvalues_1.js create mode 100644 search/enumvalues_2.html create mode 100644 search/enumvalues_2.js create mode 100644 search/enumvalues_3.html create mode 100644 search/enumvalues_3.js create mode 100644 search/enumvalues_4.html create mode 100644 search/enumvalues_4.js create mode 100644 search/enumvalues_5.html create mode 100644 search/enumvalues_5.js create mode 100644 search/enumvalues_6.html create mode 100644 search/enumvalues_6.js create mode 100644 search/enumvalues_7.html create mode 100644 search/enumvalues_7.js create mode 100644 search/enumvalues_8.html create mode 100644 search/enumvalues_8.js create mode 100644 search/enumvalues_9.html create mode 100644 search/enumvalues_9.js create mode 100644 search/files_0.html create mode 100644 search/files_0.js create mode 100644 search/functions_0.html create mode 100644 search/functions_0.js create mode 100644 search/functions_1.html create mode 100644 search/functions_1.js create mode 100644 search/functions_10.html create mode 100644 search/functions_10.js create mode 100644 search/functions_11.html create mode 100644 search/functions_11.js create mode 100644 search/functions_12.html create mode 100644 search/functions_12.js create mode 100644 search/functions_13.html create mode 100644 search/functions_13.js create mode 100644 search/functions_14.html create mode 100644 search/functions_14.js create mode 100644 search/functions_15.html create mode 100644 search/functions_15.js create mode 100644 search/functions_2.html create mode 100644 search/functions_2.js create mode 100644 search/functions_3.html create mode 100644 search/functions_3.js create mode 100644 search/functions_4.html create mode 100644 search/functions_4.js create mode 100644 search/functions_5.html create mode 100644 search/functions_5.js create mode 100644 search/functions_6.html create mode 100644 search/functions_6.js create mode 100644 search/functions_7.html create mode 100644 search/functions_7.js create mode 100644 search/functions_8.html create mode 100644 search/functions_8.js create mode 100644 search/functions_9.html create mode 100644 search/functions_9.js create mode 100644 search/functions_a.html create mode 100644 search/functions_a.js create mode 100644 search/functions_b.html create mode 100644 search/functions_b.js create mode 100644 search/functions_c.html create mode 100644 search/functions_c.js create mode 100644 search/functions_d.html create mode 100644 search/functions_d.js create mode 100644 search/functions_e.html create mode 100644 search/functions_e.js create mode 100644 search/functions_f.html create mode 100644 search/functions_f.js create mode 100644 search/groups_0.html create mode 100644 search/groups_0.js create mode 100644 search/groups_1.html create mode 100644 search/groups_1.js create mode 100644 search/groups_2.html create mode 100644 search/groups_2.js create mode 100644 search/groups_3.html create mode 100644 search/groups_3.js create mode 100644 search/groups_4.html create mode 100644 search/groups_4.js create mode 100644 search/groups_5.html create mode 100644 search/groups_5.js create mode 100644 search/groups_6.html create mode 100644 search/groups_6.js create mode 100644 search/groups_7.html create mode 100644 search/groups_7.js create mode 100644 search/groups_8.html create mode 100644 search/groups_8.js create mode 100644 search/groups_9.html create mode 100644 search/groups_9.js create mode 100644 search/mag_sel.svg create mode 100644 search/namespaces_0.html create mode 100644 search/namespaces_0.js create mode 100644 search/nomatches.html create mode 100644 search/pages_0.html create mode 100644 search/pages_0.js create mode 100644 search/pages_1.html create mode 100644 search/pages_1.js create mode 100644 search/pages_2.html create mode 100644 search/pages_2.js create mode 100644 search/search.css create mode 100644 search/search.js create mode 100644 search/search_l.png create mode 100644 search/search_m.png create mode 100644 search/search_r.png create mode 100644 search/searchdata.js create mode 100644 search/typedefs_0.html create mode 100644 search/typedefs_0.js create mode 100644 search/typedefs_1.html create mode 100644 search/typedefs_1.js create mode 100644 search/variables_0.html create mode 100644 search/variables_0.js create mode 100644 search/variables_1.html create mode 100644 search/variables_1.js create mode 100644 search/variables_2.html create mode 100644 search/variables_2.js create mode 100644 search/variables_3.html create mode 100644 search/variables_3.js create mode 100644 search/variables_4.html create mode 100644 search/variables_4.js create mode 100644 search/variables_5.html create mode 100644 search/variables_5.js create mode 100644 search/variables_6.html create mode 100644 search/variables_6.js create mode 100644 splitbar.png create mode 100644 structroboticslab_1_1AsibotConfiguration_1_1Pose-members.html create mode 100644 structroboticslab_1_1AsibotConfiguration_1_1Pose.html create mode 100644 structroboticslab_1_1AsibotSolver_1_1AsibotTcpFrame-members.html create mode 100644 structroboticslab_1_1AsibotSolver_1_1AsibotTcpFrame.html create mode 100644 structroboticslab_1_1ScrewTheoryIkProblemBuilder_1_1PoeTerm-members.html create mode 100644 structroboticslab_1_1ScrewTheoryIkProblemBuilder_1_1PoeTerm.html create mode 100644 structroboticslab_1_1test_1_1ScrewTheoryTest_1_1compare__solutions-members.html create mode 100644 structroboticslab_1_1test_1_1ScrewTheoryTest_1_1compare__solutions.html create mode 100644 sync_off.png create mode 100644 sync_on.png create mode 100644 tab_a.png create mode 100644 tab_b.png create mode 100644 tab_h.png create mode 100644 tab_s.png create mode 100644 tabs.css diff --git a/AsibotConfiguration_8hpp_source.html b/AsibotConfiguration_8hpp_source.html new file mode 100644 index 000000000..5f44fd82a --- /dev/null +++ b/AsibotConfiguration_8hpp_source.html @@ -0,0 +1,224 @@ + + +
+ + + + +
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
Contains roboticslab::ICartesianControl and related vocabs. +More...
+ +Go to the source code of this file.
++Classes | |
class | roboticslab::ICartesianControl |
Abstract base class for a cartesian controller. More... | |
+Namespaces | |
roboticslab | |
The main, catch-all namespace for Robotics Lab UC3M. | |
+Variables | |
General-purpose vocabs | |
Used in acknowledge responses, configuration accessors, etc.. + | |
+constexpr int | VOCAB_CC_OK = yarp::os::createVocab32('o','k') |
Success. | |
+constexpr int | VOCAB_CC_FAILED = yarp::os::createVocab32('f','a','i','l') |
Failure. | |
+constexpr int | VOCAB_CC_SET = yarp::os::createVocab32('s','e','t') |
Setter. | |
+constexpr int | VOCAB_CC_GET = yarp::os::createVocab32('g','e','t') |
Getter. | |
+constexpr int | VOCAB_CC_NOT_SET = yarp::os::createVocab32('n','s','e','t') |
State: not set. | |
RPC vocabs | |
Used by RPC commands in roboticslab::ICartesianControl. + | |
+constexpr int | VOCAB_CC_STAT = yarp::os::createVocab32('s','t','a','t') |
Current state and position. | |
+constexpr int | VOCAB_CC_INV = yarp::os::createVocab32('i','n','v') |
Inverse kinematics. | |
+constexpr int | VOCAB_CC_MOVJ = yarp::os::createVocab32('m','o','v','j') |
Move in joint space, absolute coordinates. | |
+constexpr int | VOCAB_CC_RELJ = yarp::os::createVocab32('r','e','l','j') |
Move in joint space, relative coordinates. | |
+constexpr int | VOCAB_CC_MOVL = yarp::os::createVocab32('m','o','v','l') |
Linear move to target position. | |
+constexpr int | VOCAB_CC_MOVV = yarp::os::createVocab32('m','o','v','v') |
Linear move with given velocity. | |
+constexpr int | VOCAB_CC_GCMP = yarp::os::createVocab32('g','c','m','p') |
Gravity compensation. | |
+constexpr int | VOCAB_CC_FORC = yarp::os::createVocab32('f','o','r','c') |
Force control. | |
+constexpr int | VOCAB_CC_STOP = yarp::os::createVocab32('s','t','o','p') |
Stop control. | |
+constexpr int | VOCAB_CC_WAIT = yarp::os::createVocab32('w','a','i','t') |
Wait motion done. | |
+constexpr int | VOCAB_CC_TOOL = yarp::os::createVocab32('t','o','o','l') |
Change tool. | |
+constexpr int | VOCAB_CC_ACT = yarp::os::createVocab32('a','c','t') |
Actuate tool. | |
Streaming vocabs | |
Used by streaming commands in roboticslab::ICartesianControl. + | |
+constexpr int | VOCAB_CC_MOVI = yarp::os::createVocab32('m','o','v','i') |
Achieve pose (position control) | |
+constexpr int | VOCAB_CC_TWIST = yarp::os::createVocab32('t','w','s','t') |
Instantaneous velocity steps. | |
+constexpr int | VOCAB_CC_WRENCH = yarp::os::createVocab32('w','r','n','c') |
Exert force. | |
Control state vocabs | |
Used by roboticslab::ICartesianControl::stat to reflect current control state. + | |
+constexpr int | VOCAB_CC_NOT_CONTROLLING = yarp::os::createVocab32('c','c','n','c') |
Not controlling. | |
+constexpr int | VOCAB_CC_MOVJ_CONTROLLING = yarp::os::createVocab32('c','c','j','c') |
Controlling MOVJ commands. | |
+constexpr int | VOCAB_CC_MOVL_CONTROLLING = yarp::os::createVocab32('c','c','l','c') |
Controlling MOVL commands. | |
+constexpr int | VOCAB_CC_MOVV_CONTROLLING = yarp::os::createVocab32('c','c','v','c') |
Controlling MOVV commands. | |
+constexpr int | VOCAB_CC_GCMP_CONTROLLING = yarp::os::createVocab32('c','c','g','c') |
Controlling GCMP commands. | |
+constexpr int | VOCAB_CC_FORC_CONTROLLING = yarp::os::createVocab32('c','c','f','c') |
Controlling FORC commands. | |
Actuator control vocabs | |
+ Used by roboticslab::ICartesianControl::act to control the actuator. + | |
+constexpr int | VOCAB_CC_ACTUATOR_NONE = yarp::os::createVocab32('a','c','n') |
No actuator or no action. | |
+constexpr int | VOCAB_CC_ACTUATOR_CLOSE_GRIPPER = yarp::os::createVocab32('a','c','c','g') |
Close gripper. | |
+constexpr int | VOCAB_CC_ACTUATOR_OPEN_GRIPPER = yarp::os::createVocab32('a','c','o','g') |
Open gripper. | |
+constexpr int | VOCAB_CC_ACTUATOR_STOP_GRIPPER = yarp::os::createVocab32('a','c','s','g') |
Stop gripper. | |
+constexpr int | VOCAB_CC_ACTUATOR_GENERIC = yarp::os::createVocab32('a','c','g') |
Generic actuator. | |
Controller configuration vocabs | |
Used by configuration accessors. + | |
+constexpr int | VOCAB_CC_CONFIG_PARAMS = yarp::os::createVocab32('p','r','m','s') |
Parameter group. | |
+constexpr int | VOCAB_CC_CONFIG_GAIN = yarp::os::createVocab32('c','p','c','g') |
Controller gain. | |
+constexpr int | VOCAB_CC_CONFIG_TRAJ_DURATION = yarp::os::createVocab32('c','p','t','d') |
Trajectory duration. | |
+constexpr int | VOCAB_CC_CONFIG_CMC_PERIOD = yarp::os::createVocab32('c','p','c','p') |
CMC period [ms]. | |
+constexpr int | VOCAB_CC_CONFIG_WAIT_PERIOD = yarp::os::createVocab32('c','p','w','p') |
Check period of 'wait' command [ms]. | |
+constexpr int | VOCAB_CC_CONFIG_FRAME = yarp::os::createVocab32('c','p','f') |
Reference frame. | |
+constexpr int | VOCAB_CC_CONFIG_STREAMING_CMD = yarp::os::createVocab32('c','p','s','c') |
Preset streaming command. | |
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
Contains roboticslab::ICartesianSolver. +More...
+#include <vector>
#include <yarp/os/Vocab.h>
Go to the source code of this file.
++Classes | |
class | roboticslab::ICartesianSolver |
Abstract base class for a cartesian solver. More... | |
+Namespaces | |
roboticslab | |
The main, catch-all namespace for Robotics Lab UC3M. | |
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
▼Nroboticslab | The main, catch-all namespace for Robotics Lab UC3M |
▼Ntest | Contains classes related to unit testing |
CAsibotSolverTestFromFile | Tests AsibotSolver ikin from loaded configuration file |
CBasicCartesianControlTest | Tests BasicCartesianControl ikin and idyn on a simple mechanism |
CKdlSolverTest | Tests KdlSolver ikin and idyn on a simple mechanism |
CKdlSolverTestFromFile | Tests KdlSolver ikin and idyn on a simple mechanism |
CKinRepresentationTest | Tests KinRepresentation |
▼CScrewTheoryTest | Tests classes related to Screw Theory |
Ccompare_solutions | |
▼CConfigurationSelector | Abstract base class for a robot configuration strategy selector |
CConfiguration | Helper class to store a specific robot configuration |
CConfigurationSelectorLeastOverallAngularDisplacement | IK solver configuration strategy selector based on the overall displacement of all joints |
CConfigurationSelectorHumanoidGait | IK solver configuration strategy selector based on human walking |
CConfigurationSelectorFactory | Base factory class for ConfigurationSelector |
CConfigurationSelectorLeastOverallAngularDisplacementFactory | Implementation factory class for ConfigurationSelectorLeastOverallAngularDisplacement |
CConfigurationSelectorHumanoidGaitFactory | Implementation factory class for ConfigurationSelectorHumanoidGait |
CMatrixExponential | Abstraction of a term in a product of exponentials (POE) formula |
CPoeExpression | Abstraction of a product of exponentials (POE) formula |
CScrewTheoryIkSubproblem | Interface shared by all IK subproblems found in Screw Theory applied to Robotics |
CScrewTheoryIkProblem | Proxy IK problem solver class that iterates over a sequence of subproblems |
▼CScrewTheoryIkProblemBuilder | Automated IK solution finder |
CPoeTerm | Helper structure that holds the state of a POE term |
CPadenKahanOne | First Paden-Kahan subproblem |
CPadenKahanTwo | Second Paden-Kahan subproblem |
CPadenKahanThree | Third Paden-Kahan subproblem |
CPardosGotorOne | First Pardos-Gotor subproblem |
CPardosGotorTwo | Second Pardos-Gotor subproblem |
CPardosGotorThree | Third Pardos-Gotor subproblem |
CPardosGotorFour | Fourth Pardos-Gotor subproblem |
▼CAsibotConfiguration | Abstract base class for a robot configuration strategy selector |
CPose | Helper class to store a specific robot configuration |
CAsibotConfigurationLeastOverallAngularDisplacement | IK solver configuration strategy selector based on the overall angle displacement of all joints |
CAsibotConfigurationFactory | Base factory class for AsibotConfiguration |
CAsibotConfigurationLeastOverallAngularDisplacementFactory | Implementation factory class for AsibotConfigurationLeastOverallAngularDisplacement |
▼CAsibotSolver | The AsibotSolver implements ICartesianSolver |
CAsibotTcpFrame | |
▼CBasicCartesianControl | Implements ICartesianControl |
CStateWatcher | |
CFkStreamResponder | Responds to streaming FK messages |
CCartesianControlClient | Implements ICartesianControl client side |
CCartesianControlServer | Implements ICartesianControl server side |
CRpcResponder | Responds to RPC command messages |
CRpcTransformResponder | Responds to RPC command messages, transforms incoming data |
CStreamResponder | Responds to streaming command messages |
CICartesianControl | Abstract base class for a cartesian controller |
CICartesianSolver | Abstract base class for a cartesian solver |
CChainFkSolverPos_ST | FK solver using Screw Theory |
CChainIkSolverPos_ID | IK solver using infinitesimal displacement twists |
CChainIkSolverPos_ST | IK solver using Screw Theory |
CKdlSolver | Implements ICartesianSolver |
CKdlTreeSolver | Implements ICartesianSolver |
CFtCompensation | Produces motion in the direction of an externally applied force measured by a force-torque sensor (pretty much mimicking a classical gravity compensation app) |
CGrabberResponder | Callback class for dealing with incoming grabber data streams |
CHaarDetectionController | Create seek-and-follow trajectories based on Haar detection algorithms |
CKeyboardController | Sends streaming commands to the cartesian controller from a standard keyboard |
CLinearTrajectoryThread | Periodic thread that encapsulates a linear trajectory |
CCentroidTransform | .. |
CLeapMotionSensorDevice | Represents a LeapMotion device wrapped as an analog sensor by YARP |
CSpnavSensorDevice | Represents a spacenav-compatible device, like the SpaceNavigator 6-DOF mouse from 3Dconnexion |
CStreamingDeviceFactory | Factory class for creating instances of StreamingDevice |
CStreamingDevice | Abstract class for a YARP streaming device |
CInvalidDevice | Represents an invalid device |
CStreamingDeviceController | Sends streaming commands to the cartesian controller from a streaming input device like the 3Dconnexion Space Navigator |
CWiimoteSensorDevice | Represents a Wiimote device wrapped as an analog sensor by YARP |
COrderOneTraj | Generates a 1DOF order-one trajectory |
COrderThreeTraj | Generates a 1DOF order-three trajectory |
CTraj | A base class for 1 degree-of-freedom trajectories |
CTrajectoryThread |
+ kinematics-dynamics
+
+ |
+
+ kinematics-dynamics
+
+ |
+
This is the complete list of members for OrderOneTraj, including all inherited members.
+b (defined in OrderOneTraj) | OrderOneTraj | private |
configure(const double xi, const double xf, const double _T) (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
configure(const double xi, const double xf, const double xdoti, const double xdotf, const double _T) (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
dump(double samples) const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
get(const double ti) const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
getdot(const double ti) const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
getdotdot(const double ti) const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
getT() const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
m (defined in OrderOneTraj) | OrderOneTraj | private |
maxAccBelow(const double thresAcc) const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
maxVelBelow(const double thresVel) const (defined in OrderOneTraj) | OrderOneTraj | inlinevirtual |
OrderOneTraj() (defined in OrderOneTraj) | OrderOneTraj | inline |
T (defined in OrderOneTraj) | OrderOneTraj | private |
~Traj() (defined in Traj) | Traj | inlinevirtual |
+ kinematics-dynamics
+
+ |
+
Generates a 1DOF order-one trajectory. +
+ +#include <TrajGen.hpp>
+Private Attributes | |
+double | T |
+double | m |
+double | b |
+ kinematics-dynamics
+
+ |
+
This is the complete list of members for OrderThreeTraj, including all inherited members.
+a0 (defined in OrderThreeTraj) | OrderThreeTraj | private |
a1 (defined in OrderThreeTraj) | OrderThreeTraj | private |
a2 (defined in OrderThreeTraj) | OrderThreeTraj | private |
a3 (defined in OrderThreeTraj) | OrderThreeTraj | private |
configure(const double xi, const double xf, const double _T) | OrderThreeTraj | inlinevirtual |
configure(const double xi, const double xf, const double xdoti, const double xdotf, const double _T) | OrderThreeTraj | inlinevirtual |
dump(double samples) const | OrderThreeTraj | inlinevirtual |
get(const double ti) const | OrderThreeTraj | inlinevirtual |
getdot(const double ti) const | OrderThreeTraj | inlinevirtual |
getdotdot(const double ti) const | OrderThreeTraj | inlinevirtual |
getT() const | OrderThreeTraj | inlinevirtual |
maxAccBelow(const double thresAcc) const | OrderThreeTraj | inlinevirtual |
maxVelBelow(const double thresVel) const | OrderThreeTraj | inlinevirtual |
OrderThreeTraj() (defined in OrderThreeTraj) | OrderThreeTraj | inline |
T (defined in OrderThreeTraj) | OrderThreeTraj | private |
~Traj() (defined in Traj) | Traj | inlinevirtual |
+ kinematics-dynamics
+
+ |
+
Generates a 1DOF order-three trajectory. +
+ +#include <TrajGen.hpp>
+Public Member Functions | |
bool | configure (const double xi, const double xf, const double _T) |
bool | configure (const double xi, const double xf, const double xdoti, const double xdotf, const double _T) |
double | get (const double ti) const |
double | getdot (const double ti) const |
double | getdotdot (const double ti) const |
bool | maxVelBelow (const double thresVel) const |
bool | maxAccBelow (const double thresAcc) const |
double | getT () const |
void | dump (double samples) const |
+Private Attributes | |
+double | a3 |
+double | a2 |
+double | a1 |
+double | a0 |
+double | T |
+
|
+ +inlinevirtual | +
Configure the trajectory. Forces null initial and final velocities.
+ +Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Configure the trajectory setting an initial and final velocity too (warning: possible overshoot).
+ +Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Printf of ti, f(ti), fdot(ti), fdotdot(ti) for whole duration interval.
samples | number of lines to print. |
Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Check if the maximum of the second derivative is below a certain threshold.
+ +Implements Traj.
+ +
+
|
+ +inlinevirtual | +
Check if the maximum of the first derivative is below a certain threshold.
+ +Implements Traj.
+ +
+ kinematics-dynamics
+
+ |
+
This is the complete list of members for Traj, including all inherited members.
+configure(const double xi, const double xf, const double _T)=0 (defined in Traj) | Traj | pure virtual |
configure(const double xi, const double xf, const double xdoti, const double xdotf, const double _T)=0 (defined in Traj) | Traj | pure virtual |
dump(double samples) const =0 (defined in Traj) | Traj | pure virtual |
get(const double ti) const =0 (defined in Traj) | Traj | pure virtual |
getdot(const double ti) const =0 (defined in Traj) | Traj | pure virtual |
getdotdot(const double ti) const =0 (defined in Traj) | Traj | pure virtual |
getT() const =0 (defined in Traj) | Traj | pure virtual |
maxAccBelow(const double thresAcc) const =0 (defined in Traj) | Traj | pure virtual |
maxVelBelow(const double thresVel) const =0 (defined in Traj) | Traj | pure virtual |
~Traj() (defined in Traj) | Traj | inlinevirtual |
+ kinematics-dynamics
+
+ |
+
A base class for 1 degree-of-freedom trajectories. +
+ +#include <TrajGen.hpp>
+ kinematics-dynamics
+
+ |
+
This is the complete list of members for TrajectoryThread, including all inherited members.
+axes (defined in TrajectoryThread) | TrajectoryThread | private |
iEncoders (defined in TrajectoryThread) | TrajectoryThread | private |
ikConfig (defined in TrajectoryThread) | TrajectoryThread | private |
ikProblem (defined in TrajectoryThread) | TrajectoryThread | private |
iPosDirect (defined in TrajectoryThread) | TrajectoryThread | private |
run() override (defined in TrajectoryThread) | TrajectoryThread | protected |
startTime (defined in TrajectoryThread) | TrajectoryThread | private |
threadInit() override (defined in TrajectoryThread) | TrajectoryThread | protected |
trajectory (defined in TrajectoryThread) | TrajectoryThread | private |
TrajectoryThread(yarp::dev::IEncoders *iEncoders, yarp::dev::IPositionDirect *iPosDirect, roboticslab::ScrewTheoryIkProblem *ikProblem, roboticslab::ConfigurationSelector *ikConfig, KDL::Trajectory *trajectory, int period) (defined in TrajectoryThread) | TrajectoryThread | inline |
+ kinematics-dynamics
+
+ |
+
+Public Member Functions | |
+ | TrajectoryThread (yarp::dev::IEncoders *iEncoders, yarp::dev::IPositionDirect *iPosDirect, roboticslab::ScrewTheoryIkProblem *ikProblem, roboticslab::ConfigurationSelector *ikConfig, KDL::Trajectory *trajectory, int period) |
+Protected Member Functions | |
+bool | threadInit () override |
+void | run () override |
+Private Attributes | |
+yarp::dev::IEncoders * | iEncoders |
+yarp::dev::IPositionDirect * | iPosDirect |
+roboticslab::ScrewTheoryIkProblem * | ikProblem |
+roboticslab::ConfigurationSelector * | ikConfig |
+KDL::Trajectory * | trajectory |
+int | axes |
+double | startTime |
6MAqTZ;mVuL#CEt?ro^ zw(<7LSw6Y1i({6&KGA-7>)ev_5@FtxOt;*6dn@b3^H-;DpAUFly*B22c+_3*H(&2v zJT>!n=8~z`TUD|%R=rHmJoi3)b-Y7*)LUKm%^pVQZ{C`eGEY4F^$ORmjX_iH`-O)8 z^_0qemTtXKOxN1b)An-JzpE3M++S4JIVongWA+0B*R3jmvk`4d&FHg gnC}*QM644PL9iX6+Z*tn#F&vz7aQYHd5Ds_XeThWo(B&-{`OGfr<^_fxkz w`1SNP|BlYjYS@3|5>toK`e`$7mi%GdWgV7L`r-9lU`k=|boFyt=akR{02l8m;s5{u literal 0 HcmV?d00001 diff --git a/classes.html b/classes.html new file mode 100644 index 000000000..cd540b3b7 --- /dev/null +++ b/classes.html @@ -0,0 +1,132 @@ + + + + + + + + kinematics-dynamics: Class Index + + + + + + + + + + + +++ +++ + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ +++++Class Index+ ++ ++++
+ +- A
+- AsibotConfiguration (roboticslab)
- AsibotConfigurationFactory (roboticslab)
- AsibotConfigurationLeastOverallAngularDisplacement (roboticslab)
- AsibotConfigurationLeastOverallAngularDisplacementFactory (roboticslab)
- AsibotSolver (roboticslab)
- AsibotSolverTestFromFile (roboticslab::test)
- AsibotSolver::AsibotTcpFrame (roboticslab)
+
+ + + + +- C
+- CartesianControlClient (roboticslab)
- CartesianControlServer (roboticslab)
- CentroidTransform (roboticslab)
- ChainFkSolverPos_ST (roboticslab)
- ChainIkSolverPos_ID (roboticslab)
- ChainIkSolverPos_ST (roboticslab)
- ScrewTheoryTest::compare_solutions (roboticslab::test)
- ConfigurationSelector::Configuration (roboticslab)
- ConfigurationSelector (roboticslab)
- ConfigurationSelectorFactory (roboticslab)
- ConfigurationSelectorHumanoidGait (roboticslab)
- ConfigurationSelectorHumanoidGaitFactory (roboticslab)
- ConfigurationSelectorLeastOverallAngularDisplacement (roboticslab)
- ConfigurationSelectorLeastOverallAngularDisplacementFactory (roboticslab)
+
+ + + +- K
+- KdlSolver (roboticslab)
- KdlSolverTest (roboticslab::test)
- KdlSolverTestFromFile (roboticslab::test)
- KdlTreeSolver (roboticslab)
- KeyboardController (roboticslab)
- KinRepresentationTest (roboticslab::test)
+
+ +- P
+- PadenKahanOne (roboticslab)
- PadenKahanThree (roboticslab)
- PadenKahanTwo (roboticslab)
- PardosGotorFour (roboticslab)
- PardosGotorOne (roboticslab)
- PardosGotorThree (roboticslab)
- PardosGotorTwo (roboticslab)
- PoeExpression (roboticslab)
- ScrewTheoryIkProblemBuilder::PoeTerm (roboticslab)
- AsibotConfiguration::Pose (roboticslab)
+
+ + +- S
+- ScrewTheoryIkProblem (roboticslab)
- ScrewTheoryIkProblemBuilder (roboticslab)
- ScrewTheoryIkSubproblem (roboticslab)
- ScrewTheoryTest (roboticslab::test)
- SpnavSensorDevice (roboticslab)
- BasicCartesianControl::StateWatcher (roboticslab)
- StreamingDevice (roboticslab)
- StreamingDeviceController (roboticslab)
- StreamingDeviceFactory (roboticslab)
- StreamResponder (roboticslab)
+Generated on Wed Jan 17 2024 21:50:16 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfiguration-members.html b/classroboticslab_1_1AsibotConfiguration-members.html new file mode 100644 index 000000000..47a48e333 --- /dev/null +++ b/classroboticslab_1_1AsibotConfiguration-members.html @@ -0,0 +1,102 @@ + + + + + + + +kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::AsibotConfiguration Member List+ ++ +This is the complete list of members for roboticslab::AsibotConfiguration, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfiguration.html b/classroboticslab_1_1AsibotConfiguration.html new file mode 100644 index 000000000..12823c7e2 --- /dev/null +++ b/classroboticslab_1_1AsibotConfiguration.html @@ -0,0 +1,365 @@ + + + + + + + +kinematics-dynamics: roboticslab::AsibotConfiguration Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::AsibotConfiguration Class Referenceabstract+ ++ +Abstract base class for a robot configuration strategy selector. + More...
+ ++
#include <AsibotConfiguration.hpp>
+Inheritance diagram for roboticslab::AsibotConfiguration:++++ + ++
+ +Classes
+ struct Pose + Helper class to store a specific robot configuration. More... + +
+ +Public Types
+ +using JointsIn = const std::vector< double > & + Const vector of joint angles (input parameter). + + +using JointsOut = std::vector< double > & + Vector of joint angles (output parameter). + +
+ +Public Member Functions
+ AsibotConfiguration (JointsIn qMin, JointsIn qMax) + Constructor. More... + + +virtual ~AsibotConfiguration ()=default + Destructor. + + virtual bool configure (double q1, double q2u, double q2d, double q3, double q4u, double q4d, double q5) + Stores initial values for a specific pose. More... + + virtual bool findOptimalConfiguration (JointsIn qGuess)=0 + Analyzes available configurations and selects the optimal one. More... + + virtual void retrieveAngles (JointsOut q) const + Queries computed angles for the optimal configuration. More... + +
++ +Protected Attributes
+ +JointsIn _qMin + + +JointsIn _qMax + + +Pose optimalPose + + +Pose forwardElbowUp + + +Pose forwardElbowDown + + +Pose reversedElbowUp + + +Pose reversedElbowDown + Detailed Description
+Designed with ASIBOT's specific case in mind, which entails up to four different configurations depending on initial angles provided.
+Constructor & Destructor Documentation
+ +◆ AsibotConfiguration()
+ +++++
++ ++ ++
++ +roboticslab::AsibotConfiguration::AsibotConfiguration +( +JointsIn +qMin, ++ ++ + JointsIn +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin vector of minimum joint limits [deg] + qMax vector of maximum joint limits [deg] Member Function Documentation
+ +◆ configure()
+ +++ +++
++ ++ ++
++ +bool AsibotConfiguration::configure +( +double +q1, ++ ++ + double +q2u, ++ ++ + double +q2d, ++ ++ + double +q3, ++ ++ + double +q4u, ++ ++ + double +q4d, ++ ++ + double +q5 ++ ++ ) ++ +virtual +++Distinguishes between elbow up and down poses. Make sure that:
+oyP = q2u + q3 + q4u = q2d - q3 + q4d++
- Parameters
- +
++
++ q1 IK solution for joint 1 [deg] + q2u IK solution for joint 2 (elbow up) [deg] + q2d IK solution for joint 2 (elbow down) [deg] + q3 IK solution for joint 3 [deg] + q4u IK solution for joint 4 (elbow up) [deg] + q4d IK solution for joint 4 (elbow down) [deg] + q5 IK solution for joint 5 [deg] + +
- Returns
- true/false on success/failure
◆ findOptimalConfiguration()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::AsibotConfiguration::findOptimalConfiguration +( +JointsIn +qGuess ) ++ +pure virtual ++++
- Parameters
- +
++
++ qGuess vector of joint angles for current robot position [deg] + +
- Returns
- true/false on success/failure
Implemented in roboticslab::AsibotConfigurationLeastOverallAngularDisplacement.
+ +◆ retrieveAngles()
+ +++++
++ ++ ++
++ +virtual void roboticslab::AsibotConfiguration::retrieveAngles +( +JointsOut +q ) +const ++inlinevirtual ++++ +
- Parameters
- +
++
++ q vector of joint angles [deg]
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/AsibotSolver/AsibotConfiguration.hpp
+- libraries/YarpPlugins/AsibotSolver/AsibotConfiguration.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfiguration.png b/classroboticslab_1_1AsibotConfiguration.png new file mode 100644 index 0000000000000000000000000000000000000000..a9f07d225ffa0928d79e7c369bf10bb74a6cd690 GIT binary patch literal 1139 zcmeAS@N?(olHy`uVBq!ia0y~yV5|qS12~w0JHnfB)-` z;riixOzm`;RH|_9PF1sQHMJ9t#s_(6P6_hTQ(|mkkP-RA_y-w3Idord=e8>Tt+w?> zGj?pf^ou=V>$ljvk_4s)`(K;>V1731)BCscqJLX6ocUTXIWF`;<)7_Szuk$ce-?80 z|81+{c(%;8va-)B5|_;RSo-hZ4w>dnE*n#POS+l<=-W=Lzx(6kW&;^hKWFVNWmgh5 zS#m#T%v~|F^Lgmv^k? fsJwL4c %UD8E_ZbWyJF;)?kn=8GKs4%GLr{Lk~R|4+Q^4v)>BfBgUZ#QWm8(YxE%ZOVE3 zHh%t{pQm?zFPT_myVCn+&-v_`zc#n8RJ%9H{($z2t>1n}{+U1H2E+Xe?N9#)&Sr>n zo*!P%5a)hS{(wI+*8V>wh->MTN$m`EoA)s|G3asqW61mUt4o~W!O{o(50;76?_pq2 zXRT-OXRT$h2hudff2;nT-lVfXA|6cYOcI%-!p>Un`6>9rbQPe*PzLW$b =YZPv@6a-0xNSYW4BH&71dSe`gA3{Lg=Vrna&=E#tU-zm%I+ zXUMbn{ih8zyhXgP9T7A=u63^KVA@i%7{5Ddi`(i;Z~MGXoA$ZrhG|}vda3YX+30^~ zC;dL3m2km=ckP8+fz2n?oX<1!Z0O_^Uj0;M>9b9LmIwY;zjicX*_2z^2Tsh|`u_5b z?9cUL3+}&3$bT;J*+V!>IcS*=Py5Y@vhz9r+r3gKeYU#f&)YQ@d$K>5|D3(K>{+~> zpZLVQPx`NYPRevoyWQYaXV;T8ujlNH=gWUx?%lj^R`DgF- zx=pl2laKFEdo^KyY2f#)tkB(O`#iHx9N7NM`ro84T&r6BChaLXeAHgDPWRupY&}o8 zT`wQ?{&+rF+p}-i^G9=kcwchY{NX)me$#%HpKwOz)BQT9g`%dVe!L*>bIUhOyYs>o QU FVdQ&MBb@04gyo%>V!Z literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1AsibotConfigurationFactory-members.html b/classroboticslab_1_1AsibotConfigurationFactory-members.html new file mode 100644 index 000000000..7d86492ee --- /dev/null +++ b/classroboticslab_1_1AsibotConfigurationFactory-members.html @@ -0,0 +1,93 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::AsibotConfigurationFactory Member List+ ++ +This is the complete list of members for roboticslab::AsibotConfigurationFactory, including all inherited members.
++
+ _qMax (defined in roboticslab::AsibotConfigurationFactory) roboticslab::AsibotConfigurationFactory protected + _qMin (defined in roboticslab::AsibotConfigurationFactory) roboticslab::AsibotConfigurationFactory protected + AsibotConfigurationFactory(AsibotConfiguration::JointsIn qMin, AsibotConfiguration::JointsIn qMax) roboticslab::AsibotConfigurationFactory inlineprotected + create() const =0 roboticslab::AsibotConfigurationFactory pure virtual + ~AsibotConfigurationFactory()=default (defined in roboticslab::AsibotConfigurationFactory) roboticslab::AsibotConfigurationFactory virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfigurationFactory.html b/classroboticslab_1_1AsibotConfigurationFactory.html new file mode 100644 index 000000000..a6d4eb15e --- /dev/null +++ b/classroboticslab_1_1AsibotConfigurationFactory.html @@ -0,0 +1,204 @@ + + + + + + + +kinematics-dynamics: roboticslab::AsibotConfigurationFactory Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Protected Member Functions | +Protected Attributes | +List of all members+++roboticslab::AsibotConfigurationFactory Class Referenceabstract+ ++ +Base factory class for AsibotConfiguration. + More...
+ ++
#include <AsibotConfiguration.hpp>
+Inheritance diagram for roboticslab::AsibotConfigurationFactory:++++ + ++
+ +Public Member Functions
+ virtual AsibotConfiguration * create () const =0 + Creates an instance of the concrete class. More... + +
+ +Protected Member Functions
+ AsibotConfigurationFactory (AsibotConfiguration::JointsIn qMin, AsibotConfiguration::JointsIn qMax) + Constructor. More... + +
++ +Protected Attributes
+ +AsibotConfiguration::JointsIn _qMin + + +AsibotConfiguration::JointsIn _qMax + Detailed Description
+Acts as the base class in the abstract factory pattern, encapsulates individual factories.
+Constructor & Destructor Documentation
+ +◆ AsibotConfigurationFactory()
+ +++++
++ ++ ++
++ +roboticslab::AsibotConfigurationFactory::AsibotConfigurationFactory +( +AsibotConfiguration::JointsIn +qMin, ++ ++ + AsibotConfiguration::JointsIn +qMax ++ ++ ) ++ +inlineprotected ++++ +
- Parameters
- +
++
++ qMin vector of minimum joint limits [deg] + qMax vector of maximum joint limits [deg] Member Function Documentation
+ +◆ create()
+ +++++
++ ++ ++
++ +virtual AsibotConfiguration* roboticslab::AsibotConfigurationFactory::create +( +) +const ++pure virtual ++++ +
- Returns
- A pointer to the base class of the inheritance tree.
Implemented in roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory.
+ +
The documentation for this class was generated from the following file:+
+- libraries/YarpPlugins/AsibotSolver/AsibotConfiguration.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfigurationFactory.png b/classroboticslab_1_1AsibotConfigurationFactory.png new file mode 100644 index 0000000000000000000000000000000000000000..2c7093cbe9618f3b79b20352eb9700ca468d8e66 GIT binary patch literal 1298 zcmbVMdoNFH1PPM@_O{Y}FDlEt(o<%&88r>31lCEf}I>tgU zX%E@bDv4)G>X9W{j$vvg5t;~n&?f4nn`ZS`+0XvicJ}A)IrrZ0ocrB>?)RNr5{5qu zgW5p>0D$3w0tf&A5rR0(!UU`pE6qp2W)pTU;>`B;HV9w7GBV2VSM1DoQZAR9m1qzk zw4f94;Q&b53FT;nCjgl8aRGi2xsa8c%h{{0?+184>)O~VXK7|)t~fMJsF1|w>B>Q` zYkmg?;|akoRfOQ0{kspDW?eM<5I{hQ0CukkU^z!Y)_#eOnsre1Y5k@3GFy88+%2P( zoXXD5`Q8LB2^x+vM5|Q^X0^1@W(l)joeNpY^BMWH@M5D(uJ@Yk#;fYTvb=zh6t9!; zz3Go<$6JcN9c^`fCs9$DT!-t9w8V09qBSjJRVqujc#V-(M21XmiJvp+U#5}anr=I~ z7xUFj0}Orae3H^h%3bo7R~kpz=vs71o)Q|KdBK$&Hx*QAija|QPEN9ixgi+`of`Jb zD;a3wZF76l;wz=y+JtD-=Rpc(=7cCN?>c~qJ(Y~ct1nK4aF}&U!Jbg+!Zl;D*q0s0 z5G}okd^pb{DcZIN^ttp)ZbAdK6ZTk}Vc)CI?vuTH%X6yNt1D3iR20LRH;1Wi%8#z4 zCWe{3U8NzAR*&pkfeGbu6ePw^hMi9^d%f)0h>&}{WUOx{ZBjkr0GVL_ZG%DiF;M^S z`-Zjedd=rX2D@A(1ncy>)-Y_y6#&(iV772NJ|1EzFD$UWY}s;W*S^appfny(!avgd zwF(mb2cYs|kY@E??fyUE4PR7EAz|_HW1Vh@Bl~br+~kn82su(*z(uZywR4c5M>x;@ z{fRh&bo#_*!{6oz<%p(J3mbDnG|O43g7b>AeDV)W1@l;q;Jpp|-oXvhjrtBwa;u9F z`)s)H2?h~LS1kAy3?Ifdf0n|? SyLHn>x6LdGP4fn?M+P24 z^`xm)<-S^N`+4Pz`VvuG$n&47Tj*9ch)L_i=1x6uxD$~V?t-qNpvxZ1I#A{(Zz yY(th$zBXOfmQrXev3>r;CdocMF{>&v+@omx!WgOsPGl 6|HCUnBX{l`VX4`n}$W@(_ zqwQjLBdKgETSFIj(W^mIBDyz{A4x<-@D<6^pWjp{@68RU1j$y^g|rrI0%N0JA2mK9 z#B5 !%fTsHOq zMQA!gxwCaVL-s`<3zKt``l}GOdT2aoXhz#w;+sr~RrJ*5&EmylINDEw`8scOdv+f` z^Tu=vmy3+`>zWCk?4#cw62s!FxF5Yk>fC*GPe+PqYo#kfLKjk(;rrrg&o{i6Dq%in zFGmnJ5X=F82#y096ZacG!4ZeO+exmb>~ + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::AsibotConfigurationLeastOverallAngularDisplacement Member List+ ++ +This is the complete list of members for roboticslab::AsibotConfigurationLeastOverallAngularDisplacement, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.html b/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.html new file mode 100644 index 000000000..11eadae0d --- /dev/null +++ b/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.html @@ -0,0 +1,254 @@ + + + + + + + +kinematics-dynamics: roboticslab::AsibotConfigurationLeastOverallAngularDisplacement Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::AsibotConfigurationLeastOverallAngularDisplacement Class Reference+ ++ +IK solver configuration strategy selector based on the overall angle displacement of all joints. + More...
+ ++
#include <AsibotConfiguration.hpp>
+Inheritance diagram for roboticslab::AsibotConfigurationLeastOverallAngularDisplacement:++++ + ++
+ +Public Member Functions
+ AsibotConfigurationLeastOverallAngularDisplacement (JointsIn qMin, JointsIn qMax) + Constructor. More... + + bool findOptimalConfiguration (JointsIn qGuess) override + Analyzes available configurations and selects the optimal one. More... + + Public Member Functions inherited from roboticslab::AsibotConfiguration + AsibotConfiguration (JointsIn qMin, JointsIn qMax) + Constructor. More... + + +virtual ~AsibotConfiguration ()=default + Destructor. + + virtual bool configure (double q1, double q2u, double q2d, double q3, double q4u, double q4d, double q5) + Stores initial values for a specific pose. More... + + virtual void retrieveAngles (JointsOut q) const + Queries computed angles for the optimal configuration. More... + +
+ +Private Member Functions
+ +std::vector< double > getDiffs (JointsIn qGuess, const Pose &pose) + Obtains vector of differences between current and desired joint angles [deg]. + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::AsibotConfiguration + +using JointsIn = const std::vector< double > & + Const vector of joint angles (input parameter). + + +using JointsOut = std::vector< double > & + Vector of joint angles (output parameter). + + Protected Attributes inherited from roboticslab::AsibotConfiguration + +JointsIn _qMin + + +JointsIn _qMax + + +Pose optimalPose + + +Pose forwardElbowUp + + +Pose forwardElbowDown + + +Pose reversedElbowUp + + +Pose reversedElbowDown + Detailed Description
+Selects the configuration that entails the lowest sum of angular displacements across all joints. Upon choosing between elbow up and down alternatives, a small angular travel distance for joint 2 is preferred.
+Constructor & Destructor Documentation
+ +◆ AsibotConfigurationLeastOverallAngularDisplacement()
+ +++++
++ ++ ++
++ +roboticslab::AsibotConfigurationLeastOverallAngularDisplacement::AsibotConfigurationLeastOverallAngularDisplacement +( +JointsIn +qMin, ++ ++ + JointsIn +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin vector of minimum joint limits [deg] + qMax vector of maximum joint limits [deg] Member Function Documentation
+ +◆ findOptimalConfiguration()
+ +++++
++ ++ ++
++ +bool AsibotConfigurationLeastOverallAngularDisplacement::findOptimalConfiguration +( +JointsIn +qGuess ) ++ +overridevirtual ++++
- Parameters
- +
++
++ qGuess vector of joint angles for current robot position [deg] + +
- Returns
- true/false on success/failure
Implements roboticslab::AsibotConfiguration.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/AsibotSolver/AsibotConfiguration.hpp
+- libraries/YarpPlugins/AsibotSolver/AsibotConfigurationLeastOverallAngularDisplacement.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.png b/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacement.png new file mode 100644 index 0000000000000000000000000000000000000000..f692715b5a299ec784ac230920a8388871a6dc58 GIT binary patch literal 1137 zcmeAS@N?(olHy`uVBq!ia0y~yV5|qS12~w0mCLS^hxZvkuNEdN^O@ zYI^R?zHPShl0J8$GXG9iS-my?LbYUz%HQ(6Z1tYcW`26FIWPLR`Gk~t?K!az?5F;3 z%R7JetLgGr|MFj-sg+z}`1VKo>V?bad@TKE7t`k$xu_+j`GwfjCI6SIe_AhXAIE(- z@Nr7i!mVM=C!gue;f)I4tS~RUciznZZ`0cUc+0Nn4GOA~FZQ4I|ERyAoXWxFpUl5L zKVu)iZtK54#{W0@eR#j=W6L628RgaUKg<_7`2AV^?tkTfo`3y+;$^pgY`tCo|NDpc z?R} 89TOa^Oir5@piXQi=#leuwIx{Rqc~iyk9<4Z7ptKw>q=` zxV*vnDfRE)-H|%>&*I0#gUlI^r#Adb`4=w#f6L+D7a6`-eY}6~TmJ5S&sc8#&z-wd zKmYuUvOk-zUI_MFVpK1$cYJ|PpwlKtnK Fl_Wz9I{+kEyowIv3Pwk4^5}%n8vm#IToo}gsUpm3+bEwt7vTGT~ z7C(6Z(LDX_nf)<-;`8!8>A&{bUZ4|I$0qXW$A#6BlI+RH{J$>Wyt&Zy`4ZJ{!T*v) zo*y=3ESvp*3CFy?Cn}cF{|@(lb59fdGU5M?cOuu<#Q6QZzwW>6|H{AT#qZXv|N5Nm zzvmV;RiO)+r}lRy9jPxm9=rU#`K$h&i@aCM+~4;vXY=gO_pThibhA<`eW%XV`vq_P zx1A1;FkdM)FKdQ)W|&r^Y+3Jh#d>MiyQ^1*zBRK}%XMJe$Gh(_{|BzB-ikbzkN%AN z#p + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory Member List+ ++ +This is the complete list of members for roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory, including all inherited members.
++
+ _qMax (defined in roboticslab::AsibotConfigurationFactory) roboticslab::AsibotConfigurationFactory protected + _qMin (defined in roboticslab::AsibotConfigurationFactory) roboticslab::AsibotConfigurationFactory protected + AsibotConfigurationFactory(AsibotConfiguration::JointsIn qMin, AsibotConfiguration::JointsIn qMax) roboticslab::AsibotConfigurationFactory inlineprotected + AsibotConfigurationLeastOverallAngularDisplacementFactory(AsibotConfiguration::JointsIn qMin, AsibotConfiguration::JointsIn qMax) roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory inline + create() const override roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory inlinevirtual + ~AsibotConfigurationFactory()=default (defined in roboticslab::AsibotConfigurationFactory) roboticslab::AsibotConfigurationFactory virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.html b/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.html new file mode 100644 index 000000000..363d676f8 --- /dev/null +++ b/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.html @@ -0,0 +1,204 @@ + + + + + + + +kinematics-dynamics: roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory Class Reference+ ++ +Implementation factory class for AsibotConfigurationLeastOverallAngularDisplacement. + More...
+ ++
#include <AsibotConfiguration.hpp>
+Inheritance diagram for roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory:++++ + ++
+ +Public Member Functions
+ AsibotConfigurationLeastOverallAngularDisplacementFactory (AsibotConfiguration::JointsIn qMin, AsibotConfiguration::JointsIn qMax) + Constructor. More... + + AsibotConfiguration * create () const override + Creates an instance of the concrete class. More... + +
++ +Additional Inherited Members
+ Protected Member Functions inherited from roboticslab::AsibotConfigurationFactory + AsibotConfigurationFactory (AsibotConfiguration::JointsIn qMin, AsibotConfiguration::JointsIn qMax) + Constructor. More... + + Protected Attributes inherited from roboticslab::AsibotConfigurationFactory + +AsibotConfiguration::JointsIn _qMin + + +AsibotConfiguration::JointsIn _qMax + Detailed Description
+Implements AsibotConfigurationFactory::create.
+Constructor & Destructor Documentation
+ +◆ AsibotConfigurationLeastOverallAngularDisplacementFactory()
+ +++++
++ ++ ++
++ +roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory::AsibotConfigurationLeastOverallAngularDisplacementFactory +( +AsibotConfiguration::JointsIn +qMin, ++ ++ + AsibotConfiguration::JointsIn +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin vector of minimum joint limits [deg] + qMax vector of maximum joint limits [deg] Member Function Documentation
+ +◆ create()
+ +++++
++ ++ ++
++ +AsibotConfiguration* roboticslab::AsibotConfigurationLeastOverallAngularDisplacementFactory::create +( +) +const ++inlineoverridevirtual ++++ +
- Returns
- A pointer to the base class of the inheritance tree.
Implements roboticslab::AsibotConfigurationFactory.
+ +
The documentation for this class was generated from the following file:+
+- libraries/YarpPlugins/AsibotSolver/AsibotConfiguration.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.png b/classroboticslab_1_1AsibotConfigurationLeastOverallAngularDisplacementFactory.png new file mode 100644 index 0000000000000000000000000000000000000000..3f989fe982d6ff3b0be09242ab77171bd255fc8b GIT binary patch literal 1294 zcmeAS@N?(olHy`uVBq!ia0y~yU|bDk2XHV0$q8>)83HMZ0G|-o|Ns93nJ?aaE$u%v z0VD^)2M!!y?YtuoWO9@Q`2{lo6@kFjQz1qS3@md!T^vIy7~jslSoT+3r@A8tc)spj%B`CI-b%ak#jSM=yNoTrvx5`qLmyf){CW$zo^qQ2U5$PGk zqpI!MwNO4WRAuY)Ynx
t+LE_hpWV)u@riD#)=uAGne5(t@2U>R>(w)R z7M8r9^d)KU=NQY?VS&|At(m;DyXIZLa#`iz@%eJcI!deyzXr?(`Z5rxDz TglJf6~KB<*u*s``vJLcix868$VqxvniSUWL}!7=8?%#FE;*ry2kH*IP>bCwOgO( z@6)|?{(nO09; 8;OSyIOYD?Y*`C?d4|u4U4a4^RGUb6@2r}yW*KrJ9cF{ zT9_8>-oMTBo93_6p_AfPf8RK1iS~=z!L!$>yu6*7XYcuoZ7=WDc$IGBtAAYVHT$UotDO7F4QgHwgUt;Ss?g zIAslk(~CB(L`If?O-vn&R9FR^PjV@=O%ingMpOgP00u*#5@5_R9swy>m_ii=`=^9z zE?wfK`SjBwh9wMo>(EUtioCflI(tjz+n?g;5B7%U{byK{SIckSD|}=zBY#@aUc2I} z?7J#!w-hy~|C+Pw*RNUg*KcGxW1MQb%X-_LQoHyS=^s=M{_}CDE(_~7JC)e_d@-ZM z)7*Xfn|JMBJ12kr?_)9l?^u7|XDfQFq+omW&Uvrc);_*|{%gfm%`6YIj ~=});o2R~7H!Y3zg1JJnR`@s&)2Q2uTA)t z=^orW)%eDnKZ_eZ->GmsUVUD3%Datgmc<>{H{(iInewl&D5ZJpo8ugJS$ih-J byz!?ImB2pS fum2&y}nmet1?uBAoPM_LteZ*ArrXTN@Z?A;ImcL)!c=gY|ThHe| zU;1}Wf@$ZqocT;Vvo^h2^dZ9c-IL?dwY&1=-}P#)K7V;f*|)V(PRFDw G<#cLw)=0D9NX4M*Ll8s?wXmEFgy17)zs9*8QG>^H^o1jFxgIFa-H;^ zm5sSKWNXDU>qVjpnSWHqD$f%R+++2idy~<2`2+ngQbhFmcI@1LW9O<+?gz(9^t!IQ w-KpFk$IIfu*n^Q8rB?@ec}@*Fb@i+Kf0@Yd2QTh42Nqrop00i_>zopr0C*90cmMzZ literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1AsibotSolver-members.html b/classroboticslab_1_1AsibotSolver-members.html new file mode 100644 index 000000000..ea483faa7 --- /dev/null +++ b/classroboticslab_1_1AsibotSolver-members.html @@ -0,0 +1,118 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::AsibotSolver Member List+ ++ +This is the complete list of members for roboticslab::AsibotSolver, including all inherited members.
++
+ A0 (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + A1 (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + A2 (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + A3 (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + appendLink(const std::vector< double > &x) override roboticslab::AsibotSolver virtual + BASE_FRAME enum value roboticslab::ICartesianSolver + changeOrigin(const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj) override roboticslab::AsibotSolver virtual + close() override (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver + confFactory (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + diffInvKin(const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame) override roboticslab::AsibotSolver virtual + fwdKin(const std::vector< double > &q, std::vector< double > &x) override roboticslab::AsibotSolver virtual + getConfiguration() const (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + getNumJoints() override roboticslab::AsibotSolver virtual + getNumTcps() override roboticslab::AsibotSolver virtual + getTcpFrame() const (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + invDyn(const std::vector< double > &q, std::vector< double > &t) override roboticslab::AsibotSolver virtual + invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame) override roboticslab::AsibotSolver virtual + roboticslab::ICartesianSolver::invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) roboticslab::ICartesianSolver inlinevirtual + invKin(const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame) override roboticslab::AsibotSolver virtual + mtx (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver mutableprivate + open(yarp::os::Searchable &config) override (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver + poseDiff(const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut) override roboticslab::AsibotSolver virtual + qMax (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + qMin (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + reference_frame enum name roboticslab::ICartesianSolver + restoreOriginalChain() override roboticslab::AsibotSolver virtual + setTcpFrame(const AsibotTcpFrame &tcpFrameStruct) (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + TCP_FRAME enum value roboticslab::ICartesianSolver + tcpFrameStruct (defined in roboticslab::AsibotSolver) roboticslab::AsibotSolver private + ~ICartesianSolver()=default roboticslab::ICartesianSolver virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotSolver.html b/classroboticslab_1_1AsibotSolver.html new file mode 100644 index 000000000..8a610274d --- /dev/null +++ b/classroboticslab_1_1AsibotSolver.html @@ -0,0 +1,732 @@ + + + + + + + +kinematics-dynamics: roboticslab::AsibotSolver Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Classes | +Public Member Functions | +Private Member Functions | +Private Attributes | +List of all members+++roboticslab::AsibotSolver Class Reference+ ++ +The AsibotSolver implements ICartesianSolver. +
+ ++
#include <AsibotSolver.hpp>
+Inheritance diagram for roboticslab::AsibotSolver:++++ + ++
+ +Classes
+ struct AsibotTcpFrame + +
+ +Public Member Functions
+ int getNumJoints () override + Get number of joints for which the solver has been configured. More... + + int getNumTcps () override + Get number of TCPs for which the solver has been configured. More... + + bool appendLink (const std::vector< double > &x) override + Append an additional link. More... + + bool restoreOriginalChain () override + Restore original kinematic chain. More... + + bool changeOrigin (const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj) override + Change origin in which a pose is expressed. More... + + bool fwdKin (const std::vector< double > &q, std::vector< double > &x) override + Perform forward kinematics. More... + + bool poseDiff (const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut) override + Obtain difference between supplied pose inputs. More... + + bool invKin (const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame) override + Perform inverse kinematics. More... + + bool diffInvKin (const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame) override + Perform differential inverse kinematics. More... + + bool invDyn (const std::vector< double > &q, std::vector< double > &t) override + Perform inverse dynamics. More... + + bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame) override + Perform inverse dynamics. More... + + +bool open (yarp::os::Searchable &config) override + + +bool close () override + + Public Member Functions inherited from roboticslab::ICartesianSolver + +virtual ~ICartesianSolver ()=default + Destructor. + + virtual bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) + Perform inverse dynamics. More... + +
+ +Private Member Functions
+ +AsibotConfiguration * getConfiguration () const + + +AsibotTcpFrame getTcpFrame () const + + +void setTcpFrame (const AsibotTcpFrame &tcpFrameStruct) + +
+ +Private Attributes
+ +double A0 + + +double A1 + + +double A2 + + +double A3 + + +std::vector< double > qMin + + +std::vector< double > qMax + + +AsibotConfigurationFactory * confFactory {nullptr} + + +AsibotTcpFrame tcpFrameStruct + + +std::mutex mtx + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::ICartesianSolver + enum reference_frame { BASE_FRAME = yarp::os::createVocab32('c','p','f','b') +, TCP_FRAME = yarp::os::createVocab32('c','p','f','t') + } + Lists supported reference frames. More... + Member Function Documentation
+ +◆ appendLink()
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::appendLink +( +const std::vector< double > & +x ) ++ +overridevirtual ++++
- Parameters
- +
++
++ x 6-element vector describing end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ changeOrigin()
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::changeOrigin +( +const std::vector< double > & +x_old_obj, ++ ++ + const std::vector< double > & +x_new_old, ++ ++ + std::vector< double > & +x_new_obj ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ x_old_obj_in 6-element vector describing a pose in cartesian space, expressed in the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_old 6-element vector describing a transformation from the new to the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_obj 6-element vector describing a pose in cartesian space, expressed in the new frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ diffInvKin()
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::diffInvKin +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +xdot, ++ ++ + std::vector< double > & +qdot, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + xdot 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + qdot Vector describing target velocity in joint space (meters/second or degrees/second). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ fwdKin()
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::fwdKin +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +x ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing a position in joint space (meters or degrees). + x 6-element vector describing same position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ getNumJoints()
+ +++ +++
++ ++ ++
++ +int AsibotSolver::getNumJoints +( +) ++ +overridevirtual ++++ +
- Returns
- Number of joints.
Implements roboticslab::ICartesianSolver.
+ +◆ getNumTcps()
+ +++ +++
++ ++ ++
++ +int AsibotSolver::getNumTcps +( +) ++ +overridevirtual ++++ +
- Returns
- The number of TCPs.
Implements roboticslab::ICartesianSolver.
+ +◆ invDyn() [1/2]
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +qdot, ++ ++ + const std::vector< double > & +qdotdot, ++ ++ + const std::vector< double > & +ftip, ++ ++ + std::vector< double > & +t, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + qdot Vector describing current velocity in joint space (meters/second or degrees/second). + qdotdot Vector describing current acceleration in joint space (meters/secondยฒ or degrees/secondยฒ). + ftip Vector describing an external force applied to the robot tip, expressed in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + frame Points at the reference_frame ftip
is expressed in.+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ invDyn() [2/2]
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +t ++ ++ ) ++ +overridevirtual +++Assumes null joint velocities and accelerations, and no external forces.
++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ invKin()
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::invKin +( +const std::vector< double > & +xd, ++ ++ + const std::vector< double > & +qGuess, ++ ++ + std::vector< double > & +q, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + qGuess Vector describing current position in joint space (meters or degrees). + q Vector describing target position in joint space (meters or degrees). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ poseDiff()
+ +++ +++
++ ++ ++
++ +bool AsibotSolver::poseDiff +( +const std::vector< double > & +xLhs, ++ ++ + const std::vector< double > & +xRhs, ++ ++ + std::vector< double > & +xOut ++ ++ ) ++ +overridevirtual +++The result is an infinitesimal displacement twist, i.e. a vector, for which the operation of addition makes physical sense.
++
- Parameters
- +
++
++ xLhs 6-element vector describing a pose in cartesian space (left hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xRhs 6-element vector describing a pose in cartesian space (right hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xOut 6-element vector describing a pose in cartesian space (result); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ restoreOriginalChain()
+ +++++
++ ++ ++
++ +bool AsibotSolver::restoreOriginalChain +( +) ++ +overridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/AsibotSolver/AsibotSolver.hpp
+- libraries/YarpPlugins/AsibotSolver/AsibotSolver.cpp
+- libraries/YarpPlugins/AsibotSolver/DeviceDriverImpl.cpp
+- libraries/YarpPlugins/AsibotSolver/ICartesianSolverImpl.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1AsibotSolver.png b/classroboticslab_1_1AsibotSolver.png new file mode 100644 index 0000000000000000000000000000000000000000..8c4fa03756d0cce42a350022b2af7c6266f16ca2 GIT binary patch literal 1099 zcmeAS@N?(olHy`uVBq!ia0y~yU`zwD12~w0r0g1f1t296;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|ze>y?!aivEsPIzezz}uN{8g$=iP0YC=e8_`<6?N}ISAM!FoCdqGF( zkza lJFd-fSt1vGx@=3X@g{S*>&i-RKd!p# zFLnH{$^Oi@cP&D5`{c941dC%b>Q;$Od}eVyZQl9gv*c^7&$oD=->+8mJNCG7@884? zv1`9PzgWBRq-AKRuJGAR|J$}Jx6QXSoF8AE{_eD$?~57VE&rXka{6Uz*gIYSHS0b_ z74QAr{B6bKulFy$sG2SKdwpbWm0xJ+X`kY~J0GX-ee9XcvG%UoX8&uOE`Q!^6nO2M z_02V_RwjRvcy`m~YR>anQ>)LeTE%=h=Usl@g_uw4%yRVRi3sj~Qd8yodF8WkSLOZp zr_VZFv419SbMLeC{|hYH&7OyZZmn5!bI;f5v-)G#E_r*=X8yhT7Vdkm#oWyZGVPJ9 zT(&cQ)yZe;%%smww|?_{mj9*P3wNG9JpHngTgJ3}_M_jkq>E#7&HTJ>^PS7y%sI~| zG}Ls@g+GsP #F1OW&L`Id^j8nJ48xC)DkEcq}(q``E!dg(9s|>GENH zL7}o17h}qPCD)&SU%C6adH&ydMLQS2&}{s@XA|!{pL}l*+xp;5vyW+?4VPWD>i^u% zG{K4S=QA$`gci2|nf^1g=Y44fF)X#ER;}7U;li3#ulzE?LQB<6R {9>L$!Pgl93{;XKRmt|g73+{qXs{rhiSyih~JQ*+h?MVJ@?Ehy5B&pb4j zmNG<4TDr~#&5C`Yn`Q4t)mG%r@Apx&i^}}{=fZ>e7kOqp4k_L>XZGIt_Nony>o4t* zu3C2M+vk;!KfeE1y5!;J^~+L)Z)Khfygaq9L+H{vbDI_GFUREn{1IvEBjucNF_r1} z$)77{Xk<$t_>g+@&izjdcKWR8waJcnoTB>K&c~EF;@^U_U=z2qmCdiUnl9S#J$dT1 z+4rU)XM4zeSJUVRD}K)96;Du&%lKEA`_5$k^=F;Wetiw!^z+8M?SHbOpRRq^eQaKb zZ*4}|_DeU{mRy-twd_|(Ume5g@JzNJbCClMB@`I%K;nnFLHs|%-lpzpla^)O1Lk}N MPgg&ebxsLQ0A3#>cmMzZ literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1BasicCartesianControl-members.html b/classroboticslab_1_1BasicCartesianControl-members.html new file mode 100644 index 000000000..bd9fe6fe4 --- /dev/null +++ b/classroboticslab_1_1BasicCartesianControl-members.html @@ -0,0 +1,160 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::BasicCartesianControl Member List+ ++ +This is the complete list of members for roboticslab::BasicCartesianControl, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1BasicCartesianControl.html b/classroboticslab_1_1BasicCartesianControl.html new file mode 100644 index 000000000..39e10f507 --- /dev/null +++ b/classroboticslab_1_1BasicCartesianControl.html @@ -0,0 +1,1152 @@ + + + + + + + +kinematics-dynamics: roboticslab::BasicCartesianControl Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Classes | +Public Member Functions | +Private Member Functions | +Private Attributes | +List of all members+++roboticslab::BasicCartesianControl Class Reference+ ++ +The BasicCartesianControl class implements ICartesianControl. +
+ ++
#include <BasicCartesianControl.hpp>
+Inheritance diagram for roboticslab::BasicCartesianControl:++++ + ++
+ +Classes
+ class StateWatcher + +
+ +Public Member Functions
+ bool stat (std::vector< double > &x, int *state=nullptr, double *timestamp=nullptr) override + Current state and position. More... + + bool inv (const std::vector< double > &xd, std::vector< double > &q) override + Inverse kinematics. More... + + bool movj (const std::vector< double > &xd) override + Move in joint space, absolute coordinates. More... + + bool relj (const std::vector< double > &xd) override + Move in joint space, relative coordinates. More... + + bool movl (const std::vector< double > &xd) override + Linear move to target position. More... + + bool movv (const std::vector< double > &xdotd) override + Linear move with given velocity. More... + + bool gcmp () override + Gravity compensation. More... + + bool forc (const std::vector< double > &fd) override + Force control. More... + + bool stopControl () override + Stop control. More... + + bool wait (double timeout) override + Wait until completion. More... + + bool tool (const std::vector< double > &x) override + Change tool. More... + + bool act (int command) override + Actuate tool. More... + + void movi (const std::vector< double > &x) override + Achieve pose. More... + + void twist (const std::vector< double > &xdot) override + Instantaneous velocity steps. More... + + void wrench (const std::vector< double > &w) override + Exert force. More... + + bool setParameter (int vocab, double value) override + Set a configuration parameter. More... + + bool getParameter (int vocab, double *value) override + Retrieve a configuration parameter. More... + + bool setParameters (const std::map< int, double > ¶ms) override + Set multiple configuration parameters. More... + + bool getParameters (std::map< int, double > ¶ms) override + Retrieve multiple configuration parameters. More... + + +void run () override + + +bool open (yarp::os::Searchable &config) override + + +bool close () override + + Public Member Functions inherited from roboticslab::ICartesianControl + +virtual ~ICartesianControl ()=default + Destructor. + +
+ +Private Member Functions
+ +int getCurrentState () const + + +void setCurrentState (int value) + + +bool checkJointLimits (const std::vector< double > &q) + + +bool checkJointLimits (const std::vector< double > &q, const std::vector< double > &qdot) + + +bool checkJointVelocities (const std::vector< double > &qdot) + + +bool doFailFastChecks (const std::vector< double > &initialQ) + + +bool checkControlModes (int mode) + + +bool setControlModes (int mode) + + +bool presetStreamingCommand (int command) + + +bool computeIsocronousSpeeds (const std::vector< double > &q, const std::vector< double > &qd, std::vector< double > &qdot) + + +void handleMovj (const std::vector< double > &q, const StateWatcher &watcher) + + +void handleMovlVel (const std::vector< double > &q, const StateWatcher &watcher) + + +void handleMovlPosd (const std::vector< double > &q, const StateWatcher &watcher) + + +void handleMovv (const std::vector< double > &q, const StateWatcher &watcher) + + +void handleGcmp (const std::vector< double > &q, const StateWatcher &watcher) + + +void handleForc (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const StateWatcher &watcher) + +
++ +Private Attributes
+ +yarp::dev::PolyDriver solverDevice + + +ICartesianSolver * iCartesianSolver {nullptr} + + +yarp::dev::PolyDriver robotDevice + + +yarp::dev::IControlMode * iControlMode {nullptr} + + +yarp::dev::IEncoders * iEncoders {nullptr} + + +yarp::dev::IPositionControl * iPositionControl {nullptr} + + +yarp::dev::IPositionDirect * iPositionDirect {nullptr} + + +yarp::dev::IPreciselyTimed * iPreciselyTimed {nullptr} + + +yarp::dev::ITorqueControl * iTorqueControl {nullptr} + + +yarp::dev::IVelocityControl * iVelocityControl {nullptr} + + +ICartesianSolver::reference_frame referenceFrame + + +double gain + + +double duration + + +int cmcPeriodMs + + +int waitPeriodMs + + +int numJoints + + +int currentState + + +int streamingCommand + + +bool usePosdMovl + + +bool enableFailFast + + +std::mutex stateMutex + + std::vector< double > vmoStored + + double movementStartTime + + std::vector< std::unique_ptr< KDL::Trajectory > > trajectories + + std::vector< double > fd + + +int encoderErrors {0} + + +std::atomic_bool cmcSuccess + + +std::vector< double > qMin + + +std::vector< double > qMax + + +std::vector< double > qdotMin + + +std::vector< double > qdotMax + + +std::vector< double > qRefSpeeds + Member Function Documentation
+ +◆ act()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::act +( +int +command ) ++ +overridevirtual +++Send control command to actuate the robot's tool, if available.
++
- Parameters
- +
++
++ command One of available actuator vocabs. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ forc()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::forc +( +const std::vector< double > & +fd ) ++ +overridevirtual +++Apply desired forces in task space.
++
- Parameters
- +
++
++ fd 6-element vector describing desired force exerted by the TCP in cartesian space; first three elements denote linear force (Newton), last three denote torque (Newton*meters). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ gcmp()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::gcmp +( +) ++ +overridevirtual +++Enable gravity compensation.
++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ getParameter()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::getParameter +( +int +vocab, ++ ++ + double * +value ++ ++ ) ++ +overridevirtual +++Ask the controller to retrieve a parameter of 'double' type.
++
- Parameters
- +
++
++ vocab YARP-encoded vocab (parameter key). + value Parameter value encoded as a double. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ getParameters()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::getParameters +( +std::map< int, double > & +params ) ++ +overridevirtual +++Ask the controller to retrieve all available parameters at once.
++
- Parameters
- +
++
++ params Dictionary of YARP-encoded vocabs as keys and their values. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ inv()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::inv +( +const std::vector< double > & +xd, ++ ++ + std::vector< double > & +q ++ ++ ) ++ +overridevirtual +++Perform inverse kinematics (using robot position as initial guess), but do not move.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + q Vector describing current position in joint space (meters or degrees). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ movi()
+ +++ +++
++ ++ ++
++ +void BasicCartesianControl::movi +( +const std::vector< double > & +x ) ++ +overridevirtual +++Move to desired position instantaneously, no further intermediate calculations are expected other than computing the inverse kinematics.
++ +
- Parameters
- +
++
++ x 6-element vector describing desired instantaneous pose in cartesian space; first three elements denote translation (meters), last three denote rotation (radians). Implements roboticslab::ICartesianControl.
+ +◆ movj()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::movj +( +const std::vector< double > & +xd ) ++ +overridevirtual +++Perform inverse kinematics and move to desired position in joint space using absolute coordinates.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). +
- See also
- relj (relative coordinates)
+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ movl()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::movl +( +const std::vector< double > & +xd ) ++ +overridevirtual +++Move to end position along a line trajectory.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ movv()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::movv +( +const std::vector< double > & +xdotd ) ++ +overridevirtual +++Move along a line with constant velocity.
++
- Parameters
- +
++
++ xdotd 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ relj()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::relj +( +const std::vector< double > & +xd ) ++ +overridevirtual +++Perform inverse kinematics and move to desired position in joint space using relative coordinates.
++
- Parameters
- +
++
++ xd 6-element vector describing desired offset in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). +
- See also
- movj (absolute coordinates)
+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ setParameter()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::setParameter +( +int +vocab, ++ ++ + double +value ++ ++ ) ++ +overridevirtual +++Ask the controller to store or update a parameter of 'double' type.
++
- Parameters
- +
++
++ vocab YARP-encoded vocab (parameter key). + value Parameter value encoded as a double. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ setParameters()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::setParameters +( +const std::map< int, double > & +params ) ++ +overridevirtual +++Ask the controller to store or update multiple parameters at once.
++
- Parameters
- +
++
++ params Dictionary of YARP-encoded vocabs as keys and their values. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ stat()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::stat +( +std::vector< double > & +x, ++ ++ + int * +state = +nullptr
,+ ++ + double * +timestamp = +nullptr
+ ++ ) ++ +overridevirtual +++Inform on control state, get robot position and perform forward kinematics.
++
- Parameters
- +
++
++ x 6-element vector describing current position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + state Identifier for a cartesian control vocab. + timestamp Remote encoder acquisition time. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ stopControl()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::stopControl +( +) ++ +overridevirtual +++Halt current control loop if any and cease movement.
++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ tool()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::tool +( +const std::vector< double > & +x ) ++ +overridevirtual +++Unload current tool if any and append new tool frame to the kinematic chain.
++
- Parameters
- +
++
++ x 6-element vector describing new tool tip with regard to current end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ twist()
+ +++ +++
++ ++ ++
++ +void BasicCartesianControl::twist +( +const std::vector< double > & +xdot ) ++ +overridevirtual +++Move in instantaneous velocity increments.
++ +
- Parameters
- +
++
++ xdot 6-element vector describing velocity increments in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). Implements roboticslab::ICartesianControl.
+ +◆ wait()
+ +++ +++
++ ++ ++
++ +bool BasicCartesianControl::wait +( +double +timeout ) ++ +overridevirtual +++Block execution until the movement is completed, errors occur or timeout is reached.
++
- Parameters
- +
++
++ timeout Timeout in seconds, '0.0' means no timeout. + +
- Returns
- true on success, false if errors occurred during the execution of the trajectory
Implements roboticslab::ICartesianControl.
+ +◆ wrench()
+ +++++
++ ++ ++
++ +void BasicCartesianControl::wrench +( +const std::vector< double > & +w ) ++ +overridevirtual +++Make the TCP exert the desired force instantaneously.
++ +
- Parameters
- +
++
++ w 6-element vector describing desired force exerted by the TCP in cartesian space; first three elements denote linear force (Newton), last three denote torque (Newton*meters). Implements roboticslab::ICartesianControl.
+ +Member Data Documentation
+ +◆ fd
+ +++ +++
++ ++ ++
++ +std::vector<double> roboticslab::BasicCartesianControl::fd ++private +++FORC desired Cartesian force
+ +◆ movementStartTime
+ +++ +++
++ ++ ++
++ +double roboticslab::BasicCartesianControl::movementStartTime ++private +++MOVL keep track of movement start time to know at what time of trajectory movement we are
+ +◆ trajectories
+ +++ +++
++ ++ ++
++ +std::vector<std::unique_ptr<KDL::Trajectory> > roboticslab::BasicCartesianControl::trajectories ++private +++MOVL store Cartesian trajectory
+ +◆ vmoStored
+ +++++
++ ++ ++
++ +std::vector<double> roboticslab::BasicCartesianControl::vmoStored ++private +++MOVJ store previous reference speeds
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/BasicCartesianControl/BasicCartesianControl.hpp
+- libraries/YarpPlugins/BasicCartesianControl/BasicCartesianControl.cpp
+- libraries/YarpPlugins/BasicCartesianControl/DeviceDriverImpl.cpp
+- libraries/YarpPlugins/BasicCartesianControl/ICartesianControlImpl.cpp
+- libraries/YarpPlugins/BasicCartesianControl/PeriodicThreadImpl.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1BasicCartesianControl.png b/classroboticslab_1_1BasicCartesianControl.png new file mode 100644 index 0000000000000000000000000000000000000000..b3bdd51d5225b283e7c244612fe2abef6112186f GIT binary patch literal 1533 zcma)62~bm46#X$;7!_ir))fMZ29==KnWU0G%N|b7?uhsAu)jDCt&bHf9*2UcG~HidFP#b=iK|=+&A}TxVs+E zS-Ng10027VgAN`5un0uByEYoZp9twh OSEDy3 z4jXa{!vu5>r;{6e77DXF_Jqmn{LR>>4aprQqneMv;aswl;>blfD661TPs8D;?Eh*C zW}rlKx4MNaW4HF#BcR5eUq(N*w;?&SRNoWA&(Hb}#&x(s&cQV_9&7TMB>d};er#{c zw47R>M}0!=n78A{(x( q}4S7D7oj>+*LM-#p%nu3`uH2xA1G; zDFTV Y1rkaB%$XfdJ|ezGA(jv`4Y+ zRaULg=CyA;)7i>GndAi<7wTV2F7f8y1^4x~K8Uqv225AUa9b57*i)rxWskkFR-!&( zP<$F(&n&QJP)IzHCET<0o~1wa<#vz!N@jp`47YFrY(9JXzMFh@;@&nb3)leu4wT$s z>9;YXpEPM6R+S7-;VnNn@Ha=%)I;NAt|EKbV8oA@lhX~+dl^yt$&p<`2O1xy_zpZD zQEL=x8Z%GH0U2h+rf=qzN}0F82WE655893ysRP}*?-UZ+88ev!ZhLd8;$V4x a!8v9vVkiDmADN6G^d2Ij>(rAh7Gt>B#_^0l za~$H!RS7y}z4B@duqed>QLF%V8$xJpVBHE0YB8Xr4I} ho0xQXIoZ2@tL z7-I;Wu$5~4FZuoLh1pM0hJZAc`;94tmS+4*^p9_^Pu5kdclk*!70i(uY4HbwK74G} z)>bj*CT_4D6VYn{2dr^le+KW8+=KYeu=JfhIXSWxg*;F+iJc*Nj&%^mX5DuPt6r4k zwetKK@1kYDcUh!VORQfEDvfLu(uC2nA@!w=(R*)Ujw${2?M`Hbu&?1(MWulNv4TqC zv5|g|mcEj8K4b-TmR492WV~V*nskh@L4$&tk85i6D#bf&lGrjzOyF9&jDwl+L_!7A zT<{vYTFj7_P+Se;GmCU#;C$ijp@46l1ZiF>Nz>;E``RCD^cfH$PiI8J6HS9qjK=2( z@6F2y+$eD;=_uPX+CW*+$F0v4DTz4=i6%1 q-GcYyLA8jr>%v%b%9OO*p!_{ VqAq;m6f&y;vZJd*ncY|CegP6B355Uv literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1BasicCartesianControl_1_1StateWatcher-members.html b/classroboticslab_1_1BasicCartesianControl_1_1StateWatcher-members.html new file mode 100644 index 000000000..d9532243b --- /dev/null +++ b/classroboticslab_1_1BasicCartesianControl_1_1StateWatcher-members.html @@ -0,0 +1,92 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::BasicCartesianControl::StateWatcher Member List+ ++ +This is the complete list of members for roboticslab::BasicCartesianControl::StateWatcher, including all inherited members.
++
+ handler (defined in roboticslab::BasicCartesianControl::StateWatcher) roboticslab::BasicCartesianControl::StateWatcher mutableprivate + StateWatcher(Fn &&fn) (defined in roboticslab::BasicCartesianControl::StateWatcher) roboticslab::BasicCartesianControl::StateWatcher inline + suppress() const (defined in roboticslab::BasicCartesianControl::StateWatcher) roboticslab::BasicCartesianControl::StateWatcher inline + ~StateWatcher() (defined in roboticslab::BasicCartesianControl::StateWatcher) roboticslab::BasicCartesianControl::StateWatcher inline
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1BasicCartesianControl_1_1StateWatcher.html b/classroboticslab_1_1BasicCartesianControl_1_1StateWatcher.html new file mode 100644 index 000000000..06bb6bf18 --- /dev/null +++ b/classroboticslab_1_1BasicCartesianControl_1_1StateWatcher.html @@ -0,0 +1,109 @@ + + + + + + + +kinematics-dynamics: roboticslab::BasicCartesianControl::StateWatcher Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::BasicCartesianControl::StateWatcher Class Reference++ ++
+ +Public Member Functions
+ +template<typename Fn > + StateWatcher (Fn &&fn) + + +void suppress () const + +
++ +Private Attributes
+ +std::function< void()> handler +
The documentation for this class was generated from the following file:+
+- libraries/YarpPlugins/BasicCartesianControl/BasicCartesianControl.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1CartesianControlClient-members.html b/classroboticslab_1_1CartesianControlClient-members.html new file mode 100644 index 000000000..2d0d4b831 --- /dev/null +++ b/classroboticslab_1_1CartesianControlClient-members.html @@ -0,0 +1,120 @@ + + + + + + + +kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::CartesianControlClient Member List+ ++ +This is the complete list of members for roboticslab::CartesianControlClient, including all inherited members.
++
+ act(int command) override roboticslab::CartesianControlClient virtual + close() override (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient + commandPort (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + fkInPort (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + fkStreamResponder (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + fkStreamTimeoutSecs (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + forc(const std::vector< double > &fd) override roboticslab::CartesianControlClient virtual + gcmp() override roboticslab::CartesianControlClient virtual + getParameter(int vocab, double *value) override roboticslab::CartesianControlClient virtual + getParameters(std::map< int, double > ¶ms) override roboticslab::CartesianControlClient virtual + handleRpcConsumerCmd(int vocab, const std::vector< double > &in) (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + handleRpcFunctionCmd(int vocab, const std::vector< double > &in, std::vector< double > &out) (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + handleRpcRunnableCmd(int vocab) (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + handleStreamingBiConsumerCmd(int vocab, const std::vector< double > &in1, double in2) (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + handleStreamingConsumerCmd(int vocab, const std::vector< double > &in) (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + inv(const std::vector< double > &xd, std::vector< double > &q) override roboticslab::CartesianControlClient virtual + movi(const std::vector< double > &x) override roboticslab::CartesianControlClient virtual + movj(const std::vector< double > &xd) override roboticslab::CartesianControlClient virtual + movl(const std::vector< double > &xd) override roboticslab::CartesianControlClient virtual + movv(const std::vector< double > &xdotd) override roboticslab::CartesianControlClient virtual + open(yarp::os::Searchable &config) override (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient + relj(const std::vector< double > &xd) override roboticslab::CartesianControlClient virtual + rpcClient (defined in roboticslab::CartesianControlClient) roboticslab::CartesianControlClient private + setParameter(int vocab, double value) override roboticslab::CartesianControlClient virtual + setParameters(const std::map< int, double > ¶ms) override roboticslab::CartesianControlClient virtual + stat(std::vector< double > &x, int *state=nullptr, double *timestamp=nullptr) override roboticslab::CartesianControlClient virtual + stopControl() override roboticslab::CartesianControlClient virtual + tool(const std::vector< double > &x) override roboticslab::CartesianControlClient virtual + twist(const std::vector< double > &xdot) override roboticslab::CartesianControlClient virtual + wait(double timeout) override roboticslab::CartesianControlClient virtual + wrench(const std::vector< double > &w) override roboticslab::CartesianControlClient virtual + ~ICartesianControl()=default roboticslab::ICartesianControl virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1CartesianControlClient.html b/classroboticslab_1_1CartesianControlClient.html new file mode 100644 index 000000000..a33e00108 --- /dev/null +++ b/classroboticslab_1_1CartesianControlClient.html @@ -0,0 +1,938 @@ + + + + + + + +kinematics-dynamics: roboticslab::CartesianControlClient Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::CartesianControlClient Class Reference+ ++ +The CartesianControlClient class implements ICartesianControl client side. +
+ ++
#include <CartesianControlClient.hpp>
+Inheritance diagram for roboticslab::CartesianControlClient:++++ + ++
+ +Public Member Functions
+ bool stat (std::vector< double > &x, int *state=nullptr, double *timestamp=nullptr) override + Current state and position. More... + + bool inv (const std::vector< double > &xd, std::vector< double > &q) override + Inverse kinematics. More... + + bool movj (const std::vector< double > &xd) override + Move in joint space, absolute coordinates. More... + + bool relj (const std::vector< double > &xd) override + Move in joint space, relative coordinates. More... + + bool movl (const std::vector< double > &xd) override + Linear move to target position. More... + + bool movv (const std::vector< double > &xdotd) override + Linear move with given velocity. More... + + bool gcmp () override + Gravity compensation. More... + + bool forc (const std::vector< double > &fd) override + Force control. More... + + bool stopControl () override + Stop control. More... + + bool wait (double timeout) override + Wait until completion. More... + + bool tool (const std::vector< double > &x) override + Change tool. More... + + bool act (int command) override + Actuate tool. More... + + void movi (const std::vector< double > &x) override + Achieve pose. More... + + void twist (const std::vector< double > &xdot) override + Instantaneous velocity steps. More... + + void wrench (const std::vector< double > &w) override + Exert force. More... + + bool setParameter (int vocab, double value) override + Set a configuration parameter. More... + + bool getParameter (int vocab, double *value) override + Retrieve a configuration parameter. More... + + bool setParameters (const std::map< int, double > ¶ms) override + Set multiple configuration parameters. More... + + bool getParameters (std::map< int, double > ¶ms) override + Retrieve multiple configuration parameters. More... + + +bool open (yarp::os::Searchable &config) override + + +bool close () override + + Public Member Functions inherited from roboticslab::ICartesianControl + +virtual ~ICartesianControl ()=default + Destructor. + +
++ +Private Attributes
+ +yarp::os::RpcClient rpcClient + + +yarp::os::BufferedPort< yarp::os::Bottle > fkInPort + + +yarp::os::BufferedPort< yarp::os::Bottle > commandPort + + +FkStreamResponder fkStreamResponder + + +double fkStreamTimeoutSecs + Member Function Documentation
+ +◆ act()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::act +( +int +command ) ++ +overridevirtual +++Send control command to actuate the robot's tool, if available.
++
- Parameters
- +
++
++ command One of available actuator vocabs. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ forc()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::forc +( +const std::vector< double > & +fd ) ++ +overridevirtual +++Apply desired forces in task space.
++
- Parameters
- +
++
++ fd 6-element vector describing desired force exerted by the TCP in cartesian space; first three elements denote linear force (Newton), last three denote torque (Newton*meters). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ gcmp()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::gcmp +( +) ++ +overridevirtual +++Enable gravity compensation.
++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ getParameter()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::getParameter +( +int +vocab, ++ ++ + double * +value ++ ++ ) ++ +overridevirtual +++Ask the controller to retrieve a parameter of 'double' type.
++
- Parameters
- +
++
++ vocab YARP-encoded vocab (parameter key). + value Parameter value encoded as a double. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ getParameters()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::getParameters +( +std::map< int, double > & +params ) ++ +overridevirtual +++Ask the controller to retrieve all available parameters at once.
++
- Parameters
- +
++
++ params Dictionary of YARP-encoded vocabs as keys and their values. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ inv()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::inv +( +const std::vector< double > & +xd, ++ ++ + std::vector< double > & +q ++ ++ ) ++ +overridevirtual +++Perform inverse kinematics (using robot position as initial guess), but do not move.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + q Vector describing current position in joint space (meters or degrees). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ movi()
+ +++ +++
++ ++ ++
++ +void CartesianControlClient::movi +( +const std::vector< double > & +x ) ++ +overridevirtual +++Move to desired position instantaneously, no further intermediate calculations are expected other than computing the inverse kinematics.
++ +
- Parameters
- +
++
++ x 6-element vector describing desired instantaneous pose in cartesian space; first three elements denote translation (meters), last three denote rotation (radians). Implements roboticslab::ICartesianControl.
+ +◆ movj()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::movj +( +const std::vector< double > & +xd ) ++ +overridevirtual +++Perform inverse kinematics and move to desired position in joint space using absolute coordinates.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). +
- See also
- relj (relative coordinates)
+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ movl()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::movl +( +const std::vector< double > & +xd ) ++ +overridevirtual +++Move to end position along a line trajectory.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ movv()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::movv +( +const std::vector< double > & +xdotd ) ++ +overridevirtual +++Move along a line with constant velocity.
++
- Parameters
- +
++
++ xdotd 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ relj()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::relj +( +const std::vector< double > & +xd ) ++ +overridevirtual +++Perform inverse kinematics and move to desired position in joint space using relative coordinates.
++
- Parameters
- +
++
++ xd 6-element vector describing desired offset in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). +
- See also
- movj (absolute coordinates)
+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ setParameter()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::setParameter +( +int +vocab, ++ ++ + double +value ++ ++ ) ++ +overridevirtual +++Ask the controller to store or update a parameter of 'double' type.
++
- Parameters
- +
++
++ vocab YARP-encoded vocab (parameter key). + value Parameter value encoded as a double. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ setParameters()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::setParameters +( +const std::map< int, double > & +params ) ++ +overridevirtual +++Ask the controller to store or update multiple parameters at once.
++
- Parameters
- +
++
++ params Dictionary of YARP-encoded vocabs as keys and their values. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ stat()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::stat +( +std::vector< double > & +x, ++ ++ + int * +state = +nullptr
,+ ++ + double * +timestamp = +nullptr
+ ++ ) ++ +overridevirtual +++Inform on control state, get robot position and perform forward kinematics.
++
- Parameters
- +
++
++ x 6-element vector describing current position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + state Identifier for a cartesian control vocab. + timestamp Remote encoder acquisition time. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ stopControl()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::stopControl +( +) ++ +overridevirtual +++Halt current control loop if any and cease movement.
++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ tool()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::tool +( +const std::vector< double > & +x ) ++ +overridevirtual +++Unload current tool if any and append new tool frame to the kinematic chain.
++
- Parameters
- +
++
++ x 6-element vector describing new tool tip with regard to current end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianControl.
+ +◆ twist()
+ +++ +++
++ ++ ++
++ +void CartesianControlClient::twist +( +const std::vector< double > & +xdot ) ++ +overridevirtual +++Move in instantaneous velocity increments.
++ +
- Parameters
- +
++
++ xdot 6-element vector describing velocity increments in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). Implements roboticslab::ICartesianControl.
+ +◆ wait()
+ +++ +++
++ ++ ++
++ +bool CartesianControlClient::wait +( +double +timeout ) ++ +overridevirtual +++Block execution until the movement is completed, errors occur or timeout is reached.
++
- Parameters
- +
++
++ timeout Timeout in seconds, '0.0' means no timeout. + +
- Returns
- true on success, false if errors occurred during the execution of the trajectory
Implements roboticslab::ICartesianControl.
+ +◆ wrench()
+ +++++
++ ++ ++
++ +void CartesianControlClient::wrench +( +const std::vector< double > & +w ) ++ +overridevirtual +++Make the TCP exert the desired force instantaneously.
++ +
- Parameters
- +
++
++ w 6-element vector describing desired force exerted by the TCP in cartesian space; first three elements denote linear force (Newton), last three denote torque (Newton*meters). Implements roboticslab::ICartesianControl.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/CartesianControlClient/CartesianControlClient.hpp
+- libraries/YarpPlugins/CartesianControlClient/DeviceDriverImpl.cpp
+- libraries/YarpPlugins/CartesianControlClient/ICartesianControlImpl.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1CartesianControlClient.png b/classroboticslab_1_1CartesianControlClient.png new file mode 100644 index 0000000000000000000000000000000000000000..447db861aa887c694c0c7e93edd5b957720084f2 GIT binary patch literal 1166 zcmeAS@N?(olHy`uVBq!ia0y~yU|a!Y2XHV0$?98zMnFm;z$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-opyHMb^{BF{Fa=?c9fxRx9wh@xS!>{4c*I zT2#?t>)qQg^D=hTtZr1v>N~Q3$&^bjN&jQ@rk{3ETDi(^vDB1~6DC{%N=kep3tU`e zG#olRECL#Y1Pd3KH&sp0xLdz!RoLArUw^-h-OHra=^<%;+V9G?$jF}Gce^}n&%G%O zd2Y_}n`edk>wjzJuX>gIS6oBT@G-*`E^n7rhU*IYBV5i@sIS<4dC}LU{;%UjtE}~3 zM~d#x+jwr<`R7+vZ$6l{YSnQo)~VChZr*c!`{g~B*XmEF%scJUlfD1@rvKX_`3~P+ zQCiizI^Wx6$<^!yUT@8=E?zVJaGJ^Ht6jDsH`}j=gxX%ST(S0yckH)C@6*>_+&L|C z^KQ8(uhxgSUv*TAa9MJ(+uAEMcroLNk9|^2n>MNyb9;q;4e@`Y5j;_F#ox7hZIzdA zC-nvM9kLEE`#Ia;sa`2ZR=j>Bx5nm(#;E7k0XH}9TDI!d#(ONMzN~W&cwKc +r0cEvO4REL>1t5&&JiLclv+UIDi^GV~+bcfKb`TGKwt=gR{ ze*C`1V;hdpP}?is3*!E{-4x;Pn&a~7VpZ?Yy}TiH5A!X)-FnuyCGqyJDGP&3_tY8s z=d4}(Bl6BoZ;)dfcbPAFT4I^ YcwMyYduM2PgdiKkrM&Rmx*3>YUBd=To z+=W-I+P^Ls7?*NiYhDM38Z!ao_V^c-6^+5b2>m%@US930RlsNt36<4wSh>n7pdl!< zbOFQCRj(Y3o4qubR)#e0iqV^1$?}0SmND&04!_s}hJX9kUH9}n`z?Wy>%sfi-z _twv6)f*UCA2={_9cToKFtchfuyX}404-nuCL=~*Dq<>F08()M^;fIq z3{DLC+F9&GD92&mpZ*}POeMxMD|gE2BAX6UzK?s#++C4t{Ws2@TJoFmtHtKyfwj+0 z6&AQxK058lm}bMYHB5NLvC5Zjfrm|Q7Ebw8?XYwy%Wdi1`yO_e{@?ENY-fz=<6EC@ z&)IHUAaUDm?d9y4TK}Vk*6;7^X9=nM^LNXY^n{XizN*`U?8LJdy;@+lgU$5JCsFHF zdZz@gyo=@8tm-rM*iW{NvKq60icC2vwBS|mbm{ZS0Z&)&H(h^K=GZ@pD;nMnM)8aG z&DrKvJMsMYL;YnT<-PjMUq6|zI%le5#AzJ0-f+Ji`;x4h+}FFePliQyW;`ge-QP^y z*^xb6>KNamU*QYRgvoBb6ZrI>>;i^A+UNm+91kYOE2ad^a%YggY+oq8d`VvPj(A|< O!QkoY=d#Wzp$PyP!x7s6 literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1CartesianControlServer-members.html b/classroboticslab_1_1CartesianControlServer-members.html new file mode 100644 index 000000000..de8574524 --- /dev/null +++ b/classroboticslab_1_1CartesianControlServer-members.html @@ -0,0 +1,102 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::CartesianControlServer Member List+ ++ +This is the complete list of members for roboticslab::CartesianControlServer, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1CartesianControlServer.html b/classroboticslab_1_1CartesianControlServer.html new file mode 100644 index 000000000..9c5f59cf4 --- /dev/null +++ b/classroboticslab_1_1CartesianControlServer.html @@ -0,0 +1,151 @@ + + + + + + + +kinematics-dynamics: roboticslab::CartesianControlServer Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::CartesianControlServer Class Reference+ ++ +The CartesianControlServer class implements ICartesianControl server side. +
+ ++
#include <CartesianControlServer.hpp>
+Inheritance diagram for roboticslab::CartesianControlServer:++++ ++
+ +Public Member Functions
+ +bool open (yarp::os::Searchable &config) override + + +bool close () override + + +void run () override + +
++ +Protected Attributes
+ +yarp::dev::PolyDriver cartesianControlDevice + + +yarp::os::RpcServer rpcServer + + +yarp::os::RpcServer rpcTransformServer + + +yarp::os::BufferedPort< yarp::os::Bottle > fkOutPort + + +yarp::os::BufferedPort< yarp::os::Bottle > commandPort + + +roboticslab::ICartesianControl * iCartesianControl {nullptr} + + +RpcResponder * rpcResponder {nullptr} + + +RpcResponder * rpcTransformResponder {nullptr} + + +StreamResponder * streamResponder {nullptr} + + +bool fkStreamEnabled +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/CartesianControlServer/CartesianControlServer.hpp
+- libraries/YarpPlugins/CartesianControlServer/DeviceDriverImpl.cpp
+- libraries/YarpPlugins/CartesianControlServer/PeriodicThreadImpl.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1CartesianControlServer.png b/classroboticslab_1_1CartesianControlServer.png new file mode 100644 index 0000000000000000000000000000000000000000..3bf5876e05fd4e265d371b56e89a336be6b12102 GIT binary patch literal 1120 zcmeAS@N?(olHy`uVBq!ia0y~yVB7{|2XHV0NvFLFGJ%vtfKQ0)|NsAi%olIImi8Z- z0AzvjfddCvJMYK?xf~@ye!&btMIdnXREQA+1M_=N7srqa#u(1l->B>ND%++mYL+D4b-lRb4veSo2$T5UJw1I52DSl8YR )%$E&f3Dyom*VJSa-hFQAI6J_dQGA`c$1&y!mSPqTJp)m+E(Ki^*0! zc_F&5Hur15(O>KC<+|P8`u(f-Ex%>g<&?gC{*{-_pW$isAph1X%bBXd`_8_8d2M}b z(4v=jIHxXgzPEU-Ugi0wB`KCw+daLe`R}{E?Wh^=-rB2G7CMo7()V^~ojdmJ;jIbh zxpqJ9djDt3w#Q$l%`E%#^ySTYW?Qz`6#v@1r9ZR!nu6zl*7e!N6Yp(x4w|&H?b0*N zz1+8~{<>XyrnT3*eTj K@tJp#8>PRcIyopeVK#xTtE)?E5fW6RPhmkJnax}^^s z;F%Sl!TjOaTeEH39Y1sDGTfW7N$S?^1wUKO7}|Sk-S}n$r3>5%;Nx%0cJuN&FnkbS z)WZNw9%SM7ionFioRHCW#$XHM4rL_#SbgiwWiQvgoBV#Ydgd?2Q?Fm_lfT-x=Q{ra z#Vxk)FTA|9()@tk-WB%@{?;+@?q95HtMxhJ+~xhno$uto+n)}afBVxV{ax40rk^{_ zRw)(je)eo}jOFq>hW&Q^X|wBmZU@b9U%1UE_y1LM-|*n;YiB%9@(qzpX}T^N)En2c zW9`EDTe+ozQn}IZYm&EhYlhYD@yl7f)+n(__`M7lNmjCm=$h_Sf z!?)ag_-SLtEGOyC8qwD5uI%ou!Jq2hWaf6Oy;j?Q?^O!Jv8Bu3e%gIjtmrw%>z=9E z_qOg_ue&=cy8g$6J@RIsx%A#|D_&uzBJW+B8=<`I#MT3!H(u*~>#~)5QHJT?GrKRD s{GDXhkccmoe=z21E;W&1xc@}H)BC^fn$L+Dz~X?x)78&qol`;+05MrD^#A|> literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1CentroidTransform-members.html b/classroboticslab_1_1CentroidTransform-members.html new file mode 100644 index 000000000..089e628d8 --- /dev/null +++ b/classroboticslab_1_1CentroidTransform-members.html @@ -0,0 +1,99 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::CentroidTransform Member List+ ++ +This is the complete list of members for roboticslab::CentroidTransform, including all inherited members.
++
+ acceptBottle(yarp::os::Bottle *b) roboticslab::CentroidTransform + CentroidTransform() roboticslab::CentroidTransform + lastAcquisition (defined in roboticslab::CentroidTransform) roboticslab::CentroidTransform private + lastBottle (defined in roboticslab::CentroidTransform) roboticslab::CentroidTransform private + permanenceTime (defined in roboticslab::CentroidTransform) roboticslab::CentroidTransform private + processStoredBottle() const roboticslab::CentroidTransform + registerStreamingDevice(StreamingDevice *streamingDevice) roboticslab::CentroidTransform inline + rot_tcp_camera (defined in roboticslab::CentroidTransform) roboticslab::CentroidTransform private + setPermanenceTime(double permanenceTime) roboticslab::CentroidTransform inline + setTcpToCameraRotation(yarp::os::Bottle *b) roboticslab::CentroidTransform + streamingDevice (defined in roboticslab::CentroidTransform) roboticslab::CentroidTransform private
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1CentroidTransform.html b/classroboticslab_1_1CentroidTransform.html new file mode 100644 index 000000000..111fabb12 --- /dev/null +++ b/classroboticslab_1_1CentroidTransform.html @@ -0,0 +1,144 @@ + + + + + + + +kinematics-dynamics: roboticslab::CentroidTransform Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::CentroidTransform Class Reference+ ++ +... +
+ ++
#include <CentroidTransform.hpp>
+
+ +Public Member Functions
+ + CentroidTransform () + Constructor. + + +void registerStreamingDevice (StreamingDevice *streamingDevice) + Register handle to device. + + +bool setTcpToCameraRotation (yarp::os::Bottle *b) + Set TCP to camera frame. + + +void setPermanenceTime (double permanenceTime) + Set new permanence time. + + +bool acceptBottle (yarp::os::Bottle *b) + Register or dismiss incoming bottle. + + +bool processStoredBottle () const + Process last stored bottle. + +
++ +Private Attributes
+ +StreamingDevice * streamingDevice + + +double permanenceTime + + +yarp::os::Bottle lastBottle + + +yarp::os::Stamp lastAcquisition + + +KDL::Rotation rot_tcp_camera +
The documentation for this class was generated from the following files:+
+- programs/streamingDeviceController/CentroidTransform.hpp
+- programs/streamingDeviceController/CentroidTransform.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainFkSolverPos__ST-members.html b/classroboticslab_1_1ChainFkSolverPos__ST-members.html new file mode 100644 index 000000000..73e90ce6f --- /dev/null +++ b/classroboticslab_1_1ChainFkSolverPos__ST-members.html @@ -0,0 +1,98 @@ + + + + + + + +kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ChainFkSolverPos_ST Member List+ ++ +This is the complete list of members for roboticslab::ChainFkSolverPos_ST, including all inherited members.
++
+ chain (defined in roboticslab::ChainFkSolverPos_ST) roboticslab::ChainFkSolverPos_ST private + ChainFkSolverPos_ST(const KDL::Chain &chain) (defined in roboticslab::ChainFkSolverPos_ST) roboticslab::ChainFkSolverPos_ST private + create(const KDL::Chain &chain) roboticslab::ChainFkSolverPos_ST static + E_ILLEGAL_ARGUMENT_SIZE roboticslab::ChainFkSolverPos_ST static + E_OPERATION_NOT_SUPPORTED roboticslab::ChainFkSolverPos_ST static + JntToCart(const KDL::JntArray &q_in, KDL::Frame &p_out, int segmentNr=-1) override roboticslab::ChainFkSolverPos_ST + JntToCart(const KDL::JntArray &q_in, std::vector< KDL::Frame > &p_out, int segmentNr=-1) override roboticslab::ChainFkSolverPos_ST + poe (defined in roboticslab::ChainFkSolverPos_ST) roboticslab::ChainFkSolverPos_ST private + strError(const int error) const override roboticslab::ChainFkSolverPos_ST + updateInternalDataStructures() override roboticslab::ChainFkSolverPos_ST
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainFkSolverPos__ST.html b/classroboticslab_1_1ChainFkSolverPos__ST.html new file mode 100644 index 000000000..799d95486 --- /dev/null +++ b/classroboticslab_1_1ChainFkSolverPos__ST.html @@ -0,0 +1,353 @@ + + + + + + + +kinematics-dynamics: roboticslab::ChainFkSolverPos_ST Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Static Public Member Functions | +Static Public Attributes | +Private Member Functions | +Private Attributes | +List of all members+++roboticslab::ChainFkSolverPos_ST Class Reference+ ++ +FK solver using Screw Theory. + More...
+ ++
#include <ChainFkSolverPos_ST.hpp>
+Inheritance diagram for roboticslab::ChainFkSolverPos_ST:++++ ++
+ +Public Member Functions
+ int JntToCart (const KDL::JntArray &q_in, KDL::Frame &p_out, int segmentNr=-1) override + Perform FK on the selected segment. More... + + int JntToCart (const KDL::JntArray &q_in, std::vector< KDL::Frame > &p_out, int segmentNr=-1) override + Perform FK on the selected segments (unsupported) More... + + void updateInternalDataStructures () override + Update the internal data structures. More... + + const char * strError (const int error) const override + Return a description of the last error. More... + +
+ +Static Public Member Functions
+ static KDL::ChainFkSolverPos * create (const KDL::Chain &chain) + Create an instance of ChainFkSolverPos_ST. More... + +
+ +Static Public Attributes
+ +static const int E_OPERATION_NOT_SUPPORTED = -100 + Return code, operation not supported. + + +static const int E_ILLEGAL_ARGUMENT_SIZE = -101 + Return code, input vector size does not match expected output vector size. + +
+ +Private Member Functions
+ + ChainFkSolverPos_ST (const KDL::Chain &chain) + +
++ +Private Attributes
+ +const KDL::Chain & chain + + +PoeExpression poe + Detailed Description
+Implementation of a forward position kinematics algorithm. This is a thin wrapper around PoeExpression. Methods that retrieve resulting frames for intermediate links are not supported.
+Member Function Documentation
+ +◆ create()
+ +++ +++
++ ++ ++
++ +KDL::ChainFkSolverPos * ChainFkSolverPos_ST::create +( +const KDL::Chain & +chain ) ++ +static ++++
- Parameters
- +
++
++ chain Input kinematic chain. + +
- Returns
- Solver instance.
◆ JntToCart() [1/2]
+ +++ +++
++ ++ ++
++ +int ChainFkSolverPos_ST::JntToCart +( +const KDL::JntArray & +q_in, ++ ++ + KDL::Frame & +p_out, ++ ++ + int +segmentNr = +-1
+ ++ ) ++ +override ++++
- Parameters
- +
++
++ q_in Input joint coordinates. + p_out Reference to output cartesian pose. + segmentNr Desired segment frame (unsupported). + +
- Returns
- Return code, < 0 if something went wrong.
◆ JntToCart() [2/2]
+ +++ +++
++ ++ ++
++ +int ChainFkSolverPos_ST::JntToCart +( +const KDL::JntArray & +q_in, ++ ++ + std::vector< KDL::Frame > & +p_out, ++ ++ + int +segmentNr = +-1
+ ++ ) ++ +override ++++
- Parameters
- +
++
++ q_in Input joint coordinates. + p_out Reference to a vector of output cartesian poses for all segments. + segmentNr Last selected segment frame. +
- Returns
- Return code, < 0 if something went wrong.
+ +
- Warning
- Unsupported, will return E_OPERATION_NOT_SUPPORTED.
◆ strError()
+ +++ +++
++ ++ ++
++ +const char * ChainFkSolverPos_ST::strError +( +const int +error ) +const ++override ++++
- Parameters
- +
++
++ error Error code. + +
- Returns
- If
error
is known then a description oferror
, otherwise "UNKNOWN ERROR".◆ updateInternalDataStructures()
+ +++++
++ ++ ++
++ +void ChainFkSolverPos_ST::updateInternalDataStructures +( +) ++ +override +++Update the internal data structures. This is required if the number of segments or number of joints of a chain has changed. This provides a single point of contact for solver memory allocations.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/KdlSolver/ChainFkSolverPos_ST.hpp
+- libraries/YarpPlugins/KdlSolver/ChainFkSolverPos_ST.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainFkSolverPos__ST.png b/classroboticslab_1_1ChainFkSolverPos__ST.png new file mode 100644 index 0000000000000000000000000000000000000000..133627f3417d83698ce3334740b0f0257718115f GIT binary patch literal 779 zcmeAS@N?(olHy`uVBq!ia0vp^=YcqYgBeJ6=3o2`q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0W_h|ehEy=VoqMt9wE~X|zy8ht{~yo3 z#ik-DV{U#~k!Ny_w1b$H(~0#EZuBTXt6GY_Igm^7UEHkXsR5Yt<~1Rw^cMA@FBnd#uXJ<-2Xv zT26n?oG>dpd{T_x+Ox^;`XeVT3IA2H_i94Yf`u7MuFZ-&rYxCWwOoGBlT5XJ*KY5e z^2VwC`Qfi({44L@Ust(Cc=rn#^9sA#davJFZ;wrzQv3hOye&)roSD3S^6UK6=3hnJ zz8?;MRr8ErcvRW*an?tVOFO`RReR#8xwMkygLoB#&ytfBa{W6S)E-wp@?kZRKL0A8 zK{@*)L(l4?%m(Yk_zwVeFaWg@5Xje9Iz>&0GeJsMuAy*i1;eq>$;bU|-7hZdJACR| zq7+|@zOHe5>FuetEDM$%jxMX7&0cU{?z~yn2lv-|zK3Qtc{i-s6~?1={+ssl^5tj0 z%sxA@aZ-K$E9D}-GKca!>mt+jY1h7s1#w<~ci(^Y! <)PRf 1( + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ChainIkSolverPos_ID Member List+ ++ +This is the complete list of members for roboticslab::ChainIkSolverPos_ID, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainIkSolverPos__ID.html b/classroboticslab_1_1ChainIkSolverPos__ID.html new file mode 100644 index 000000000..85c64f722 --- /dev/null +++ b/classroboticslab_1_1ChainIkSolverPos__ID.html @@ -0,0 +1,327 @@ + + + + + + + +kinematics-dynamics: roboticslab::ChainIkSolverPos_ID Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Static Public Attributes | +Private Member Functions | +Private Attributes | +List of all members+++roboticslab::ChainIkSolverPos_ID Class Reference+ ++ +IK solver using infinitesimal displacement twists. + More...
+ ++
#include <ChainIkSolverPos_ID.hpp>
+Inheritance diagram for roboticslab::ChainIkSolverPos_ID:++++ ++
+ +Public Member Functions
+ ChainIkSolverPos_ID (const KDL::Chain &chain, const KDL::JntArray &q_min, const KDL::JntArray &q_max, KDL::ChainFkSolverPos &fksolver) + Constructor. More... + + int CartToJnt (const KDL::JntArray &q_init, const KDL::Frame &p_in, KDL::JntArray &q_out) override + Calculate inverse position kinematics. More... + + void updateInternalDataStructures () override + Update the internal data structures. More... + + const char * strError (const int error) const override + Return a description of the last error. More... + +
+ +Static Public Attributes
+ +static const int E_FKSOLVERPOS_FAILED = -100 + Return code, internal FK position solver failed. + + +static const int E_JACSOLVER_FAILED = -101 + Return code, internal Jacobian solver failed. + +
+ +Private Member Functions
+ +KDL::JntArray computeDiffInvKin (const KDL::Twist &delta_twist) + Detailed Description
+Re-implementation of KDL::ChainIkSolverPos_NR_JL in which only one iteration step is performed. Aimed to provide a quick means of obtaining IK whenever the displacements are small enough.
+Constructor & Destructor Documentation
+ +◆ ChainIkSolverPos_ID()
+ +++++
++ +ChainIkSolverPos_ID::ChainIkSolverPos_ID +( +const KDL::Chain & +chain, ++ ++ + const KDL::JntArray & +q_min, ++ ++ + const KDL::JntArray & +q_max, ++ ++ + KDL::ChainFkSolverPos & +fksolver ++ ++ ) ++ +++ +
- Parameters
- +
++
++ chain The chain to calculate the inverse position for. + q_min The minimum joint positions. + q_max The maximum joint positions. + fksolver A forward position kinematics solver. + iksolver An inverse velocity kinematics solver. Member Function Documentation
+ +◆ CartToJnt()
+ +++ +++
++ ++ ++
++ +int ChainIkSolverPos_ID::CartToJnt +( +const KDL::JntArray & +q_init, ++ ++ + const KDL::Frame & +p_in, ++ ++ + KDL::JntArray & +q_out ++ ++ ) ++ +override ++++
- Parameters
- +
++
++ q_init Initial guess of the joint coordinates (unused). + p_in Input cartesian coordinates. + q_out Output joint coordinates. + +
- Returns
- Return code, E_SOLUTION_NOT_FOUND if there is no solution or E_NOT_REACHABLE if at least one of them is out of reach.
◆ strError()
+ +++ +++
++ ++ ++
++ +const char * ChainIkSolverPos_ID::strError +( +const int +error ) +const ++override ++++
- Parameters
- +
++
++ error Error code. + +
- Returns
- If
error
is known then a description oferror
, otherwise "UNKNOWN ERROR".◆ updateInternalDataStructures()
+ +++++
++ ++ ++
++ +void ChainIkSolverPos_ID::updateInternalDataStructures +( +) ++ +override +++Update the internal data structures. This is required if the number of segments or number of joints of a chain has changed. This provides a single point of contact for solver memory allocations.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/KdlSolver/ChainIkSolverPos_ID.hpp
+- libraries/YarpPlugins/KdlSolver/ChainIkSolverPos_ID.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainIkSolverPos__ID.png b/classroboticslab_1_1ChainIkSolverPos__ID.png new file mode 100644 index 0000000000000000000000000000000000000000..ec79b88f9de027e31b0026f5db0b305830198bc7 GIT binary patch literal 740 zcmeAS@N?(olHy`uVBq!ia0vp^$ALJ2gBeK9+A)zINJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~6??ikhEy=VoqN0QwE~Z;xc=t<|NH&D zg*WU}S$Rcy;)z#p1jUp0@K~&0GUXDp%cLc@wJlUKWm(%*)-Lvzx%uR)zIdBa!ZZ8B zbz8pO)1I4{e$nc;-S+90UJE97WN(=CBxKnv86S&h!IMlbhVnh$+qHS`_6UxLf$9?YPY6m5(y#uanuib@^xJS=H6K_a1of z+q;tgxaE&Gk e%Dzx zcbRi s>pz`8`Y8Wsp0R?~yEh+iR9zL_ z`Yvv6ojpU|vfYJGoF!_WKDI#$llSi + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ChainIkSolverPos_ST Member List+ ++ +This is the complete list of members for roboticslab::ChainIkSolverPos_ST, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainIkSolverPos__ST.html b/classroboticslab_1_1ChainIkSolverPos__ST.html new file mode 100644 index 000000000..8dedf4d7b --- /dev/null +++ b/classroboticslab_1_1ChainIkSolverPos__ST.html @@ -0,0 +1,320 @@ + + + + + + + +kinematics-dynamics: roboticslab::ChainIkSolverPos_ST Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Static Public Member Functions | +Static Public Attributes | +Private Member Functions | +Private Attributes | +List of all members+++roboticslab::ChainIkSolverPos_ST Class Reference+ ++ +IK solver using Screw Theory. + More...
+ ++
#include <ChainIkSolverPos_ST.hpp>
+Inheritance diagram for roboticslab::ChainIkSolverPos_ST:++++ ++
+ +Public Member Functions
+ +virtual ~ChainIkSolverPos_ST () + Destructor. + + int CartToJnt (const KDL::JntArray &q_init, const KDL::Frame &p_in, KDL::JntArray &q_out) override + Calculate inverse position kinematics. More... + + void updateInternalDataStructures () override + Update the internal data structures. More... + + const char * strError (const int error) const override + Return a description of the last error. More... + +
+ +Static Public Member Functions
+ static KDL::ChainIkSolverPos * create (const KDL::Chain &chain, const ConfigurationSelectorFactory &configFactory) + Create an instance of ChainIkSolverPos_ST. More... + +
+ +Static Public Attributes
+ +static const int E_SOLUTION_NOT_FOUND = -100 + Return code, IK solution not found. + + +static const int E_OUT_OF_LIMITS = -101 + Return code, target pose out of robot limits. + + +static const int E_NOT_REACHABLE = 100 + Return code, solution out of reach. + +
+ +Private Member Functions
+ + ChainIkSolverPos_ST (const KDL::Chain &chain, ScrewTheoryIkProblem *problem, ConfigurationSelector *config) + +
++ +Private Attributes
+ +const KDL::Chain & chain + + +ScrewTheoryIkProblem * problem + + +ConfigurationSelector * config + Detailed Description
+Implementation of an inverse position kinematics algorithm. This is a thin wrapper around ScrewTheoryIkProblem. Non-exhaustive tests on TEO's (UC3M) right arm kinematic chain reveal that this is 5-10 faster than a numeric Newton-Raphson solver as provided by KDL (e.g. KDL::ChainIkSolverPos_NR_JL).
+Member Function Documentation
+ +◆ CartToJnt()
+ +++ +++
++ ++ ++
++ +int ChainIkSolverPos_ST::CartToJnt +( +const KDL::JntArray & +q_init, ++ ++ + const KDL::Frame & +p_in, ++ ++ + KDL::JntArray & +q_out ++ ++ ) ++ +override ++++
- Parameters
- +
++
++ q_init Initial guess of the joint coordinates (unused). + p_in Input cartesian coordinates. + q_out Output joint coordinates. + +
- Returns
- Return code, E_SOLUTION_NOT_FOUND if there is no solution or E_NOT_REACHABLE if at least one of them is out of reach.
◆ create()
+ +++ +++
++ ++ ++
++ +KDL::ChainIkSolverPos * ChainIkSolverPos_ST::create +( +const KDL::Chain & +chain, ++ ++ + const ConfigurationSelectorFactory & +configFactory ++ ++ ) ++ +static ++++
- Parameters
- +
++
++ chain Input kinematic chain. + configFactory Instance of an abstract factory class that instantiates a ConfigurationSelector. + +
- Returns
- Solver instance or null if no solution was found.
◆ strError()
+ +++ +++
++ ++ ++
++ +const char * ChainIkSolverPos_ST::strError +( +const int +error ) +const ++override ++++
- Parameters
- +
++
++ error Error code. + +
- Returns
- If
error
is known then a description oferror
, otherwise "UNKNOWN ERROR".◆ updateInternalDataStructures()
+ +++++
++ ++ ++
++ +void ChainIkSolverPos_ST::updateInternalDataStructures +( +) ++ +override +++Update the internal data structures. This is required if the number of segments or number of joints of a chain has changed. This provides a single point of contact for solver memory allocations.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/KdlSolver/ChainIkSolverPos_ST.hpp
+- libraries/YarpPlugins/KdlSolver/ChainIkSolverPos_ST.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ChainIkSolverPos__ST.png b/classroboticslab_1_1ChainIkSolverPos__ST.png new file mode 100644 index 0000000000000000000000000000000000000000..2a56c99fde2298bb26aadd6b985fe933185eef0e GIT binary patch literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^r+_$sgBeKXyGiW_QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;3KuYd3V|HoHv zIXOA5etj MT$J-%MMyRB66Xv)=h)9oCj?`>0@-OGFWW2MsmV|Q65nOqJP5k7P}RMNq0 zMb~epqjN+rt9riw@|yQr)69i)7}*|{-&1+HcAw?9{6II$`^xhc&AEQnU&C|#*G$8@ z_=C$d%J$r~KKGpA>GkxbVk@FT-^gwHek!nPTh9E2w<_Yx&emR?x>G*iz_V)|$VYIm zMR6~k5;RTV!2avJ3A}5Yi+1ZC-o$rmZi?u%)__e-j7NeOF}RR`YZe4~MLLT#h)&U9 zxCp`~E+6N=%irr;{l03OlTkrI(N^icy*F-g8C=@@ensr{K!)#U0=8{u{Kfgypr+U8 zy;1Ge1q*Z5DzEgvz+AKW=ELl3dsp_Ku&iL(GA-Fu?Alu~-`*>Jw*Jc;Gyi>imidY4 z+s9>g2kLq@ZcMaXKkvl)Li5IlQtQ0l=TC9pY=7s<-s|U%Id6@4rtxge488iOe|$%C zH*D9qn$}P>FH@lIIq!z^f7Zk}%}gomFgo>9?xV=lJ?oa;ojXBWLw^2LN7mVkt{kaw zE pI0_RGp41eh=xJYD@<);T3K0RX)EW + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelector Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelector, including all inherited members.
++
+ _qMax (defined in roboticslab::ConfigurationSelector) roboticslab::ConfigurationSelector protected + _qMin (defined in roboticslab::ConfigurationSelector) roboticslab::ConfigurationSelector protected + configs (defined in roboticslab::ConfigurationSelector) roboticslab::ConfigurationSelector protected + ConfigurationSelector(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelector inline + configure(const std::vector< KDL::JntArray > &solutions) roboticslab::ConfigurationSelector virtual + findOptimalConfiguration(const KDL::JntArray &qGuess)=0 roboticslab::ConfigurationSelector pure virtual + optimalConfig (defined in roboticslab::ConfigurationSelector) roboticslab::ConfigurationSelector protected + retrievePose(KDL::JntArray &q) const roboticslab::ConfigurationSelector inlinevirtual + ~ConfigurationSelector()=default roboticslab::ConfigurationSelector virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelector.html b/classroboticslab_1_1ConfigurationSelector.html new file mode 100644 index 000000000..79886d7d6 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelector.html @@ -0,0 +1,295 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelector Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ConfigurationSelector Class Referenceabstract+ ++ +Abstract base class for a robot configuration strategy selector. +
+ ++
#include <ConfigurationSelector.hpp>
+Inheritance diagram for roboticslab::ConfigurationSelector:++++ + ++
+ +Classes
+ class Configuration + Helper class to store a specific robot configuration. More... + +
+ +Public Member Functions
+ ConfigurationSelector (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + +virtual ~ConfigurationSelector ()=default + Destructor. + + virtual bool configure (const std::vector< KDL::JntArray > &solutions) + Stores initial values for a specific pose. More... + + virtual bool findOptimalConfiguration (const KDL::JntArray &qGuess)=0 + Analyzes available configurations and selects the optimal one. More... + + virtual void retrievePose (KDL::JntArray &q) const + Queries computed joint values for the optimal configuration. More... + +
++ +Protected Attributes
+ +KDL::JntArray _qMin + + +KDL::JntArray _qMax + + +Configuration optimalConfig + + +std::vector< Configuration > configs + Constructor & Destructor Documentation
+ +◆ ConfigurationSelector()
+ +++++
++ ++ ++
++ +roboticslab::ConfigurationSelector::ConfigurationSelector +( +const KDL::JntArray & +qMin, ++ ++ + const KDL::JntArray & +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin Joint array of minimum joint limits. + qMax Joint array of maximum joint limits. Member Function Documentation
+ +◆ configure()
+ +++ +++
++ ++ ++
++ +bool ConfigurationSelector::configure +( +const std::vector< KDL::JntArray > & +solutions ) ++ +virtual ++++
- Parameters
- +
++
++ solutions Vector of joint arrays that represent all available (valid or not) robot joint poses. + +
- Returns
- True/false on success/failure.
◆ findOptimalConfiguration()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ConfigurationSelector::findOptimalConfiguration +( +const KDL::JntArray & +qGuess ) ++ +pure virtual ++++
- Parameters
- +
++
++ qGuess Joint array of values for current robot position. + +
- Returns
- True/false on success/failure.
Implemented in roboticslab::ConfigurationSelectorHumanoidGait, and roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement.
+ +◆ retrievePose()
+ +++++
++ ++ ++
++ +virtual void roboticslab::ConfigurationSelector::retrievePose +( +KDL::JntArray & +q ) +const ++inlinevirtual ++++ +
- Parameters
- +
++
++ q Output joint array.
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+- libraries/ScrewTheoryLib/ConfigurationSelector.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelector.png b/classroboticslab_1_1ConfigurationSelector.png new file mode 100644 index 0000000000000000000000000000000000000000..b4665c964984570fe3ab2fde06ba61e4599855e7 GIT binary patch literal 1770 zcmcJQc~H`67{`CEt65g=SR-1dWmswTGb@iWtz1#@Dp1Rj!)rUt$O90~L9NY9%P6GK zLfKNhGcN=o%rx3AqtMU4pRVt&1AIpr@^=>$)8ZG|l*+PXJ7 u* OWS){+6zNqIdBbJ-ihVzfhlzFeE&X0D{ml-$_I}(|Cm(Iysn$vutVtIb*S$>d z5~v?nxy5L4m5+t NJyh$cgD!QN4cc^~(xw~DPx7*M+5fj_T zqLLcZ?839y*KRBwNsl%yaNr$(SGOR`KX1SkLq69h5 zm_W~nXP5SxeOWn**~5MPR9lML>|!~YY`XZZO~zoe3UQZTvfmw)96^@X8MVRoUJVI> zEaHdaq8+AM>}I+_KPKeRBkje+^Gy82$UPuIdyF_yYp^A&tJpIA{R0(ZdZhk`T6vx0 zyh&6vN|1Cxa<*3+6G;!;`gIhqH7-Z Ex10xo_$K<|O-`gXwL3JADvEB7=3v^*gI!gB>+tLgu%J{v+< zw7A4mU&|&c%~PBXhfr7kN>~TiJo^_I^Kzi Ow5Cu8a-Zq43{XQqt9quF zd5d%A%45S@p!sPZtiV^6Z WNGcMT@c^{AnDSGn$n0M%SRrv{r8!e8fb}kRDA}h;A z3}dgNalUbMQf!W!`q4(`lLTs)ov}@?! }Tv|-$u%>Cw%H}%{Ixy{P*F%);rGdd0e+MOPbv?T4YXs&S z`g$(mNn@m>fWspB5ea3DAcZ&)I`D$;*s0Un `$AWP|7PM(N^~tZI^NrGwXL zF3XJPNX7=4P S!}me)Uvc9@m=z11kJ1#g zOsFMwDomUP6|Tj2BA0%H D^Qzh!Y8M%-R6`}1nkvm<@PfRyPC!oElx)mQs zIT$Ck-34gY=LiT@MjQxNFrXx7m8`@SGEBncP(E2Liiu_NpPA;Sobo?9L$Z-Qt@q=W z2`nb#GLUqS`Nn!VDrmhV2vz!|DVghD21=f?OA&P5$yr(mZDKX(<8htIMir!E0;Sb0 zjuIh4zm>7 >n=(FlXoI$c0SI z{jE)8v4=(LX+A@r;~^Nmt!vT{v@!aQIM|fiX>fYAVk5{q-4Xk@(WKa3gZUU=7sAAE z-Y;OC&cjoQVMq3?N{x4V*Z(H*RYPZ9m`9s(e27|@GDt^Ppyczir~}hGVx)m8vycAO zMmf&KLWL+ONji)xu23IeS@x{Vh>Nc w8$Y&i0bxMA3w;XD< z`*2L(Wh3}3608O#TVd43-0~3wbxKvJ56|4syHaTU4W5HuR+d&Q+JVWv=;51}A1cx| QXg($Y4)b%XbPYZG2l^R1{{R30 literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1ConfigurationSelectorFactory-members.html b/classroboticslab_1_1ConfigurationSelectorFactory-members.html new file mode 100644 index 000000000..90b33f01b --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorFactory-members.html @@ -0,0 +1,93 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelectorFactory Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelectorFactory, including all inherited members.
++
+ _qMax (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory protected + _qMin (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory protected + ConfigurationSelectorFactory(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelectorFactory inlineprotected + create() const =0 roboticslab::ConfigurationSelectorFactory pure virtual + ~ConfigurationSelectorFactory()=default (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorFactory.html b/classroboticslab_1_1ConfigurationSelectorFactory.html new file mode 100644 index 000000000..cb73c6601 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorFactory.html @@ -0,0 +1,205 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelectorFactory Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Protected Member Functions | +Protected Attributes | +List of all members+++roboticslab::ConfigurationSelectorFactory Class Referenceabstract+ ++ +Base factory class for ConfigurationSelector. + More...
+ ++
#include <ConfigurationSelector.hpp>
+Inheritance diagram for roboticslab::ConfigurationSelectorFactory:++++ + ++
+ +Public Member Functions
+ virtual ConfigurationSelector * create () const =0 + Creates an instance of the concrete class. More... + +
+ +Protected Member Functions
+ ConfigurationSelectorFactory (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + +
++ +Protected Attributes
+ +KDL::JntArray _qMin + + +KDL::JntArray _qMax + Detailed Description
+Acts as the base class in the abstract factory pattern, encapsulates individual factories.
+Constructor & Destructor Documentation
+ +◆ ConfigurationSelectorFactory()
+ +++++
++ ++ ++
++ +roboticslab::ConfigurationSelectorFactory::ConfigurationSelectorFactory +( +const KDL::JntArray & +qMin, ++ ++ + const KDL::JntArray & +qMax ++ ++ ) ++ +inlineprotected ++++ +
- Parameters
- +
++
++ qMin Joint array of minimum joint limits. + qMax Joint array of maximum joint limits. Member Function Documentation
+ +◆ create()
+ +++++
++ ++ ++
++ +virtual ConfigurationSelector* roboticslab::ConfigurationSelectorFactory::create +( +) +const ++pure virtual ++++ +
- Returns
- A pointer to the base class of the inheritance tree.
Implemented in roboticslab::ConfigurationSelectorHumanoidGaitFactory, and roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory.
+ +
The documentation for this class was generated from the following file:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorFactory.png b/classroboticslab_1_1ConfigurationSelectorFactory.png new file mode 100644 index 0000000000000000000000000000000000000000..0efb8245c59eb7188902c338dc6a3b3ea1cd55ad GIT binary patch literal 1804 zcmchYeKgZ+9Ke5CC^uZ?W)f~Sxya>`m$brI{Mz!ekoP#L>n%%bEEX$uyRyKtao^r`^i}0F Ir1yR0;_I1bi&h89jv7C0e*SY1;P<9YC3y&WzQ{si* zjF|myq6hnO=d}n%u?GOBl=z}3;l5Us?r&+1V@tx*v4DWq`Ti+vuRVnkB^ckKw5__7 zEo*LC>J|%R)_M-%dz(oP)6v>uX&ias(kh0RI#szlRHy)_wB{KMihLM&>R9jT0Xcbb zvB9ceKxcgJesu{wl4o$3JU4TilW^YP2%m^IHU25NE-bQzmEz{_rlbDj&b!)ptG2Jx zGHdcEDz`Rp(%e0QQ?B82onG3GCpyW{x?GL0 +Ne3yu; zSE`sDH6pQPkhq3C9i#k)1Sq}VQgD>hqRPsbxd?|5+k~cCA!>dun-e2T@iw12dsdqR zTjtD#qSqhlBy0^vM)||;iQ403>@&h3`O0+#v3c;=`DTo+|0}kzjvTLR*}qQ?6HYr? z>roU)ouvUs{gJT?b&byi#3UmuA?h&d;lYz$$!G7UsTg*G?HcKe$C<^SKlBkFhb~`SS~8pr6pp1V3yB=U8EYUzWAFrY|Xdyvz-UB zuN6nAC{h&60sS_`CIAk=CK95N04xOH51y==1lCa$Y!!9Xp%V(BZl2GFnL~A1_jiO_ zYwe1Q_{VMG{YQ7gGw|o!jCx3vKzTfTZ75B?4iwV=smV1IqoS#zK-~UOOci8m!f6O? zP{la{30lxJ*XX#@hC+oPE+iTWrl(R3!LwBogpr>04TK_(mwkuynnct5ePk1!R=u~E z#lA(xClrqrAbJ7?O63hJ-5>WpHV2{VI~1eeXKUXja>q?CM#X{iE>fzNk23ffURH~! z`LI>5h>6L2h%qimNnb+EY3V>=(QEhSEeS`LG3l}jmK1V73`!T)2|?x!_Z~-@9q*ng z_`}Tbz;498l$ecXpqyuxlYCARvmw7PX(_?}#>Zq9FHvwt^ --%lMr`Jn*psOtWX=6fc2nXMNE9+W@>8qN}XO>3oP!SxW zsxdMCF+Lq{;x~fyzggIB-%4uZe5@GTp==fuUY}tz>4o9`f~uz+a6RODwe$}h#){Ea z@*#4odMf#XgzJzRitPzdo yf4{4e*DQHk zG2uAuZW&CxAP<_z3qz3V*Y~gvG^eJ<3!glfmJTsZjwC;AoFAXzEkx^nl|9o>5fyZG zcxrfe)k&F+(fA~9ZvpnyDSv&O3@H>nB?M0N8%%fBs+Gfdf@`>V_)J5h_+5ZB3$er) z&=D6BKbdjI*}<7Mc~ic*w~`*sCffC)@qy=4bCMrO-ZJ8?Pc>*s4@E86Zk^pHfAzNa z*SCDVU^D6y-dHNKndC`)jkFkl(_V2M9j&!zQ+2kqN~S~Db$c;8bB55&Ki$C^KEY-U z_szfLo 2O|T8Ce`zpk6Ad@3RKt)o zvUP)xbzpqUMwkwG4*L_azvt$hrYXIUej*=zr3m>b%UHfz2)^i;TkyGh$9>QMYU11t zxKtRrF(K(zCMy_An^HuET0j%bRab4}($HM_sM9-A$5B&opviLkBwfesj@py-B+=@O zFIzGV!F@00Ic+3b7-CesjDkAE%c>&~FGz?Nl}v~iNhQRKImAm_E0n4!keZ9zzr84D jt0&y7C #;s{% literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1ConfigurationSelectorHumanoidGait-members.html b/classroboticslab_1_1ConfigurationSelectorHumanoidGait-members.html new file mode 100644 index 000000000..f63d65c89 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorHumanoidGait-members.html @@ -0,0 +1,103 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelectorHumanoidGait Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelectorHumanoidGait, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorHumanoidGait.html b/classroboticslab_1_1ConfigurationSelectorHumanoidGait.html new file mode 100644 index 000000000..9ff9122e6 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorHumanoidGait.html @@ -0,0 +1,254 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelectorHumanoidGait Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ConfigurationSelectorHumanoidGait Class Reference+ ++ +IK solver configuration strategy selector based on human walking. + More...
+ ++
#include <ConfigurationSelector.hpp>
+Inheritance diagram for roboticslab::ConfigurationSelectorHumanoidGait:++++ + ++
+ +Public Member Functions
+ ConfigurationSelectorHumanoidGait (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + bool findOptimalConfiguration (const KDL::JntArray &qGuess) override + Analyzes available configurations and selects the optimal one. More... + + Public Member Functions inherited from roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement + ConfigurationSelectorLeastOverallAngularDisplacement (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + Public Member Functions inherited from roboticslab::ConfigurationSelector + ConfigurationSelector (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + +virtual ~ConfigurationSelector ()=default + Destructor. + + virtual bool configure (const std::vector< KDL::JntArray > &solutions) + Stores initial values for a specific pose. More... + + virtual void retrievePose (KDL::JntArray &q) const + Queries computed joint values for the optimal configuration. More... + +
+ +Private Member Functions
+ +bool applyConstraints (const Configuration &config) + Determines whether the configuration is valid according to this selector's premises. + +
++ +Additional Inherited Members
+ Protected Member Functions inherited from roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement + +std::vector< double > getDiffs (const KDL::JntArray &qGuess, const Configuration &config) + Obtains vector of differences between current and desired joint values. + + Protected Attributes inherited from roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement + +int lastValid + + Protected Attributes inherited from roboticslab::ConfigurationSelector + +KDL::JntArray _qMin + + +KDL::JntArray _qMax + + +Configuration optimalConfig + + +std::vector< Configuration > configs + + Static Protected Attributes inherited from roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement + +static const int INVALID_CONFIG = -1 + Detailed Description
+Intended for use on lower-body limbs, specifically UC3M TEO's 6-DOF legs. Discards non-human-like configurations, such as the inverted knee pose.
+Constructor & Destructor Documentation
+ +◆ ConfigurationSelectorHumanoidGait()
+ +++++
++ ++ ++
++ +roboticslab::ConfigurationSelectorHumanoidGait::ConfigurationSelectorHumanoidGait +( +const KDL::JntArray & +qMin, ++ ++ + const KDL::JntArray & +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin Joint array of minimum joint limits. + qMax Joint array of maximum joint limits. Member Function Documentation
+ +◆ findOptimalConfiguration()
+ +++++
++ ++ ++
++ +bool ConfigurationSelectorHumanoidGait::findOptimalConfiguration +( +const KDL::JntArray & +qGuess ) ++ +overridevirtual ++++
- Parameters
- +
++
++ qGuess Joint array of values for current robot position. + +
- Returns
- True/false on success/failure.
Reimplemented from roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement.
+ +
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+- libraries/ScrewTheoryLib/ConfigurationSelectorHumanoidGait.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorHumanoidGait.png b/classroboticslab_1_1ConfigurationSelectorHumanoidGait.png new file mode 100644 index 0000000000000000000000000000000000000000..0616357a6f7d3194f16a0583c906a073874ce4e8 GIT binary patch literal 1773 zcmcJQdr*>D0L4Em?Lp*hwTq!iI%GO+XfLx=dP(w0QIWQ-f~lEV5=n|~N@_J`4x7{` zMOo++_(;*z0tHOe!X~XuEiDyHG@qcA;G0-#XPe#qzdLj8`Q4fO*SY83o4Swa4PSs< z0000S#Cwqdz>H<$OY>%%W;^93zR9fi?e@hPjYbppYxE3u%@q@UQ&m-!d1?pBw44`B zA|3!to4$@Wb-wEWz=8>SZTJ1dOv}?k1;WL>>?br7@Tq$*a3xH!JwTiz5|NB7Cg~9(*x5)jfZ6z(a+X%;XZo<`gdwo zSr!~Y>ypRG=-B0wa!*ezmA` y{T3RC*+2L> zud{WG35$4wj99&K*;~spJfwSC(TKCo)%T5UV7~PeS-%Lj8B*sZhrPU5DrcVK!6DtT ziYUrLX#uD`aX{`l;nX2>lf0>$-5#(SyK*$a286yq;g}9veFX~{+7m)?5cx!`rRbJS zPBQ4lu$Hlyom 1!>A-Yd{g~o4x@zT1Vw|D zR5m22hyD}X*92W;j(^7suhLJN;Q=gB3e2l+*joo&+V+)%_D6v^D=2`M-5%hH$$zNc z6UZEr56Q;~m0}O3qR-xlwgcDV5zx{L-{B4mB*}VL9S+KpZEBub1!hX9`{LSmpiYce zo;n28b_8BtV(mb8=Io`XVx9%YW B5 z{w~XOuE1FPQn4mQF**} bOc`R3p-Uq|=(zF(pq-T1!e^$!u9?A^|Zq}M})sKtvmEnuJ%NyOo ztH%lpN(oPJr$rl|QB;cH#RlsvU2&tSxj_}o&WZqTCI#VbCLMkVMvz8_)Q-f?uFBQe zkXs>!>9gpOyPZZhMF;9Mr)0ad6APm>@${u*`w=uacI2+bGRdJ_VqufNM@&g(j^5Sk zs@C8#e?08AEMDHum&Re8A0%k{4F#<9tMMI*YE1ap@TaBj6humTi_|Jcde|q|`p8HK z`4mSNN$`yR^zlsa(c27x(w0sisdx)oDHzj3=zHC-lEJvwdB&NSXFgTgen=ai^5rt* z-b#m??Q>hq$=$lAJX0gZqt6pJEO>L&4>r^LT3sZ07q0#FM4UMDPx6EyKu+Puum@{% z32nnc3B&HDg7-aKi3Sl}=LA`Uoz|3cJ`O6Xx&R(lD8%HI16w?<>yDD~Bzy2kQ!-ky zf`TV4{0?D=Y!1XB)#aL%W48kHtDb@gz;0p^Tn7AvH_;70!NMd!084Td%ulj1`41H{ zm32HLCp05xpxea^4WJzUcTL`lFihd(Jxf*Q*Urv;f3u$0Z2j<6O539mYunaYR>dtc zWsKIt9ZJ;9ifp~g%8p8s4d=M#ze Z?2QaU44B0V+vZE4GE zOE78v;k{JH>3YO#XQ?C6P)y)+E(lrMV{eAH(wtqoyIK|dZR8m06+^si&h+>+UM@=r zNSYR~y)yJMn-Mg2oC*hDce;eA^3N8zMV6p+u1&GzXnj$)I<&_&*7Tr>A625Jx-vW% z^rn@4_8MFLw?@IY$vo9+)tN@gTVAkt^U%lsSrf+sdqR|3PW1)G`=7rr%UAMgFKFgr z4aezI>swUfxOS(Zt;poT(tPt_n*wj~X1G7gHDgcp>vp1LQeu}m2KaJ2B6R-85ps31 zyFXCLAqZIvg4sk^QK`2X(|usp3X6a1!9R!8JY#7e&qKBju#u*}2>@|Kuc946=l=q? CrC7}X literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory-members.html b/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory-members.html new file mode 100644 index 000000000..1337b971c --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory-members.html @@ -0,0 +1,94 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelectorHumanoidGaitFactory Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelectorHumanoidGaitFactory, including all inherited members.
++
+ _qMax (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory protected + _qMin (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory protected + ConfigurationSelectorFactory(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelectorFactory inlineprotected + ConfigurationSelectorHumanoidGaitFactory(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelectorHumanoidGaitFactory inline + create() const override roboticslab::ConfigurationSelectorHumanoidGaitFactory inlinevirtual + ~ConfigurationSelectorFactory()=default (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.html b/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.html new file mode 100644 index 000000000..8f7ccd841 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.html @@ -0,0 +1,204 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelectorHumanoidGaitFactory Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ConfigurationSelectorHumanoidGaitFactory Class Reference+ ++ +Implementation factory class for ConfigurationSelectorHumanoidGait. + More...
+ ++
#include <ConfigurationSelector.hpp>
+Inheritance diagram for roboticslab::ConfigurationSelectorHumanoidGaitFactory:++++ + ++
+ +Public Member Functions
+ ConfigurationSelectorHumanoidGaitFactory (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + ConfigurationSelector * create () const override + Creates an instance of the concrete class. More... + +
++ +Additional Inherited Members
+ Protected Member Functions inherited from roboticslab::ConfigurationSelectorFactory + ConfigurationSelectorFactory (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + Protected Attributes inherited from roboticslab::ConfigurationSelectorFactory + +KDL::JntArray _qMin + + +KDL::JntArray _qMax + Detailed Description
+Implements ConfigurationSelectorFactory::create.
+Constructor & Destructor Documentation
+ +◆ ConfigurationSelectorHumanoidGaitFactory()
+ +++++
++ ++ ++
++ +roboticslab::ConfigurationSelectorHumanoidGaitFactory::ConfigurationSelectorHumanoidGaitFactory +( +const KDL::JntArray & +qMin, ++ ++ + const KDL::JntArray & +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin Joint array of minimum joint limits. + qMax Joint array of maximum joint limits. Member Function Documentation
+ +◆ create()
+ +++++
++ ++ ++
++ +ConfigurationSelector* roboticslab::ConfigurationSelectorHumanoidGaitFactory::create +( +) +const ++inlineoverridevirtual ++++ +
- Returns
- A pointer to the base class of the inheritance tree.
Implements roboticslab::ConfigurationSelectorFactory.
+ +
The documentation for this class was generated from the following file:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.png b/classroboticslab_1_1ConfigurationSelectorHumanoidGaitFactory.png new file mode 100644 index 0000000000000000000000000000000000000000..afa98aa707477a292b528bde9089d3a1043f6e93 GIT binary patch literal 1113 zcmeAS@N?(olHy`uVBq!ia0y~yU~~nt12~w0HB(+%a&{9 #I=XApm6v}-w%6R;|Ga9a{-e)des1QSmwfz9)@8AEl{>0WYR }r3^?`o=8uzXqH9UIn zg|CRa?XQfrhvoME4L`k2chl*8mjkyhE*IbCe!I)?^~I&Xzgt_G|G)O)V_ThH;G})A z{^5$A@hk89f2?euvPA#t;}7-*;{AJ7J^#C%Km7lUtgh#NPm~aCTBK6BH7I6UDyQ!0 zO?&hj vB^r?D!Sc^=xU~ zsl)ldwu@|E{g->q^ylff>bD&%e!~+#b6dgL!*{*?PX4Lu3wO7$NsE8JVrFCQ#}899 z<&Ifi$?!azb4zpfnO)p7CtC%Z1Y3OCl~PfEdFCxm-@g%En>ku{mZq+M)%eHl@zP%z zhgEx*#ppgUOYtxKBGy?{V!gb~bk3zODUbU!LNo8%y|;ZkHOKCyB>&{cqW6Quo-4*L zk9eD5fAmd?%SF8vyJqQRZfca;u{b~IW~gM9?50(1{;=etVY)W %_bjr=%lHgQHoj|-l8vkxDA|~c zcn2GXu6N0){_^wAjjgs;>{(7>)$3D)4w%1QdyrvY=>MjqP$$N^-8rh&_Yd{mW%yu! wLg(38YpDnJA!xC_RwUR + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.html b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.html new file mode 100644 index 000000000..c5033f002 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.html @@ -0,0 +1,250 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Protected Member Functions | +Protected Attributes | +Static Protected Attributes | +List of all members+++roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement Class Reference+ ++ +IK solver configuration strategy selector based on the overall displacement of all joints. + More...
+ ++
#include <ConfigurationSelector.hpp>
+Inheritance diagram for roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement:++++ + ++
+ +Public Member Functions
+ ConfigurationSelectorLeastOverallAngularDisplacement (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + bool findOptimalConfiguration (const KDL::JntArray &qGuess) override + Analyzes available configurations and selects the optimal one. More... + + Public Member Functions inherited from roboticslab::ConfigurationSelector + ConfigurationSelector (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + +virtual ~ConfigurationSelector ()=default + Destructor. + + virtual bool configure (const std::vector< KDL::JntArray > &solutions) + Stores initial values for a specific pose. More... + + virtual void retrievePose (KDL::JntArray &q) const + Queries computed joint values for the optimal configuration. More... + +
+ +Protected Member Functions
+ +std::vector< double > getDiffs (const KDL::JntArray &qGuess, const Configuration &config) + Obtains vector of differences between current and desired joint values. + +
+ +Protected Attributes
+ +int lastValid + + Protected Attributes inherited from roboticslab::ConfigurationSelector + +KDL::JntArray _qMin + + +KDL::JntArray _qMax + + +Configuration optimalConfig + + +std::vector< Configuration > configs + +
++ +Static Protected Attributes
+ +static const int INVALID_CONFIG = -1 + Detailed Description
+Selects the configuration that entails the lowest sum of displacements across all joints. Works best for all revolute/all prismatic chain types. If attainable, it retains the previous configuration after the first successful choice and discards all other configs for the rest of the instance's lifetime.
+Constructor & Destructor Documentation
+ +◆ ConfigurationSelectorLeastOverallAngularDisplacement()
+ +++++
++ ++ ++
++ +roboticslab::ConfigurationSelectorLeastOverallAngularDisplacement::ConfigurationSelectorLeastOverallAngularDisplacement +( +const KDL::JntArray & +qMin, ++ ++ + const KDL::JntArray & +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin Joint array of minimum joint limits. + qMax Joint array of maximum joint limits. Member Function Documentation
+ +◆ findOptimalConfiguration()
+ +++++
++ ++ ++
++ +bool ConfigurationSelectorLeastOverallAngularDisplacement::findOptimalConfiguration +( +const KDL::JntArray & +qGuess ) ++ +overridevirtual ++++
- Parameters
- +
++
++ qGuess Joint array of values for current robot position. + +
- Returns
- True/false on success/failure.
Implements roboticslab::ConfigurationSelector.
+ +Reimplemented in roboticslab::ConfigurationSelectorHumanoidGait.
+ +
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+- libraries/ScrewTheoryLib/ConfigurationSelectorLeastOverallAngularDisplacement.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.png b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacement.png new file mode 100644 index 0000000000000000000000000000000000000000..5bb39e1a5b715df95304c8db1a4222df3eb251aa GIT binary patch literal 1775 zcmcIlX;4#F7=4Mm$WrO>5U3!=B`OcJ3Md)`!Q`QY9Z?e%6%{O-K-eT=X|NI%NvI04 zRDytPE+`~)ZFwj?9r|pma^qV>NoICUV_~y)a&%NqMCaNyi zSq=bzDonC*1^^5b)juy?fSzl*%s41%J05hkou8jarDSj-B>uOXsQQeGii$;7Mf&J< zX|OZd1wfnrtkzoBZ2+*C4%=9{hGAr>vRhAft=Mno&^|h6tT4g)IxoNR@Wy_JGmnWI z*V!YpBe$LHU^{%j%n^rA$TVX^IQ-%PYu3q|U&OE$$j+qIJCs!rLjAK84y@flZ+;zr z${@7JmEL>d2*Oqh=|Xz~Qz}rtFwK3 `sgo!k&Z0@tMPJKJY )YBM`kSQo$z=ebMR( zm&aOn_GDKLG zyLddHCR{_mx$4b4#sFO zwqrD6Q2weg4%})lNIWRmUi#g7be4K_7VUpy1$8<@@!+8#4KWjZTGE?TN4~CpM6yrT zJ*B$f8m~-egXzI{?i vW04m+QMl=q=8;ep!(}`=pTb zEEG}@*lpssKscCH(_g&KB&@^jnQpzOo|(=PqmHr=H`-M$snAqYJ_@O^B|X!bSFV#^ z7gmNT%EC*i5x!KtMH2og&`k)4_~vnfQ0`D%d`FhYJYByAkxb2>0;5*$nN6p1XcuF5 zPL`UhMW(BiEY=Toin&I~cgc45Hd>8%I0$CG*G`ZrO_oiaNkJmZg&cka!MKP%C{gAy z*$GGwx@hMn Sgtw(!Sn zlQ`*Q`!b1nuqSKvj*ph*fyYFTiM+m2LaSHTkW>4^F2WqIc(Z;V)&Qf;h5+=9{{s``PL{V_mUnWuYK1rmLjt pW^h<_0?zz8bL3NHv7xNnchq z?}X+2H#{c>)DlF!6F-Sx5)hb*)afPpm*9&&XVuXSl-6Sj;XIoMbsYL};h0hWH|O&U zT27y^q^xxV&-Zt> 1jtNG?W_mYb44W=6B91nI% znen{6AHU=<7$f&_Mre_jSE-jnH{MN$c*YF&2-kI#_Yh~^ObD@}4Nn0lnq2I_Cs>JIP^_z*dp;$bLFb@mx?2V zc&Vih 8vSd(eqBjwTr#XT`sniAKoZ;uU0vUx&Y+7&@kJur%G$Rnp&s{!RdFOSUPrKJnup D?p#D9 literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory-members.html b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory-members.html new file mode 100644 index 000000000..8be410910 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory-members.html @@ -0,0 +1,94 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory, including all inherited members.
++
+ _qMax (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory protected + _qMin (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory protected + ConfigurationSelectorFactory(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelectorFactory inlineprotected + ConfigurationSelectorLeastOverallAngularDisplacementFactory(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory inline + create() const override roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory inlinevirtual + ~ConfigurationSelectorFactory()=default (defined in roboticslab::ConfigurationSelectorFactory) roboticslab::ConfigurationSelectorFactory virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.html b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.html new file mode 100644 index 000000000..9f5a4e45e --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.html @@ -0,0 +1,204 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory Class Reference+ ++ +Implementation factory class for ConfigurationSelectorLeastOverallAngularDisplacement. + More...
+ ++
#include <ConfigurationSelector.hpp>
+Inheritance diagram for roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory:++++ + ++
+ +Public Member Functions
+ ConfigurationSelectorLeastOverallAngularDisplacementFactory (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + ConfigurationSelector * create () const override + Creates an instance of the concrete class. More... + +
++ +Additional Inherited Members
+ Protected Member Functions inherited from roboticslab::ConfigurationSelectorFactory + ConfigurationSelectorFactory (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Constructor. More... + + Protected Attributes inherited from roboticslab::ConfigurationSelectorFactory + +KDL::JntArray _qMin + + +KDL::JntArray _qMax + Detailed Description
+Implements ConfigurationSelectorFactory::create.
+Constructor & Destructor Documentation
+ +◆ ConfigurationSelectorLeastOverallAngularDisplacementFactory()
+ +++++
++ ++ ++
++ +roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory::ConfigurationSelectorLeastOverallAngularDisplacementFactory +( +const KDL::JntArray & +qMin, ++ ++ + const KDL::JntArray & +qMax ++ ++ ) ++ +inline ++++ +
- Parameters
- +
++
++ qMin Joint array of minimum joint limits. + qMax Joint array of maximum joint limits. Member Function Documentation
+ +◆ create()
+ +++++
++ ++ ++
++ +ConfigurationSelector* roboticslab::ConfigurationSelectorLeastOverallAngularDisplacementFactory::create +( +) +const ++inlineoverridevirtual ++++ +
- Returns
- A pointer to the base class of the inheritance tree.
Implements roboticslab::ConfigurationSelectorFactory.
+ +
The documentation for this class was generated from the following file:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.png b/classroboticslab_1_1ConfigurationSelectorLeastOverallAngularDisplacementFactory.png new file mode 100644 index 0000000000000000000000000000000000000000..6ffebc926309edbb1b18d3e662efcff3f95c459f GIT binary patch literal 1294 zcmb_cdrXrD5dTP5RFD)6gZij+vw)5vMjqv%ov4T(NO1+?5F9WSMWDq>D*^?aCIzR~ zwWTIN?Q~#+jE4d(Eh0rwhKPu?AnjK`C=b^M2tsKAyU*=Ell`|#?(TQVFL%k^FIRYk z7-DC$(FOnjJMho}5&&38=|%AO&JX1LEC^xPYL*%n0HB4=gOndA0HR# z-_I=?H$%_*S7ySpOOvP%NL|&B<5w=CDxaQB+2phCjnmOE_3T(M{?4OcV^w|g^z4lU z9Z#8b;Y $4_HwYGBaPc|RjCNQzi09Fl!U+hhQH<9xpH;Sw8!9> zKC^dte8Q~hkwkCZN=`8;T)M~5o&9b-j%wQI%5)=NH%lY0;y0RA>(KpKA?C&*o&PqF zBA-rg%6S}cCvvLgyqQ6>)FcCoos*yT3YO zhimbwVW#?wQ#5AEtWic8e=($R@KjEjSSw<1$}YjHJI-;p1*P#uiKQ$nHjsx~xk1jb zBr-_sk5@h|HWDUhhLYJ15uM@e(c}r=e=l(rmmi^U+G~U5vN!GZV=!F&^3Q~lfw$f# z!qS0OE(Co2O@&o^Bo$F0)L7d`blPEW!^GV#_ v-OIUA+sm)4 zM`Drohd!U=t(jm>2y?@;4N1?JSB?0v__-Jas<}d)GmTF8V^Z!{n`mEi*ktdd&2Qe( z|D=u9Fux~oc+9#{TcFxmI1qEqG2>qDpJ|)Xud1)B2JybsEc9-f(R-QP(xtyB-YKAn zSsA8Jq7hZ4|EFktZ0nNN(Cda4I+PE=Kyn)DMT)wlfiR$pn_=KQCVQ=E@3y$bL?&+# z&+t@^x{*Y&JlC5^hhAbbYnNVm3?fIrl_(sbaS6t{w`cJ;CegM&r8b^`w_tQ4!zp$) z`FHWQ`pP2t$EEps`bpt%DItyWfFWI39%4`S3yyX`W^9%|k51HoTzf)Shc?vu4-q-b zx1c!ZMSt fL~#)sQyVhJ{}E(eW)>jyk~kRz+A-c6Bu0?H#ef9U{_A z0piQV)R)EYh1tg_%%=$wJB}gjL%qKddZs-X %Mx_fbk z@#Z@Hdxh07wnXjYn^MK++l})&3rbMZaeb+hFsP4ks@LDGCZ-BfYiOYKM*n@}NVin6 zL6NHmD`AWq4%b#=iX3QuK$CxjMJkjM$jiFZVhew>3Af*{H=E!F&f9s_1hedWlJ) eU=b-4w}Q~zj60oN-c<-cF8~ZC9;n`z@bljxb(LWN literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1ConfigurationSelector_1_1Configuration-members.html b/classroboticslab_1_1ConfigurationSelector_1_1Configuration-members.html new file mode 100644 index 000000000..829e318f4 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelector_1_1Configuration-members.html @@ -0,0 +1,96 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ConfigurationSelector::Configuration Member List+ ++ +This is the complete list of members for roboticslab::ConfigurationSelector::Configuration, including all inherited members.
++
+ Configuration() roboticslab::ConfigurationSelector::Configuration inline + invalidate() roboticslab::ConfigurationSelector::Configuration inline + isValid() const roboticslab::ConfigurationSelector::Configuration inline + q (defined in roboticslab::ConfigurationSelector::Configuration) roboticslab::ConfigurationSelector::Configuration private + retrievePose() const roboticslab::ConfigurationSelector::Configuration inline + store(const KDL::JntArray *q) roboticslab::ConfigurationSelector::Configuration inline + valid (defined in roboticslab::ConfigurationSelector::Configuration) roboticslab::ConfigurationSelector::Configuration private + validate(const KDL::JntArray &qMin, const KDL::JntArray &qMax) roboticslab::ConfigurationSelector::Configuration
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ConfigurationSelector_1_1Configuration.html b/classroboticslab_1_1ConfigurationSelector_1_1Configuration.html new file mode 100644 index 000000000..ad5f41de7 --- /dev/null +++ b/classroboticslab_1_1ConfigurationSelector_1_1Configuration.html @@ -0,0 +1,135 @@ + + + + + + + +kinematics-dynamics: roboticslab::ConfigurationSelector::Configuration Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ConfigurationSelector::Configuration Class Reference+ ++ +Helper class to store a specific robot configuration. +
+ ++
#include <ConfigurationSelector.hpp>
+
+ +Public Member Functions
+ + Configuration () + Constructor. + + +void store (const KDL::JntArray *q) + Initializes joint values. + + +void validate (const KDL::JntArray &qMin, const KDL::JntArray &qMax) + Checks reachability against provided joint limits. + + +const KDL::JntArray * retrievePose () const + Retrieves stored joint values. + + +bool isValid () const + Whether this configuration is attainable or not. + + +void invalidate () + Mark this configuration as invalid. + +
++ +Private Attributes
+ +const KDL::JntArray * q + + +bool valid +
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ConfigurationSelector.hpp
+- libraries/ScrewTheoryLib/ConfigurationSelector.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1FkStreamResponder-members.html b/classroboticslab_1_1FkStreamResponder-members.html new file mode 100644 index 000000000..4583cad23 --- /dev/null +++ b/classroboticslab_1_1FkStreamResponder-members.html @@ -0,0 +1,96 @@ + + + + + + + +kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::FkStreamResponder Member List+ ++ +This is the complete list of members for roboticslab::FkStreamResponder, including all inherited members.
++
+ FkStreamResponder() (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder + getLastStatData(std::vector< double > &x, int *state, double *timestamp, double timeout) (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder + localArrivalTime (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder private + mtx (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder mutableprivate + onRead(yarp::os::Bottle &b) override (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder + state (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder private + timestamp (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder private + x (defined in roboticslab::FkStreamResponder) roboticslab::FkStreamResponder private
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1FkStreamResponder.html b/classroboticslab_1_1FkStreamResponder.html new file mode 100644 index 000000000..82998756d --- /dev/null +++ b/classroboticslab_1_1FkStreamResponder.html @@ -0,0 +1,132 @@ + + + + + + + +kinematics-dynamics: roboticslab::FkStreamResponder Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::FkStreamResponder Class Reference+ ++ +Responds to streaming FK messages. +
+ ++
#include <CartesianControlClient.hpp>
+Inheritance diagram for roboticslab::FkStreamResponder:++++ ++
+ +Public Member Functions
+ +void onRead (yarp::os::Bottle &b) override + + +bool getLastStatData (std::vector< double > &x, int *state, double *timestamp, double timeout) + +
++ +Private Attributes
+ +double localArrivalTime + + +int state + + +double timestamp + + +std::vector< double > x + + +std::mutex mtx +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/CartesianControlClient/CartesianControlClient.hpp
+- libraries/YarpPlugins/CartesianControlClient/FkStreamResponder.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1FkStreamResponder.png b/classroboticslab_1_1FkStreamResponder.png new file mode 100644 index 0000000000000000000000000000000000000000..077ba5078652a008aac1684777001482ef895667 GIT binary patch literal 1029 zcmeAS@N?(olHy`uVBq!ia0y~yU{nLL12~w0WV4t?1CWvk@CkAK|NlRb`Qpvj(*8pe zfGjXRaNq!I=N)+#zPjt^hb_53@0MT6xD`ApZmIVhl{@@vmVMr5`eEtGGTr*v%TEi|E_**; zeRj(2f0YlPw#sMof9na9zET!<`QMejImufKv+l)ie;jK6T)a46SiAJ$u?bJs$6XfO z_`rAell6X=FPz(& u?^* 6Hzso|onq z*_V6nYOsH)VtV~(z-va8m-;*A?^cODC^}a~b&|=XSt^<;rk+6_S(BDb07VGDZ(3UC z%$uAH^N)!;Fcr9EF?Ia-<>k-7xRO)hQKF_T 93QEQlRg+*Y}EJ`Hp0w>RmOiC+bW1GOR2F-B!OIP?l?Rf2O`);=RQ;C)Q+h=Pm zy~O^2$=+oD{fjIn*S&&2|NdiL$n#^h8FRNsHNNDy z$7+RhZ@HIp{dm3is>zup*RNcgoPRmb_%}=6(&sN~ckAZ#Z}vLUUbDG?A+NwUIJl%) z?S7g;rH9P4gx^+|O5SELM0{YMbxdhaMwZ#!Le)f*>m~ tDnm{r-UW|)Zyjl literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1FtCompensation-members.html b/classroboticslab_1_1FtCompensation-members.html new file mode 100644 index 000000000..1c11ef2c3 --- /dev/null +++ b/classroboticslab_1_1FtCompensation-members.html @@ -0,0 +1,123 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::FtCompensation Member List+ ++ +This is the complete list of members for roboticslab::FtCompensation, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1FtCompensation.html b/classroboticslab_1_1FtCompensation.html new file mode 100644 index 000000000..85cbf9a7d --- /dev/null +++ b/classroboticslab_1_1FtCompensation.html @@ -0,0 +1,222 @@ + + + + + + + +kinematics-dynamics: roboticslab::FtCompensation Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Member Functions | +Protected Member Functions | +Private Types | +Private Member Functions | +Private Attributes | +List of all members+++roboticslab::FtCompensation Class Reference+ ++ +Produces motion in the direction of an externally applied force measured by a force-torque sensor (pretty much mimicking a classical gravity compensation app). +
+ ++
#include <FtCompensation.hpp>
+Inheritance diagram for roboticslab::FtCompensation:++++ ++
+ +Protected Member Functions
+ +void run () override + +
+ +Private Types
+ +using cartesian_cmd = void(ICartesianControl::*)(const std::vector< double > &) + +
+ +Private Member Functions
+ +bool readSensor (KDL::Wrench &wrench) const + + +bool compensateTool (KDL::Wrench &wrench) const + + +bool applyImpedance (KDL::Wrench &wrench) + +
++ +Private Attributes
+ +yarp::dev::PolyDriver cartesianDevice + + +ICartesianControl * iCartesianControl + + +int sensorIndex + + +yarp::dev::PolyDriver sensorDevice + + +yarp::dev::ISixAxisForceTorqueSensors * sensor + + +KDL::Rotation R_N_sensor + + +KDL::Vector toolCoM_N + + +KDL::Wrench toolWeight_0 + + +KDL::Wrench initialOffset + + +KDL::Frame initialPose + + +KDL::Frame previousPose + + +cartesian_cmd command + + +bool dryRun + + +bool usingTool + + +bool enableImpedance + + +double linGain + + +double rotGain + + +double linStiffness + + +double rotStiffness + + +double linDamping + + +double rotDamping + + +double forceDeadband + + +double torqueDeadband +
The documentation for this class was generated from the following files:+
+- programs/ftCompensation/FtCompensation.hpp
+- programs/ftCompensation/FtCompensation.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1FtCompensation.png b/classroboticslab_1_1FtCompensation.png new file mode 100644 index 0000000000000000000000000000000000000000..ff4f9fb05972efec622597ed64323db00af48d80 GIT binary patch literal 977 zcmeAS@N?(olHy`uVBq!ia0y~yV2lH@12~w0WLn4DH$X}vz$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-op~!Cg-!q3>`gJ}UtT<|{%q$B$8~o@#rOK=^+%da{#m@Y zy+2P+j(^93@~F1Y=grHP?@tQYb>YRW3%gzHnJz7i_M8;5art-g$ZN^hjC_9DFDm*X z6xA~!WXtBN>3`%!e3xyzS|#sTT4MdJKydzrYSYs;X{v|kME$GndQsQ1WYOHXy_41~ zoO>hd?cGbaeSe8o>8D0+o)xwE&TsV`--kW-zOcPfy|=F{^-M{3S?-qozY9w(E>x?Y z7Cn3Zh3>SAp?fRedM=xlcDJO`W^wo=z8iOM>80J2nIFHmHgVFHE#6hP+w-1WRM{7I zGcH(WU7F^}tiG)EDyx5nzCF9YYUj=6+gIMp+`fHVUAF)3lHIo6m)Le!>8C~J{mGV` zwz9Np`UT6fd6SncoqKI}xznUSmW#i?-#jH`i}6v%psV)+-``HrT$#~cbzVor^HaM2 z``;k0dRMc`UgqCN9VgxEzo6}zhZ6ETUYi gjJe=ZjQY#lhe%D7!DiyTthSbqhZzS;O}wLo4>5q&TO9V7kBS< z_`L5As~T73zSQm8oYathQ_5sp-0W#*w>)|mf0=2{e_!>>JD;rQ(#@ahrn9%?`?q_p z`Hw4){$;;D`}zER%kE_@=hnUV^3&J2M`^id_wt@<+qgyPfpA#9<-w~jpS@T*`L)Bk zz0y_H?PnM6NfrN~TebSpg_n0D_ugH#rtSHo4{xisFaJO1UYhV7O}F{WzrVb-yKeQ> zLTS@S(qGDc|9pHjw(Qd?i$C0F)ORsWVmG-p>vCz~jP?5Ge@pCT_}}=tpL;I@J0uhj mNDHBbYV#{#v@kKq*D<7Yp15qus+kGQe+-_kelF{r5}E)sz2hbT literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1GrabberResponder-members.html b/classroboticslab_1_1GrabberResponder-members.html new file mode 100644 index 000000000..38fd2ab59 --- /dev/null +++ b/classroboticslab_1_1GrabberResponder-members.html @@ -0,0 +1,95 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::GrabberResponder Member List+ ++ +This is the complete list of members for roboticslab::GrabberResponder, including all inherited members.
++
+ GrabberResponder() (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder inline + iCartesianControl (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder private + isStopped (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder private + noApproach (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder private + onRead(yarp::os::Bottle &b) override (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder + setICartesianControlDriver(roboticslab::ICartesianControl *iCartesianControl) (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder inline + setNoApproachSetting(bool noApproach) (defined in roboticslab::GrabberResponder) roboticslab::GrabberResponder inline
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1GrabberResponder.html b/classroboticslab_1_1GrabberResponder.html new file mode 100644 index 000000000..2f7b64593 --- /dev/null +++ b/classroboticslab_1_1GrabberResponder.html @@ -0,0 +1,129 @@ + + + + + + + +kinematics-dynamics: roboticslab::GrabberResponder Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::GrabberResponder Class Reference+ ++ +Callback class for dealing with incoming grabber data streams. +
+ ++
#include <GrabberResponder.hpp>
+Inheritance diagram for roboticslab::GrabberResponder:++++ ++
+ +Public Member Functions
+ +void onRead (yarp::os::Bottle &b) override + + +void setICartesianControlDriver (roboticslab::ICartesianControl *iCartesianControl) + + +void setNoApproachSetting (bool noApproach) + +
++ +Private Attributes
+ +roboticslab::ICartesianControl * iCartesianControl + + +bool isStopped + + +bool noApproach +
The documentation for this class was generated from the following files:+
+- programs/haarDetectionController/GrabberResponder.hpp
+- programs/haarDetectionController/GrabberResponder.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1GrabberResponder.png b/classroboticslab_1_1GrabberResponder.png new file mode 100644 index 0000000000000000000000000000000000000000..a1952a7f7ef986f9dcbd86855212a8394ef62492 GIT binary patch literal 1012 zcmeAS@N?(olHy`uVBq!ia0y~yU{nLL12~w0WV4t?1CWvk@CkAK|NlRb`Qpvj(*8pe zfGjXRaNq!I=N)+&!(t(dTIJjni4ciMRTc%XV59> zS=Xc#Jd@?tKhxc{eBaaZ`;Lnf{XMIuPPlQhz<$H5bHDSL<7ee${Cqu2kN>%8?SGp{ zmD``zi|*T(k^HvV_V^8{oVQWFzb`*qDu23v^HbSfvg;qsi9d5!ecQWkwYDYSx@PqW zhDTji+Zul1%GT_tpD)gyu3cl0dR^<=y`XzmcTeo~KV$m!Bl~L4Nvug)o3EPuitJ~Q zxAoJ0w fyQqe76^^>vT?XUWDJb!6? zFP^@Hd&^Y6NxSv H>spG?XqW(qNnXr&q+aElU0_&V&l_=l(euJGv_jV zxc-AlgW;TpFN0)!{8LVag(i$CHab()8;ZSz53qU(Ie29 c`E)2#08CvA`C#gkd1o!+~lW4|89vNJNWbGO=Zbg_qA@q?Vxgo zbsvf+|2Fk)*qt_OUirm4l~Ybz{ulH;|L*kj+CMve9{zs*d;jypZ*R`plz;1H_raJm zOAoF)*`9Y>wtU?~YvbDR%e!{Y`+R%*t$*QrUe4OJ*OKGeuD86uE^Pj=(D;Dvy*S_8 zL(aaxn=JFT#kqIX?kp9Wv+P+;R@~X(j=79^9|e8$F87+4_Q!PBR$7?GU61722-Ib_ zc;)>TW8cf1)zfQVT%Nz(|Fis+FQ0BcDZ6VCVKKXD+0C0Jdwx03&I@^&G&NKE?&tX5 zE5C25xN}D9?!uQ_F1>vhyOepy$=S0Q{xR&gYljBwKYm|^{b-?XV={B5Xj+>3ALcfR W70p~d8+w3Ql)=;0&t;ucLK6U0PvQ>% literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1HaarDetectionController-members.html b/classroboticslab_1_1HaarDetectionController-members.html new file mode 100644 index 000000000..857211f71 --- /dev/null +++ b/classroboticslab_1_1HaarDetectionController-members.html @@ -0,0 +1,101 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::HaarDetectionController Member List+ ++ +This is the complete list of members for roboticslab::HaarDetectionController, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1HaarDetectionController.html b/classroboticslab_1_1HaarDetectionController.html new file mode 100644 index 000000000..08ff12603 --- /dev/null +++ b/classroboticslab_1_1HaarDetectionController.html @@ -0,0 +1,147 @@ + + + + + + + +kinematics-dynamics: roboticslab::HaarDetectionController Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::HaarDetectionController Class Reference+ ++ +Create seek-and-follow trajectories based on Haar detection algorithms. +
+ ++
#include <HaarDetectionController.hpp>
+Inheritance diagram for roboticslab::HaarDetectionController:++++ ++
++ +Private Attributes
+ +GrabberResponder grabberResponder + + +yarp::os::BufferedPort< yarp::os::Bottle > grabberPort + + +yarp::dev::PolyDriver cartesianControlDevice + + +roboticslab::ICartesianControl * iCartesianControl + + +yarp::dev::PolyDriver sensorsClientDevice + + +roboticslab::IProximitySensors * iProximitySensors + + +double period +
The documentation for this class was generated from the following files:+
+- programs/haarDetectionController/HaarDetectionController.hpp
+- programs/haarDetectionController/HaarDetectionController.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1HaarDetectionController.png b/classroboticslab_1_1HaarDetectionController.png new file mode 100644 index 0000000000000000000000000000000000000000..58fd767c92dda4b9bb12507b44943fe7ee0ce8fc GIT binary patch literal 716 zcmeAS@N?(olHy`uVBq!ia0vp^H-R{SgBeIJzON7hq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0qCH(4Ln;{G&b>HkjRKF0f84VF|NGak z=3sgJCgyIDc$ZW)1MdXkq?)5=ay$|znJiG7sq%HHrt|-XUh?exgtZ6n^Cd{H+n=@ZujAvFoRJ&-*s3oVcwb82$P5pI8)JbXGql*>2*lId3~(uD)BzYB}wO$ofssK5sSb zcv>9q=K0I7d{f}0-E4~7%X*8_CViQ1dQxSjzORwzD{t )y<)3o^7jZhm8FzuUr=FG%(=XGvyFOF$%S$$3WeNg1i*l)ZyE!V1ND~U~Fz4?Q4 z=ILY1k#h@6AD{Si *?IEcZ` 9F-ql};d3V0+tbe7Q5iH&9e9ln*+zzvSKj$%)tVao;3?t*sf?xUH YO=yxzn;iQXnDiJtUHx3vIVCg!00JUU;{X5v literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1ICartesianControl-members.html b/classroboticslab_1_1ICartesianControl-members.html new file mode 100644 index 000000000..fa9bd6957 --- /dev/null +++ b/classroboticslab_1_1ICartesianControl-members.html @@ -0,0 +1,108 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ICartesianControl Member List+ ++ +This is the complete list of members for roboticslab::ICartesianControl, including all inherited members.
++
+ act(int command)=0 roboticslab::ICartesianControl pure virtual + forc(const std::vector< double > &fd)=0 roboticslab::ICartesianControl pure virtual + gcmp()=0 roboticslab::ICartesianControl pure virtual + getParameter(int vocab, double *value)=0 roboticslab::ICartesianControl pure virtual + getParameters(std::map< int, double > ¶ms)=0 roboticslab::ICartesianControl pure virtual + inv(const std::vector< double > &xd, std::vector< double > &q)=0 roboticslab::ICartesianControl pure virtual + movi(const std::vector< double > &x)=0 roboticslab::ICartesianControl pure virtual + movj(const std::vector< double > &xd)=0 roboticslab::ICartesianControl pure virtual + movl(const std::vector< double > &xd)=0 roboticslab::ICartesianControl pure virtual + movv(const std::vector< double > &xdotd)=0 roboticslab::ICartesianControl pure virtual + relj(const std::vector< double > &xd)=0 roboticslab::ICartesianControl pure virtual + setParameter(int vocab, double value)=0 roboticslab::ICartesianControl pure virtual + setParameters(const std::map< int, double > ¶ms)=0 roboticslab::ICartesianControl pure virtual + stat(std::vector< double > &x, int *state=nullptr, double *timestamp=nullptr)=0 roboticslab::ICartesianControl pure virtual + stopControl()=0 roboticslab::ICartesianControl pure virtual + tool(const std::vector< double > &x)=0 roboticslab::ICartesianControl pure virtual + twist(const std::vector< double > &xdot)=0 roboticslab::ICartesianControl pure virtual + wait(double timeout=0.0)=0 roboticslab::ICartesianControl pure virtual + wrench(const std::vector< double > &w)=0 roboticslab::ICartesianControl pure virtual + ~ICartesianControl()=default roboticslab::ICartesianControl virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ICartesianControl.html b/classroboticslab_1_1ICartesianControl.html new file mode 100644 index 000000000..ea8942451 --- /dev/null +++ b/classroboticslab_1_1ICartesianControl.html @@ -0,0 +1,904 @@ + + + + + + + +kinematics-dynamics: roboticslab::ICartesianControl Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ICartesianControl Class Referenceabstract+ ++ +Abstract base class for a cartesian controller. +
+ ++
#include <ICartesianControl.h>
+Inheritance diagram for roboticslab::ICartesianControl:++++ + ++
++ +Public Member Functions
+ +virtual ~ICartesianControl ()=default + Destructor. + + RPC commands+ + virtual bool stat (std::vector< double > &x, int *state=nullptr, double *timestamp=nullptr)=0 + Current state and position. More... + + virtual bool inv (const std::vector< double > &xd, std::vector< double > &q)=0 + Inverse kinematics. More... + + virtual bool movj (const std::vector< double > &xd)=0 + Move in joint space, absolute coordinates. More... + + virtual bool relj (const std::vector< double > &xd)=0 + Move in joint space, relative coordinates. More... + + virtual bool movl (const std::vector< double > &xd)=0 + Linear move to target position. More... + + virtual bool movv (const std::vector< double > &xdotd)=0 + Linear move with given velocity. More... + + virtual bool gcmp ()=0 + Gravity compensation. More... + + virtual bool forc (const std::vector< double > &fd)=0 + Force control. More... + + virtual bool stopControl ()=0 + Stop control. More... + + virtual bool wait (double timeout=0.0)=0 + Wait until completion. More... + + virtual bool tool (const std::vector< double > &x)=0 + Change tool. More... + + virtual bool act (int command)=0 + Actuate tool. More... + + Streaming commands+ + virtual void movi (const std::vector< double > &x)=0 + Achieve pose. More... + + virtual void twist (const std::vector< double > &xdot)=0 + Instantaneous velocity steps. More... + + virtual void wrench (const std::vector< double > &w)=0 + Exert force. More... + + Configuration accessors+ + virtual bool setParameter (int vocab, double value)=0 + Set a configuration parameter. More... + + virtual bool getParameter (int vocab, double *value)=0 + Retrieve a configuration parameter. More... + + virtual bool setParameters (const std::map< int, double > ¶ms)=0 + Set multiple configuration parameters. More... + + virtual bool getParameters (std::map< int, double > ¶ms)=0 + Retrieve multiple configuration parameters. More... + Member Function Documentation
+ +◆ act()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::act +( +int +command ) ++ +pure virtual +++Send control command to actuate the robot's tool, if available.
++
- Parameters
- +
++
++ command One of available actuator vocabs. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ forc()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::forc +( +const std::vector< double > & +fd ) ++ +pure virtual +++Apply desired forces in task space.
++
- Parameters
- +
++
++ fd 6-element vector describing desired force exerted by the TCP in cartesian space; first three elements denote linear force (Newton), last three denote torque (Newton*meters). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ gcmp()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::gcmp +( +) ++ +pure virtual +++Enable gravity compensation.
++ +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ getParameter()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::getParameter +( +int +vocab, ++ ++ + double * +value ++ ++ ) ++ +pure virtual +++Ask the controller to retrieve a parameter of 'double' type.
++
- Parameters
- +
++
++ vocab YARP-encoded vocab (parameter key). + value Parameter value encoded as a double. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ getParameters()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::getParameters +( +std::map< int, double > & +params ) ++ +pure virtual +++Ask the controller to retrieve all available parameters at once.
++
- Parameters
- +
++
++ params Dictionary of YARP-encoded vocabs as keys and their values. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ inv()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::inv +( +const std::vector< double > & +xd, ++ ++ + std::vector< double > & +q ++ ++ ) ++ +pure virtual +++Perform inverse kinematics (using robot position as initial guess), but do not move.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + q Vector describing current position in joint space (meters or degrees). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ movi()
+ +++ +++
++ ++ ++
++ +virtual void roboticslab::ICartesianControl::movi +( +const std::vector< double > & +x ) ++ +pure virtual +++Move to desired position instantaneously, no further intermediate calculations are expected other than computing the inverse kinematics.
++ +
- Parameters
- +
++
++ x 6-element vector describing desired instantaneous pose in cartesian space; first three elements denote translation (meters), last three denote rotation (radians). Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ movj()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::movj +( +const std::vector< double > & +xd ) ++ +pure virtual +++Perform inverse kinematics and move to desired position in joint space using absolute coordinates.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). +
- See also
- relj (relative coordinates)
+ +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ movl()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::movl +( +const std::vector< double > & +xd ) ++ +pure virtual +++Move to end position along a line trajectory.
++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ movv()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::movv +( +const std::vector< double > & +xdotd ) ++ +pure virtual +++Move along a line with constant velocity.
++
- Parameters
- +
++
++ xdotd 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ relj()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::relj +( +const std::vector< double > & +xd ) ++ +pure virtual +++Perform inverse kinematics and move to desired position in joint space using relative coordinates.
++
- Parameters
- +
++
++ xd 6-element vector describing desired offset in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). +
- See also
- movj (absolute coordinates)
+ +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ setParameter()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::setParameter +( +int +vocab, ++ ++ + double +value ++ ++ ) ++ +pure virtual +++Ask the controller to store or update a parameter of 'double' type.
++
- Parameters
- +
++
++ vocab YARP-encoded vocab (parameter key). + value Parameter value encoded as a double. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ setParameters()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::setParameters +( +const std::map< int, double > & +params ) ++ +pure virtual +++Ask the controller to store or update multiple parameters at once.
++
- Parameters
- +
++
++ params Dictionary of YARP-encoded vocabs as keys and their values. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ stat()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::stat +( +std::vector< double > & +x, ++ ++ + int * +state = +nullptr
,+ ++ + double * +timestamp = +nullptr
+ ++ ) ++ +pure virtual +++Inform on control state, get robot position and perform forward kinematics.
++
- Parameters
- +
++
++ x 6-element vector describing current position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + state Identifier for a cartesian control vocab. + timestamp Remote encoder acquisition time. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ stopControl()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::stopControl +( +) ++ +pure virtual +++Halt current control loop if any and cease movement.
++ +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ tool()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::tool +( +const std::vector< double > & +x ) ++ +pure virtual +++Unload current tool if any and append new tool frame to the kinematic chain.
++
- Parameters
- +
++
++ x 6-element vector describing new tool tip with regard to current end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ twist()
+ +++ +++
++ ++ ++
++ +virtual void roboticslab::ICartesianControl::twist +( +const std::vector< double > & +xdot ) ++ +pure virtual +++Move in instantaneous velocity increments.
++ +
- Parameters
- +
++
++ xdot 6-element vector describing velocity increments in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ wait()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianControl::wait +( +double +timeout = 0.0
) ++ +pure virtual +++Block execution until the movement is completed, errors occur or timeout is reached.
++
- Parameters
- +
++
++ timeout Timeout in seconds, '0.0' means no timeout. + +
- Returns
- true on success, false if errors occurred during the execution of the trajectory
Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +◆ wrench()
+ +++++
++ ++ ++
++ +virtual void roboticslab::ICartesianControl::wrench +( +const std::vector< double > & +w ) ++ +pure virtual +++Make the TCP exert the desired force instantaneously.
++ +
- Parameters
- +
++
++ w 6-element vector describing desired force exerted by the TCP in cartesian space; first three elements denote linear force (Newton), last three denote torque (Newton*meters). Implemented in roboticslab::CartesianControlClient, and roboticslab::BasicCartesianControl.
+ +
The documentation for this class was generated from the following file:+
+- libraries/YarpPlugins/ICartesianControl.h
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ICartesianControl.png b/classroboticslab_1_1ICartesianControl.png new file mode 100644 index 0000000000000000000000000000000000000000..77f81919bcc7630984f2d587eb918e8b52082050 GIT binary patch literal 1027 zcmeAS@N?(olHy`uVBq!ia0y~yU|a!Y2XHV0$?98zMnFm;z$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-opyHd6K7#V@L(#+qrKiZC2oM>*qJV_g{7Y z+W9Vv?tWW4_t>(>H${B}EE?(=?cA=H-fd;rp>|y=s*8!k0SO<_@7~0?{gPR-?re4E zg}eVY{HhB1wt1Gt{`;D*GNQh__HJr;Rb?|hF0AX8^oQElJg J@5ByFyDx0&``JMM^b-B@+fKr}!e-yydO7U(GON{oMkg7h z>k8awN`7?F-I;xG&6l?+zkID;_G;X&=&FjFV!4~owfFpWTO-lCUqo0he28CkYw-o~ zt=1>ws=AmmDs*1G%%75*ls?IN#roVS@AX|7pGiH>vYORaU;HvGhU?jzUF>?IpMCt& z?|iA@y6a!Q=~n25YfKS!ej*MoK_U(exbQliRj+rwvtm$T(7(j2!f@ZWi|I$*FFRkx z8e2`S2fue#dIdAw_XCEQV-{-2A%`LoyJF(L_rJ553KaErp9;ofFE00h#O=&B1bO{r zsMTCr)9{*ajmM?b6|SC_Qau7Ei8P3)dNRTp1+Jx&uDuT1BwBjY=H)wk&u6Q&=REH} zRTm~~F5d6D*J{J%YCBdd+gaNG)VwC`{O0nuMc&q)!#?M$?IM+#+5T5f+RkU*t0o!waaGTOY6Ow9C!C=Y~XvT8 4Ov`_( z-RYXOc-rl)lFKi&oYS}IxU08l?)NQwS8RT@WLvKPmDy}%ap%n!-3faoo9gzqH$74n z7~gY#NpD?}Q_LU#+~h9L^?g717u_@1P+YxF`P7zAYcw{WzWZ^_`Dr)YuKapCr;kB6 zZ}z_lD~>Z;uYVpL7^m&u{b_4-VD{3@8LFkz9xt<3ef99bxz{^4FP>HYW6?ajQ?Y@! zZ@4` xi#ti9>!ee=q`erwsme(m|~PrXv}Z{B$I zAY$J6`BIyY4sh+|ACIY<`!&&ky*$|5>$Yo$abay&9ff{mNdG9!*}PqRF7?HHm2g lc7}Q2(kVr + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::ICartesianSolver Member List+ ++ +This is the complete list of members for roboticslab::ICartesianSolver, including all inherited members.
++
+ appendLink(const std::vector< double > &x)=0 roboticslab::ICartesianSolver pure virtual + BASE_FRAME enum value roboticslab::ICartesianSolver + changeOrigin(const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj)=0 roboticslab::ICartesianSolver pure virtual + diffInvKin(const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame=BASE_FRAME)=0 roboticslab::ICartesianSolver pure virtual + fwdKin(const std::vector< double > &q, std::vector< double > &x)=0 roboticslab::ICartesianSolver pure virtual + getNumJoints()=0 roboticslab::ICartesianSolver pure virtual + getNumTcps()=0 roboticslab::ICartesianSolver pure virtual + invDyn(const std::vector< double > &q, std::vector< double > &t)=0 roboticslab::ICartesianSolver pure virtual + invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) roboticslab::ICartesianSolver inlinevirtual + invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame=BASE_FRAME)=0 roboticslab::ICartesianSolver pure virtual + invKin(const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame=BASE_FRAME)=0 roboticslab::ICartesianSolver pure virtual + poseDiff(const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut)=0 roboticslab::ICartesianSolver pure virtual + reference_frame enum name roboticslab::ICartesianSolver + restoreOriginalChain()=0 roboticslab::ICartesianSolver pure virtual + TCP_FRAME enum value roboticslab::ICartesianSolver + ~ICartesianSolver()=default roboticslab::ICartesianSolver virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ICartesianSolver.html b/classroboticslab_1_1ICartesianSolver.html new file mode 100644 index 000000000..faf95e3fe --- /dev/null +++ b/classroboticslab_1_1ICartesianSolver.html @@ -0,0 +1,760 @@ + + + + + + + +kinematics-dynamics: roboticslab::ICartesianSolver Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::ICartesianSolver Class Referenceabstract+ ++ +Abstract base class for a cartesian solver. +
+ ++
#include <ICartesianSolver.h>
+Inheritance diagram for roboticslab::ICartesianSolver:++++ + ++
+ +Public Types
+ enum reference_frame { BASE_FRAME = yarp::os::createVocab32('c','p','f','b') +, TCP_FRAME = yarp::os::createVocab32('c','p','f','t') + } + Lists supported reference frames. More... + +
++ +Public Member Functions
+ +virtual ~ICartesianSolver ()=default + Destructor. + + virtual int getNumJoints ()=0 + Get number of joints for which the solver has been configured. More... + + virtual int getNumTcps ()=0 + Get number of TCPs for which the solver has been configured. More... + + virtual bool appendLink (const std::vector< double > &x)=0 + Append an additional link. More... + + virtual bool restoreOriginalChain ()=0 + Restore original kinematic chain. More... + + virtual bool changeOrigin (const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj)=0 + Change origin in which a pose is expressed. More... + + virtual bool fwdKin (const std::vector< double > &q, std::vector< double > &x)=0 + Perform forward kinematics. More... + + virtual bool poseDiff (const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut)=0 + Obtain difference between supplied pose inputs. More... + + virtual bool invKin (const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame=BASE_FRAME)=0 + Perform inverse kinematics. More... + + virtual bool diffInvKin (const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame=BASE_FRAME)=0 + Perform differential inverse kinematics. More... + + virtual bool invDyn (const std::vector< double > &q, std::vector< double > &t)=0 + Perform inverse dynamics. More... + + virtual bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) + Perform inverse dynamics. More... + + virtual bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame=BASE_FRAME)=0 + Perform inverse dynamics. More... + Member Enumeration Documentation
+ +◆ reference_frame
+ ++++++
++ +enum roboticslab::ICartesianSolver::reference_frame +Member Function Documentation
+ +◆ appendLink()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::appendLink +( +const std::vector< double > & +x ) ++ +pure virtual ++++
- Parameters
- +
++
++ x 6-element vector describing end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ changeOrigin()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::changeOrigin +( +const std::vector< double > & +x_old_obj, ++ ++ + const std::vector< double > & +x_new_old, ++ ++ + std::vector< double > & +x_new_obj ++ ++ ) ++ +pure virtual ++++
- Parameters
- +
++
++ x_old_obj_in 6-element vector describing a pose in cartesian space, expressed in the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_old 6-element vector describing a transformation from the new to the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_obj 6-element vector describing a pose in cartesian space, expressed in the new frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ diffInvKin()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::diffInvKin +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +xdot, ++ ++ + std::vector< double > & +qdot, ++ ++ + reference_frame +frame = +BASE_FRAME
+ ++ ) ++ +pure virtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + xdot 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + qdot Vector describing target velocity in joint space (meters/second or degrees/second). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ fwdKin()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::fwdKin +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +x ++ ++ ) ++ +pure virtual ++++
- Parameters
- +
++
++ q Vector describing a position in joint space (meters or degrees). + x 6-element vector describing same position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ getNumJoints()
+ +++ +++
++ ++ ++
++ +virtual int roboticslab::ICartesianSolver::getNumJoints +( +) ++ +pure virtual ++++ +
- Returns
- Number of joints.
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ getNumTcps()
+ +++ +++
++ ++ ++
++ +virtual int roboticslab::ICartesianSolver::getNumTcps +( +) ++ +pure virtual ++++ +
- Returns
- The number of TCPs.
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ invDyn() [1/3]
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +qdot, ++ ++ + const std::vector< double > & +qdotdot, ++ ++ + const std::vector< double > & +ftip, ++ ++ + std::vector< double > & +t, ++ ++ + reference_frame +frame = +BASE_FRAME
+ ++ ) ++ +pure virtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + qdot Vector describing current velocity in joint space (meters/second or degrees/second). + qdotdot Vector describing current acceleration in joint space (meters/secondยฒ or degrees/secondยฒ). + ftip Vector describing an external force applied to the robot tip, expressed in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + frame Points at the reference_frame ftip
is expressed in.+ +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ invDyn() [2/3]
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +qdot, ++ ++ + const std::vector< double > & +qdotdot, ++ ++ + const std::vector< std::vector< double >> & +fexts, ++ ++ + std::vector< double > & +t ++ ++ ) ++ +inlinevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + qdot Vector describing current velocity in joint space (meters/second or degrees/second). + qdotdot Vector describing current acceleration in joint space (meters/secondยฒ or degrees/secondยฒ). + fexts vector of external forces applied to each robot segment, expressed in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + +
- Returns
- true on success, false otherwise
◆ invDyn() [3/3]
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +t ++ ++ ) ++ +pure virtual +++Assumes null joint velocities and accelerations, and no external forces.
++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ invKin()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::invKin +( +const std::vector< double > & +xd, ++ ++ + const std::vector< double > & +qGuess, ++ ++ + std::vector< double > & +q, ++ ++ + reference_frame +frame = +BASE_FRAME
+ ++ ) ++ +pure virtual ++++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + qGuess Vector describing current position in joint space (meters or degrees). + q Vector describing target position in joint space (meters or degrees). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ poseDiff()
+ +++ +++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::poseDiff +( +const std::vector< double > & +xLhs, ++ ++ + const std::vector< double > & +xRhs, ++ ++ + std::vector< double > & +xOut ++ ++ ) ++ +pure virtual +++The result is an infinitesimal displacement twist, i.e. a vector, for which the operation of addition makes physical sense.
++
- Parameters
- +
++
++ xLhs 6-element vector describing a pose in cartesian space (left hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xRhs 6-element vector describing a pose in cartesian space (right hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xOut 6-element vector describing a pose in cartesian space (result); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +◆ restoreOriginalChain()
+ +++++
++ ++ ++
++ +virtual bool roboticslab::ICartesianSolver::restoreOriginalChain +( +) ++ +pure virtual ++++ +
- Returns
- true on success, false otherwise
Implemented in roboticslab::KdlTreeSolver, roboticslab::KdlSolver, and roboticslab::AsibotSolver.
+ +
The documentation for this class was generated from the following file:+
+- libraries/YarpPlugins/ICartesianSolver.h
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1ICartesianSolver.png b/classroboticslab_1_1ICartesianSolver.png new file mode 100644 index 0000000000000000000000000000000000000000..3e1c41f952ccf9e6c6173ec227378d48378d6f8f GIT binary patch literal 1248 zcmeAS@N?(olHy`uVBq!ia0y~yV3Gr}12~w0Wa5P$UmztB;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z>@Fj;uuoF_;&8YqSXo#F8!~2-v2*g zetktlo!TXqsPt`*Gr1WzJz)IDbZ1hcMB8tM1O}_Z)uP+w7;HDnF|a8dsA7<4V0g`# zz`(SIy@8Q~BW%x_swv-cgLeK%(c|ftSE#=?_50j&svCeBb}nKMu+jfgp~aMP{`T}; zuTyLp{;|F8;{R-DnE&Yb{@0El{+NcZD_za*dik;C=56tQZPV{=kIR0W7A1AGilHR^ zvhv<3Pw#(O)^uoL<|;kENs~98dbc{+b@e5o`Em?@J(nNF4=dx6J+g`*iBPN7+Ze zMQv{@-v8Cj^7XuU)0e-u$7JvQ%J73VZ|kFL%nQ`7F&|)HiQs2o7D%vV;Bjd9%3#32 zh$eWzfah>6Q2cuulK}(Uf+L{dRKA>I&%kql5frL@Hg7h_Gq5G}gET8nBf>-!YZ{*U zTsE1RIcu38!=3is@0^~qW%Ny#Tp$m0p5-~-3o`n~4)$x<9g62jFR+YDYp9FhZ+K>5 z?ohnv48vbwl$|ZiYj{>Mlkr!gEyJwGcNoroG-Cd8xQfB#_)f-Ik5k!Rw0~vD=qqNv zY25etMnk5|@sGbPzFYJqJFLF5SmkbO%}mvodUwpXPmi1=m29iB((;<~B%o0c#w?JC z{QEBwDodXSYH5G^^i$pO`2VF3KNf%Uog@;l_l*5nd+}+rmR{$76!!FA)Rq5^-D@fz z@A3?Jt+=wn?`y@8DO2WEe0yHzd8zUI*9jpu`qygKR;2y)ymS5wkT-qtyydIsx~w?< zCvE<$zvYD+-~G(K>3)7!2~Ub|dDWV=hbD$C-fTOox4x&|w_pFseY5wQz4uMmezfoW zU6og16WRP%u2vI#J#m-r|79D2>FwpWsji1>pO<#It~T1JA{uk$@#jCY@7&DzTB!fx zqDs~_ Sqf#-D4A`%v=BJqu&3**;kMKoh4Tq_h6itnvH6M z%WTtFJzwrzcYOON``t^5_iDW}wcRIgYQLxZ%GSvoUneZtf6~-e @IW zk!KP7p0C=WjI2H&1DJX|!3>1dorwNInd7%7=zg~7dz`x?`(1tI@d8P9bM$;)uc1 L)z4*}Q$iB}sjXJ( literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1InvalidDevice-members.html b/classroboticslab_1_1InvalidDevice-members.html new file mode 100644 index 000000000..9116bbb2d --- /dev/null +++ b/classroboticslab_1_1InvalidDevice-members.html @@ -0,0 +1,106 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::InvalidDevice Member List+ ++ +This is the complete list of members for roboticslab::InvalidDevice, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1InvalidDevice.html b/classroboticslab_1_1InvalidDevice.html new file mode 100644 index 000000000..a2fbc568b --- /dev/null +++ b/classroboticslab_1_1InvalidDevice.html @@ -0,0 +1,258 @@ + + + + + + + +kinematics-dynamics: roboticslab::InvalidDevice Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::InvalidDevice Class Reference+ ++ +Represents an invalid device. + More...
+ ++
#include <StreamingDevice.hpp>
+Inheritance diagram for roboticslab::InvalidDevice:++++ + ++
+ +Public Member Functions
+ + InvalidDevice () + Creates an invalid device. + + bool acquireInterfaces () override + Acquires plugin interfaces. More... + + bool acquireData () override + Acquires data from remote device. More... + + void sendMovementCommand (double timestamp) override + Sends movement command to the cartesian controller. More... + + +void stopMotion () override + Sends a movement command that would stop motion. + + Public Member Functions inherited from roboticslab::StreamingDevice + StreamingDevice (yarp::os::Searchable &config) + Constructor. More... + + +virtual ~StreamingDevice () + Destructor. + + virtual bool initialize (bool usingStreamingPreset) + Perform any custom initialization needed. This method is called after the successful creation of the device and once all interface handles are acquired. More... + + virtual bool transformData (double scaling) + Performs required operations on stored data. More... + + virtual int getActuatorState () + If actuator command data is available, return its current state. More... + + virtual bool hasValidMovementData () const + Checks whether the device may forward acquired and processed data to the controller. More... + + void setCartesianControllerHandle (ICartesianControl *iCartesianControl) + Stores handle to an ICartesianControl instance. More... + +
++ +Additional Inherited Members
+ Protected Attributes inherited from roboticslab::StreamingDevice + +ICartesianControl * iCartesianControl + + +std::vector< double > data + + +std::vector< bool > fixedAxes + + +int actuatorState + Detailed Description
+A call to isValid() and other interface methods should yield false.
+Member Function Documentation
+ +◆ acquireData()
+ +++ +++
++ ++ ++
++ +bool roboticslab::InvalidDevice::acquireData +( +) ++ +inlineoverridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::StreamingDevice.
+ +◆ acquireInterfaces()
+ +++ +++
++ ++ ++
++ +bool roboticslab::InvalidDevice::acquireInterfaces +( +) ++ +inlineoverridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::StreamingDevice.
+ +◆ sendMovementCommand()
+ +++++
++ ++ ++
++ +void roboticslab::InvalidDevice::sendMovementCommand +( +double +timestamp ) ++ +inlineoverridevirtual ++++ +
- Parameters
- +
++
++ timestamp Current timestamp. Implements roboticslab::StreamingDevice.
+ +
The documentation for this class was generated from the following file:+
+- programs/streamingDeviceController/StreamingDevice.hpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1InvalidDevice.png b/classroboticslab_1_1InvalidDevice.png new file mode 100644 index 0000000000000000000000000000000000000000..7a02c2dbe56595f6005e3d1779c83b08acf5b45c GIT binary patch literal 1063 zcmeAS@N?(olHy`uVBq!ia0vp^8-TcjgBeH`I80mvq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0w|TlahEy=Vo%?dqCo3M-+g@j1{JsC9 z?MUZSRq1B^`Kwv%8q9aD^?0PO*kUk=W7Vq1CmKUTt51Q5SIh_4*``g&TYE}1%o2E`8s&bDMS-cC5;Z{@yV8q{i(c5$jNX zu>)6sn5|lM>zXhB>MV^bI|A%Poxk$z*!kNgYF%Tv|I_n(nC?A)y p0zAf#jvxZN10tr@TDe*SgBSZF!9Q>IJ<=3M=$*h53N%zaH{_|8*lzUh>6?eOE56zddQ^ z7L#{d)R%BaE&jdNn45Kj;r4$%zoq78z0A5NGgp4kq1>9Z*{phIQ<#^wOG~SGWS#6> z8Qiw!>x8*HO0L@b`WlO!{Tnw=$Y4m{eq&N*d==-O^jx##&7TZEd^~(=vflS~ESk3` zwtuf#HSaa&hsP3jY K=M2rWS{wI#p0kZJy|~7IyHZAu%95-J z>k492U0n7pY &Uq5|5fA!7l?A47I^$Q($nmk;>nilv*B|d#}rlXbEhPAAF z-rlNL3-0yXYO<}!l<~4oL3Zy?CZFu89f{2jSuZ1Jb!@pdyWMPE4O5Oo! GeTRW$l-oI4~ P%+(B@u6{1-oD!M + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::KdlSolver Member List+ ++ +This is the complete list of members for roboticslab::KdlSolver, including all inherited members.
++
+ appendLink(const std::vector< double > &x) override roboticslab::KdlSolver virtual + BASE_FRAME enum value roboticslab::ICartesianSolver + chain roboticslab::KdlSolver private + changeOrigin(const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj) override roboticslab::KdlSolver virtual + close() override (defined in roboticslab::KdlSolver) roboticslab::KdlSolver + diffInvKin(const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame) override roboticslab::KdlSolver virtual + fkSolverPos (defined in roboticslab::KdlSolver) roboticslab::KdlSolver private + fwdKin(const std::vector< double > &q, std::vector< double > &x) override roboticslab::KdlSolver virtual + getNumJoints() override roboticslab::KdlSolver virtual + getNumTcps() override roboticslab::KdlSolver virtual + idSolver (defined in roboticslab::KdlSolver) roboticslab::KdlSolver private + ikSolverPos (defined in roboticslab::KdlSolver) roboticslab::KdlSolver private + ikSolverVel (defined in roboticslab::KdlSolver) roboticslab::KdlSolver private + invDyn(const std::vector< double > &q, std::vector< double > &t) override roboticslab::KdlSolver virtual + invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame) override roboticslab::KdlSolver virtual + roboticslab::ICartesianSolver::invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) roboticslab::ICartesianSolver inlinevirtual + invKin(const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame) override roboticslab::KdlSolver virtual + isQuiet (defined in roboticslab::KdlSolver) roboticslab::KdlSolver private + logc() const (defined in roboticslab::KdlSolver) roboticslab::KdlSolver inlineprivate + mtx (defined in roboticslab::KdlSolver) roboticslab::KdlSolver mutableprivate + open(yarp::os::Searchable &config) override (defined in roboticslab::KdlSolver) roboticslab::KdlSolver + originalChain roboticslab::KdlSolver private + poseDiff(const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut) override roboticslab::KdlSolver virtual + reference_frame enum name roboticslab::ICartesianSolver + restoreOriginalChain() override roboticslab::KdlSolver virtual + TCP_FRAME enum value roboticslab::ICartesianSolver + ~ICartesianSolver()=default roboticslab::ICartesianSolver virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1KdlSolver.html b/classroboticslab_1_1KdlSolver.html new file mode 100644 index 000000000..708c4c875 --- /dev/null +++ b/classroboticslab_1_1KdlSolver.html @@ -0,0 +1,761 @@ + + + + + + + +kinematics-dynamics: roboticslab::KdlSolver Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::KdlSolver Class Reference+ ++ +The KdlSolver class implements ICartesianSolver. +
+ ++
#include <KdlSolver.hpp>
+Inheritance diagram for roboticslab::KdlSolver:++++ + ++
+ +Public Member Functions
+ int getNumJoints () override + Get number of joints for which the solver has been configured. More... + + int getNumTcps () override + Get number of TCPs for which the solver has been configured. More... + + bool appendLink (const std::vector< double > &x) override + Append an additional link. More... + + bool restoreOriginalChain () override + Restore original kinematic chain. More... + + bool changeOrigin (const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj) override + Change origin in which a pose is expressed. More... + + bool fwdKin (const std::vector< double > &q, std::vector< double > &x) override + Perform forward kinematics. More... + + bool poseDiff (const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut) override + Obtain difference between supplied pose inputs. More... + + bool invKin (const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame) override + Perform inverse kinematics. More... + + bool diffInvKin (const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame) override + Perform differential inverse kinematics. More... + + bool invDyn (const std::vector< double > &q, std::vector< double > &t) override + Perform inverse dynamics. More... + + bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame) override + Perform inverse dynamics. More... + + +bool open (yarp::os::Searchable &config) override + + +bool close () override + + Public Member Functions inherited from roboticslab::ICartesianSolver + +virtual ~ICartesianSolver ()=default + Destructor. + + virtual bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) + Perform inverse dynamics. More... + +
+ +Private Member Functions
+ +const yarp::os::LogComponent & logc () const + +
+ +Private Attributes
+ +std::mutex mtx + + KDL::Chain chain + + KDL::Chain originalChain + + +KDL::ChainFkSolverPos * fkSolverPos {nullptr} + + +KDL::ChainIkSolverPos * ikSolverPos {nullptr} + + +KDL::ChainIkSolverVel * ikSolverVel {nullptr} + + +KDL::ChainIdSolver * idSolver {nullptr} + + +bool isQuiet + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::ICartesianSolver + enum reference_frame { BASE_FRAME = yarp::os::createVocab32('c','p','f','b') +, TCP_FRAME = yarp::os::createVocab32('c','p','f','t') + } + Lists supported reference frames. More... + Member Function Documentation
+ +◆ appendLink()
+ +++ +++
++ ++ ++
++ +bool KdlSolver::appendLink +( +const std::vector< double > & +x ) ++ +overridevirtual ++++
- Parameters
- +
++
++ x 6-element vector describing end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ changeOrigin()
+ +++ +++
++ ++ ++
++ +bool KdlSolver::changeOrigin +( +const std::vector< double > & +x_old_obj, ++ ++ + const std::vector< double > & +x_new_old, ++ ++ + std::vector< double > & +x_new_obj ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ x_old_obj_in 6-element vector describing a pose in cartesian space, expressed in the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_old 6-element vector describing a transformation from the new to the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_obj 6-element vector describing a pose in cartesian space, expressed in the new frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ diffInvKin()
+ +++ +++
++ ++ ++
++ +bool KdlSolver::diffInvKin +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +xdot, ++ ++ + std::vector< double > & +qdot, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + xdot 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + qdot Vector describing target velocity in joint space (meters/second or degrees/second). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ fwdKin()
+ +++ +++
++ ++ ++
++ +bool KdlSolver::fwdKin +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +x ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing a position in joint space (meters or degrees). + x 6-element vector describing same position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ getNumJoints()
+ +++ +++
++ ++ ++
++ +int KdlSolver::getNumJoints +( +) ++ +overridevirtual ++++ +
- Returns
- Number of joints.
Implements roboticslab::ICartesianSolver.
+ +◆ getNumTcps()
+ +++ +++
++ ++ ++
++ +int KdlSolver::getNumTcps +( +) ++ +overridevirtual ++++ +
- Returns
- The number of TCPs.
Implements roboticslab::ICartesianSolver.
+ +◆ invDyn() [1/2]
+ +++ +++
++ ++ ++
++ +bool KdlSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +qdot, ++ ++ + const std::vector< double > & +qdotdot, ++ ++ + const std::vector< double > & +ftip, ++ ++ + std::vector< double > & +t, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + qdot Vector describing current velocity in joint space (meters/second or degrees/second). + qdotdot Vector describing current acceleration in joint space (meters/secondยฒ or degrees/secondยฒ). + ftip Vector describing an external force applied to the robot tip, expressed in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + frame Points at the reference_frame ftip
is expressed in.+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ invDyn() [2/2]
+ +++ +++
++ ++ ++
++ +bool KdlSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +t ++ ++ ) ++ +overridevirtual +++Assumes null joint velocities and accelerations, and no external forces.
++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ invKin()
+ +++ +++
++ ++ ++
++ +bool KdlSolver::invKin +( +const std::vector< double > & +xd, ++ ++ + const std::vector< double > & +qGuess, ++ ++ + std::vector< double > & +q, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + qGuess Vector describing current position in joint space (meters or degrees). + q Vector describing target position in joint space (meters or degrees). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ poseDiff()
+ +++ +++
++ ++ ++
++ +bool KdlSolver::poseDiff +( +const std::vector< double > & +xLhs, ++ ++ + const std::vector< double > & +xRhs, ++ ++ + std::vector< double > & +xOut ++ ++ ) ++ +overridevirtual +++The result is an infinitesimal displacement twist, i.e. a vector, for which the operation of addition makes physical sense.
++
- Parameters
- +
++
++ xLhs 6-element vector describing a pose in cartesian space (left hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xRhs 6-element vector describing a pose in cartesian space (right hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xOut 6-element vector describing a pose in cartesian space (result); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ restoreOriginalChain()
+ +++++
++ ++ ++
++ +bool KdlSolver::restoreOriginalChain +( +) ++ +overridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +Member Data Documentation
+ +◆ chain
+ +++ +++
++ ++ ++
++ +KDL::Chain roboticslab::KdlSolver::chain ++private +++The chain.
+ +◆ originalChain
+ +++++
++ ++ ++
++ +KDL::Chain roboticslab::KdlSolver::originalChain ++private +++To store a copy of the original chain.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/KdlSolver/KdlSolver.hpp
+- libraries/YarpPlugins/KdlSolver/DeviceDriverImpl.cpp
+- libraries/YarpPlugins/KdlSolver/ICartesianSolverImpl.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1KdlSolver.png b/classroboticslab_1_1KdlSolver.png new file mode 100644 index 0000000000000000000000000000000000000000..4769dcbf6154fff4b7128bf56a4c0f017cbf8be2 GIT binary patch literal 1085 zcmeAS@N?(olHy`uVBq!ia0y~yU`zwD12~w0r0g1f1t296;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|zzr0cx}=CYZSLr>UKr_e zWbOqWrAK}lVuFRwi_fZmzVvzVsw_#TvOBxY3)fn9df3Y8N@v_&mY!|%-reQa Q~PA;>O)Kau9y62vHoxCv40nC zt}8p@{eIhxC$m gLi#UHn(_O(n9jyWmw9AA@9Q}~v&!=CjL=2Lg;%fM zb1kO6a+z&b{om=*v0Gkl{6FjJ^6Md?ThEwWm!IzcT7RBN+d|VEqu(jI)_ZNVjZfXG zQ=c7bTIwTr*k< i`f$G6_pySV?I_+@|7>+8)o?Nqt#{48 imNJl8b1LSuir6ey7rUoxGFGhm=j60`)hb~0hF+a}Va=*nei>n*rRj-h zHJ5JT>3w$lZCNxM1OGb)?oBsp+tV2G-+ec=)i1lhQ1Za+<9GF5R&M;wcb4IQ;|(Up zJDg`3-nFDLlsg$WSOewfUf_A)m%&z`Zo<4ncoszZ&in7bCo!;S@7HAD7KDls(1I#$ z;_junmifRWozmxMR(yUt>+K5n)$_wZ3Gj)>ys2{Y{g3{&JlkNYXEOc3x}Bo(v%are zK27(#-16P?pYMMje(tnwSk0`3X79gizReDBlkZ=oQ(owOf8|cA6U#%-EHUJ{+n2L5 z@@)st>n(p7nB!-i-P`Q=d80#keeS7QKXZTin=;S&&~7?=kzqz&SE2RN=#6Li&OV>z zziCtaqT5XFXY*J5sXA-F?(ErDJAa34_WZGbrDgba_d{FPJ~n;deQerH)qw88nL*y( zu{)-HmtnVfsBOypM-NZX>8!C_I%OK;f$sW$F5P+a?@mev=5+>7S3j3^P6 + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::KdlTreeSolver Member List+ ++ +This is the complete list of members for roboticslab::KdlTreeSolver, including all inherited members.
++
+ appendLink(const std::vector< double > &x) override roboticslab::KdlTreeSolver virtual + BASE_FRAME enum value roboticslab::ICartesianSolver + changeOrigin(const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj) override roboticslab::KdlTreeSolver virtual + close() override (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver + diffInvKin(const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame) override roboticslab::KdlTreeSolver virtual + endpoints (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + fkSolverPos (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + fwdKin(const std::vector< double > &q, std::vector< double > &x) override roboticslab::KdlTreeSolver virtual + getNumJoints() override roboticslab::KdlTreeSolver virtual + getNumTcps() override roboticslab::KdlTreeSolver virtual + idSolver (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + ikSolverPos (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + ikSolverVel (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + invDyn(const std::vector< double > &q, std::vector< double > &t) override roboticslab::KdlTreeSolver virtual + invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame) override roboticslab::KdlTreeSolver virtual + roboticslab::ICartesianSolver::invDyn(const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) roboticslab::ICartesianSolver inlinevirtual + invKin(const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame) override roboticslab::KdlTreeSolver virtual + KdlTreeSolver() (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver inline + mergedEndpoints (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + open(yarp::os::Searchable &config) override (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver + poseDiff(const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut) override roboticslab::KdlTreeSolver virtual + reference_frame enum name roboticslab::ICartesianSolver + restoreOriginalChain() override roboticslab::KdlTreeSolver virtual + TCP_FRAME enum value roboticslab::ICartesianSolver + tree (defined in roboticslab::KdlTreeSolver) roboticslab::KdlTreeSolver protected + ~ICartesianSolver()=default roboticslab::ICartesianSolver virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1KdlTreeSolver.html b/classroboticslab_1_1KdlTreeSolver.html new file mode 100644 index 000000000..6297f3e74 --- /dev/null +++ b/classroboticslab_1_1KdlTreeSolver.html @@ -0,0 +1,706 @@ + + + + + + + +kinematics-dynamics: roboticslab::KdlTreeSolver Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::KdlTreeSolver Class Reference+ ++ +The KdlTreeSolver class implements ICartesianSolver. +
+ ++
#include <KdlTreeSolver.hpp>
+Inheritance diagram for roboticslab::KdlTreeSolver:++++ + ++
+ +Public Member Functions
+ int getNumJoints () override + Get number of joints for which the solver has been configured. More... + + int getNumTcps () override + Get number of TCPs for which the solver has been configured. More... + + bool appendLink (const std::vector< double > &x) override + Append an additional link. More... + + bool restoreOriginalChain () override + Restore original kinematic chain. More... + + bool changeOrigin (const std::vector< double > &x_old_obj, const std::vector< double > &x_new_old, std::vector< double > &x_new_obj) override + Change origin in which a pose is expressed. More... + + bool fwdKin (const std::vector< double > &q, std::vector< double > &x) override + Perform forward kinematics. More... + + bool poseDiff (const std::vector< double > &xLhs, const std::vector< double > &xRhs, std::vector< double > &xOut) override + Obtain difference between supplied pose inputs. More... + + bool invKin (const std::vector< double > &xd, const std::vector< double > &qGuess, std::vector< double > &q, reference_frame frame) override + Perform inverse kinematics. More... + + bool diffInvKin (const std::vector< double > &q, const std::vector< double > &xdot, std::vector< double > &qdot, reference_frame frame) override + Perform differential inverse kinematics. More... + + bool invDyn (const std::vector< double > &q, std::vector< double > &t) override + Perform inverse dynamics. More... + + bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< double > &ftip, std::vector< double > &t, reference_frame frame) override + Perform inverse dynamics. More... + + +bool open (yarp::os::Searchable &config) override + + +bool close () override + + Public Member Functions inherited from roboticslab::ICartesianSolver + +virtual ~ICartesianSolver ()=default + Destructor. + + virtual bool invDyn (const std::vector< double > &q, const std::vector< double > &qdot, const std::vector< double > &qdotdot, const std::vector< std::vector< double >> &fexts, std::vector< double > &t) + Perform inverse dynamics. More... + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::ICartesianSolver + enum reference_frame { BASE_FRAME = yarp::os::createVocab32('c','p','f','b') +, TCP_FRAME = yarp::os::createVocab32('c','p','f','t') + } + Lists supported reference frames. More... + Member Function Documentation
+ +◆ appendLink()
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::appendLink +( +const std::vector< double > & +x ) ++ +overridevirtual ++++
- Parameters
- +
++
++ x 6-element vector describing end-effector frame in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ changeOrigin()
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::changeOrigin +( +const std::vector< double > & +x_old_obj, ++ ++ + const std::vector< double > & +x_new_old, ++ ++ + std::vector< double > & +x_new_obj ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ x_old_obj_in 6-element vector describing a pose in cartesian space, expressed in the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_old 6-element vector describing a transformation from the new to the old frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + x_new_obj 6-element vector describing a pose in cartesian space, expressed in the new frame; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ diffInvKin()
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::diffInvKin +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +xdot, ++ ++ + std::vector< double > & +qdot, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + xdot 6-element vector describing desired velocity in cartesian space; first three elements denote translational velocity (meters/second), last three denote angular velocity (radians/second). + qdot Vector describing target velocity in joint space (meters/second or degrees/second). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ fwdKin()
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::fwdKin +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +x ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing a position in joint space (meters or degrees). + x 6-element vector describing same position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ getNumJoints()
+ +++ +++
++ ++ ++
++ +int KdlTreeSolver::getNumJoints +( +) ++ +overridevirtual ++++ +
- Returns
- Number of joints.
Implements roboticslab::ICartesianSolver.
+ +◆ getNumTcps()
+ +++ +++
++ ++ ++
++ +int KdlTreeSolver::getNumTcps +( +) ++ +overridevirtual ++++ +
- Returns
- The number of TCPs.
Implements roboticslab::ICartesianSolver.
+ +◆ invDyn() [1/2]
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + const std::vector< double > & +qdot, ++ ++ + const std::vector< double > & +qdotdot, ++ ++ + const std::vector< double > & +ftip, ++ ++ + std::vector< double > & +t, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + qdot Vector describing current velocity in joint space (meters/second or degrees/second). + qdotdot Vector describing current acceleration in joint space (meters/secondยฒ or degrees/secondยฒ). + ftip Vector describing an external force applied to the robot tip, expressed in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + frame Points at the reference_frame ftip
is expressed in.+ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ invDyn() [2/2]
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::invDyn +( +const std::vector< double > & +q, ++ ++ + std::vector< double > & +t ++ ++ ) ++ +overridevirtual +++Assumes null joint velocities and accelerations, and no external forces.
++
- Parameters
- +
++
++ q Vector describing current position in joint space (meters or degrees). + t 6-element vector describing desired forces in cartesian space; first three elements denote translational acceleration (meters/secondยฒ), last three denote angular acceleration (radians/secondยฒ). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ invKin()
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::invKin +( +const std::vector< double > & +xd, ++ ++ + const std::vector< double > & +qGuess, ++ ++ + std::vector< double > & +q, ++ ++ + reference_frame +frame ++ ++ ) ++ +overridevirtual ++++
- Parameters
- +
++
++ xd 6-element vector describing desired position in cartesian space; first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + qGuess Vector describing current position in joint space (meters or degrees). + q Vector describing target position in joint space (meters or degrees). + frame Points at the reference_frame the desired position is expressed in. + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ poseDiff()
+ +++ +++
++ ++ ++
++ +bool KdlTreeSolver::poseDiff +( +const std::vector< double > & +xLhs, ++ ++ + const std::vector< double > & +xRhs, ++ ++ + std::vector< double > & +xOut ++ ++ ) ++ +overridevirtual +++The result is an infinitesimal displacement twist, i.e. a vector, for which the operation of addition makes physical sense.
++
- Parameters
- +
++
++ xLhs 6-element vector describing a pose in cartesian space (left hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xRhs 6-element vector describing a pose in cartesian space (right hand side); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + xOut 6-element vector describing a pose in cartesian space (result); first three elements denote translation (meters), last three denote rotation in scaled axis-angle representation (radians). + +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +◆ restoreOriginalChain()
+ +++++
++ ++ ++
++ +bool KdlTreeSolver::restoreOriginalChain +( +) ++ +overridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::ICartesianSolver.
+ +
The documentation for this class was generated from the following files:+
+- libraries/YarpPlugins/KdlTreeSolver/KdlTreeSolver.hpp
+- libraries/YarpPlugins/KdlTreeSolver/DeviceDriverImpl.cpp
+- libraries/YarpPlugins/KdlTreeSolver/ICartesianSolverImpl.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1KdlTreeSolver.png b/classroboticslab_1_1KdlTreeSolver.png new file mode 100644 index 0000000000000000000000000000000000000000..2ed17b4eecd26eb144496da6c8db09b75c7064cd GIT binary patch literal 1109 zcmeAS@N?(olHy`uVBq!ia0y~yU`zwD12~w0r0g1f1t296;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|!2HD1#WAFU@$KBVd8-Y09QR^Wu%MB zoGUs?LVj6df}GEb&x#j5eZ73uE6G(g`^)7Y?R=)B^tNJ3O{?ziX=^`xwNXmy4}WTx zk<)+q&$6xMzgMoZ+y^w_&PSKe>!MuF6s|p6JHOww{%YQYy`_EZ--Qf! z>(|+@&2BuIw`$eA&S#sJzMU4*e|px8-}~2Yx)wTr-Rl|OxBj2F(*N-J6;ai78_iB- zpM86l|INi)w_j?MY+ZJA{+Sn-t5>b6N}F~2wCwb^z3QzCvsahRtTmj*zyAKIub;Nv zKbaP)D?9nT!TDz^)8t>fy)#|CiqB{B&ib8>pJ$e@eNg-{N${idxx>-3{7v^qnY{W_ zx9Vrkd-Kf;FJ|0(&3<<4;+@M^t$Ln(Ht(AK)tWb1>9^#LzW(s<*w*XWXV3PEg&v u_8rC2dpNdxd+gpHxykq8)Mx3Ut5*G= z+nFXfQU3hXMGIHG^Ej)dG~ejD%}Q?&qiAc!idFv{f;O+p0!DAB>6|NTR!R9~g@y8_ zC!Sq8WfPCv=eK3Mb(tMl${ScC-|P%Fb};$=d)7Sh>UURo1kOIroc?9cjpF5L4gVeT z8W|ogNoyzwGIp?7DXB0ADDRiW#-VP?+%kC<;~~$p5b1Z{f7g04Oq!a`b-;-T<(Q^D z(^xvClp$i$(s?#$M%OJ&yZ=Gst8MhntvRiW)4H{O^CuiI-?Qb1xC!&SibXrauJjj| zPG0x%d`8`qd()DBKh1mi`peh+)oV(xE`R;%a~;2-+Sv!`38!C)W#ya9)MPk)F*7f} zDrVdD`66xWerpxJdS|j*kZ*PwTg 2g~B^ci~hSW2Yc9+{EFcIM-D zlijY#7jmxnnaB&Ky?^~ab=Tj*v*J6i^A}D$dpC1c<-4!uS^vJ>vRU!^`m>kjb430h zSyY(!`*_;^>E}+~(U*$;ceU&CcfHChcidK}mwRtcnSE&eWu6bsu;9ZCkCx3Fo&|YD evNdS@V~p1CUUeZTmJe74FnGH9xvX + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::KeyboardController Member List+ ++ +This is the complete list of members for roboticslab::KeyboardController, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1KeyboardController.html b/classroboticslab_1_1KeyboardController.html new file mode 100644 index 000000000..6a24d45f0 --- /dev/null +++ b/classroboticslab_1_1KeyboardController.html @@ -0,0 +1,263 @@ + + + + + + + +kinematics-dynamics: roboticslab::KeyboardController Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++++Public Types | +Public Member Functions | +Private Types | +Private Member Functions | +Private Attributes | +Static Private Attributes | +List of all members+++roboticslab::KeyboardController Class Reference+ ++ +Sends streaming commands to the cartesian controller from a standard keyboard. + More...
+ ++
#include <KeyboardController.hpp>
+Inheritance diagram for roboticslab::KeyboardController:++++ ++
+ +Public Types
+ enum joint {
+ Q1 = 0 +, Q2 +, Q3 +, Q4 +,
+ Q5 +, Q6 +, Q7 +, Q8 +,
+ Q9 +, MAX_JOINTS +
+ }+ + enum cart {
+ X = 0 +, Y +, Z +, ROTX +,
+ ROTY +, ROTZ +, NUM_CART_COORDS +
+ }+ +
+ +Private Types
+ enum control_modes { NOT_CONTROLLING +, JOINT_MODE +, CARTESIAN_MODE + } + +
+ +Private Attributes
+ +int axes + + +int currentActuatorCommand + + +ICartesianSolver::reference_frame cartFrame + + +std::string angleRepr + + +KinRepresentation::orientation_system orient + + +control_modes controlMode + + +bool usingThread + + +LinearTrajectoryThread * linTrajThread + + +yarp::dev::PolyDriver controlBoardDevice + + +yarp::dev::PolyDriver cartesianControlDevice + + +yarp::dev::IEncoders * iEncoders + + +yarp::dev::IControlMode * iControlMode + + +yarp::dev::IControlLimits * iControlLimits + + +yarp::dev::IVelocityControl * iVelocityControl + + +roboticslab::ICartesianControl * iCartesianControl + + +std::vector< double > maxVelocityLimits + + +std::vector< double > currentJointVels + + +std::vector< double > currentCartVels + +
++ +Static Private Attributes
+ +static const std::plus< double > increment_functor + + +static const std::minus< double > decrement_functor + Detailed Description
+Uses the terminal as a simple user interface. Also accepts joint commands if connected to a remote controlboard.
+
The documentation for this class was generated from the following files:+
+- programs/keyboardController/KeyboardController.hpp
+- programs/keyboardController/KeyboardController.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1KeyboardController.png b/classroboticslab_1_1KeyboardController.png new file mode 100644 index 0000000000000000000000000000000000000000..34954688945522d8e9e8596d051ed12745493f34 GIT binary patch literal 703 zcmeAS@N?(olHy`uVBq!ia0vp^`++!sgBeKHtA!*3DTx4|5ZC|z{{xvX-h3_XKQsZz z0^dz#R pwdbxY?0-t7BbRBe%$;ZN z|7r8>t>%3XC;#yF>b>>1^z;9&|69Hn{`q;t*n9r|v+~yI#uw*>RZEo%y}0%}dXc(n zrRnp>Z8iV)JfFTK{`LAl*Am+o9=_kbV>i#~`O3StrA!I=B>ME%U)$*$Wu|5ohx~nc zMD@?(TH|_^oo1r->Ca+5PG9ohr#pVqqb)yFHU0emO$nM6&Y=92VMfH{&-QY~`3Xh; z)c;+Po-w!ns(gcoZe4=~30T}qb7`k5(~Pigc?CZZj;*u*@@8vs)_vQXR_fL3nYXO} zsj1SCeb$5h@%29q+4?{37cp#;&A#{cx9tD2?Z+QhMjzVrKest`jYVnj-tJF2{F2#U zH|_o$aqZc=J5H88k5+z~&UrjH_Ug+y%f#}<_T=jp-)MiQ^QMWrM>)&vpZf8)haLxH zA7AQo@{zXjHIK*ds_wGZtJl{Ze*fwDk^H#hldbo^ORn4eNBLi|-P}Ls$Kr!(h3bD7 zegB#NeE<6SSEro)VmEcIef_!laeq&`E{d+-Hh**ciZj)hR@$3htoi%B^z@SC<^O6P z|F-^j+ips|&A)(u`VaWe$v13_`ojQB3=D<8e(qQ@<
+ + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::LeapMotionSensorDevice Member List+ ++ +This is the complete list of members for roboticslab::LeapMotionSensorDevice, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1LeapMotionSensorDevice.html b/classroboticslab_1_1LeapMotionSensorDevice.html new file mode 100644 index 000000000..d53969028 --- /dev/null +++ b/classroboticslab_1_1LeapMotionSensorDevice.html @@ -0,0 +1,395 @@ + + + + + + + +kinematics-dynamics: roboticslab::LeapMotionSensorDevice Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::LeapMotionSensorDevice Class Reference+ ++ +Represents a LeapMotion device wrapped as an analog sensor by YARP. +
+ ++
#include <LeapMotionSensorDevice.hpp>
+Inheritance diagram for roboticslab::LeapMotionSensorDevice:++++ + ++
+ +Public Member Functions
+ + LeapMotionSensorDevice (yarp::os::Searchable &config, bool usingMovi) + Constructor. + + bool acquireInterfaces () override + Acquires plugin interfaces. More... + + bool initialize (bool usingStreamingPreset) override + Perform any custom initialization needed. This method is called after the successful creation of the device and once all interface handles are acquired. More... + + bool acquireData () override + Acquires data from remote device. More... + + bool transformData (double scaling) override + Performs required operations on stored data. More... + + int getActuatorState () override + If actuator command data is available, return its current state. More... + + void sendMovementCommand (double timestamp) override + Sends movement command to the cartesian controller. More... + + +void stopMotion () override + Sends a movement command that would stop motion. + + Public Member Functions inherited from roboticslab::StreamingDevice + StreamingDevice (yarp::os::Searchable &config) + Constructor. More... + + +virtual ~StreamingDevice () + Destructor. + + virtual bool hasValidMovementData () const + Checks whether the device may forward acquired and processed data to the controller. More... + + void setCartesianControllerHandle (ICartesianControl *iCartesianControl) + Stores handle to an ICartesianControl instance. More... + +
++ +Additional Inherited Members
+ Protected Attributes inherited from roboticslab::StreamingDevice + +ICartesianControl * iCartesianControl + + +std::vector< double > data + + +std::vector< bool > fixedAxes + + +int actuatorState + Member Function Documentation
+ +◆ acquireData()
+ +++ +++
++ ++ ++
++ +bool LeapMotionSensorDevice::acquireData +( +) ++ +overridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::StreamingDevice.
+ +◆ acquireInterfaces()
+ +++ +++
++ ++ ++
++ +bool LeapMotionSensorDevice::acquireInterfaces +( +) ++ +overridevirtual ++++ +
- Returns
- true on success, false otherwise
Implements roboticslab::StreamingDevice.
+ +◆ getActuatorState()
+ +++ +++
++ ++ ++
++ +int LeapMotionSensorDevice::getActuatorState +( +) ++ +overridevirtual ++++ +
- Returns
- integer value describing current actuator state
Reimplemented from roboticslab::StreamingDevice.
+ +◆ initialize()
+ +++ +++
++ ++ ++
++ +bool LeapMotionSensorDevice::initialize +( +bool +usingStreamingPreset ) ++ +overridevirtual ++++
- Parameters
- +
++
++ usingStreamingPreset Whether the cartesian controller supports streaming command presets or not. + +
- Returns
- true on success, false otherwise
Reimplemented from roboticslab::StreamingDevice.
+ +◆ sendMovementCommand()
+ +++ +++
++ ++ ++
++ +void LeapMotionSensorDevice::sendMovementCommand +( +double +timestamp ) ++ +overridevirtual ++++ +
- Parameters
- +
++
++ timestamp Current timestamp. Implements roboticslab::StreamingDevice.
+ +◆ transformData()
+ +++++
++ ++ ++
++ +bool LeapMotionSensorDevice::transformData +( +double +scaling ) ++ +overridevirtual ++++
- Parameters
- +
++
++ scaling Scaling factor applied to each data value. + +
- Returns
- true on success, false otherwise
Reimplemented from roboticslab::StreamingDevice.
+ +
The documentation for this class was generated from the following files:+
+- programs/streamingDeviceController/LeapMotionSensorDevice.hpp
+- programs/streamingDeviceController/LeapMotionSensorDevice.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1LeapMotionSensorDevice.png b/classroboticslab_1_1LeapMotionSensorDevice.png new file mode 100644 index 0000000000000000000000000000000000000000..be11fbffe1c4d5a314b8665e96bb8c870cfcac89 GIT binary patch literal 1190 zcmeAS@N?(olHy`uVBq!ia0vp^kAS#?gBeJkU3mN^kdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~G4*tD45?szJ2$gxwE+*q@l)4d{WH%y zly*{rsnNvr>gwmL>nrwj>|ZkF(pJTltKwz`goNhK1rz03dOdescSdQ)7v9=qw=kkZ zH+03Sc?VZ_^~cHn-L?GR`Mh(B6V}LoR12Q_Q_?v0{VDH|(DI@HL;s`$YW9`UrusS} z=}(hau6pIy_ioXuWlg7qeynHY{yB$j-mb}Y zDK$J6=e6FbR=j)aOr=$;Ugh;^+5P8PwaV^kt^9Lm_R!E+D}%G;QgXjCR;=<}fBy5@ zHg>*MtFnY!7Ol#94JPi027A4{#PCNip5gklUtRI>)64hldvy21tG@pZhDurv3<3-_ zlXi47Fgh@NuzaM)#KORM;CaVx4gm%hhWX0xl)wu5kQB^0^R{evtaP4|Qn;Fkt4owR zh)AEGBs6i(JInZlsq$?~h#A(UBbX_eI#t&nXgu8(%J1)UjjBf*Yw?+Db~Bj@|Hg zd6H_Tu`I9Xu-=#MTTkWwm$oL~G?2Z2<=3~np9*%qyl{D+qJF1rNtC8}Q^yIVXpyrl zzmES|=9PAB%lrv5*UZmaZ!9%4FKpwB0I`k^olTkI+UqB%SU&ANHS^QcGVz>LA PgoBh!{YdbfMWnuzyVUB?*j>=IF)TM>{gSlS_Ywd2;`pFh%_dwbi17ijivvYl^P zl=jkCc~!>=b&FrNe;#*5^DXE&A@=W;UY m<0Klz99gCCKaLtqBb4d^DK0_$TXMY{%EW-IMhF z%KEc^H_AW$Xj~W3mMSeZ#rLn@%y-G$t0N@Kb5ggR^gY67?R%?izF%u~ ?S)b~KSxq>hnICfQ$I|c0qKnsPKil|P zxUnTYa^sxCcCO_C(?!}N9z^v_^A~M@Tf8{>ty5vm^msn${xa=#K4;&T 6f7EpQBemSHn2edC=`(f9H;M(ypZ6Br`rG*P3H6dUdC@b9&84r) z|F2xxz2cjU-+sFzVai$utSi3%U|8LvbinanqtXF)PS=KOAY5591DF?1{b4w + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::LinearTrajectoryThread Member List+ ++ +This is the complete list of members for roboticslab::LinearTrajectoryThread, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1LinearTrajectoryThread.html b/classroboticslab_1_1LinearTrajectoryThread.html new file mode 100644 index 000000000..6ff5c9186 --- /dev/null +++ b/classroboticslab_1_1LinearTrajectoryThread.html @@ -0,0 +1,154 @@ + + + + + + + +kinematics-dynamics: roboticslab::LinearTrajectoryThread Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::LinearTrajectoryThread Class Reference+ ++ +Periodic thread that encapsulates a linear trajectory. +
+ ++
#include <LinearTrajectoryThread.hpp>
+Inheritance diagram for roboticslab::LinearTrajectoryThread:++++ ++
+ +Public Member Functions
+ + LinearTrajectoryThread (int period, ICartesianControl *iCartesianControl) + + +bool checkStreamingConfig () + + +bool configure (const std::vector< double > &vels) + + +void useTcpFrame (bool enableTcpFrame) + +
+ +Protected Member Functions
+ +void run () override + +
++ +Private Attributes
+ +double period + + +ICartesianControl * iCartesianControl + + +KDL::Trajectory * trajectory + + +double startTime + + +bool usingStreamingCommandConfig + + +bool usingTcpFrame + + +std::vector< double > deltaX + + +std::mutex mtx +
The documentation for this class was generated from the following files:+
+- programs/keyboardController/LinearTrajectoryThread.hpp
+- programs/keyboardController/LinearTrajectoryThread.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1LinearTrajectoryThread.png b/classroboticslab_1_1LinearTrajectoryThread.png new file mode 100644 index 0000000000000000000000000000000000000000..cfa12cf29fc70b7f0f88804076a7294ff5dbc09a GIT binary patch literal 771 zcmeAS@N?(olHy`uVBq!ia0vp^*MK;HgBeH$U8%kaq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0CV9FzhEy=VoqKoMW(6MC^1P~h|9kCM ze-aOPea7PcfuyO6MTHY43*;LbOZ(4I>0Q>T>bW-~$umg5N+?^`bJC|UJAMC+$@+=s zoPsXe#k^e{G5vLc{(9Lunb*17vbYaahfj}xCKI=0-Hua-)VJSREZQWsW>KlpSsRs? zUgaBw?yg&N@=5gD;0Q6vq>RAOI5N7Q+)4fWa-6rS!qX=>Gn zoTCvbtU0rn>ZC`8|MScey}a0KM)NYS9geoGrT?XsJom4)_S9IJp`2iPrmbU|O6g*_ z=b|>8InyS5Apa$+!MtNfs`j=$krK{cC^a!VU`-?^ $j6KUbSub>}i8<(JB~6VzJ$bw5`J=P{KFnF{w9snayNrhOUNJF;)FT`& zp4-UaSCU(rvhmyfBT@fzrFZ_h>sE395Z~MCJ<=7y;%k#yN^Z-%e(80% ASz8h2g(@{Qn7zCRbUn{Z;+PxQ2bjKbI{GbrG N85}t_M$h!vsvR44$rjF6*2UngDy1X59b) literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1MatrixExponential-members.html b/classroboticslab_1_1MatrixExponential-members.html new file mode 100644 index 000000000..b8b660ead --- /dev/null +++ b/classroboticslab_1_1MatrixExponential-members.html @@ -0,0 +1,101 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::MatrixExponential Member List+ ++ +This is the complete list of members for roboticslab::MatrixExponential, including all inherited members.
++
+ asFrame(double theta) const roboticslab::MatrixExponential + axis (defined in roboticslab::MatrixExponential) roboticslab::MatrixExponential private + changeBase(const KDL::Frame &H_new_old) roboticslab::MatrixExponential + cloneWithBase(const KDL::Frame &H_new_old) const roboticslab::MatrixExponential + getAxis() const roboticslab::MatrixExponential inline + getMotionType() const roboticslab::MatrixExponential inline + getOrigin() const roboticslab::MatrixExponential inline + MatrixExponential(motion motionType, const KDL::Vector &axis, const KDL::Vector &origin=KDL::Vector::Zero()) roboticslab::MatrixExponential + motion enum name roboticslab::MatrixExponential + motionType (defined in roboticslab::MatrixExponential) roboticslab::MatrixExponential private + origin (defined in roboticslab::MatrixExponential) roboticslab::MatrixExponential private + ROTATION enum value roboticslab::MatrixExponential + TRANSLATION enum value roboticslab::MatrixExponential
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1MatrixExponential.html b/classroboticslab_1_1MatrixExponential.html new file mode 100644 index 000000000..2a57248d2 --- /dev/null +++ b/classroboticslab_1_1MatrixExponential.html @@ -0,0 +1,365 @@ + + + + + + + +kinematics-dynamics: roboticslab::MatrixExponential Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::MatrixExponential Class Reference+ ++ +Abstraction of a term in a product of exponentials (POE) formula. + More...
+ ++
#include <MatrixExponential.hpp>
+
+ +Public Types
+ enum motion { ROTATION +, TRANSLATION + } + Lists available screw motion types. More... + +
+ +Public Member Functions
+ MatrixExponential (motion motionType, const KDL::Vector &axis, const KDL::Vector &origin=KDL::Vector::Zero()) + Constructor. More... + + KDL::Frame asFrame (double theta) const + Evaluates this term for the given magnitude of the screw. More... + + motion getMotionType () const + Retrieves the motion type of this screw. More... + + const KDL::Vector & getAxis () const + Screw axis. More... + + const KDL::Vector & getOrigin () const + A point along the screw axis. More... + + void changeBase (const KDL::Frame &H_new_old) + Refers the internal coordinates of this screw to a different base. More... + + MatrixExponential cloneWithBase (const KDL::Frame &H_new_old) const + Clones this instance and refers the internal coordinates of the screw to a different base. More... + +
++ +Private Attributes
+ +motion motionType + + +KDL::Vector axis + + +KDL::Vector origin + Detailed Description
++
- See also
- PoeExpression
Member Enumeration Documentation
+ +◆ motion
+ ++++++
++ +enum roboticslab::MatrixExponential::motion +Constructor & Destructor Documentation
+ +◆ MatrixExponential()
+ +++++
++ +MatrixExponential::MatrixExponential +( +motion +motionType, ++ ++ + const KDL::Vector & +axis, ++ ++ + const KDL::Vector & +origin = +KDL::Vector::Zero()
+ ++ ) ++ +++ +
- Parameters
- +
++
++ motionType Screw motion type as defined in motion. + axis Screw axis. + origin A point along the screw axis (defaults to (0, 0, 0), ignored in prismatic joints). Member Function Documentation
+ +◆ asFrame()
+ +++ +++
++ +KDL::Frame MatrixExponential::asFrame +( +double +theta ) +const ++++
- Parameters
- +
++
++ theta Input magnitude this screw should be computed at. + +
- Returns
- Resulting homogeneous transformation matrix.
◆ changeBase()
+ +++ +++
++ +void MatrixExponential::changeBase +( +const KDL::Frame & +H_new_old ) ++ +++
- Parameters
- +
++
++ H_new_old Transformation between the new and the old base frame. + +
- See also
- cloneWithBase
◆ cloneWithBase()
+ +++ +++
++ +MatrixExponential MatrixExponential::cloneWithBase +( +const KDL::Frame & +H_new_old ) +const ++++
- Parameters
- +
++
++ H_new_old Transformation between the new and the old base frame. +
- Returns
- An instance referred to the new frame.
+ +
- See also
- changeBase
◆ getAxis()
+ +++ +++
++ ++ ++
++ +const KDL::Vector& roboticslab::MatrixExponential::getAxis +( +) +const ++inline ++++ +
- Returns
- A vector representing the direction of the screw axis.
◆ getMotionType()
+ +++ +++
++ ++ ++
++ +motion roboticslab::MatrixExponential::getMotionType +( +) +const ++inline ++++ +
- Returns
- A motion type this term has been registered with.
◆ getOrigin()
+ +++++
++ ++ ++
++ +const KDL::Vector& roboticslab::MatrixExponential::getOrigin +( +) +const ++inline ++++ +
- Returns
- A vector representing the position of some point along the screw axis.
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/MatrixExponential.hpp
+- libraries/ScrewTheoryLib/MatrixExponential.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanOne-members.html b/classroboticslab_1_1PadenKahanOne-members.html new file mode 100644 index 000000000..b500dec08 --- /dev/null +++ b/classroboticslab_1_1PadenKahanOne-members.html @@ -0,0 +1,100 @@ + + + + + + + +kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::PadenKahanOne Member List+ ++ +This is the complete list of members for roboticslab::PadenKahanOne, including all inherited members.
++
+ axisPow (defined in roboticslab::PadenKahanOne) roboticslab::PadenKahanOne private + describe() const override roboticslab::PadenKahanOne inlinevirtual + exp (defined in roboticslab::PadenKahanOne) roboticslab::PadenKahanOne private + id (defined in roboticslab::PadenKahanOne) roboticslab::PadenKahanOne private + JointIdsToSolutions typedef roboticslab::ScrewTheoryIkSubproblem + JointIdToSolution typedef roboticslab::ScrewTheoryIkSubproblem + p (defined in roboticslab::PadenKahanOne) roboticslab::PadenKahanOne private + PadenKahanOne(int id, const MatrixExponential &exp, const KDL::Vector &p) roboticslab::PadenKahanOne + solutions() const override roboticslab::PadenKahanOne inlinevirtual + Solutions typedef roboticslab::ScrewTheoryIkSubproblem + solve(const KDL::Frame &rhs, const KDL::Frame &pointTransform, Solutions &solutions) const override roboticslab::PadenKahanOne virtual + ~ScrewTheoryIkSubproblem()=default roboticslab::ScrewTheoryIkSubproblem virtual
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanOne.html b/classroboticslab_1_1PadenKahanOne.html new file mode 100644 index 000000000..da443f2a8 --- /dev/null +++ b/classroboticslab_1_1PadenKahanOne.html @@ -0,0 +1,270 @@ + + + + + + + +kinematics-dynamics: roboticslab::PadenKahanOne Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::PadenKahanOne Class Reference+ ++ +First Paden-Kahan subproblem. + More...
+ ++
#include <ScrewTheoryIkSubproblems.hpp>
+Inheritance diagram for roboticslab::PadenKahanOne:++++ + ++
+ +Public Member Functions
+ PadenKahanOne (int id, const MatrixExponential &exp, const KDL::Vector &p) + Constructor. More... + + bool solve (const KDL::Frame &rhs, const KDL::Frame &pointTransform, Solutions &solutions) const override + Finds a closed geometric solution for this IK subproblem. More... + + +int solutions () const override + Number of local IK solutions. + + +const char * describe () const override + Return a human-readable description of this IK subproblem. + + Public Member Functions inherited from roboticslab::ScrewTheoryIkSubproblem + +virtual ~ScrewTheoryIkSubproblem ()=default + Destructor. + +
+ +Private Attributes
+ +const int id + + +const MatrixExponential exp + + +const KDL::Vector p + + +const KDL::Rotation axisPow + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::ScrewTheoryIkSubproblem + +using JointIdToSolution = std::pair< int, double > + Maps a joint id to a screw magnitude. + + +using JointIdsToSolutions = std::vector< JointIdToSolution > + At least one joint-id+value pair per solution. + + +using Solutions = std::vector< JointIdsToSolutions > + Collection of local IK solutions. + Detailed Description
+Single solution, single revolute joint geometric IK subproblem given by \( e\,^{\hat{\xi}\,{\theta}} \cdot p = k \) (rotation screw applied to a point).
+Constructor & Destructor Documentation
+ +◆ PadenKahanOne()
+ +++++
++ +PadenKahanOne::PadenKahanOne +( +int +id, ++ ++ + const MatrixExponential & +exp, ++ ++ + const KDL::Vector & +p ++ ++ ) ++ +++ +
- Parameters
- +
++
++ id Zero-based joint id of the product of exponentials (POE) term. + exp POE term. + p Characteristic point. Member Function Documentation
+ +◆ solve()
+ +++++
++ ++ ++
++ +bool PadenKahanOne::solve +( +const KDL::Frame & +rhs, ++ ++ + const KDL::Frame & +pointTransform, ++ ++ + Solutions & +solutions ++ ++ ) +const ++overridevirtual +++Given the product of exponentials (POE) formula \( \prod_i e\,^{\hat{\xi}_i\,{\theta_i}} \cdot H_{ST}(0) = H_{ST}(\theta) \) , , invariant and known terms are rearranged to the right side (
+rhs
) as follows:+\[ \prod_{i=j}^{j+k} e\,^{\hat{\xi}_i\,{\theta_i}} = \left [ \prod_{i=1}^{j-1} e\,^{\hat{\xi}_i\,{\theta_i}} \right ]^{-1} \cdot H_{ST}(\theta) \cdot \left [ H_{ST}(0) \right ]^{-1} \cdot \left [ \prod_{i=j+k+1}^{N} e\,^{\hat{\xi}_i\,{\theta_i}} \right ]^{-1} \] +
+where \( j = \{1, 2, ..., N\}, k = \{1, 2, ..., N-1\}, 1 <= j+k <= N \) .
+Given \( N \) terms in the POE formula, \( j \) of which are unknowns, any characteristic point \( p \) postmultiplying this expression could be rewritten as \( p' \) per:
++\[ \prod_{i=1}^j e\,^{\hat{\xi}_i\,{\theta_i}} \cdot \prod_{i=j+1}^N e\,^{\hat{\xi}_i\,{\theta_i}} \cdot p = \prod_{i=1}^j e\,^{\hat{\xi}_i\,{\theta_i}} \cdot p' \] +
+where
+pointTransform
is the transformation matrix that produces \( p' \) from \( p \) .+
- Parameters
- +
++
++ rhs Right-hand side of the POE formula prior to being applied to the right-hand side of this subproblem. + pointTransform Transformation frame applied to the first (and perhaps only) characteristic point of this subproblem. + solutions Output vector of local solutions. + +
- Returns
- True if all solutions are reachable, false otherwise.
Implements roboticslab::ScrewTheoryIkSubproblem.
+ +
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ScrewTheoryIkSubproblems.hpp
+- libraries/ScrewTheoryLib/PadenKahanSubproblems.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanOne.png b/classroboticslab_1_1PadenKahanOne.png new file mode 100644 index 0000000000000000000000000000000000000000..62a09e070e7d623b391fcfe2e7ee8189dfcaa0f1 GIT binary patch literal 815 zcmeAS@N?(olHy`uVBq!ia0vp^FMv3JgBeJwygLaJkO=SzasB`QKS=J)*V6t&6M!r* zK5*awYv&z#AeW;g$S;@ys0akEo(eHyU|`zk>Eakt!T5IW+oC%PJg)rLjVu4Vue&a< z;1GBF?6S$HOzs@J;dF^{;h)r5%U*IOO?q$kDh*U @$JL(-9DZk=F4N0+yOc8~w##}!?3w)xZ_Cfd`0{TlY1k_=Tex&x{=UB6%hKw% z{Aw=TF5klLJIQA5v~`#Jb9A?tUpf72Ps!eOyW=y~zt*!iySc6N+IicI>!ox5YWdw= zcRMY2_d0GZ&;8EJ>y!0wd1yTrZ;DIeV5s6%Jk;rR>A9(cs^%oN6)LWmc&vOce_>$! zQ(Vhv x}u1??jnK89w;&gHL*V+CI-@nub zERb?vATG8)ZpQSwv_9nq<5=d{HP?FQ$X^dwAOCy)^4xy&=4)Hdt-nz=ZKvIwfMaUY zC;jF5;3w|5T|{i#oPfG4^|>$o0&ZJPlU^=;>PMj+^PbCBg||xXT3|WnZqekXy^H6~ z4l=&?>(-TM?hk(RS=M@OXI@+F>A2ZAcvo6&_T`4SY(II{x86J1-`*|J=XaK!r*WY3 zUGu$ti`^HTHQf3A#?5V)uGXz6`5RVor*!)KZEBylZ+m@fm+tHAeARxbZ_Tmd5A3fa ihsivaSwUX>7vwt?^#2}JVOjx9-3*?telF{r5}E**8Fk43 literal 0 HcmV?d00001 diff --git a/classroboticslab_1_1PadenKahanThree-members.html b/classroboticslab_1_1PadenKahanThree-members.html new file mode 100644 index 000000000..24b48caa6 --- /dev/null +++ b/classroboticslab_1_1PadenKahanThree-members.html @@ -0,0 +1,101 @@ + + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::PadenKahanThree Member List+ ++ +This is the complete list of members for roboticslab::PadenKahanThree, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanThree.html b/classroboticslab_1_1PadenKahanThree.html new file mode 100644 index 000000000..9b6863bc7 --- /dev/null +++ b/classroboticslab_1_1PadenKahanThree.html @@ -0,0 +1,280 @@ + + + + + + + +kinematics-dynamics: roboticslab::PadenKahanThree Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::PadenKahanThree Class Reference+ ++ +Third Paden-Kahan subproblem. + More...
+ ++
#include <ScrewTheoryIkSubproblems.hpp>
+Inheritance diagram for roboticslab::PadenKahanThree:++++ + ++
+ +Public Member Functions
+ PadenKahanThree (int id, const MatrixExponential &exp, const KDL::Vector &p, const KDL::Vector &k) + Constructor. More... + + bool solve (const KDL::Frame &rhs, const KDL::Frame &pointTransform, Solutions &solutions) const override + Finds a closed geometric solution for this IK subproblem. More... + + +int solutions () const override + Number of local IK solutions. + + +const char * describe () const override + Return a human-readable description of this IK subproblem. + + Public Member Functions inherited from roboticslab::ScrewTheoryIkSubproblem + +virtual ~ScrewTheoryIkSubproblem ()=default + Destructor. + +
+ +Private Attributes
+ +const int id + + +const MatrixExponential exp + + +const KDL::Vector p + + +const KDL::Vector k + + +const KDL::Rotation axisPow + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::ScrewTheoryIkSubproblem + +using JointIdToSolution = std::pair< int, double > + Maps a joint id to a screw magnitude. + + +using JointIdsToSolutions = std::vector< JointIdToSolution > + At least one joint-id+value pair per solution. + + +using Solutions = std::vector< JointIdsToSolutions > + Collection of local IK solutions. + Detailed Description
+Dual solution, single revolute joint geometric IK subproblem given by \( \left \| e\,^{\hat{\xi}\,{\theta}} \cdot p - k \right \| = \delta \) (rotation screw for moving \( p \) to a distance \( \delta \) from \( k \)).
+Constructor & Destructor Documentation
+ +◆ PadenKahanThree()
+ +++++
++ +PadenKahanThree::PadenKahanThree +( +int +id, ++ ++ + const MatrixExponential & +exp, ++ ++ + const KDL::Vector & +p, ++ ++ + const KDL::Vector & +k ++ ++ ) ++ +++ +
- Parameters
- +
++
++ id Zero-based joint id of the product of exponentials (POE) term. + exp POE term. + p First characteristic point. + k Second characteristic point. Member Function Documentation
+ +◆ solve()
+ +++++
++ ++ ++
++ +bool PadenKahanThree::solve +( +const KDL::Frame & +rhs, ++ ++ + const KDL::Frame & +pointTransform, ++ ++ + Solutions & +solutions ++ ++ ) +const ++overridevirtual +++Given the product of exponentials (POE) formula \( \prod_i e\,^{\hat{\xi}_i\,{\theta_i}} \cdot H_{ST}(0) = H_{ST}(\theta) \) , , invariant and known terms are rearranged to the right side (
+rhs
) as follows:+\[ \prod_{i=j}^{j+k} e\,^{\hat{\xi}_i\,{\theta_i}} = \left [ \prod_{i=1}^{j-1} e\,^{\hat{\xi}_i\,{\theta_i}} \right ]^{-1} \cdot H_{ST}(\theta) \cdot \left [ H_{ST}(0) \right ]^{-1} \cdot \left [ \prod_{i=j+k+1}^{N} e\,^{\hat{\xi}_i\,{\theta_i}} \right ]^{-1} \] +
+where \( j = \{1, 2, ..., N\}, k = \{1, 2, ..., N-1\}, 1 <= j+k <= N \) .
+Given \( N \) terms in the POE formula, \( j \) of which are unknowns, any characteristic point \( p \) postmultiplying this expression could be rewritten as \( p' \) per:
++\[ \prod_{i=1}^j e\,^{\hat{\xi}_i\,{\theta_i}} \cdot \prod_{i=j+1}^N e\,^{\hat{\xi}_i\,{\theta_i}} \cdot p = \prod_{i=1}^j e\,^{\hat{\xi}_i\,{\theta_i}} \cdot p' \] +
+where
+pointTransform
is the transformation matrix that produces \( p' \) from \( p \) .+
- Parameters
- +
++
++ rhs Right-hand side of the POE formula prior to being applied to the right-hand side of this subproblem. + pointTransform Transformation frame applied to the first (and perhaps only) characteristic point of this subproblem. + solutions Output vector of local solutions. + +
- Returns
- True if all solutions are reachable, false otherwise.
Implements roboticslab::ScrewTheoryIkSubproblem.
+ +
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ScrewTheoryIkSubproblems.hpp
+- libraries/ScrewTheoryLib/PadenKahanSubproblems.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanThree.png b/classroboticslab_1_1PadenKahanThree.png new file mode 100644 index 0000000000000000000000000000000000000000..91452091fa7664e928f17a950340e39400b56e8e GIT binary patch literal 823 zcmeAS@N?(olHy`uVBq!ia0vp^FMv3JgBeJwygLaJkO=SzasB`QKS=J)*V6t&6M!r* zK5*awYv&z#AeW;g$S;@ys0akEo(eHyU|>4t>Eakt!T5IW+oHz`Jg)rLjcfnA#~qhf zaL9RMw)^tL%$>c3ElZjm{+`~Xb6WU_lIKTLM^(*9YAaM+CvneGnY!`ZEAg^>GuGKp zGP!p8QREF*r%a?y&-(UQ{ zzt)x~>ax|b%-ONeTvdyO7ey7!xG`~V{$;D9dat#%Z@SYkt)}m|*^)`C0%yNt%<(&x z%73dWS4_sIGJAJ}+M@ZVzAcIoioR%;$3Ck&OwF=*b8N2Ql#sTcj~lLWZY6Yd5?;6Ss_cPvlKWpbKxr~<#&jWL`Ud7z6k(FL w@VLObv0)9RY!!zxIH_=@QG-B_2_Z(^Dhm6dL}o z({E6Jp}8PFo?o$+>&2;`JeQ6)oLk2&;4LhoFiB0rLB%(q!DH3}hKVMQj7phJOfHvL zSUZ+*atU~%DfsWDx%3OmM21J%Fh$l2wm!AWo<6Pe>)Cr>8jN-=xZQp5*RT7B&9y%( z2P}|MzQElbuYcyWV^E)ZgLW17F3C5dk@DX?fRT~kpCrq+Hgj&=# Cz^~o+;W-Yo=spneFM% zdB5WMv5;et`RPw{cFbh#`J#B?)r+zP({3!fYI@TB`kMSbUl+7H-hbDSRl~K#{*-OT z`(^7-YFvres# + + + + + + + kinematics-dynamics: Member List + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + +++++roboticslab::PadenKahanTwo Member List+ ++ +This is the complete list of members for roboticslab::PadenKahanTwo, including all inherited members.
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanTwo.html b/classroboticslab_1_1PadenKahanTwo.html new file mode 100644 index 000000000..f7486f702 --- /dev/null +++ b/classroboticslab_1_1PadenKahanTwo.html @@ -0,0 +1,309 @@ + + + + + + + +kinematics-dynamics: roboticslab::PadenKahanTwo Class Reference + + + + + + + + + + + +++++ + + + + + + + ++ +
++ + ++ +kinematics-dynamics ++++ + ++ ++ + ++ ++++roboticslab::PadenKahanTwo Class Reference+ ++ +Second Paden-Kahan subproblem. + More...
+ ++
#include <ScrewTheoryIkSubproblems.hpp>
+Inheritance diagram for roboticslab::PadenKahanTwo:++++ + ++
+ +Public Member Functions
+ PadenKahanTwo (int id1, int id2, const MatrixExponential &exp1, const MatrixExponential &exp2, const KDL::Vector &p, const KDL::Vector &r) + Constructor. More... + + bool solve (const KDL::Frame &rhs, const KDL::Frame &pointTransform, Solutions &solutions) const override + Finds a closed geometric solution for this IK subproblem. More... + + +int solutions () const override + Number of local IK solutions. + + +const char * describe () const override + Return a human-readable description of this IK subproblem. + + Public Member Functions inherited from roboticslab::ScrewTheoryIkSubproblem + +virtual ~ScrewTheoryIkSubproblem ()=default + Destructor. + +
+ +Private Attributes
+ +const int id1 + + +const int id2 + + +const MatrixExponential exp1 + + +const MatrixExponential exp2 + + +const KDL::Vector p + + +const KDL::Vector r + + +const KDL::Vector axesCross + + +const KDL::Rotation axisPow1 + + +const KDL::Rotation axisPow2 + + +const double axesDot + +
++ +Additional Inherited Members
+ Public Types inherited from roboticslab::ScrewTheoryIkSubproblem + +using JointIdToSolution = std::pair< int, double > + Maps a joint id to a screw magnitude. + + +using JointIdsToSolutions = std::vector< JointIdToSolution > + At least one joint-id+value pair per solution. + + +using Solutions = std::vector< JointIdsToSolutions > + Collection of local IK solutions. + Detailed Description
+Dual solution, double revolute joint geometric IK subproblem given by \( e\,^{\hat{\xi_1}\,{\theta_1}} \cdot e\,^{\hat{\xi_2}\,{\theta_2}} \cdot p = k \) (consecutive crossing rotation screws to a point).
+Constructor & Destructor Documentation
+ +◆ PadenKahanTwo()
+ +++++
++ +PadenKahanTwo::PadenKahanTwo +( +int +id1, ++ ++ + int +id2, ++ ++ + const MatrixExponential & +exp1, ++ ++ + const MatrixExponential & +exp2, ++ ++ + const KDL::Vector & +p, ++ ++ + const KDL::Vector & +r ++ ++ ) ++ +++ +
- Parameters
- +
++
++ id1 Zero-based joint id of the first product of exponentials (POE) term. + id2 Zero-based joint id of the second POE term. + exp1 First POE term. + exp2 Second POE term. + p Characteristic point. + r Point of intersection between both screw axes. Member Function Documentation
+ +◆ solve()
+ +++++
++ ++ ++
++ +bool PadenKahanTwo::solve +( +const KDL::Frame & +rhs, ++ ++ + const KDL::Frame & +pointTransform, ++ ++ + Solutions & +solutions ++ ++ ) +const ++overridevirtual +++Given the product of exponentials (POE) formula \( \prod_i e\,^{\hat{\xi}_i\,{\theta_i}} \cdot H_{ST}(0) = H_{ST}(\theta) \) , , invariant and known terms are rearranged to the right side (
+rhs
) as follows:+\[ \prod_{i=j}^{j+k} e\,^{\hat{\xi}_i\,{\theta_i}} = \left [ \prod_{i=1}^{j-1} e\,^{\hat{\xi}_i\,{\theta_i}} \right ]^{-1} \cdot H_{ST}(\theta) \cdot \left [ H_{ST}(0) \right ]^{-1} \cdot \left [ \prod_{i=j+k+1}^{N} e\,^{\hat{\xi}_i\,{\theta_i}} \right ]^{-1} \] +
+where \( j = \{1, 2, ..., N\}, k = \{1, 2, ..., N-1\}, 1 <= j+k <= N \) .
+Given \( N \) terms in the POE formula, \( j \) of which are unknowns, any characteristic point \( p \) postmultiplying this expression could be rewritten as \( p' \) per:
++\[ \prod_{i=1}^j e\,^{\hat{\xi}_i\,{\theta_i}} \cdot \prod_{i=j+1}^N e\,^{\hat{\xi}_i\,{\theta_i}} \cdot p = \prod_{i=1}^j e\,^{\hat{\xi}_i\,{\theta_i}} \cdot p' \] +
+where
+pointTransform
is the transformation matrix that produces \( p' \) from \( p \) .+
- Parameters
- +
++
++ rhs Right-hand side of the POE formula prior to being applied to the right-hand side of this subproblem. + pointTransform Transformation frame applied to the first (and perhaps only) characteristic point of this subproblem. + solutions Output vector of local solutions. + +
- Returns
- True if all solutions are reachable, false otherwise.
Implements roboticslab::ScrewTheoryIkSubproblem.
+ +
The documentation for this class was generated from the following files:+
+- libraries/ScrewTheoryLib/ScrewTheoryIkSubproblems.hpp
+- libraries/ScrewTheoryLib/PadenKahanSubproblems.cpp
+
+Generated on Wed Jan 17 2024 21:50:15 for kinematics-dynamics by 1.9.1 + + + diff --git a/classroboticslab_1_1PadenKahanTwo.png b/classroboticslab_1_1PadenKahanTwo.png new file mode 100644 index 0000000000000000000000000000000000000000..1bee8d1a79d5b793433340bdc3822b9516fe3b5f GIT binary patch literal 810 zcmeAS@N?(olHy`uVBq!ia0vp^FMv3JgBeJwygLaJkO=SzasB`QKS=J)*V6t&6M!r* zK5*awYv&z#AeW;g$S;@ys0akEo(eHyU|`zm>Eakt!T5IW?MZhOcvxpYUiJ6Cf8TNO z2@dBT>|J6ugGW8v#wn=z!k$e!r$4c5^tkk6)`CeUlhjtI^ez!F@zhG5`%}CuZsxlG zDlen-yQg22HkQ6>y*I96mUqxEF-R_V50EeSY!( z{#sj}tYG=aTh8izUNmVZ=R+|WwX&4wx34U}k@B`k`!sLH$>$YooV8B!=I>(PU@19W zH{ `a(@c>Lg?H+oAGJlTI1@XI)U|_^o(m^qkTu zKVk#I