movement_definitions.h
Go to the documentation of this file.
00001 /*
00002  * movement_definitions.h
00003  * Copyright 2013 University of Massachusetts Lowell
00004  * Author: Jonathan Hasenzahl
00005  */
00006 
00007 #ifndef MOVEMENT_DEFINITIONS_H_
00008 #define MOVEMENT_DEFINITIONS_H_
00009 
00010 // Movement states
00011 #define STOP 0
00012 #define ARM_FORWARD 1
00013 #define ARM_BACKWARD -1
00014 #define ARM_LEFT 1
00015 #define ARM_RIGHT -1
00016 #define ARM_UP 1
00017 #define ARM_DOWN -1
00018 #define CLAW_YAW_LEFT 1
00019 #define CLAW_YAW_RIGHT -1
00020 #define CLAW_PITCH_UP 1
00021 #define CLAW_PITCH_DOWN -1
00022 #define CLAW_ROLL_LEFT -1
00023 #define CLAW_ROLL_RIGHT 1
00024 #define CLAW_GRIP_OPEN 1
00025 #define CLAW_GRIP_CLOSE -1
00026 #define LIFT_UP -1
00027 #define LIFT_DOWN 1
00028 
00029 // Movement axis indexes
00030 #define X 0 // Forward/backward
00031 #define Y 1 // Left/right
00032 #define Z 2 // Up/down
00033 #define YAW 3
00034 #define PITCH 4
00035 #define ROLL 5
00036 #define GRIP 6
00037 #define LIFT 7 // Not used with cartesian moves. Does not have a speed.
00038 
00039 // Size of movement arrays
00040 #define CART_MV_ARR_SZ 7        // Cartesian movement array
00041 #define CONST_MV_ARR_SZ 8       // Constant movement array
00042 #define SPD_ARR_SZ 7            // Speed array
00043 #define FRM_ARR_SZ 8            // Can frame array
00044 
00045 // Arm origin position
00046 const float ORIGIN_POSITION[] = {  15000.0f,
00047                                            -4500.0f,
00048                                            19000.0f,
00049                                                0.0f,
00050                                                0.0f,
00051                                                0.0f,
00052                                           -10000.0f };
00053 // Arm final position
00054 const float FINAL_POSITION[][CART_MV_ARR_SZ] = { { 15000.0f,
00055                                                                                    -4500.0f,
00056                                                                                    19000.0f,
00057                                                                                        0.0f,
00058                                                                                        0.0f,
00059                                                                                        0.0f,
00060                                                                                   -10000.0f },
00061                                                                                  {  8000.0f,
00062                                                                                    -4500.0f,
00063                                                                                     6000.0f,
00064                                                                                        0.0f,
00065                                                                                        0.0f,
00066                                                                                        0.0f,
00067                                                                                   -10000.0f } };
00068 
00072 struct CartesianMove
00073 {
00074         float positions[CART_MV_ARR_SZ];
00075         int speeds[SPD_ARR_SZ];
00076 };
00077 
00081 struct ConstantMove
00082 {
00083         int states[CONST_MV_ARR_SZ];
00084         int speeds[SPD_ARR_SZ]; // No speed for lift unit
00085 };
00086 
00087 #endif


arm
Author(s): Jonathan Hasenzahl
autogenerated on Sun Jan 5 2014 11:12:32