Project

General

Profile

Statistics
| Revision:

root / branches / encoders / code / lib / include / libdragonfly / move.h @ 546

History | View | Annotate | Download (1.04 KB)

1
/**
2
 * @file move.h
3
 * @brief Contains definitions for controlling robot motion
4
 * 
5
 * This file offers higher-level functions for robot motion.
6
 *
7
 * @author Colony Project, CMU Robotics Club
8
 **/
9

    
10
#ifndef _MOVE_H_
11
#define _MOVE_H_
12

    
13
/**
14
 * @addtogroup move
15
 * @{
16
 **/
17

    
18
/** @brief Move forwards **/
19
#define FWD 0
20
/** @brief Move backwards **/
21
#define BCK 1
22

    
23
/** @brief A slow speed **/
24
#define SLOW_SPD 96
25
/** @brief Half of the full speed **/
26
#define HALF_SPD 128
27
/** @brief A normal speed **/
28
#define NRML_SPD 160
29
/** @brief A fast speed **/
30
#define FAST_SPD 192
31
/** @brief The maximum speed **/
32
#define FULL_SPD 255
33

    
34
/** @brief A slow turning speed **/
35
#define SLOW_TURN 64
36
/** @brief A medium turning speed **/
37
#define NRML_TURN 96
38
/** @brief A high turning speed **/
39
#define FAST_TURN 128
40

    
41
/** @brief Move the robot at the specified velocity **/
42
void move(int velocity, int omega);
43
/** @brief Move the robot while avoiding obstacles **/
44
void move_avoid(int velocity, int omega, int strength);
45

    
46
/** @} **/
47

    
48
#endif
49