https://github.com/robotnikautomation/robotnik_base_hw
ROS controller based on ros_control architecture
https://github.com/robotnikautomation/robotnik_base_hw
Last synced: about 1 year ago
JSON representation
ROS controller based on ros_control architecture
- Host: GitHub
- URL: https://github.com/robotnikautomation/robotnik_base_hw
- Owner: RobotnikAutomation
- Created: 2017-08-04T07:50:40.000Z (almost 9 years ago)
- Default Branch: melodic-devel
- Last Pushed: 2024-05-17T10:42:51.000Z (about 2 years ago)
- Last Synced: 2024-05-18T07:37:26.433Z (about 2 years ago)
- Language: C++
- Size: 6.95 MB
- Stars: 5
- Watchers: 8
- Forks: 7
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.rst
Awesome Lists containing this project
README
# ROBOTNIK BASE HW
This package is a ROS RobotHW component based on ros_control architecture, compatible with most of the Robotnik's motor hardware.
---
## Dependencies
- robotnik_base_hw_lib [🔗](https://github.com/RobotnikAutomation/robotnik_base_hw_lib/)
```bash
sudo dpkg -i lib/ros-kinetic-robotnik-base-hw-lib_X.Y.Z-0xenial_amd64.deb
```
- robotnik_msgs [🔗](https://github.com/RobotnikAutomation/robotnik_msgs/)
```bash
git clone https://github.com/RobotnikAutomation/robotnik_msgs/
```
- peak-linux-driver
* Recomended version: [8.6.0](https://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-8.6.0.tar.gz)
---
## ROS
### Params
- **battery_voltage_offset**: Offset aplied to the voltage getted by MotorDrive to correct the error (default: 0)
- **base_hw_limits**: Joint limits, like max acceleration or max velocity (default: robotnik_base_hw/config/robotnik_base_hw_limits.yaml)
- **base_hw_config**: Global configuration about the hardware of the robot (default: find robotnik_base_hw/config/robotnik_base_hw.yaml)
Robot is able to auto recover it's hardware in case of malfunctioning. This is controlled by two parameters:
- **auto_recovery**: If true, tries to auto recover from fatal errors in hw, mostly after pressing e-stop. Must have a recovery_period set (default: true)
- **recovery_period**: Period in sec between recovery attempts. If 0, auto_recovery will not work (default: 10)
### Topics
#### Publications
- **state**: Publishes an overview of the state of the node.
- type: robotnik_msgs/State
- **status**: Publishes an overview of the status of the motors.
- type: robotnik_msgs/RobotnikMotorsStatus
- **voltage**: Publishes the voltage getted by MotorDrive (with an applied offset).
- type: std_msgs/Float32
- **emergency_stop**: True when the emergency button has been presed (or an error caused the stop of the robot).
- type: std_msgs/Bool
- **io**: Publishes a list with the state of all inputs and outputs.
- type: robotnik_msgs/inputs_outputs
#### Services
- **set_digital_output**: Used to set the state of the digital outputs.
- type: robotnik_msgs/set_digital_output
- **send_to_home**: Used to set the motor position to 0.
- type: std_srvs/Trigger