Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
gazebo_ros_control::CombinedRobotHWSim Class Reference

CombinedRobotHW. More...

#include <combined_robot_hw_sim.h>

Inheritance diagram for gazebo_ros_control::CombinedRobotHWSim:
Inheritance graph
[legend]

Public Member Functions

 CombinedRobotHWSim ()
 
virtual void doSwitch (const std::list< hardware_interface::ControllerInfo > &start_list, const std::list< hardware_interface::ControllerInfo > &stop_list)
 
virtual void eStopActive (const bool active)
 Set the emergency stop state. More...
 
virtual bool initSim (const std::string &robot_namespace, ros::NodeHandle model_nh, gazebo::physics::ModelPtr parent_model, const urdf::Model *const urdf_model, std::vector< transmission_interface::TransmissionInfo > transmissions)
 Initialize the simulated robot hardware. More...
 
virtual bool prepareSwitch (const std::list< hardware_interface::ControllerInfo > &start_list, const std::list< hardware_interface::ControllerInfo > &stop_list)
 
virtual void readSim (ros::Time time, ros::Duration period)
 Read state data from the simulated robot hardware. More...
 
virtual void writeSim (ros::Time time, ros::Duration period)
 Write commands to the simulated robot hardware. More...
 
virtual ~CombinedRobotHWSim ()
 
- Public Member Functions inherited from gazebo_ros_control::RobotHWSim
virtual ~RobotHWSim ()
 
- Public Member Functions inherited from hardware_interface::RobotHW
virtual bool checkForConflict (const std::list< ControllerInfo > &info) const
 
virtual bool checkForConflict (const std::list< ControllerInfo > &info) const
 
virtual bool init (ros::NodeHandle &, ros::NodeHandle &)
 
virtual void read (const ros::Time &, const ros::Duration &)
 
virtual void read (const ros::Time &, const ros::Duration &)
 
virtual SwitchState switchResult () const
 
virtual SwitchState switchResult (const ControllerInfo &) const
 
virtual void write (const ros::Time &, const ros::Duration &)
 
virtual void write (const ros::Time &, const ros::Duration &)
 
virtual ~RobotHW ()=default
 
- Public Member Functions inherited from hardware_interface::InterfaceManager
T * get ()
 
std::vector< std::string > getInterfaceResources (std::string iface_type) const
 
std::vector< std::string > getNames () const
 
void registerInterface (T *iface)
 
void registerInterfaceManager (InterfaceManager *iface_man)
 

Protected Types

typedef pluginlib::ClassLoader< gazebo_ros_control::RobotHWSimclass_loader_t
 
- Protected Types inherited from hardware_interface::InterfaceManager
typedef std::vector< InterfaceManager * > InterfaceManagerVector
 
typedef std::map< std::string, void * > InterfaceMap
 
typedef std::map< std::string, std::vector< std::string > > ResourceMap
 
typedef std::map< std::string, size_t > SizeMap
 

Protected Member Functions

void filterControllerList (const std::list< hardware_interface::ControllerInfo > &list, std::list< hardware_interface::ControllerInfo > &filtered_list, gazebo_ros_control::RobotHWSimSharedPtr robot_hw)
 Filters the start and stop lists so that they only contain the controllers and resources that correspond to the robot_hw interface manager. More...
 

Protected Attributes

class_loader_t class_loader_
 
std::vector< gazebo_ros_control::RobotHWSimSharedPtrrobot_hw_list_
 
- Protected Attributes inherited from hardware_interface::InterfaceManager
std::vector< ResourceManagerBase * > interface_destruction_list_
 
InterfaceManagerVector interface_managers_
 
InterfaceMap interfaces_
 
InterfaceMap interfaces_combo_
 
SizeMap num_ifaces_registered_
 
ResourceMap resources_
 

Additional Inherited Members

- Public Types inherited from hardware_interface::RobotHW
enum  SwitchState { SwitchState::DONE, SwitchState::ONGOING, SwitchState::ERROR }
 

Detailed Description

CombinedRobotHW.

This class provides a way to combine RobotHW objects.

Definition at line 95 of file combined_robot_hw_sim.h.

Member Typedef Documentation

◆ class_loader_t

Definition at line 98 of file combined_robot_hw_sim.h.

Constructor & Destructor Documentation

◆ CombinedRobotHWSim()

gazebo_ros_control::CombinedRobotHWSim::CombinedRobotHWSim ( )

Definition at line 76 of file combined_robot_hw_sim.cpp.

◆ ~CombinedRobotHWSim()

