ViSP
2.8.0
Main Page
Related Pages
Modules
Classes
Examples
vpRobotCycab.h
1
/****************************************************************************
2
*
3
* $Id: vpRobotCycab.h 4056 2013-01-05 13:04:42Z fspindle $
4
*
5
* This file is part of the ViSP software.
6
* Copyright (C) 2005 - 2013 by INRIA. All rights reserved.
7
*
8
* This software is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License
10
* ("GPL") version 2 as published by the Free Software Foundation.
11
* See the file LICENSE.txt at the root directory of this source
12
* distribution for additional information about the GNU GPL.
13
*
14
* For using ViSP with software that can not be combined with the GNU
15
* GPL, please contact INRIA about acquiring a ViSP Professional
16
* Edition License.
17
*
18
* See http://www.irisa.fr/lagadic/visp/visp.html for more information.
19
*
20
* This software was developed at:
21
* INRIA Rennes - Bretagne Atlantique
22
* Campus Universitaire de Beaulieu
23
* 35042 Rennes Cedex
24
* France
25
* http://www.irisa.fr/lagadic
26
*
27
* If you have questions regarding the use of this file, please contact
28
* INRIA at visp@inria.fr
29
*
30
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
31
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
32
*
33
*
34
* Description:
35
* Interface for the car-like Cycab mobile robot.
36
*
37
* Authors:
38
* Fabien Spindler
39
*
40
*****************************************************************************/
41
#ifndef vpRobotCycab_h
42
#define vpRobotCycab_h
43
62
#include <visp/vpConfig.h>
63
64
#ifdef VISP_HAVE_CYCAB
65
66
#ifdef VISP_HAVE_CYCABTK_OLD
67
// Old low level controller based on Syndex (obsolete)
68
# include <EtherCycab/EtherCycab.hpp>
69
#elif defined VISP_HAVE_CYCABTK
70
// New low level controller based on Syndex (to use)
71
# include <hugr.hpp>
72
# include <CycabStructs.hpp>
73
74
using namespace
hugr;
75
76
#endif //VISP_HAVE_CYCABTK_OLD
77
78
class
VISP_EXPORT
vpRobotCycab
79
{
80
public
:
81
vpRobotCycab
();
82
virtual
~
vpRobotCycab
();
83
84
void
setDualSteering(
bool
dual);
85
void
setCommand(
double
v,
double
phi);
86
void
getOdometry(
double
&vmean,
double
&phi);
87
void
getOdometry(
double
&vmean,
double
&phi,
double
×tamp);
88
void
getOdometry(
double
&vfl,
double
&vfr,
double
&vrl,
double
&vrr,
89
double
&phi);
90
void
getOdometry(
double
&vfl,
double
&vfr,
double
&vrl,
double
&vrr,
91
double
&phi,
double
×tamp);
92
void
getJoystickPosition(
double
&x,
double
&y);
93
void
getJoystickPosition(
double
&x,
double
&y,
double
×tamp);
94
95
private
:
96
bool
dualSteering;
97
#ifdef VISP_HAVE_CYCABTK_OLD
98
// Old low level controller based on Syndex (obsolete)
99
bool
end;
100
LockedTimeReq LTR;
101
char
servername[1024];
102
EtherCycab *cycab;
103
#elif defined VISP_HAVE_CYCABTK
104
// New low level controller based on Syndex (to use)
105
Store store;
106
VariableId cycab_stateId, cycab_commandId;
107
#endif
108
};
109
110
#endif
111
#endif
vpRobotCycab
Interface for the car-like Cycab mobile robot.
ViSP-2.8.0
src
robot
real-robot
cycab
vpRobotCycab.h
Generated on Wed Sep 2 2015 14:12:29 for ViSP by
1.8.9.1