26 #include <VirtualRobot/VirtualRobot.h>
28 #include <RobotAPI/interface/units/RobotUnit/NJointCartesianVelocityControllerWithRamp.h>
31 #include "../ControlTargets/ControlTarget1DoFActuator.h"
32 #include "../SensorValues/SensorValue1DoFActuator.h"
53 WidgetDescription::VBoxLayoutPtr vlayout =
new WidgetDescription::VBoxLayout;
54 WidgetDescription::HBoxLayoutPtr hlayout;
65 using namespace WidgetDescription;
67 vlayout->children.emplace_back(hlayout);
73 using namespace WidgetDescription;
74 hlayout->children.emplace_back(
new Label(
false, label));
78 slider->defaultValue =
value;
80 hlayout->children.emplace_back(slider);
83 WidgetDescription::VBoxLayoutPtr
96 NJointCartesianVelocityControllerWithRampControlData>,
97 public NJointCartesianVelocityControllerWithRampInterface
100 using ConfigPtrT = NJointCartesianVelocityControllerWithRampConfigPtr;
103 const NJointCartesianVelocityControllerWithRampConfigPtr& config,
107 std::string getClassName(
const Ice::Current&)
const override;
115 const std::map<std::string, ConstControlDevicePtr>&,
116 const std::map<std::string, ConstSensorDevicePtr>&);
117 static NJointCartesianVelocityControllerWithRampConfigPtr
120 getFunctionDescriptions(
const Ice::Current&)
const override;
121 void callDescribedFunction(
const std::string& name,
123 const Ice::Current&)
override;
124 WidgetDescription::VBoxLayoutPtr createTargetLayout()
const;
125 WidgetDescription::VBoxLayoutPtr createParameterLayout()
const;
133 void rtPreActivateController()
override;
134 void rtPostDeactivateController()
override;
137 std::vector<ControlTarget1DoFActuatorVelocity*> targets;
139 std::vector<const float*> velocitySensors;
141 std::string nodeSetName;
142 float jointLimitAvoidanceScale;
143 float KpJointLimitAvoidance;
151 void setMaxAccelerations(
float maxPositionAcceleration,
152 float maxOrientationAcceleration,
153 float maxNullspaceAcceleration,
154 const Ice::Current& = Ice::emptyCurrent)
override;
155 void setTargetVelocity(
float vx,
161 const Ice::Current&)
override;
162 void setJointLimitAvoidanceScale(
float jointLimitAvoidanceScale,
163 const Ice::Current&)
override;
164 void setKpJointLimitAvoidance(
float KpJointLimitAvoidance,
const Ice::Current&)
override;
165 void immediateHardStop(
const Ice::Current&)
override;
166 const std::string& getNodeSetName()
const;