INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

hydrolibs/hydrormputil/util/segwayrmp.h

00001 #ifndef SEGWAYRMP_SEGWAYRMP_H
00002 #define SEGWAYRMP_SEGWAYRMP_H
00003 
00004 #include <hydrormputil/powerbasemanager.h>
00005 #include <hydroutil/context.h>
00006 
00007 namespace segwayrmp {
00008 
00009 //
00010 // @brief Simple API for the SegwayRMP.
00011 //        For definitions of the sturctures in the hydrointerfaces namespace, see:
00012 //        http://orca-robotics.sourceforge.net/hydro/classhydrointerfaces_1_1SegwayRmp.html
00013 //
00014 // @author Alex Brooks
00015 //
00016 class SegwayRmp
00017 {
00018 public: 
00019 
00020     //
00021     // capabilitiesConstraints: user-specified constraints on the vehicle 
00022     //                          (gets 'min-ed' with actual vehicle capabilities, useful for testing safely)
00023     // callback:                used to return odometric data
00024     // fakeDriver:              if true, we set up a fake Segway rather than talking to real hardware.
00025     //
00026     SegwayRmp( hydrointerfaces::SegwayRmp::Capabilities &capabilitiesConstraints,
00027                double                                    maxForwardAcceleration,
00028                double                                    maxReverseAcceleration,
00029                hydrormputil::AggregatorCallback          &callback,
00030                bool                                      fakeDriver,
00031                const hydroutil::Context                 &context );
00032 
00033     // Set the desired velocity setpoint.
00034     // Note that if a command is not set for 200ms, the velocity will be slewed to zero
00035     // (this is a safety mechanism to help prevent runaway robots).
00036     void setCommand( const hydrointerfaces::SegwayRmp::Command &incomingCmd );
00037 
00038     // Retreive the robot's capabilities
00039     const hydrointerfaces::SegwayRmp::Capabilities &capabilities() const { return capabilities_; }
00040 
00041 private: 
00042 
00043     hydrointerfaces::SegwayRmp::Capabilities      capabilities_;
00044     std::vector<hydrormputil::PowerbaseManagerPtr> powerbaseManagers_;
00045     hydroutil::Context                            context_;
00046 };
00047 
00048 }
00049 
00050 #endif
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5