3#include <VirtualRobot/MathTools.h>
4#include <VirtualRobot/RobotNodeSet.h>
15 visual_servo_tcp_control::arondto::MoveTCPToTargetPoseAcceptedType
16 GetDefaultParameterization()
18 visual_servo_tcp_control::arondto::MoveTCPToTargetPoseAcceptedType ret;
19 ret.orientationalAccuracy = 0.01;
20 ret.positionalAccuracy = 25;
26 .skillId = {.skillName =
"VisualServoToTargetPose"},
27 .description =
"Visual Servo the TCP to a target pose",
28 .rootProfileDefaults = GetDefaultParameterization().toAron(),
30 .parametersType = visual_servo_tcp_control::arondto::MoveTCPToTargetPoseAcceptedType::ToAronType(),
50 tcpControlUnitRequestedOnStart =
true;
53 tcpControlUnitRequestedOnStart =
false;
62 VisualServoToTargetPose::step(
const SpecializedMainInput& in)
212 if (!tcpControlUnitRequestedOnStart)
214 context.tcpControlUnitPrx->release();
218 robotReader.getSynchronizedRobot(in.parameters.robotName,
220 VirtualRobot::RobotIO::RobotDescription::eStructure);
223 ARMARX_WARNING <<
"Unable to get robot from robotstatememory. Abort exit method.";
227 std::string tcpName =
228 robot->getRobotNodeSet(in.parameters.kinematicChainName)->getTCP()->getName();
static Duration MilliSeconds(std::int64_t milliSeconds)
Constructs a duration in milliseconds.
The memory name system (MNS) client.
void connect(armem::client::MemoryNameSystem &memoryNameSystem)
virtual void connect(armem::client::MemoryNameSystem &memoryNameSystem)
SimplePeriodicSpecializedSkill(const SkillDescription &skillDescription, const armarx::Frequency &frequency)
virtual InitResult init()
Override this method with the actual implementation.
virtual ExitResult exit()
Override this method with the actual implementation.
void stopTCPMovement(const std::string &kinematicChainName, const std::string &tcpName)
TCPControlSkillContext & context
VisualServoTCPControlSkill(armem::client::MemoryNameSystem &mns, armarx::viz::Client &arviz, const std::string &layerName, VisualServoTCPControlSkillContext &c)
VisualServoTCPControlSkillContext & context
static SkillDescription Description
VisualServoToTargetPose(armem::client::MemoryNameSystem &mns, armarx::viz::Client &arviz, VisualServoTCPControlSkillContext &context)
#define ARMARX_WARNING
The logging level for unexpected behaviour, but not a serious problem.
This file is part of ArmarX.
This file offers overloads of toIce() and fromIce() functions for STL container types.
A result struct for skill exit function.
A result struct for skill initialization.
TCPControlUnitInterfacePrx tcpControlUnitPrx
armarx::viz::Client arviz
armem::client::MemoryNameSystem & mns