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: distanceRegulation.h
- Branch:
- DistanceRegulation
- Revision:
- 33:a2f9fea05cb9
- Parent:
- 32:c729e6da7f9a
- Child:
- 34:5dca557e982f
--- a/distanceRegulation.h Sat Feb 17 15:48:49 2018 +0000 +++ b/distanceRegulation.h Sun Feb 18 17:10:48 2018 +0000 @@ -21,7 +21,7 @@ void distanceRegulationTask(void const *args){ - pc.printf("Flight controller task started\r\n"); + //pc.printf("Flight controller task started\r\n"); uint16_t channels[CHANNELS]; int distance=0; @@ -54,7 +54,7 @@ _ppmRegen->getAllChannels(channels); distance = _sonic->getDistan(); - pc.printf("distance: %d \n\r", distance); + //pc.printf("distance: %d \n\r", distance); _groundDistance->setProcessValue(distance); groundDistancePIDValue = _groundDistance->compute(); //groundDistancePIDValue += _bias; @@ -91,10 +91,17 @@ //distance = _sonic->getDistan(); //pc.printf("Sonic distance: %d \n\r", distance); //pc.printf("channel throttle pid value: %f \n\r", groundDistancePIDValue); - pc.printf("channel throttle original value: %d \n\r", channels[THROTTLE]); + //pc.printf("channel throttle final value: %d \n\r", regulatedThrottle); // Generate PWM _ppmRegen->getAllChannels(channels); + //pc.printf("channel value: %d \n\r", channels[ROLL]); + //pc.printf("channel value: %d \n\r", channels[PITCH]); + //pc.printf("channel value: %d \n\r", channels[YAW]); + //pc.printf("channel value: %d \n\r", channels[THROTTLE]); + //pc.printf("channel value: %d \n\r", channels[AUX1]); + //pc.printf("channel value: %d \n\r", channels[AUX2]); + _roll->pulsewidth_us( channels[ROLL]); _pitch->pulsewidth_us( channels[PITCH]); _yaw->pulsewidth_us( channels[YAW]);