Copyright (C) 2006 Videre Design Copyright (C) 2000 Brian Gerkey, Kasper Stoy, Richard Vaughan, & Andrew Howard. More...
Copyright (C) 2006 Videre Design Copyright (C) 2000 Brian Gerkey, Kasper Stoy, Richard Vaughan, & Andrew Howard.
Videre Erratic robot driver for Player
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 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 General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA This driver is adapted from the p2os driver of player 1.6. Erratic
This driver talks to the embedded computer in the Erratic robot, which mediates communication to the devices of the robot.
- Compile-time dependencies
- none
- Provides
The erratic driver provides the following device interfaces, some of them named:
- "odometry" position2d
- This interface returns odometry data, and accepts velocity commands.
- power
- Returns the current battery voltage (12 V when fully charged).
- aio
- Returns data from analog and digital input pins
- ir
- Returns ranges from IR sensors, assuming they're connected to the analog input pins
- sonar
- Returns ranges from sonar sensors
- ptz : control of the servos that pan and tilt
- Supported configuration requests
- "odometry" position2d :
- PLAYER_POSITION_SET_ODOM_REQ
- PLAYER_POSITION_MOTOR_POWER_REQ
- PLAYER_POSITION_RESET_ODOM_REQ
- PLAYER_POSITION_GET_GEOM_REQ
- PLAYER_POSITION_VELOCITY_MODE_REQ
- ir :
- PLAYER_IR_REQ_POSE
- sonar :
- PLAYER_SONAR_GET_GEOM_REQ
- Configuration file options
- port (string)
- Default: "/dev/ttyS0"
- direct_wheel_vel_control (integer)
- max_trans_vel (length)
- Default: 0.5 m/s
- Maximum translational velocity
- max_rot_vel (angle)
- Default: 100 deg/s
- Maximum rotational velocity
- trans_acc (length)
- Default: 0
- Maximum translational acceleration, in length/sec/sec; nonnegative. Zero means use the robot's default value.
- trans_decel (length)
- Default: trans_acc
- Maximum translational deceleration, in length/sec/sec; nonpositive. Zero means use the robot's default value.
- rot_acc (angle)
- Default: 0
- Maximum rotational acceleration, in angle/sec/sec; nonnegative. Zero means use the robot's default value.
- rot_decel (angle)
- Default: rot_acc
- Maximum rotational deceleration, in angle/sec/sec; nonpositive. Zero means use the robot's default value.
- pid_trans_p (integer)
- Default: -1
- Translational PID setting; proportional gain. Negative means use the robot's default value.
- pid_trans_d (integer)
- Default: -1
- Translational PID setting; derivative gain. Negative means use the robot's default value.
- pid_rot_p (integer)
- Default: -1
- Rotational PID setting; proportional gain. Negative means use the robot's default value.
- pid_rot_d (integer)
- Default: -1
- Rotational PID setting; derivative gain. Negative means use the robot's default value.
- motor_pwm_frequency (integer)
- Default: -1
- Frequency of motor PWM. Bounds determined by robot. Negative means use the robot's default value.
- motor_pwm_max_on (float)
- Default: 1
- Maximum motor duty cycle.
- save_settings_in_robot (integer)
- Default: 0
- A value of 1 installs current settings as default values in the robot.
- Example
driver ( name "erratic" plugin "erratic" provides [ "position2d:0" "power:0" "sonar:0" "aio:0" "ir:0" "ptz:0" "ptz:1" ] port "/dev/erratic" max_trans_vel 3 max_rot_vel 720 trans_acc 1 rot_acc 200 direct_wheel_vel_control 0 )