No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.4.7
License LGPLv3
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/PilzDE/pilz_robots.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2019-02-15
Dev Status DEVELOPED
Released RELEASED

Package Description

Control hardware functions of the PRBT manipulator like STO for Stop1 functionality.

Additional Links

Maintainers

  • Alexander Gutenkunst
  • Hagen Slusarek
  • Immanuel Martini

Authors

No additional authors.

Overview

The prbt_hardware_support package contains files needed to control hardware functions of the PRBT manipulator like STO for Stop1 functionality. The Pilz hardware PNOZmulti is supported using a Modbus connection.

Safe stop 1 (SS1)

The STO function (“Safe torque off”) of the robot arm is a safety function to immediately turn off torque of the drives. To allow a controlled stop, the safety controller is allowed to delay the STO signal by several milliseconds. This package opens a modbus connection to the safety controller (currently PNOZmulti). The safety controller sends an emergency stop signal via Modbus immediately so that ros_control has a short time interval to stop the drives via a brake ramp. The TCP could for example brake on the current trajectory. After execution of the brake ramp, the drivers are halted. Even if ROS would fail, the safety controller turns off the motors via STO (that would be a Stop 0 then).

Possible error cases and their handling

Error cases Handling
Modbus client crashes ROS system is shutdown which leads to an abrupt stop of the robot.
STO Modbus adapter crashes ROS system is shutdown which leads to an abrupt stop of the robot.
Connection loss between PNOZmulti & Modbus client Stop 1 is triggered
System overload (messages don't arrive in time) In case a Stop 1 message does not arrive in time, PNOZmulti will automatically perform a hard stop. In case a Stop 1-release message does not get through, brakes will remain closed.
STO Modbus adapter cannot connect to stop services ROS system will not start.
STO Modbus adapter cannot connect to recover services Node does start and robot can be moved until a stop is triggered. Afterwards the brakes will remain closed.

Communcation Structure

Component diagram

ROS API

ModbusClient

A Modbus client (for usage with the PNOZmulti) can be started with roslaunch prbt_hardware_support modbus_read_client.launch.

Published Topics

  • ~/pilz_modbus_node/modbus_read (prbt_hardware_support/ModbusMsgInStamped)
    • Holds information about the modbus holding register. Timestamp is only updated if the register content changed.

Parameters

  • modbus_server_ip
  • modbus_server_port
  • index_of_first_register_to_read
  • num_registers_to_read
  • modbus_connection_retries (default: 10)
  • modbus_connection_retry_timeout - timeout between retries (default: 1s)

StoModbusAdapterNode

The PilzStoModbusAdapterNode is noticed via the topic /modbus_read if the STO is true or false and reacts as follows calling the corresponding services of the controllers and drivers: - STO true: enable drives, unhold controllers - STO false: hold controllers, disable drives

CHANGELOG

Changelog for package prbt_hardware_support

0.4.7 (2019-02-15)

  • drop outdated can configuration
  • Contributors: Pilz GmbH and Co. KG

0.4.6 (2019-01-18)

  • Update used pipeline in test from command_planner to pilz_command_planner

0.4.5 (2019-01-16)

0.4.4 (2019-01-16)

  • Fix PilzModbusReadClient unittest

0.4.3 (2018-11-30)

0.4.2 (2018-11-08)

  • Fix missing include on std_srvs

0.4.1 (2018-11-07)

  • Use Modbus API v2 due to wrongly specified version 1

0.4.0 (2018-11-06)

  • Modbus client node and STO modbus adapter node for Stop 1 functionality

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

No known dependants.

Launch files

  • launch/modbus_read_client.launch
    • Copyright (c) 2018 Pilz GmbH & Co. KG This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see .
      • modbus_server_ip [default: 169.254.60.1]
      • modbus_server_port [default: 502]
      • index_of_first_register_to_read [default: 512]
      • num_registers_to_read [default: 2]
  • launch/sto_modbus_adapter_node.launch
    • Copyright (c) 2018 Pilz GmbH & Co. KG This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see .
      • index_of_first_register_to_read [default: 512]

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prbt_hardware_support at answers.ros.org

No version for distro lunar. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.4.7
License LGPLv3
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/PilzDE/pilz_robots.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2019-02-15
Dev Status DEVELOPED
Released RELEASED

Package Description

Control hardware functions of the PRBT manipulator like STO for Stop1 functionality.

Additional Links

Maintainers

  • Alexander Gutenkunst
  • Hagen Slusarek
  • Immanuel Martini

Authors

No additional authors.

Overview

The prbt_hardware_support package contains files needed to control hardware functions of the PRBT manipulator like STO for Stop1 functionality. The Pilz hardware PNOZmulti is supported using a Modbus connection.

Safe stop 1 (SS1)

The STO function (“Safe torque off”) of the robot arm is a safety function to immediately turn off torque of the drives. To allow a controlled stop, the safety controller is allowed to delay the STO signal by several milliseconds. This package opens a modbus connection to the safety controller (currently PNOZmulti). The safety controller sends an emergency stop signal via Modbus immediately so that ros_control has a short time interval to stop the drives via a brake ramp. The TCP could for example brake on the current trajectory. After execution of the brake ramp, the drivers are halted. Even if ROS would fail, the safety controller turns off the motors via STO (that would be a Stop 0 then).

Possible error cases and their handling

Error cases Handling
Modbus client crashes ROS system is shutdown which leads to an abrupt stop of the robot.
STO Modbus adapter crashes ROS system is shutdown which leads to an abrupt stop of the robot.
Connection loss between PNOZmulti & Modbus client Stop 1 is triggered
System overload (messages don't arrive in time) In case a Stop 1 message does not arrive in time, PNOZmulti will automatically perform a hard stop. In case a Stop 1-release message does not get through, brakes will remain closed.
STO Modbus adapter cannot connect to stop services ROS system will not start.
STO Modbus adapter cannot connect to recover services Node does start and robot can be moved until a stop is triggered. Afterwards the brakes will remain closed.

Communcation Structure

Component diagram

ROS API

ModbusClient

A Modbus client (for usage with the PNOZmulti) can be started with roslaunch prbt_hardware_support modbus_read_client.launch.

Published Topics

  • ~/pilz_modbus_node/modbus_read (prbt_hardware_support/ModbusMsgInStamped)
    • Holds information about the modbus holding register. Timestamp is only updated if the register content changed.

Parameters

  • modbus_server_ip
  • modbus_server_port
  • index_of_first_register_to_read
  • num_registers_to_read
  • modbus_connection_retries (default: 10)
  • modbus_connection_retry_timeout - timeout between retries (default: 1s)

StoModbusAdapterNode

The PilzStoModbusAdapterNode is noticed via the topic /modbus_read if the STO is true or false and reacts as follows calling the corresponding services of the controllers and drivers: - STO true: enable drives, unhold controllers - STO false: hold controllers, disable drives

CHANGELOG

Changelog for package prbt_hardware_support

0.4.7 (2019-02-15)

  • drop outdated can configuration
  • Contributors: Pilz GmbH and Co. KG

0.4.6 (2019-01-18)

  • Update used pipeline in test from command_planner to pilz_command_planner

0.4.5 (2019-01-16)

0.4.4 (2019-01-16)

  • Fix PilzModbusReadClient unittest

0.4.3 (2018-11-30)

0.4.2 (2018-11-08)

  • Fix missing include on std_srvs

0.4.1 (2018-11-07)

  • Use Modbus API v2 due to wrongly specified version 1

0.4.0 (2018-11-06)

  • Modbus client node and STO modbus adapter node for Stop 1 functionality

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

No known dependants.

Launch files

  • launch/modbus_read_client.launch
    • Copyright (c) 2018 Pilz GmbH & Co. KG This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see .
      • modbus_server_ip [default: 169.254.60.1]
      • modbus_server_port [default: 502]
      • index_of_first_register_to_read [default: 512]
      • num_registers_to_read [default: 2]
  • launch/sto_modbus_adapter_node.launch
    • Copyright (c) 2018 Pilz GmbH & Co. KG This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see .
      • index_of_first_register_to_read [default: 512]

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prbt_hardware_support at answers.ros.org

No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.