Project

General

Profile

Revision c9f87aaf

IDc9f87aaf3a58a9f09fc5d5ba9fa93b5e540e30d4

Added by Ben Wasserman over 12 years ago

Added code inside motors.cpp to set and read individual speeds in different units. Also added appropriate headers to motors.h, and units field to query_motors.srv and set_motors.msg

View differences:

scout/motors/src/motors.h
1 1
/**
2
 * Copyright (c) 2007 Colony Project
2
 * Copyright (c) 2011 Colony Project
3 3
 * 
4 4
 * Permission is hereby granted, free of charge, to any person
5 5
 * obtaining a copy of this software and associated documentation
......
40 40
#include "motors/query_motors.h"
41 41
#include "motors/set_motors.h"
42 42

  
43
#define MAXSPEED 512
44
#define MOTOR_ALL 0xF
45
#define MOTOR_ALL_REV 0xF0
46
#define MOTOR_NONE 0x0
47
#define MOTOR_FL 0x8
48
#define MOTOR_FR 0x4
49
#define MOTOR_BL 0x2
50
#define MOTOR_BR 0x1
51
#define MOTOR_FL_REV 0x80
52
#define MOTOR_FR_REV 0x40
53
#define MOTOR_BL_REV 0x20
54
#define MOTOR_BR_REV 0x10
55
#define MOTOR_FRONT MOTOR_FL | MOTOR_FR
56
#define MOTOR_BACK MOTOR_BR | MOTOR_BR
57
#define MOTOR_LEFT MOTOR_FL | MOTOR_BL
58
#define MOTOR_RIGHT MOTOR_FR | MOTOR_BR
59
#define MOTOR_LEFT_REV MOTOR_FL_REV | MOTOR_BL_REV
60
#define MOTOR_RIGHT_REV MOTOR_FR_REV | MOTOR_BR_REV
61
#define MOTOR_LEFT_SPIN MOTOR_LEFT_REV | MOTOR_RIGHT
62
#define MOTOR_RIGHT_SPIN MOTOR_LEFT | MOTOR_RIGHT_REV
63
#define MOTOR_PERCENT 'p'
64
#define MOTOR_MMS 'm'
65
#define MOTOR_CMS 'c'
66
#define MOTOR_ABSOLUTE 'a'
67

  
68

  
43 69
/** @brief Initialize the motors module and driver. **/
44 70
int main(int argc, char **argv);
45 71

  
......
50 76
bool motors_query(motors::query_motors::Request &req,
51 77
                  motors::query_motors::Response &res);
52 78

  
79
/** @brief Converts speeds from speeds in units to absolute speeds. **/
80
int motors_rel_to_abs(int rel_speed, int units);
81

  
82
/** @brief Converts speeds from absolute speeds to speeds in units. **/
83
int motors_abs_to_rel(int rel_speed, int units);
84

  
53 85
#endif

Also available in: Unified diff