Regenerating PPM signal based on distances from ultrasonic sensors, ESP8266 for connectin via wifi. Autonomous quadcopter behaviour, autonomou height holding. Flying direction based on front and back ultrasonic sensors.
Dependencies: ConfigFile HCSR04 PID PPM2 mbed-rtos mbed
Diff: main.cpp
- Branch:
- DistanceRegulation
- Revision:
- 34:5dca557e982f
- Parent:
- 33:a2f9fea05cb9
- Child:
- 36:ed8b7b7b6cfa
diff -r a2f9fea05cb9 -r 5dca557e982f main.cpp --- a/main.cpp Sun Feb 18 17:10:48 2018 +0000 +++ b/main.cpp Sun Feb 25 18:32:13 2018 +0000 @@ -5,6 +5,7 @@ #include "PpmRegen.h" #include "distanceRegulation.h" #include "hcsr04.h" +#include "front_sensor.h" #include "PID.h" #include "ConfigFile.h" @@ -26,7 +27,6 @@ // INITIALIZE CLASSES _ppmRegen = new PpmRegen(_interruptPort); - _sonic = new HCSR04(p5, p6); _groundDistance = new PID(0, 0, 0, 0.005); //setup PID @@ -42,12 +42,21 @@ _groundDistance->setBias(_bias); // STARTING THREADS - pc.printf("starting server thread \n\r"); - serverThread.start(serverRun); - serverThread.set_priority(osPriorityLow); pc.printf("starting distance thread \n\r"); _distanceThread = new Thread(distanceRegulationThread); _distanceThread->set_priority(osPriorityRealtime); + + //_sonic = new HCSR04(p7, p8, p5, p6); + _sonic = new HCSR04(p5, p6, p7, p8); + + _frontSensorThread.start(front_sensor); + _frontSensorThread.set_priority(osPriorityLow); + + + pc.printf("starting server thread \n\r"); + _serverThread.start(serverRun); + _serverThread.set_priority(osPriorityHigh); + //distanceRegulation.start(2); //_distanceThread.start(distanceRegulationTask);