Minh Nguyen / Definitions
Committer:
khaiminhvn
Date:
Tue Apr 06 22:09:06 2021 +0000
Revision:
23:79b3e4c9fea4
Parent:
21:ed99e68f0dbc
Child:
24:0dc15f403424
Adjusted temperature control settings

Who changed what in which revision?

UserRevisionLine numberNew contents of line
khaiminhvn 0:0c5c2cbf330a 1 #ifndef DEFS_SETT_H
khaiminhvn 0:0c5c2cbf330a 2 #define DEFS_SETT_H
khaiminhvn 0:0c5c2cbf330a 3
khaiminhvn 0:0c5c2cbf330a 4 //HARDWARE SETTINGS
khaiminhvn 0:0c5c2cbf330a 5 #define DEBOUNCE_TIME 10000 //Debounce time for pushbutton (us)
khaiminhvn 1:f058cf4e422a 6 #define INPUT_LOGIC 1 //0 - Active Low, 1 - Active High
khaiminhvn 4:2f802af67f4d 7 #define LOOP_DELAY 2000 //Delay for main loop (us)
khaiminhvn 8:fe66db7b00ef 8 #define VCC 3.3 //VCC of K64F board
khaiminhvn 0:0c5c2cbf330a 9
khaiminhvn 16:76ddaae78dca 10 //CONNECTION SETTINGS
khaiminhvn 16:76ddaae78dca 11 #define URL "int-sol-ref.herokuapp.com"
khaiminhvn 16:76ddaae78dca 12 #define PORT 80
khaiminhvn 18:8c0a92168bfd 13 #define CONN_N 5 //Times for trying reconnection
khaiminhvn 18:8c0a92168bfd 14 #define TIME_RECON 300 //Time for checking to reconnect
khaiminhvn 21:ed99e68f0dbc 15 #define TIME_GUIWIND 1000 //Time for sending windspeed to the server
khaiminhvn 16:76ddaae78dca 16
khaiminhvn 0:0c5c2cbf330a 17 //BEHAVIORIAL SETTINGS
khaiminhvn 1:f058cf4e422a 18 #define TIME_NORMAL 10 //Time Between Adjustment in Normal Mode (seconds)
khaiminhvn 1:f058cf4e422a 19 #define TIME_WSETTING 1 //Time FN button need to be held for the system to go to WSETTING mode (seconds)
khaiminhvn 0:0c5c2cbf330a 20 #define TIME_MANUAL_TIMEOUT 3600 //Time for the system to resume NORMAL mode after idling in MANUAL mode (seconds)
khaiminhvn 0:0c5c2cbf330a 21 #define TIME_WSETTING_TIMEOUT 3 //Time for the system to resume NORMAL mode after idling in WSETTING mode (seconds)
khaiminhvn 16:76ddaae78dca 22 #define TIME_RECONNECT_TIMEOUT 1000000 //Time for reconnect mode to timeout (us)
khaiminhvn 15:732822ddf3df 23 #define TIME_ATRACK_TIMEOUT 1000000 //Time for auto tracking display to timeout (us)
khaiminhvn 1:f058cf4e422a 24 #define TICK_WIND 1000ms //Interval for Checking Wind Speed
khaiminhvn 0:0c5c2cbf330a 25
khaiminhvn 0:0c5c2cbf330a 26 //PHYSICAL ATTRIBUTES
khaiminhvn 14:f118158b0f60 27 #define PANEL_HEIGHT 0.8255 //Heigh of Panels' Pivot
khaiminhvn 14:f118158b0f60 28 #define REFLECTOR1_HEIGHT 0.0889 //Height of Reflector 1 Pivot
khaiminhvn 14:f118158b0f60 29 #define REFLECTOR2_HEIGHT 0.0889 //Height of Reflector 2 Pivot
khaiminhvn 0:0c5c2cbf330a 30 #define REFLECTOR1_LENGTH 1.0 //Length of Reflector 1
khaiminhvn 0:0c5c2cbf330a 31 #define REFLECTOR2_LENGTH 1.0 //Length of Reflector 2
khaiminhvn 14:f118158b0f60 32 #define REFLECTOR1_DIST 0.7747 //Distance Between Panel's Pivot and Reflector 1 Pivot
khaiminhvn 14:f118158b0f60 33 #define REFLECTOR2_DIST 0.7874 //Distance Between Panel's Pivot and Reflector 2 Pivot
khaiminhvn 0:0c5c2cbf330a 34 #define REFLECTOR1_LOW 0.0 //Lower Limit of Reflector 1 Range of Motion
khaiminhvn 0:0c5c2cbf330a 35 #define REFLECTOR2_LOW 0.0 //Lower Limit of Reflector 1 Range of Motion
khaiminhvn 0:0c5c2cbf330a 36 #define REFLECTOR1_HIGH 70 //Upper Limit of Reflector 2 Range of Motion
khaiminhvn 0:0c5c2cbf330a 37 #define REFLECTOR2_HIGH 70 //Upper Limit of Reflector 2 Range of Motion
khaiminhvn 0:0c5c2cbf330a 38
khaiminhvn 0:0c5c2cbf330a 39 //ALGORITHM SETTINGS
khaiminhvn 0:0c5c2cbf330a 40 #define LOOP_LIMIT 1000 //Max Loop Iterration
khaiminhvn 0:0c5c2cbf330a 41 #define ERR_LIMIT 0.01 //Secant Error Limit
khaiminhvn 0:0c5c2cbf330a 42
khaiminhvn 1:f058cf4e422a 43 //ACCELEROMETER SETTINGS
khaiminhvn 0:0c5c2cbf330a 44 #define ANGLE_TOL 2 //Angle Tolerance (Degrees)
khaiminhvn 2:014cf2a98712 45 #define N_AVG 60 //Averaging
khaiminhvn 2:014cf2a98712 46 #define N_CAL 150 //Calibration sampling
khaiminhvn 3:8580dc2bce46 47 #define MEAS_AXIS 2 //Measurement Axis (0 - Z, 1 - Y, 2 - X)
khaiminhvn 1:f058cf4e422a 48 #define MUL_P 1.0 //Multiplier of panel accelerometer
khaiminhvn 1:f058cf4e422a 49 #define MUL_R1 1.0 //Multiplier of reflector 1 accelerometer
khaiminhvn 1:f058cf4e422a 50 #define MUL_R2 1.0 //Multiplier of reflector 2 accelerometer
khaiminhvn 0:0c5c2cbf330a 51
khaiminhvn 0:0c5c2cbf330a 52 //ANEMOMETER SETTINGS
khaiminhvn 1:f058cf4e422a 53 #define WIND_THRES_INIT 10 //Default safety windspeed (km/h)
khaiminhvn 1:f058cf4e422a 54 #define WIND_THRES_MIN 10 //Minimum safety windspeed setting (km/h)
khaiminhvn 0:0c5c2cbf330a 55 #define WIND_THRES_MAX 100 //Maximum safety windspeed setting (km/h)
khaiminhvn 1:f058cf4e422a 56 #define WIND_AVG 15 //Averaging
khaiminhvn 8:fe66db7b00ef 57 #define WIND_HYST 2 //Wind hysteresis
khaiminhvn 17:be53141574c2 58 #define WIND_INC 5 //Wind mode increment
khaiminhvn 0:0c5c2cbf330a 59
khaiminhvn 0:0c5c2cbf330a 60 //LCD SETTING
khaiminhvn 0:0c5c2cbf330a 61 #define LCD_INIT_DELAY 100000 //LCD initialization delay
khaiminhvn 1:f058cf4e422a 62 #define LCD_DELAY 1000 //Delay for printing characters (us)
khaiminhvn 20:3f25a3a09ca1 63 #define LCD_RRATE 1000 //LCD refresh rate (ms)
khaiminhvn 8:fe66db7b00ef 64
khaiminhvn 8:fe66db7b00ef 65 //TEMPERATURE CONTROL
khaiminhvn 23:79b3e4c9fea4 66 #define TEMP_LOW 15.0 //Low temperature limit
jump_man 11:8c9dc5a81614 67 #define TEMP_HIGH 75.0 //High temperature limit
khaiminhvn 23:79b3e4c9fea4 68 #define TEMP_HYST 5.0 //Temperature hysteresis
khaiminhvn 8:fe66db7b00ef 69 #define TEMP_PERIOD 40.0f //Fan period (ms)
khaiminhvn 8:fe66db7b00ef 70 #define TEMP_AVG 10 //Number of averaging
khaiminhvn 8:fe66db7b00ef 71 #define TEMP_DELAY 10000 //Delay between reading (us)
khaiminhvn 23:79b3e4c9fea4 72 #define TEMP_PWM_LOW 0.13 //Low limit of PWM
khaiminhvn 23:79b3e4c9fea4 73 #define TEMP_PWM_HIGH 1.0 //High limit of PWM
khaiminhvn 1:f058cf4e422a 74
khaiminhvn 1:f058cf4e422a 75 //I2C SETTING
khaiminhvn 1:f058cf4e422a 76 #define I2C_FREQ 50000 //I2C Frequency (Hz)
khaiminhvn 0:0c5c2cbf330a 77
khaiminhvn 0:0c5c2cbf330a 78 //MODES AND SOURCES
khaiminhvn 0:0c5c2cbf330a 79 //Operations
khaiminhvn 1:f058cf4e422a 80 #define OP_CALIBRATION 0
khaiminhvn 0:0c5c2cbf330a 81 #define OP_NORMAL 1
khaiminhvn 0:0c5c2cbf330a 82 #define OP_WIND 2
khaiminhvn 0:0c5c2cbf330a 83 #define OP_MANUAL1 3
khaiminhvn 0:0c5c2cbf330a 84 #define OP_MANUAL2 4
khaiminhvn 0:0c5c2cbf330a 85 #define OP_WSETTING 5
khaiminhvn 1:f058cf4e422a 86 #define OP_PLACEMENT 6
khaiminhvn 6:ac0c66c4ed83 87 #define OP_CONFIRM 7
khaiminhvn 7:a1c141126ecb 88 #define OP_MANUAL_ALL 8
khaiminhvn 8:fe66db7b00ef 89 #define OP_OVERHEAT 9
khaiminhvn 8:fe66db7b00ef 90 #define OP_OVERHEAT_MAN 10
jump_man 11:8c9dc5a81614 91 #define OP_POWER_OFF 11
khaiminhvn 15:732822ddf3df 92 #define OP_ATRACK 12
khaiminhvn 16:76ddaae78dca 93 #define OP_RECONNECT 13
khaiminhvn 19:47489805d54c 94 #define OP_ETHERNET 14
khaiminhvn 0:0c5c2cbf330a 95 //Accelerometer Selection
khaiminhvn 0:0c5c2cbf330a 96 #define S_PANEL 0
khaiminhvn 0:0c5c2cbf330a 97 #define S_R1 1
khaiminhvn 0:0c5c2cbf330a 98 #define S_R2 2
khaiminhvn 0:0c5c2cbf330a 99 //Motor Selection
khaiminhvn 0:0c5c2cbf330a 100 #define M1 1
khaiminhvn 0:0c5c2cbf330a 101 #define M2 2
khaiminhvn 0:0c5c2cbf330a 102 #define M_ALL 3
khaiminhvn 0:0c5c2cbf330a 103 #endif