TRR 2018 / Mbed 2 deprecated biniou-TRR2019

Dependencies:   mbed MPU6050

Committer:
GaspardD
Date:
Fri Oct 04 22:20:23 2019 +0000
Revision:
12:58ad06f9847d
Parent:
11:2156cb77d0d6
dernier code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
GaspardD 9:1b54bac6d9a7 1 #include "log.h"
GaspardD 9:1b54bac6d9a7 2
GaspardD 9:1b54bac6d9a7 3 Timer t_loggingTimer;
GaspardD 9:1b54bac6d9a7 4 int i_logging_duration;
GaspardD 12:58ad06f9847d 5 int i_last_log;
GaspardD 9:1b54bac6d9a7 6 bool b_LOG_READY = false;
GaspardD 12:58ad06f9847d 7 Serial rs_LOG(PC_10, PC_11,115200);
GaspardD 12:58ad06f9847d 8 //odroid(PC_10, PC_11);
GaspardD 12:58ad06f9847d 9 //pc(USBTX, USBRX);
GaspardD 9:1b54bac6d9a7 10
GaspardD 9:1b54bac6d9a7 11
GaspardD 9:1b54bac6d9a7 12 s_Sample s_LOG_history[LOG_SIZE];
GaspardD 9:1b54bac6d9a7 13 int i_LOG_index_data = 0;
GaspardD 9:1b54bac6d9a7 14 bool b_LOG_flag = false;
GaspardD 9:1b54bac6d9a7 15
GaspardD 9:1b54bac6d9a7 16 void log_start(int duration_ms)
GaspardD 9:1b54bac6d9a7 17 {
GaspardD 9:1b54bac6d9a7 18 b_LOG_flag = true;
GaspardD 9:1b54bac6d9a7 19 b_LOG_READY = false;
GaspardD 9:1b54bac6d9a7 20 t_loggingTimer.start();
GaspardD 9:1b54bac6d9a7 21 i_logging_duration = duration_ms;
GaspardD 9:1b54bac6d9a7 22 t_loggingTimer.reset();
GaspardD 9:1b54bac6d9a7 23 }
GaspardD 9:1b54bac6d9a7 24
GaspardD 9:1b54bac6d9a7 25 void log_check()
GaspardD 9:1b54bac6d9a7 26 {
GaspardD 10:e63fe4080760 27 if(t_loggingTimer.read_ms() > i_logging_duration || i_LOG_index_data >= LOG_SIZE) {
GaspardD 9:1b54bac6d9a7 28 b_LOG_READY = true;
GaspardD 9:1b54bac6d9a7 29 b_LOG_flag = false;
GaspardD 9:1b54bac6d9a7 30 t_loggingTimer.stop();
GaspardD 9:1b54bac6d9a7 31 t_loggingTimer.reset();
GaspardD 9:1b54bac6d9a7 32 }
GaspardD 12:58ad06f9847d 33 if(b_LOG_flag && i_LOG_index_data < LOG_SIZE && (t_loggingTimer.read_ms()-i_last_log) >= LOG_PERIOD_MS) {
GaspardD 12:58ad06f9847d 34 i_last_log = t_loggingTimer.read_ms();
GaspardD 12:58ad06f9847d 35 s_LOG_history[i_LOG_index_data].timestamp = i_last_log;
GaspardD 10:e63fe4080760 36 i_LOG_index_data ++;
GaspardD 11:2156cb77d0d6 37 //rs_LOG_pc.printf("i_LOG_index_data:%d\r\n",i_LOG_index_data);
GaspardD 9:1b54bac6d9a7 38 }
GaspardD 11:2156cb77d0d6 39
GaspardD 9:1b54bac6d9a7 40 }
GaspardD 11:2156cb77d0d6 41 void log_stop()
GaspardD 11:2156cb77d0d6 42 {
GaspardD 11:2156cb77d0d6 43 b_LOG_READY = true;
GaspardD 11:2156cb77d0d6 44 b_LOG_flag = false;
GaspardD 11:2156cb77d0d6 45 t_loggingTimer.stop();
GaspardD 11:2156cb77d0d6 46 t_loggingTimer.reset();
GaspardD 11:2156cb77d0d6 47 }
GaspardD 11:2156cb77d0d6 48
GaspardD 9:1b54bac6d9a7 49 void log_pc()
GaspardD 9:1b54bac6d9a7 50 {
GaspardD 12:58ad06f9847d 51 rs_LOG.printf("timestamp;left_90;right_90;left_45;right_45;pwm_dir_prec;odom;speed;angle_bord0;angle_bord1;angle_bord2;angle_bord3;angle_bord4;angle_bord5;angle_pos;angle;distParcourue;\r\n");
GaspardD 10:e63fe4080760 52 for(int i = 0; i<i_LOG_index_data; i++) {
GaspardD 12:58ad06f9847d 53 rs_LOG.printf("%d;%f;%f;%f;%f;%d;%f;%f;%f;%f;%f;%f;%f;%f;%f;%f;%f\r\n",s_LOG_history[i].timestamp,s_LOG_history[i].left_90,s_LOG_history[i].right_90,s_LOG_history[i].left_45,s_LOG_history[i].right_45,s_LOG_history[i].pwm_dir,s_LOG_history[i].odom,s_LOG_history[i].speed,s_LOG_history[i].angle_bord0,s_LOG_history[i].angle_bord1,s_LOG_history[i].angle_bord2,s_LOG_history[i].angle_bord3,s_LOG_history[i].angle_bord4,s_LOG_history[i].angle_bord5,s_LOG_history[i].angle_pos,s_LOG_history[i].angle,s_LOG_history[i].distParcourue);
GaspardD 11:2156cb77d0d6 54
GaspardD 11:2156cb77d0d6 55 s_LOG_history[i].left_90 = 0.0;
GaspardD 11:2156cb77d0d6 56 s_LOG_history[i].right_90 = 0.0;
GaspardD 11:2156cb77d0d6 57 s_LOG_history[i].left_45 = 0.0;
GaspardD 11:2156cb77d0d6 58 s_LOG_history[i].right_45 = 0.0;
GaspardD 11:2156cb77d0d6 59 s_LOG_history[i].odom = 0.0;
GaspardD 11:2156cb77d0d6 60 s_LOG_history[i].speed = 0.0;
GaspardD 11:2156cb77d0d6 61 s_LOG_history[i].timestamp = 0;
GaspardD 11:2156cb77d0d6 62 s_LOG_history[i].pwm_dir = 0;
GaspardD 12:58ad06f9847d 63 s_LOG_history[i].angle_bord0 = 0.0;
GaspardD 12:58ad06f9847d 64 s_LOG_history[i].angle_bord1 = 0.0;
GaspardD 12:58ad06f9847d 65 s_LOG_history[i].angle_bord2 = 0.0;
GaspardD 12:58ad06f9847d 66 s_LOG_history[i].angle_bord3 = 0.0;
GaspardD 12:58ad06f9847d 67 s_LOG_history[i].angle_bord4 = 0.0;
GaspardD 12:58ad06f9847d 68 s_LOG_history[i].angle_bord5 = 0.0;
GaspardD 12:58ad06f9847d 69 s_LOG_history[i].angle_pos = 0;
GaspardD 12:58ad06f9847d 70 s_LOG_history[i].angle = 0;
GaspardD 12:58ad06f9847d 71 s_LOG_history[i].distParcourue = 0;
GaspardD 11:2156cb77d0d6 72
GaspardD 11:2156cb77d0d6 73
GaspardD 9:1b54bac6d9a7 74 }
GaspardD 10:e63fe4080760 75 i_LOG_index_data = 0;
GaspardD 10:e63fe4080760 76 b_LOG_READY = false;
GaspardD 9:1b54bac6d9a7 77 }