|
|
|
@ -12,7 +12,7 @@
|
|
|
|
|
#define data_file_path "./DATA/data.dat"
|
|
|
|
|
#define SprintIR 4 //co2 sensor
|
|
|
|
|
#define COAF 1 //co sensor
|
|
|
|
|
#define LuminOX 2 //o2
|
|
|
|
|
#define LOX_O2 2 //o2
|
|
|
|
|
|
|
|
|
|
#define Rep_Dev_ID "Y\r\n"
|
|
|
|
|
#define Pulling_Mode "K 2\r\n"
|
|
|
|
@ -52,7 +52,7 @@ int main(int argc, char *argv[]){
|
|
|
|
|
sensConf(COAF, B9600, Pulling_Mode, "K 00002\r\n", 5);
|
|
|
|
|
sensConf(COAF, B9600, M_zZTHB, "M 14406\r\n", 5);
|
|
|
|
|
printf("Configuring O2 sensor\n");
|
|
|
|
|
sensConf(LuminOX, B9600, OX_P_Mode, "M 01\r\n", 5);
|
|
|
|
|
sensConf(LOX_O2, B9600, OX_P_Mode, "M 01\r\n", 5);
|
|
|
|
|
|
|
|
|
|
//adquisición
|
|
|
|
|
T_acq = atoi(argv[1]);//str to int
|
|
|
|
@ -63,7 +63,7 @@ int main(int argc, char *argv[]){
|
|
|
|
|
//deinit uart
|
|
|
|
|
uartClose(SprintIR);
|
|
|
|
|
uartClose(COAF);
|
|
|
|
|
uartClose(LuminOX);
|
|
|
|
|
uartClose(LOX_O2);
|
|
|
|
|
//finalización
|
|
|
|
|
printf("Exiting of the program...\n");
|
|
|
|
|
return 0;
|
|
|
|
@ -102,7 +102,7 @@ int DAQ(int t_hrs, int sp_s)
|
|
|
|
|
{
|
|
|
|
|
FILE* dfp; // create a file pointer
|
|
|
|
|
const char colums[200] = "t(s)\tCO2 uf(ppm)\tCO2(ppm)\tCO uf(ppm)\t"\
|
|
|
|
|
"CO(ppm)\tO2(ppm)\tO2(%%)\tT C0(ºC*10)\t"\
|
|
|
|
|
"CO(ppm)\tppO2(mbar)\tO2(%%)\tT C0(ºC*10)\t"\
|
|
|
|
|
"T 02(ºC)\tP C0(.mBar)\tP 02(mBar)\tRH(.)\n";
|
|
|
|
|
unsigned char co2_uf[10]="", co2_f[10]="",
|
|
|
|
|
co_uf[10]="", co_f[10]="",
|
|
|
|
@ -140,22 +140,22 @@ int DAQ(int t_hrs, int sp_s)
|
|
|
|
|
|
|
|
|
|
start_t = clock(); //saving start time
|
|
|
|
|
uartTransmit(COAF, get_readigns); //transmiting commands to sensors
|
|
|
|
|
uartTransmit(LuminOX, Readings_OX);
|
|
|
|
|
uartTransmit(LOX_O2, Readings_OX);
|
|
|
|
|
uartTransmit(SprintIR, get_readigns
|
|
|
|
|
uartReceive(COAF); //receiving replys from
|
|
|
|
|
uartReceive(LuminOX);
|
|
|
|
|
uartReceive(LOX_O2);
|
|
|
|
|
uartReceive(SprintIR);
|
|
|
|
|
//interpreting and spliting measurements in variables
|
|
|
|
|
memcpy(co2_uf, getMeasures(receive[SprintIR],'z', 5), 5);
|
|
|
|
|
memcpy(co2_f, getMeasures(receive[SprintIR],'Z', 5), 5);
|
|
|
|
|
memcpy(co_uf, getMeasures(receive[COAF], 'z', 5), 5);
|
|
|
|
|
memcpy(co_f, getMeasures(receive[COAF], 'Z', 5), 5);
|
|
|
|
|
memcpy(o2_ppm, getMeasures(receive[LuminOX], 'O', 6), 6);
|
|
|
|
|
memcpy(o2_xcent, getMeasures(receive[LuminOX], '%', 6), 6);
|
|
|
|
|
memcpy(o2_ppm, getMeasures(receive[LOX_O2], 'O', 6), 6);
|
|
|
|
|
memcpy(o2_xcent, getMeasures(receive[LOX_O2], '%', 6), 6);
|
|
|
|
|
memcpy(co_temp, getMeasures(receive[COAF], 'T', 5), 5);
|
|
|
|
|
memcpy(o2_temp, getMeasures(receive[LuminOX], 'T', 5), 5);
|
|
|
|
|
memcpy(o2_temp, getMeasures(receive[LOX_O2], 'T', 5), 5);
|
|
|
|
|
memcpy(co_press, getMeasures(receive[COAF], 'B', 5), 5);
|
|
|
|
|
memcpy(o2_press, getMeasures(receive[LuminOX], 'P', 4), 4);
|
|
|
|
|
memcpy(o2_press, getMeasures(receive[LOX_O2], 'P', 4), 4);
|
|
|
|
|
memcpy(co_relH, getMeasures(receive[COAF], 'H', 5), 5);
|
|
|
|
|
//saving formated measurements in string DATA
|
|
|
|
|
sprintf(DATA,
|
|
|
|
|