virtual gazebo_ros_control::CombinedRobotHWSim::~CombinedRobotHWSim ( )
inlinevirtual

Definition at line 112 of file combined_robot_hw_sim.h.

Member Function Documentation

◆ doSwitch()

void gazebo_ros_control::CombinedRobotHWSim::doSwitch ( const std::list< hardware_interface::ControllerInfo > &  start_list,
const std::list< hardware_interface::ControllerInfo > &  stop_list 
)
virtual

Perform (in realtime) all necessary hardware interface switches in order to start and stop the given controllers. Start and stop list are disjoint. The feasability was checked in prepareSwitch() beforehand.

Reimplemented from hardware_interface::RobotHW.

Definition at line 172 of file combined_robot_hw_sim.cpp.

◆ eStopActive()

virtual void gazebo_ros_control::CombinedRobotHWSim::eStopActive ( const bool  active)
inlinevirtual

Set the emergency stop state.

Set the simulated robot's emergency stop state. The default implementation of this function does nothing.

Parameters
activetrue if the emergency stop is active, false if not.

Reimplemented from gazebo_ros_control::RobotHWSim.

Definition at line 167 of file combined_robot_hw_sim.h.

◆ filterControllerList()

void gazebo_ros_control::CombinedRobotHWSim::filterControllerList ( const std::list< hardware_interface::ControllerInfo > &  list,
std::list< hardware_interface::ControllerInfo > &  filtered_list,
gazebo_ros_control::RobotHWSimSharedPtr  robot_hw 
)
protected

Filters the start and stop lists so that they only contain the controllers and resources that correspond to the robot_hw interface manager.

Definition at line 207 of file combined_robot_hw_sim.cpp.

◆ initSim()

bool gazebo_ros_control::CombinedRobotHWSim::initSim ( const std::string &  robot_namespace,
ros::NodeHandle  model_nh,
gazebo::physics::ModelPtr  parent_model,
const urdf::Model *const  urdf_model,
std::vector< transmission_interface::TransmissionInfo transmissions 
)
virtual

Initialize the simulated robot hardware.

Parameters
robot_namespaceRobot namespace.
model_nhModel node handle.
parent_modelParent model.
urdf_modelURDF model.
transmissionsTransmissions.
Returns
true if the simulated robot hardware is initialized successfully, false if not.

Implements gazebo_ros_control::RobotHWSim.

Definition at line 80 of file combined_robot_hw_sim.cpp.

◆ prepareSwitch()

bool gazebo_ros_control::CombinedRobotHWSim::prepareSwitch ( const std::list< hardware_interface::ControllerInfo > &  start_list,
const std::list< hardware_interface::ControllerInfo > &  stop_list 
)
virtual

Check (in non-realtime) if given controllers could be started and stopped from the current state of the RobotHW with regard to necessary hardware interface switches and prepare the switching. Start and stop list are disjoint. This handles the check and preparation, the actual switch is commited in doSwitch()

Reimplemented from hardware_interface::RobotHW.

Definition at line 154 of file combined_robot_hw_sim.cpp.

◆ readSim()

void gazebo_ros_control::CombinedRobotHWSim::readSim ( ros::Time  time,
ros::Duration  period 
)
virtual

Read state data from the simulated robot hardware.

Read state data, such as joint positions and velocities, from the simulated robot hardware.

Parameters
timeSimulation time.
periodTime since the last simulation step.

Implements gazebo_ros_control::RobotHWSim.

Definition at line 189 of file combined_robot_hw_sim.cpp.

◆ writeSim()

void gazebo_ros_control::CombinedRobotHWSim::writeSim ( ros::Time  time,
ros::Duration  period 
)
virtual

Write commands to the simulated robot hardware.

Write commands, such as joint position and velocity commands, to the simulated robot hardware.

Parameters
timeSimulation time.
periodTime since the last simulation step.

Implements gazebo_ros_control::RobotHWSim.

Definition at line 198 of file combined_robot_hw_sim.cpp.

Member Data Documentation

◆ class_loader_

class_loader_t gazebo_ros_control::CombinedRobotHWSim::class_loader_
protected

Definition at line 99 of file combined_robot_hw_sim.h.

◆ robot_hw_list_

std::vector<gazebo_ros_control::RobotHWSimSharedPtr> gazebo_ros_control::CombinedRobotHWSim::robot_hw_list_
protected

Definition at line 100 of file combined_robot_hw_sim.h.


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


qb_device_gazebo
Author(s): qbroboticsĀ®
autogenerated on Thu Apr 27 2023 02:36:26