Public Types | Public Member Functions | Static Public Member Functions | List of all members
grl::vrep::KukaVrepPlugin Class Reference

#include <KukaLBRiiwaVrepPlugin.hpp>

+ Inheritance diagram for grl::vrep::KukaVrepPlugin:
+ Collaboration diagram for grl::vrep::KukaVrepPlugin:

Public Types

enum  ParamIndex {
  JointNames, RobotFlangeTipName, RobotTipName, RobotTargetName,
  RobotTargetBaseName, RobotModel, LocalUDPAddress, LocalUDPPort,
  RemoteUDPAddress, LocalHostKukaKoniUDPAddress, LocalHostKukaKoniUDPPort, RemoteHostKukaKoniUDPAddress,
  RemoteHostKukaKoniUDPPort, KukaCommandMode, KukaMonitorMode, IKGroupName
}
 
typedef std::tuple< std::vector< std::string >, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string > Params
 

Public Member Functions

void construct ()
 
void construct (Params params)
 
 KukaVrepPlugin (Params params=defaultParams())
 
void run_one ()
 
 ~KukaVrepPlugin ()
 

Static Public Member Functions

static const Params defaultParams ()
 
static const Params measuredArmParams ()
 

Detailed Description

Creates a complete vrep plugin object usage:

auto kukaPluginPG = std::make_shared<grl::KukaVrepPlugin>();
kukaPluginPG->construct();
while(true) kukaPluginPG->run_one();
Todo:

this implementation is a bit hacky, redesign it

separate out grl specific code from general kuka control code

Template on robot driver and create a driver that just reads/writes to/from the simulation, then pass the two templates so the simulation and the real driver can be selected.

Definition at line 50 of file KukaLBRiiwaVrepPlugin.hpp.

Member Typedef Documentation

§ Params

typedef std::tuple< std::vector<std::string>, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string > grl::vrep::KukaVrepPlugin::Params

Definition at line 89 of file KukaLBRiiwaVrepPlugin.hpp.

Member Enumeration Documentation

§ ParamIndex

Enumerator
JointNames 
RobotFlangeTipName 
RobotTipName 
RobotTargetName 
RobotTargetBaseName 
RobotModel 
LocalUDPAddress 
LocalUDPPort 
RemoteUDPAddress 
LocalHostKukaKoniUDPAddress 
LocalHostKukaKoniUDPPort 
RemoteHostKukaKoniUDPAddress 
RemoteHostKukaKoniUDPPort 
KukaCommandMode 
KukaMonitorMode 
IKGroupName 

Definition at line 53 of file KukaLBRiiwaVrepPlugin.hpp.

Constructor & Destructor Documentation

§ KukaVrepPlugin()

grl::vrep::KukaVrepPlugin::KukaVrepPlugin ( Params  params = defaultParams())
inline
Todo:
allow KukaFRIThreadSeparator parameters to be updated
Parameters
paramsa tuple containing all of the parameter strings needed to configure the device.

The KukaCommandMode parameters supports the options "FRI" and "JAVA". This configures how commands will be sent to the arm itself. "FRI" mode is via a direct "Fast Robot Interface" "KUKA KONI" ethernet connection which provides substantially higher performance and response time, but is extremely sensitive to delays, and any delay will halt the robot and require a manual reset. "JAVA" mode sends the command to the Java application installed on the KUKA robot, which then submits it to the arm itself to execute. This is a much more forgiving mode of communication, but it is subject to delays.

Todo:
read ms_per_tick from the java interface

Definition at line 170 of file KukaLBRiiwaVrepPlugin.hpp.

§ ~KukaVrepPlugin()

grl::vrep::KukaVrepPlugin::~KukaVrepPlugin ( )
inline

Definition at line 218 of file KukaLBRiiwaVrepPlugin.hpp.

Member Function Documentation

§ construct() [1/2]

void grl::vrep::KukaVrepPlugin::construct ( )
inline

Definition at line 176 of file KukaLBRiiwaVrepPlugin.hpp.

§ construct() [2/2]

void grl::vrep::KukaVrepPlugin::construct ( Params  params)
inline

construct() function completes initialization of the plugin

Todo:
move this into the actual constructor, but need to correctly handle or attach vrep shared libraries for unit tests.

Definition at line 180 of file KukaLBRiiwaVrepPlugin.hpp.

§ defaultParams()

static const Params grl::vrep::KukaVrepPlugin::defaultParams ( )
inlinestatic

Definition at line 92 of file KukaLBRiiwaVrepPlugin.hpp.

§ measuredArmParams()

static const Params grl::vrep::KukaVrepPlugin::measuredArmParams ( )
inlinestatic
Todo:
measuredArmParams are hardcoded, parameterize them

Definition at line 124 of file KukaLBRiiwaVrepPlugin.hpp.

§ run_one()

void grl::vrep::KukaVrepPlugin::run_one ( )
inline
Todo:
re-enable simulation feedback based on actual kuka state

Definition at line 207 of file KukaLBRiiwaVrepPlugin.hpp.


The documentation for this class was generated from the following file: