Danielle Kruijver / Mbed 2 deprecated Controll_SBT_main

Dependencies:   mbed mbed-rtos

Committer:
Awiegmink
Date:
Fri Apr 12 06:58:18 2019 +0000
Revision:
0:3fbb3fa4ff64
Child:
1:3d46a0660d05
Controll ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Awiegmink 0:3fbb3fa4ff64 1 /*
Awiegmink 0:3fbb3fa4ff64 2 * To change this license header, choose License Headers in Project Properties.
Awiegmink 0:3fbb3fa4ff64 3 * To change this template file, choose Tools | Templates
Awiegmink 0:3fbb3fa4ff64 4 * and open the template in the editor.
Awiegmink 0:3fbb3fa4ff64 5 */
Awiegmink 0:3fbb3fa4ff64 6
Awiegmink 0:3fbb3fa4ff64 7 /*
Awiegmink 0:3fbb3fa4ff64 8 * File: main.cpp
Awiegmink 0:3fbb3fa4ff64 9 * Author: kwieg
Awiegmink 0:3fbb3fa4ff64 10 *
Awiegmink 0:3fbb3fa4ff64 11 * Created on February 28, 2019, 7:54 PM
Awiegmink 0:3fbb3fa4ff64 12 */
Awiegmink 0:3fbb3fa4ff64 13
Awiegmink 0:3fbb3fa4ff64 14 #include <cstdlib>
Awiegmink 0:3fbb3fa4ff64 15 #include <math.h>
Awiegmink 0:3fbb3fa4ff64 16 #include "mbed.h"
Awiegmink 0:3fbb3fa4ff64 17 #include "Sensor.h"
Awiegmink 0:3fbb3fa4ff64 18 #include "Filtered_data.h"
Awiegmink 0:3fbb3fa4ff64 19 #include "DataStore.h"
Awiegmink 0:3fbb3fa4ff64 20 #include "ComplementaryFilter.h"
Awiegmink 0:3fbb3fa4ff64 21 #include "PID_caller.h"
Awiegmink 0:3fbb3fa4ff64 22 #include "Force_to_wing_angle.h"
Awiegmink 0:3fbb3fa4ff64 23 //DigitalIn button(USER_BUTTON);
Awiegmink 0:3fbb3fa4ff64 24 DigitalOut led(LED2);
Awiegmink 0:3fbb3fa4ff64 25 using namespace std;
Awiegmink 0:3fbb3fa4ff64 26
Awiegmink 0:3fbb3fa4ff64 27 /*
Awiegmink 0:3fbb3fa4ff64 28 * main.
Awiegmink 0:3fbb3fa4ff64 29 */
Awiegmink 0:3fbb3fa4ff64 30 int main(int argc, char** argv) {
Awiegmink 0:3fbb3fa4ff64 31
Awiegmink 0:3fbb3fa4ff64 32 // Maak de objecten.
Awiegmink 0:3fbb3fa4ff64 33 DataStore * ruwe_data = new DataStore();
Awiegmink 0:3fbb3fa4ff64 34 DataStore * filtered_data = new DataStore();
Awiegmink 0:3fbb3fa4ff64 35 DataStore * complementary_data= new DataStore();
Awiegmink 0:3fbb3fa4ff64 36 DataStore * pid_data = new DataStore();
Awiegmink 0:3fbb3fa4ff64 37 DataStore * FtoW_data = new DataStore();
Awiegmink 0:3fbb3fa4ff64 38 Sensor * de_sensor = new Sensor();
Awiegmink 0:3fbb3fa4ff64 39 RuwDataFilter * filter = new RuwDataFilter();
Awiegmink 0:3fbb3fa4ff64 40 ComplementaryFilter * com_filter = new ComplementaryFilter();
Awiegmink 0:3fbb3fa4ff64 41 PID_caller * PID =new PID_caller();
Awiegmink 0:3fbb3fa4ff64 42 control::ForceToWingAngle * FtoW = new control::ForceToWingAngle();
Awiegmink 0:3fbb3fa4ff64 43
Awiegmink 0:3fbb3fa4ff64 44
Awiegmink 0:3fbb3fa4ff64 45 // De associaties, de verbindingen tussen de objecten.
Awiegmink 0:3fbb3fa4ff64 46 de_sensor->m_ruwe_state_data = ruwe_data; // (1)
Awiegmink 0:3fbb3fa4ff64 47 filter->m_ruwe_state_data = ruwe_data; // (2)
Awiegmink 0:3fbb3fa4ff64 48 filter->m_filtered_data = filtered_data; // (3)
Awiegmink 0:3fbb3fa4ff64 49 com_filter->m_filtered_data = filtered_data; //(4)
Awiegmink 0:3fbb3fa4ff64 50 com_filter->m_complementary_data = complementary_data; //(5)
Awiegmink 0:3fbb3fa4ff64 51 PID->m_complementary_data=complementary_data; //(6)
Awiegmink 0:3fbb3fa4ff64 52 PID->m_PID_data=pid_data; //(7)
Awiegmink 0:3fbb3fa4ff64 53 FtoW->m_complementary_data=complementary_data; //(8)
Awiegmink 0:3fbb3fa4ff64 54 FtoW->m_PID_data=pid_data; //(9)
Awiegmink 0:3fbb3fa4ff64 55 FtoW->m_FtoW_data=FtoW_data; //(10)
Awiegmink 0:3fbb3fa4ff64 56
Awiegmink 0:3fbb3fa4ff64 57
Awiegmink 0:3fbb3fa4ff64 58 de_sensor->get_data();
Awiegmink 0:3fbb3fa4ff64 59 int N=0;
Awiegmink 0:3fbb3fa4ff64 60 while (N < 100) {
Awiegmink 0:3fbb3fa4ff64 61 led = !led;
Awiegmink 0:3fbb3fa4ff64 62 filter->FilterIt();
Awiegmink 0:3fbb3fa4ff64 63 com_filter->CalculateRealHeight();
Awiegmink 0:3fbb3fa4ff64 64 PID->PID_in();
Awiegmink 0:3fbb3fa4ff64 65 FtoW->MMA();
Awiegmink 0:3fbb3fa4ff64 66 de_sensor->get_data();
Awiegmink 0:3fbb3fa4ff64 67 N=N+1;
Awiegmink 0:3fbb3fa4ff64 68 }
Awiegmink 0:3fbb3fa4ff64 69
Awiegmink 0:3fbb3fa4ff64 70 // Als de klus klaar is ruim de objecten op.
Awiegmink 0:3fbb3fa4ff64 71 delete (ruwe_data);
Awiegmink 0:3fbb3fa4ff64 72 delete (filtered_data);
Awiegmink 0:3fbb3fa4ff64 73 delete (pid_data);
Awiegmink 0:3fbb3fa4ff64 74 delete (de_sensor);
Awiegmink 0:3fbb3fa4ff64 75 delete (filter);
Awiegmink 0:3fbb3fa4ff64 76 delete (complementary_data);
Awiegmink 0:3fbb3fa4ff64 77 delete (PID);
Awiegmink 0:3fbb3fa4ff64 78 delete (com_filter);
Awiegmink 0:3fbb3fa4ff64 79 delete (FtoW);
Awiegmink 0:3fbb3fa4ff64 80
Awiegmink 0:3fbb3fa4ff64 81 return 0;
Awiegmink 0:3fbb3fa4ff64 82 }