libkovan  1
The kovan standard library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
motors.h
Go to the documentation of this file.
1 /**************************************************************************
2  * Copyright 2012 KISS Institute for Practical Robotics *
3  * *
4  * This file is part of libkovan. *
5  * *
6  * libkovan is free software: you can redistribute it and/or modify *
7  * it under the terms of the GNU General Public License as published by *
8  * the Free Software Foundation, either version 2 of the License, or *
9  * (at your option) any later version. *
10  * *
11  * libkovan is distributed in the hope that it will be useful, *
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14  * GNU General Public License for more details. *
15  * *
16  * You should have received a copy of the GNU General Public License *
17  * along with libkovan. Check the LICENSE file in the project root. *
18  * If not, see <http://www.gnu.org/licenses/>. *
19  **************************************************************************/
20 
29 #ifndef _MOTORS_H_
30 #define _MOTORS_H_
31 
32 #include "export.h"
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
42 
47 
51 int move_at_velocity(int motor, int velocity);
52 
57 int mav(int motor, int velocity);
58 
59 int move_to_position(int motor, int speed, int goal_pos);
60 
65 int mtp(int motor, int speed, int goal_pos);
66 
67 int move_relative_position(int motor, int speed, int delta_pos);
68 
73 int mrp(int motor, int speed, int delta_pos);
74 
78 void set_pid_gains(int motor, short p, short i, short d, short pd, short id, short dd);
79 
83 void get_pid_gains(int motor, short *p, short *i, short *d, short *pd, short *id, short *dd);
84 
88 int freeze(int motor);
89 
93 int get_motor_done(int motor);
94 
98 void block_motor_done(int motor);
99 
104 void bmd(int motor);
105 
109 int setpwm(int motor, int pwm);
110 
114 int getpwm(int motor);
115 
121 void fd(int motor);
122 
128 void bk(int motor);
129 
133 void motor(int motor, int percent);
134 
140 void off(int motor);
141 
147 void alloff();
148 
153 void ao();
154 
155 
156 #ifdef __cplusplus
157 }
158 #endif
159 
160 
161 #endif