Basic Mid-Level control for the rebuilt MorphGI control unit, using PWM to communicate with the low level controllers.

Dependencies:   ros_lib_kinetic

Committer:
dofydoink
Date:
Mon Aug 13 09:16:29 2018 +0000
Revision:
12:595ed862e52f
Child:
13:a373dfc57b89
Tested and working with 3 channels.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dofydoink 12:595ed862e52f 1 // MLSettings.h
dofydoink 12:595ed862e52f 2
dofydoink 12:595ed862e52f 3 #ifndef MLSETTINGS_H
dofydoink 12:595ed862e52f 4 #define MLSETTINGS_H
dofydoink 12:595ed862e52f 5
dofydoink 12:595ed862e52f 6 // GENERAL SETTINGS
dofydoink 12:595ed862e52f 7 const unsigned short int N_CHANNELS = 8; // Number of channels to control
dofydoink 12:595ed862e52f 8 // 1-3: front segment; 4-6: rear segment; 7-8: mid segment
dofydoink 12:595ed862e52f 9 const int BAUD_RATE = 9600; //115200
dofydoink 12:595ed862e52f 10
dofydoink 12:595ed862e52f 11 // HL COMMUNICATION SETTINGS
dofydoink 12:595ed862e52f 12 const bool IS_PRINT_OUTPUT = false;
dofydoink 12:595ed862e52f 13 const bool IS_DHCP = false;
dofydoink 12:595ed862e52f 14 const unsigned short int SERVER_PORT = 80;
dofydoink 12:595ed862e52f 15
dofydoink 12:595ed862e52f 16 // LL COMMUNICATION SETTINGS
dofydoink 12:595ed862e52f 17 const unsigned int LOW_LEVEL_SPI_FREQUENCY = 10000000;
dofydoink 12:595ed862e52f 18
dofydoink 12:595ed862e52f 19 // PATH GENERATION SETTINGS
dofydoink 12:595ed862e52f 20 const float PATH_SAMPLE_TIME_S = 0.005; //0.109
dofydoink 12:595ed862e52f 21 const float MAX_LENGTH_MM = 100.0;
dofydoink 12:595ed862e52f 22 const float MAX_ACTUATOR_LENGTH = 52.2;
dofydoink 12:595ed862e52f 23 const float MAX_SPEED_MMPS = 24.3457;
dofydoink 12:595ed862e52f 24 //const float FLT_MAX_CHAMBER_LENGTHS_MM[N_CHANNELS] = {80.0,80.0,80.0,80.0,80.0,80.0,80.0,80.0};
dofydoink 12:595ed862e52f 25 //const float FLT_ACTUATOR_CONVERSION[N_CHANNELS] = {0.30586,0.30586,0.30586,0.30586,0.30586,0.4588,0.4588}; // Convert from chamber lengths to actuator lengths
dofydoink 12:595ed862e52f 26 const float FLT_ACTUATOR_CONVERSION[N_CHANNELS] = {1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0}; // Convert from chamber lengths to actuator
dofydoink 12:595ed862e52f 27 const float FLT_SMOOTHING_FACTOR = 0.1; // 0<x<=1, where 1 is no smoothing
dofydoink 12:595ed862e52f 28 const float FLT_PERCENT_PATH_TOLERANCE = 0.05; // Additional % tolerance beyond maximum achievable mm tolerance
dofydoink 12:595ed862e52f 29
dofydoink 12:595ed862e52f 30 #endif