[Documentation] [TitleIndex] [WordIndex

Package Summary

This package implements driver for ATI force torque sensors up to firmware 3.x. Char and Net CAN devices are supported through cob_generic_can package. The code if based on cob_forcetorque package.

Package Summary

This package implements driver for ATI force torque sensors up to firmware 3.x. Char and Net CAN devices are supported through cob_generic_can package. The code if based on cob_forcetorque package.

The ati_force_torque package provides a ROS interface for an ATI force/torque sensor that is connected over CAN-bus. Most important features of this package are:

  1. 2 ROS Nodes one for configuration and one for reading of sensor.
  2. Implemenation of hardware_interface::ForceTorqueSensorHandle for using sensor in ros_control.

  3. Sampling the sensor on ca. 800 Hz and downsample to desied freqency
  4. Automatic calibration of sensor upon start.
  5. Definition of static calibration offsets.
  6. Integration of filters: ThresholdFilter, LowPassFilter, MovingMeanFilter and GravityCompensation.

This package is builds upon the original cob_forcetorque written in 2011 and not updated since than.For can interfacing the CAN devices cob_generic_can pakcage is used.

Installing the package

To use this package you should have ROS up and running. To install the package clone the git repository into src folder of your workspace.

Note: Current version of the package depends on iirob_filters package for filtering capabilities. To install this package clone the git repository into src folder of your workspace

Starting the nodes

There are few launch files provided to start the sensor, configure it of get data from it.

config.launch - starts configuration node for sensor and uses configuration from can_ati_config.yaml.

driver.launch - start sensor node on socket or chardev interface loading the sensor description and starting the state publisher.

driver_socket.launch and driver_chardev.launch - start the node loading the corresponding configuration.

Nodes

ati_force_torque_config

Changes configuration data of the sensor like baudrate and base-id.

Services

SetBaudRate (std_srvs/Trigger) SetBaseIdentifier (std_srvs/Trigger) Reset (std_srvs/Trigger)

Parameters

~CAN/type (UInt, default: -1) ~CAN/path (String, default: "") ~CAN/baudrate (HEX-Number, default: -1) ~FTS/base_identifier (HEX-Number, default: -1) ~FTS/future_baudrate (UInt, default: 7) ~FTS/future_base_id (HEX-Number, default: 7)

ati_force_torque_node

ROS-Node for reading sensor data. Data can be filtered and transformed automatically. The same description is valid for sensor handle used in ros_control.

Subscribed Topics

~gravity_compensated (geometry_msgs/WrenchStamped) ~low_pass (geometry_msgs/WrenchStamped) ~sensor_data (geometry_msgs/WrenchStamped) ~threshold_filtered (geometry_msgs/WrenchStamped) ~transformed_data (geometry_msgs/WrenchStamped)

Services

Init (std_srvs/Trigger) Calibrate (std_srvs/Trigger) DetermineCoordinateSystem (std_srvs/Trigger) GetTemperature (ati_force_torque/DiagnosticVoltages) Recalibrate (std_srvs/Trigger)

Parameters

~CAN/type (UInt, default: -1) ~CAN/path (String, default: "") ~CAN/baudrate (HEX-Number, default: -1) ~FTS/base_identifier (HEX-Number, default: -1) ~FTS/auto_init (Bool, default: False) ~Node/ft_pub_freq (Double, default: 100) ~Node/ft_pull_freq (Double, default: 100) ~Node/sensor_frame (String, default: "fts_reference_link") ~Node/transform_frame (String, default: 20) ~Calibration/n_measurements (Int) ~Calibration/T_between_meas (Int, default: 10000) ~Calibration/static (Bool, default: False) ~Calibration/offset_fx (Double, default: 0) ~Calibration/offset_fy (Double, default: 0) ~Calibration/offset_fz (Double, default: 0) ~Calibration/offset_mx (Double, default: 0) ~Calibration/offset_my (Double, default: 0) ~Calibration/offset_mz (Double, default: 0) ~CoordinateSystemCal/n_measurements (Int, default: 20) ~CoordinateSystemCal/T_between_meas (Int, default: 10000) ~CoordinateSystemCal/push_direction (Int, default: 0) ~Publish/gravity_compensated (Bool, default: False) ~Publish/low_pass (Bool, default: False) ~Publish/sensor_data (Bool, default: False) ~Publish/threshold_filtered (Bool, default: False) ~Publish/transformed_data (Bool, default: False)

There are few other paramters used for parametrisation of filters. Please check sensor_configuration.yaml to see them.

Issues

Use GitHub to report bugs or submit feature requests. [View active issues]


2019-08-24 12:37