|
sas
Modularised monitoring, logging, and control of robots.
|
Directories | |
| launch | |
| sas_robot_driver_coppeliasim | |
| scripts | |
| src | |
| Property | Value |
|---|---|
| Executable | sas_robot_driver_coppeliasim_node |
| ROS node name | myrobot_1 (set by the name launch argument of robot_launch.py) |
| Description | Robot driver node for CoppeliaSim. Reads all parameters, instantiates RobotDriverCoppeliaSim (ZMQ interface to the simulated robot) and RobotDriverROS (runs the control loop). |
| Parameter | Type | Mandatory / Optional | Default | Purpose |
|---|---|---|---|---|
| joint_limits_min | array of doubles (degrees) | Mandatory | none — must be provided | Minimum joint limits; converted from deg → rad internally |
| joint_limits_max | array of doubles (degrees) | Mandatory | none — must be provided | Maximum joint limits; converted from deg → rad internally |
| robot_joint_names | array of strings | Mandatory | none — must be provided | Names of the robot joints to control |
| thread_sampling_time_sec | double | Mandatory | none — must be provided | Sampling period of the robot control-loop thread (e.g. 0.002 s = 500 Hz) |
| ip | string | Optional | 127.0.0.1 | CoppeliaSim (ZMQ) IP address |
| port | int | Optional | 23000 | CoppeliaSim (ZMQ) port number |
| timeout | int | Optional | 1000 | ZMQ connection timeout, in milliseconds |
How mandatory/optional is determined in code:
launch/robot_launch.py starts the node with the parameters from config/config.yaml:
To use a different node name or configuration file:
https://github.com/user-attachments/assets/3d6222b8-e683-4039-ab72-d6a7ad08ba51
Run the following.
Notes
Use the following convenience scripts for the most common functionalities.
| .devcontainer/sas_object_script.py | Add as immediate child to the root of an object in the scene, for instance, to get and send poses. |
| .devcontainer/sas_robot_script.py | Add as immediate child to the root of a serial-link robot to create a sas::RobotDriverServer for it. |
Unusual use cases can be covered by the classes in the Python module sas_robot_driver_coppeliasim.