motor_controller_data.h
Go to the documentation of this file.
00001 #ifndef __MCDC3006S_DATA_H__
00002 #define __MCDC3006S_DATA_H__
00003 
00027 
00028 #define BAUDRATE                    19200
00029 
00031 
00032 // motors data
00033 #define PULSES_PER_REV              2048.
00034 
00035 // reduction factor in horizontal and vertical movement engine
00036 #define NECK_VER_REDUCTION_FACTOR   178.
00037 #define NECK_HOR_REDUCTION_FACTOR   111.
00038 
00039 #define ARMS_REDUCTION_FACTOR       166.
00040 
00041 // rev = pulses_per_rev * axis_reduction_factor
00042 #define TOTAL_NECK_VER_REDUCTION    (PULSES_PER_REV * NECK_VER_REDUCTION_FACTOR)
00043 #define TOTAL_NECK_HOR_REDUCTION    (PULSES_PER_REV * NECK_HOR_REDUCTION_FACTOR)
00044 
00045 #define TOTAL_ARMS_REDUCTION        (PULSES_PER_REV * ARMS_REDUCTION_FACTOR)
00046 
00047 // home position of the motors from the limit switch after the calibration in rads
00048 #define NECK_HOR_HOME_POS           -1.0
00049 #define NECK_VER_HOME_POS           -0.7
00050 
00052 
00053 // semaphores
00054 #define HOR_NECK_SEMAPHORE_FILE     "tmp/horNeckSemaphore"
00055 #define VER_NECK_SEMAPHORE_FILE     "tmp/verNeckSemaphore"
00056 
00057 #define LEFT_ARM_SEMAPHORE_FILE     "tmp/leftArmSemaphore"
00058 #define RIGHT_ARM_SEMAPHORE_FILE    "tmp/rightArmSemaphore"
00059 
00061 
00062 // joints data
00063 enum neck_id {
00064     NECK_HOR = 0, NECK_VER
00065 };
00066 
00067 enum arm_id {
00068     ARM_LEFT = 0, ARM_RIGHT
00069 };
00070 
00072 
00073 #define NECK                       "neck"
00074 #define ARM                        "arm"
00075 
00077 
00078 #define TEST_DEVICE                     0
00079 
00081 
00082 typedef struct odometry {
00083         // current position in rad
00084         double pos;
00085         // current velocity in rad/second
00086         double vel;
00087         // instant current (mA)
00088         int cur;
00089 } odo_t;
00090 
00091 #endif


maggie_motor_controller
Author(s): Raul Perula-Martinez
autogenerated on Thu Apr 23 2015 22:19:04