|
sas
Modularised monitoring, logging, and control of robots.
|
Directories | |
| launch | |
| sas_force_sensor | |
| scripts | |
| src | |
The package is primarily a library. It also provides one example node.
| Property | Value |
|---|---|
| Executable | sinusoidal_force_sensor |
| ROS node name | sinusoidal_force_sensor (set by the name launch argument of sinusoidal_force_sensor_launch.py) |
| Description | Example node that publishes a sinusoidal force/torque wrench on <node_name>/get/wrench via ForceSensorServer. |
The node currently declares no ROS parameters — the amplitude, frequency, and tick rate are hardcoded constants in src/examples/sinusoidal_force_sensor.cpp.
The launch file loads the (currently empty) parameter block from config/config.yaml (override with config_file:=/path/to/config.yaml) so the node follows the standard SmartArmStack config-file pattern.
The package implements a ForceSensorServer / ForceSensorClient pair that manages a single geometry_msgs/msg/WrenchStamped topic, <topic_prefix>/get/wrench.
Both classes take a shared rclcpp::Node and a topic_prefix string that forms the namespace for the topic. When topic_prefix is "GET_FROM_NODE" (the default) the node name is used automatically.
Force and torque readings are exposed as dqrobotics::DQ pure quaternions, which is a suitable and consistent representation across the SmartArmStack ecosystem.
| Class | Header |
|---|---|
| sas::ForceSensorServer | sas_force_sensor/sas_force_sensor_server.hpp |
| sas::ForceSensorClient | sas_force_sensor/sas_force_sensor_client.hpp |
Demonstrates ForceSensorServer and ForceSensorClient in Python.