controller_descriptions.h
Go to the documentation of this file.
1 /**
2  * This file is part of ArmarX.
3  *
4  * ArmarX is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  * ArmarX is distributed in the hope that it will be useful, but
9  * WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * @author Fabian Reister ( fabian dot reister at kit dot edu )
17  * @date 2022
18  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19  * GNU General Public License
20  */
21 
22 #pragma once
23 // BO
24 //#include "armarx/control/common/control_law/KeypointsImpedanceController.h"
25 //#include "armarx/control/common/control_law/TaskspaceAdmittanceController.h"
26 //#include "armarx/control/common/control_law/TaskspaceImpedanceController.h"
27 //#include "armarx/control/common/control_law/TaskspaceMixedImpedanceVelocityController.h"
28 // AronDTO
30 #include <armarx/control/njoint_controller/task_space/ControllerInterface.h>
31 //#include <armarx/control/common/control_law/aron/KeypointControllerConfig.aron.generated.h>
32 #include <armarx/control/common/control_law/aron/CollisionAvoidanceControllerConfig.aron.generated.h>
33 #include <armarx/control/common/control_law/aron/SafetyTaskspaceImpedanceControllerConfig.aron.generated.h>
34 #include <armarx/control/common/control_law/aron/TaskspaceAdmittanceControllerConfig.aron.generated.h>
35 #include <armarx/control/common/control_law/aron/TaskspaceImpedanceControllerConfig.aron.generated.h>
36 #include <armarx/control/common/control_law/aron/TaskspaceMixedImpedanceVelocityControllerConfig.aron.generated.h>
37 #include <armarx/control/common/control_law/aron/TaskspaceVelocityControllerConfig.aron.generated.h>
39 #include <armarx/control/njoint_controller/joint_space/aron/WholeBodyTrajectoryControllerConfig.aron.generated.h>
40 
42 {
43  // template <>
44  // struct ControllerDescription<armarx::control::common::ControllerType::TSAdm>
45  // {
46  // using AronDTO = armarx::control::arondto::TaskSpaceAdmittanceControllerConfig;
47 
48  // constexpr static const char* name = "NJointTSAdmittance";
49  // };
50 
51  template <>
53  {
54  using AronDTO =
55  armarx::control::common::control_law::arondto::TaskspaceImpedanceControllerConfigDict;
56 
57  using Proxy = armarx::control::NJointTaskspaceImpedanceControllerInterfacePrx;
58  // using BO = armarx::control::common::control_law::TaskspaceImpedanceController::ConfigDict;
59 
60  constexpr static const char* name = "NJointTaskspaceImpedanceController";
61  };
62 
63  template <>
65  {
66  using AronDTO = armarx::control::common::control_law::arondto::
67  SafetyTaskspaceImpedanceControllerConfigDict;
68 
69  constexpr static const char* name = "NJointTaskspaceSafetyImpedanceController";
70  };
71 
72  template <>
74  {
75  using AronDTO = armarx::control::common::control_law::arondto::
76  CollisionAvoidanceTSImpedanceControllerConfig;
77 
78  constexpr static const char* name = "NJointTaskspaceCollisionAvoidanceImpedanceController";
79  };
80 
81  template <>
83  {
84  using AronDTO = armarx::control::common::control_law::arondto::
85  TaskspaceMixedImpedanceVelocityControllerConfigDict;
86 
87  constexpr static const char* name = "NJointTaskspaceMixedImpedanceVelocityController";
88  };
89 
90  template <>
92  {
93  using AronDTO = armarx::control::common::control_law::arondto::
94  TaskspaceVelocityControllerConfigDict;
95 
96  constexpr static const char* name = "NJointTaskspaceVelocityController";
97  };
98 
99  template <>
101  {
102  using AronDTO = armarx::control::common::control_law::arondto::
103  CollisionAvoidanceTSMixedImpedanceVelocityControllerConfig;
104 
105  constexpr static const char* name =
106  "NJointTaskspaceCollisionAvoidanceMixedImpedanceVelocityController";
107  };
108 
109  template <>
111  {
112  using AronDTO =
113  armarx::control::common::control_law::arondto::TaskspaceAdmittanceControllerConfigDict;
114 
115 
116  constexpr static const char* name = "NJointTaskspaceAdmittanceController";
117  };
118 
119  // template <>
120  // struct ControllerDescription<armarx::control::common::ControllerType::KptImpedance>
121  // {
122  // using AronDTO = armarx::control::common::control_law::arondto::KeypointControllerConfig;
123 
124  // // using BO = armarx::control::common::control_law::KeypointsImpedanceController::Config;
125 
126  // constexpr static const char* name = "NJointKeypointsImpedanceController";
127  // };
128 
129  // template <>
130  // struct ControllerDescription<armarx::control::common::ControllerType::TSBiImpedance>
131  // {
132  // using AronDTO =
133  // armarx::control::common::control_law::arondto::TaskspaceImpedanceControllerConfigDict;
134 
135  // using BO = armarx::control::common::control_law::TaskspaceImpedanceController::ConfigDict;
136 
137  // constexpr static const char* name = "NJointTaskspaceBimanualImpedanceController";
138  // };
139 
140  template <>
143  {
144  using AronDTO = armarx::control::njoint_controller::joint_space::
145  whole_body_trajectory_controller::arondto::Config;
146 
147  using BO = armarx::control::njoint_controller::joint_space::
148  whole_body_trajectory_controller::arondto::Config;
149 
150  constexpr static const char* name = "NJointWholeBodyTrajectoryController";
151  };
152 
153 } // namespace armarx::control::client
armarx::control::common::ControllerType::TSImp
@ TSImp
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSVel >::AronDTO
armarx::control::common::control_law::arondto::TaskspaceVelocityControllerConfigDict AronDTO
Definition: controller_descriptions.h:94
armarx::control::client
This file is part of ArmarX.
Definition: ComponentPlugin.cpp:20
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSImpSafe >::AronDTO
armarx::control::common::control_law::arondto::SafetyTaskspaceImpedanceControllerConfigDict AronDTO
Definition: controller_descriptions.h:67
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSImpCol >::AronDTO
armarx::control::common::control_law::arondto::CollisionAvoidanceTSImpedanceControllerConfig AronDTO
Definition: controller_descriptions.h:76
armarx::control::common::ControllerType::TSAdm
@ TSAdm
armarx::control::client::ControllerDescription
Definition: ControllerDescription.h:103
armarx::control::common::ControllerType::WholeBodyTrajectoryController
@ WholeBodyTrajectoryController
type.h
armarx::control::common::ControllerType::TSImpSafe
@ TSImpSafe
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSImp >::AronDTO
armarx::control::common::control_law::arondto::TaskspaceImpedanceControllerConfigDict AronDTO
Definition: controller_descriptions.h:55
armarx::control::common::ControllerType::TSMixImpVelCol
@ TSMixImpVelCol
armarx::control::common::ControllerType::TSMixImpVel
@ TSMixImpVel
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSImp >::Proxy
armarx::control::NJointTaskspaceImpedanceControllerInterfacePrx Proxy
Definition: controller_descriptions.h:57
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSMixImpVel >::AronDTO
armarx::control::common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfigDict AronDTO
Definition: controller_descriptions.h:85
ControllerDescription.h
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::WholeBodyTrajectoryController >::BO
armarx::control::njoint_controller::joint_space::whole_body_trajectory_controller::arondto::Config BO
Definition: controller_descriptions.h:148
armarx::control::common::ControllerType::TSVel
@ TSVel
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::WholeBodyTrajectoryController >::AronDTO
armarx::control::njoint_controller::joint_space::whole_body_trajectory_controller::arondto::Config AronDTO
Definition: controller_descriptions.h:145
armarx::control::common::ControllerType::TSImpCol
@ TSImpCol
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSAdm >::AronDTO
armarx::control::common::control_law::arondto::TaskspaceAdmittanceControllerConfigDict AronDTO
Definition: controller_descriptions.h:113
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:28
armarx::control::client::ControllerDescription< armarx::control::common::ControllerType::TSMixImpVelCol >::AronDTO
armarx::control::common::control_law::arondto::CollisionAvoidanceTSMixedImpedanceVelocityControllerConfig AronDTO
Definition: controller_descriptions.h:103