Skip to content
Snippets Groups Projects
Commit b80b2865 authored by Mirko Wächter's avatar Mirko Wächter
Browse files

Merge branch 'MultiAgentSimulation' into 'master'

RobotStateComponentName is requested as optional parameter

RobotStateComponentName is requested as optional parameter which is required for multi agent state chart execution

See merge request !5
parents ba24ae89 a3a4378d
No related branches found
No related tags found
No related merge requests found
......@@ -25,7 +25,7 @@ namespace armarx
ScopedLock lock(accessMutex);
usingProxy(getProperty<std::string>("KinematicUnitName").getValue());
usingProxy("RobotStateComponent");
usingProxy(getProperty<std::string>("RobotStateComponentName").getValue());
usingTopic(getProperty<std::string>("RobotStateTopicName").getValue());
......@@ -43,7 +43,8 @@ namespace armarx
drawer = getTopic<DebugDrawerInterfacePrx>("DebugDrawerUpdates");
kinematicUnitPrx = getProxy<KinematicUnitInterfacePrx>(getProperty<std::string>("KinematicUnitName").getValue());
robotStateComponentPrx = getProxy<RobotStateComponentInterfacePrx>("RobotStateComponent");
robotStateComponentPrx = getProxy<RobotStateComponentInterfacePrx>(getProperty<std::string>("RobotStateComponentName").getValue());
//remoteRobotPrx = robotStateComponentPrx->getSynchronizedRobot();
localRobot = RemoteRobot::createLocalClone(robotStateComponentPrx);
......
......@@ -49,6 +49,7 @@ namespace armarx
defineRequiredProperty<std::string>("KinematicUnitName", "Name of the KinematicUnit Proxy");
defineOptionalProperty<std::string>("RobotStateTopicName", "RobotState", "Name of the RobotComponent State topic.");
defineOptionalProperty<std::string>("HeadIKUnitTopicName", "HeadIKUnitTopic", "Name of the HeadIKUnit Topic");
defineOptionalProperty<std::string>("RobotStateComponentName", "RobotStateComponent", "Name of the RobotStateComponent that should be used");
defineOptionalProperty<int>("CycleTime", 30, "Cycle time of the tcp control in ms");
}
};
......
......@@ -54,7 +54,7 @@ namespace armarx
{
topicName = getName() + "State";
usingProxy(getProperty<std::string>("KinematicUnitName").getValue());
usingProxy("RobotStateComponent");
usingProxy(getProperty<std::string>("RobotStateComponentName").getValue());
usingProxy("DebugObserver");
offeringTopic(topicName);
usingTopic(getProperty<std::string>("RobotStateTopicName").getValue());
......@@ -70,7 +70,8 @@ namespace armarx
debugObs = getProxy<DebugObserverInterfacePrx>("DebugObserver");
kinematicUnitPrx = getProxy<KinematicUnitInterfacePrx>(getProperty<std::string>("KinematicUnitName").getValue());
robotStateComponentPrx = getProxy<RobotStateComponentInterfacePrx>("RobotStateComponent");
robotStateComponentPrx = getProxy<RobotStateComponentInterfacePrx>(getProperty<std::string>("RobotStateComponentName").getValue());
//remoteRobotPrx = robotStateComponentPrx->getSynchronizedRobot();
......@@ -180,7 +181,7 @@ namespace armarx
void TCPControlUnit::setTCPVelocity(const std::string& nodeSetName, const std::string& tcpName, const FramedDirectionBasePtr& translationVelocity, const FramedDirectionBasePtr& orientationVelocityRPY, const Ice::Current& c)
{
if(!isRequested())
if (!isRequested())
{
ARMARX_WARNING << "Implicitly requesting TCPControlUnit! Please call request before setting TCPVelocities!";
request();
......
......@@ -52,6 +52,7 @@ namespace armarx
defineOptionalProperty<int>("CycleTime", 30, "Cycle time of the tcp control in ms");
defineOptionalProperty<float>("MaximumCommandDelay", 20000, "Delay after which the TCP Control unit releases itself if no new velocity have been set.");
defineOptionalProperty<std::string>("TCPsToReport", "", "comma seperated list of nodesets' endeffectors, which poses and velocities that should be reported. * for all, empty for none");
defineOptionalProperty<std::string>("RobotStateComponentName", "RobotStateComponent", "Name of the RobotStateComponent that should be used");
}
......
......@@ -41,7 +41,7 @@ namespace armarx
kinematicUnitObserverName = getProperty<std::string>("KinematicUnitObserverName").getValue();
usingProxy(getProperty<std::string>("KinematicUnitName").getValue());
usingProxy("RobotStateComponent");
usingProxy(getProperty<std::string>("RobotStateComponentName").getValue());
usingProxy(kinematicUnitObserverName);
if (!getProperty<std::string>("HandUnits").getValue().empty())
......@@ -74,7 +74,7 @@ namespace armarx
ARMARX_LOG << eINFO << "Starting RobotStatechartContext" << flush;
// retrieve proxies
std::string rbStateName = "RobotStateComponent";
std::string rbStateName = getProperty<std::string>("RobotStateComponentName").getValue();
robotStateComponent = getProxy<RobotStateComponentInterfacePrx>(rbStateName);
std::string kinUnitName = getProperty<std::string>("KinematicUnitName").getValue();
kinematicUnitPrx = getProxy<KinematicUnitInterfacePrx>(kinUnitName);
......
......@@ -55,6 +55,8 @@ namespace armarx
defineOptionalProperty<std::string>("HandUnits", "", "Name of the comma-seperated hand units that should be used. Unitname for left hand should be LeftHandUnit, and for right hand RightHandUnit");
defineOptionalProperty<std::string>("HeadIKUnitName", "", "Name of the head unit that should be used.");
defineOptionalProperty<std::string>("HeadIKKinematicChainName", "", "Name of the kinematic chain that should be used for head IK.");
defineOptionalProperty<std::string>("RobotStateComponentName", "RobotStateComponent", "Name of the RobotStateComponent that should be used");
}
};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment