Kobuki 1.0.0
C++ API for the Kobuki research robot
Loading...
Searching...
No Matches
parameters.hpp
Go to the documentation of this file.
1
9/*****************************************************************************
10 ** Ifdefs
11 *****************************************************************************/
12
13#ifndef KOBUKI_CORE_PARAMETERS_HPP_
14#define KOBUKI_CORE_PARAMETERS_HPP_
15
16/*****************************************************************************
17 ** Includes
18 *****************************************************************************/
19
20#include <string>
21
22#include "logging.hpp"
23#include "modules/battery.hpp"
24
25/*****************************************************************************
26 ** Namespaces
27 *****************************************************************************/
28
29namespace kobuki
30{
31
32/*****************************************************************************
33 ** Interface
34 *****************************************************************************/
39{
40public:
42 device_port("/dev/kobuki"),
43 sigslots_namespace("/kobuki"),
44 simulation(false),
46 battery_capacity(Battery::capacity),
47 battery_low(Battery::low),
48 battery_dangerous(Battery::dangerous),
49 linear_acceleration_limit(0.3),
50 linear_deceleration_limit(-0.3*1.2),
51 angular_acceleration_limit(3.5),
52 angular_deceleration_limit(-3.5*1.2),
53 log_level(LogLevel::WARNING)
54 {
55 }
57 std::string device_port;
58 std::string sigslots_namespace;
61 double battery_capacity; /* defaults defined in battery.cpp */
62 double battery_low; /* defaults defined in battery.cpp */
63 double battery_dangerous; /* defaults defined in battery.cpp */
64
65 double linear_acceleration_limit;
66 double linear_deceleration_limit;
67 double angular_acceleration_limit;
68 double angular_deceleration_limit;
69
79 bool validate()
80 {
81 // not doing anything right now - delete it, if we can find a use case ...
82 return true;
83 }
84
85 std::string error_msg;
86};
87
88} // namespace kobuki
89
90#endif /* KOBUKI_CORE_PARAMETERS_HPP_ */
Battery level module.
Definition battery.hpp:40
Parameter list and validator for the kobuki.
Definition parameters.hpp:39
std::string sigslots_namespace
The first part of a sigslot connection namespace ["/kobuki"].
Definition parameters.hpp:58
double battery_capacity
Capacity voltage of the battery [16.5V].
Definition parameters.hpp:61
std::string error_msg
Provides error messages when parameter validation fails (internal purposes only)
Definition parameters.hpp:85
double battery_dangerous
Threshold for battery level in danger of depletion [13.2V].
Definition parameters.hpp:63
std::string device_port
The serial device port name [/dev/kobuki].
Definition parameters.hpp:57
Parameters()
Default constructor.
Definition parameters.hpp:41
bool validate()
A validator to ensure the user has supplied correct/sensible parameter values.
Definition parameters.hpp:79
bool enable_acceleration_limiter
Enable or disable the acceleration limiter [true].
Definition parameters.hpp:60
LogLevel log_level
Print to stdout messages for this logging level and above.
Definition parameters.hpp:70
bool simulation
Whether to put the motors in loopback mode or not [false].
Definition parameters.hpp:59
double battery_low
Threshold for battery level warnings [14.0V].
Definition parameters.hpp:62
Log levels and simple logging to screen.
LogLevel
Internal logging levels.
Definition logging.hpp:44