|
|
| robot_base_handle = robot_base_handle |
|
| topic_prefix = topic_prefix |
|
| rclcpp_node = rclcpp_node |
|
| sim = sim |
|
| joint_handles = sim.getObjectsInTree(self.robot_base_handle, sim.sceneobject_joint) |
|
| DOF = len(self.joint_handles) |
|
| rds = RobotDriverServer(rclcpp_node, f"/sas_robot_driver_coppeliasim{self.topic_prefix}") |
|
np.array | q = np.zeros(self.DOF) |
|
np.array | q_min = np.zeros(self.DOF) |
|
np.array | q_max = np.zeros(self.DOF) |
|
np.array | q_dot = np.zeros(self.DOF) |
|
np.array | q_force = np.zeros(self.DOF) |
|
np.array | q_target = None |
Publishes joint states and applies joint commands for a CoppeliaSim robot.
◆ __init__()
| sas_robot_driver_coppeliasim.simros2_robot_manager.SimROS2RobotManager.__init__ |
( |
| self, |
|
|
str | topic_prefix, |
|
|
rclcpp_Node | rclcpp_node, |
|
|
| sim, |
|
|
int | robot_base_handle = None, |
|
|
list[str] | joint_names = None ) |
Either ``robot_base_handle`` or ``joint_names`` must be provided, but not both.
:param topic_prefix: ROS 2 topic prefix for this robot's driver server.
:param rclcpp_node: C++ rclcpp node used by the RobotDriverServer.
:param sim: CoppeliaSim simulation object provided by the simulator.
:param robot_base_handle: CoppeliaSim handle of the robot base object.
All joints in the subtree are used automatically.
:param joint_names: Explicit list of joint names (not yet implemented).
◆ actuation_update()
| sas_robot_driver_coppeliasim.simros2_robot_manager.SimROS2RobotManager.actuation_update |
( |
| self | ) |
|
Applies target joint positions from the driver server to the simulator.
◆ sensing_update()
| sas_robot_driver_coppeliasim.simros2_robot_manager.SimROS2RobotManager.sensing_update |
( |
| self | ) |
|
Reads joint states from the simulator and publishes them via the driver server.
The documentation for this class was generated from the following file:
- src/sas_robot_driver_coppeliasim/sas_robot_driver_coppeliasim/simros2_robot_manager.py