e_motors.h File Reference

Manage the motors (with timer1, 2, 3). More...


Functions

void e_init_motors (void)
 Initialize the motors's agendas.
void e_set_speed_left (int motor_speed)
 Manage the left motor speed.
void e_set_speed_right (int motor_speed)
 Manage the right motor speed.
void e_set_speed (int linear_speed, int angular_speed)
 Manage linear/angular speed.
void e_set_steps_left (int steps_left)
 Set the number of left motor steps.
void e_set_steps_right (int steps_right)
 Set the number of right motor steps.
int e_get_steps_left ()
 Give the number of left motor steps.
int e_get_steps_right ()
 Give the number of right motor steps.


Detailed Description

Manage the motors (with timer1, 2, 3).

This module manage the motors with the fast agenda solution (timer1, 2, 3).

See also:
e_agenda.h
Author:
Code: Francesco Mondada, Lucas Meier
Doc: Jonathan Besuchet

Function Documentation

int e_get_steps_left ( void   ) 

Give the number of left motor steps.

Returns:
The number of phases steps made since the left motor is running.

int e_get_steps_right ( void   ) 

Give the number of right motor steps.

Returns:
The number of phases steps made since the right motor is running.

void e_init_motors ( void   ) 

Initialize the motors's agendas.

This function initialize the agendas used by the motors. In fact it call e_activate_agenda(void (*func)(void), int cycle) function.

See also:
e_activate_agenda
This function initialize the agendas used by the motors. In fact it call "e_activate_agenda(void (*func)(void), int cycle)" function.
See also:
e_activate_agenda
Initialize the motors's agendas.

This function initialize the ports used by the motors. In fact it call "the e_init_port()" function.

See also:
e_init_port
Initialize the motors's agendas.

This function configure timer3 and initialize the ports used by the motors. In fact it call "the e_init_port()" function.

See also:
e_init_port

void e_set_speed ( int  linear_speed,
int  angular_speed 
)

Manage linear/angular speed.

This function manage the speed of the motors according to the desired linear and angular speed.

Parameters:
linear_speed the speed in the axis of e-puck
angular_speed the rotation speed (trigonometric)

void e_set_speed_left ( int  motor_speed  ) 

Manage the left motor speed.

This function manage the left motor speed by changing the MOTOR1 phases. The changing phases frequency (=> speed) is controled by the agenda (throw the function e_set_agenda_cycle(void (*func)(void), int cycle)).

Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.
See also:
e_set_agenda_cycle
This function manage the left motor speed by changing the MOTOR1 phases. The changing phases frequency (=> speed) is controled by the agenda (throw the function "e_set_agenda_cycle(void (*func)(void), int cycle)").
Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.
See also:
e_set_agenda_cycle
Manage the left motor speed.

This function manage the left motor speed by changing the MOTOR1 phases. The changing phases frequency (=> speed) is controled by the timer5.

Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.
Manage the left motor speed.

This function manage the left motor speed by changing the MOTOR1 phases. The changing phases frequency (=> speed) is controled by the timer3.

Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.

void e_set_speed_right ( int  motor_speed  ) 

Manage the right motor speed.

This function manage the right motor speed by changing the MOTOR2 phases. The changing phases frequency (=> speed) is controled by the agenda (throw the function e_set_agenda_cycle(void (*func)(void), int cycle)).

Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.
See also:
e_set_agenda_cycle
This function manage the right motor speed by changing the MOTOR2 phases. The changing phases frequency (=> speed) is controled by the agenda (throw the function "e_set_agenda_cycle(void (*func)(void), int cycle)").
Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.
See also:
e_set_agenda_cycle
Manage the right motor speed.

This function manage the right motor speed by changing the MOTOR2 phases. The changing phases frequency (=> speed) is controled by the timer4.

Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.
Manage the right motor speed.

This function manage the right motor speed by changing the MOTOR2 phases. The changing phases frequency (=> speed) is controled by the timer3.

Parameters:
motor_speed from -1000 to 1000 give the motor speed in steps/s, positive value to go forward and negative to go backward.

void e_set_steps_left ( int  set_steps  ) 

Set the number of left motor steps.

Parameters:
set_steps The number of changed phases that you want set.

void e_set_steps_right ( int  set_steps  ) 

Set the number of right motor steps.

Parameters:
set_steps The number of changed phases that you want set.


Generated on Fri Feb 29 14:26:54 2008 for e-puck by  doxygen 1.5.4