Public Member Functions | Private Member Functions | Private Attributes
KobukiManager Class Reference

Keyboard remote control for our robot core (mobile base). More...

List of all members.

Public Member Functions

std::string & getFirmwareVersion ()
std::string & getHardwareVersion ()
ecl::Pose2D< double > getPose ()
ecl::Pose2D< double > getPose ()
std::string & getSoftwareVersion ()
std::string & getUDID ()
bool init ()
 Initialises the node.
bool isAcquired ()
 KobukiManager ()
 Default constructor, needs initialisation.
 KobukiManager ()
 KobukiManager (const std::string &device_port)
 KobukiManager ()
 KobukiManager ()
void processMotion ()
void processStreamData ()
void processStreamData ()
void processStreamData ()
void processVersionInfo (const kobuki::VersionInfo &version_info)
void spin ()
 Worker thread loop; sends current velocity command at a fixed rate.
void spin ()
 ~KobukiManager ()
 ~KobukiManager ()
 ~KobukiManager ()

Private Member Functions

void decrementAngularVelocity ()
 If not already mined, decrement the angular velocities..
void decrementLinearVelocity ()
 If not already minned, decrement the linear velocities..
void incrementAngularVelocity ()
 If not already maxxed, increment the angular velocities..
void incrementLinearVelocity ()
 If not already maxxed, increment the command velocities..
void keyboardInputLoop ()
 The worker thread function that accepts input keyboard commands.
void processKeyboardInput (char c)
 Process individual keyboard inputs.
void resetVelocity ()
void restoreTerminal ()

Private Attributes

volatile bool acquired
double angular_vel_max
double angular_vel_step
double dth
double dx
std::string firmware
std::string hardware
int key_file_descriptor
kobuki::Kobuki kobuki
double linear_vel_max
double linear_vel_step
std::string name
struct termios original_terminal_state
ecl::Pose2D< double > pose
bool quit_requested
ecl::Slot slot_stream_data
ecl::Slot< const
kobuki::VersionInfo & > 
slot_version_info
std::string software
ecl::Thread thread
std::string udid
double vx
double wz

Detailed Description

Keyboard remote control for our robot core (mobile base).

Definition at line 14 of file initialisation.cpp.


Constructor & Destructor Documentation

Default constructor, needs initialisation.

Definition at line 16 of file initialisation.cpp.

Definition at line 21 of file sigslots.cpp.

Definition at line 26 of file simple_loop.cpp.

Definition at line 39 of file simple_loop.cpp.

KobukiManager::KobukiManager ( const std::string &  device_port) [inline]

Definition at line 24 of file version_info.cpp.

Definition at line 36 of file version_info.cpp.


Member Function Documentation

If not already mined, decrement the angular velocities..

Definition at line 342 of file simple_keyop.cpp.

If not already minned, decrement the linear velocities..

Definition at line 318 of file simple_keyop.cpp.

std::string& KobukiManager::getFirmwareVersion ( ) [inline]

Definition at line 51 of file version_info.cpp.

std::string& KobukiManager::getHardwareVersion ( ) [inline]

Definition at line 50 of file version_info.cpp.

ecl::Pose2D< double > KobukiManager::getPose ( ) [inline]

Definition at line 64 of file simple_loop.cpp.

std::string& KobukiManager::getSoftwareVersion ( ) [inline]

Definition at line 52 of file version_info.cpp.

std::string& KobukiManager::getUDID ( ) [inline]

Definition at line 53 of file version_info.cpp.

If not already maxxed, increment the angular velocities..

Definition at line 330 of file simple_keyop.cpp.

If not already maxxed, increment the command velocities..

Definition at line 306 of file simple_keyop.cpp.

Initialises the node.

Definition at line 147 of file simple_keyop.cpp.

bool KobukiManager::isAcquired ( ) [inline]

Definition at line 49 of file version_info.cpp.

The worker thread function that accepts input keyboard commands.

This is ok here - but later it might be a good idea to make a node which posts keyboard events to a topic. Recycle common code if used by many!

Definition at line 217 of file simple_keyop.cpp.

void KobukiManager::processKeyboardInput ( char  c) [private]

Process individual keyboard inputs.

Parameters:
ckeyboard input.

Definition at line 251 of file simple_keyop.cpp.

void KobukiManager::processMotion ( ) [inline]

Definition at line 58 of file simple_loop.cpp.

Definition at line 44 of file simple_loop.cpp.

Definition at line 46 of file sigslots.cpp.

void KobukiManager::processVersionInfo ( const kobuki::VersionInfo version_info) [inline]

Definition at line 40 of file version_info.cpp.

void KobukiManager::resetVelocity ( ) [private]

Definition at line 351 of file simple_keyop.cpp.

void KobukiManager::restoreTerminal ( ) [private]
void KobukiManager::spin ( ) [inline]

Worker thread loop; sends current velocity command at a fixed rate.

It also process ros functions as well as aborting when requested.

Definition at line 32 of file sigslots.cpp.


Member Data Documentation

volatile bool KobukiManager::acquired [private]

Definition at line 56 of file version_info.cpp.

Definition at line 92 of file simple_keyop.cpp.

Definition at line 92 of file simple_keyop.cpp.

double KobukiManager::dth [private]

Definition at line 69 of file simple_loop.cpp.

double KobukiManager::dx [private]

Definition at line 69 of file simple_loop.cpp.

std::string KobukiManager::firmware [private]

Definition at line 58 of file version_info.cpp.

std::string KobukiManager::hardware [private]

Definition at line 58 of file version_info.cpp.

Definition at line 112 of file simple_keyop.cpp.

Definition at line 40 of file initialisation.cpp.

Definition at line 91 of file simple_keyop.cpp.

Definition at line 91 of file simple_keyop.cpp.

std::string KobukiManager::name [private]

Definition at line 93 of file simple_keyop.cpp.

struct termios KobukiManager::original_terminal_state [private]

Definition at line 113 of file simple_keyop.cpp.

ecl::Pose2D< double > KobukiManager::pose [private]

Definition at line 70 of file simple_loop.cpp.

Definition at line 111 of file simple_keyop.cpp.

Definition at line 53 of file sigslots.cpp.

Definition at line 59 of file version_info.cpp.

std::string KobukiManager::software [private]

Definition at line 58 of file version_info.cpp.

ecl::Thread KobukiManager::thread [private]

Definition at line 114 of file simple_keyop.cpp.

std::string KobukiManager::udid [private]

Definition at line 58 of file version_info.cpp.

double KobukiManager::vx [private]

Definition at line 86 of file simple_keyop.cpp.

double KobukiManager::wz [private]

Definition at line 86 of file simple_keyop.cpp.


The documentation for this class was generated from the following files:


kobuki_driver
Author(s): Daniel Stonier , Younghun Ju , Jorge Santos Simon
autogenerated on Thu Aug 27 2015 13:43:58