Entrada-Registro-Salida Arquitectura General del Sistema de Desarrollo para Control de UAVs Visualizador 3D off-line trazas on-line Simulador FASES DE DESARROLLO 1. Obtención de muestras E/S desde la emisora cableada 2. Obtención del modelo del cuatrimotor a partir de las muestras 3. Simulación del modelo controlado desde la emisora cableada 4. Diseño y sintonía de los controladores 5. Prueba de los controladores sobre el modelo simulado 6. Prueba de los controladores sobre el cuatrimotor real Modelo Red RS-232 Controlador (PID) Identificador (Matlab) Registro E/S Seguidor Entrada-Registro-Salida Cálculo de Actitud
Configuración del escenario Configuración del entorno Dimensión y escala Superficie base Superficies laterales Ubicación de cámaras Configuración de UAVs Tipo de UAV Ubicación en el escenario (posición y actitud) Cámara a bordo Dinámica asociada + Parámetros de la dinámica Puerto de E/S para su control Emisora RC Red (UDP)
Configuración del escenario
Configuración de UAVs Archivo de parámetros Modelo dinámico 1 Puerto UDP Puerto Interno
Configuración de control manual del UAV Computador Simulador Visualizador 3D class plant { float ht1; float ht2; float ft1; float ft2; public plant() ht1 = 0.0f; ht2 = 0.0f; ft1 = 0.0f; ft2 = 0.0f; } public float checkPlant(float f) float h = 2.0f * ht1 - ht2 + 0.0075f * ft1 + 0.0075f * ft2; ft2 = ft1; ft1 = f; ht2 = ht1; ht1 = h; return h; }; Archivo de Parámetros Modelo dinámico Modulo E/S Emisora
Configuración de control automático del UAV Computador Simulador Computador Control Visualizador 3D class plant { float ht1; float ht2; float ft1; float ft2; public plant() ht1 = 0.0f; ht2 = 0.0f; ft1 = 0.0f; ft2 = 0.0f; } public float checkPlant(float f) float h = 2.0f * ht1 - ht2 + 0.0075f * ft1 + 0.0075f * ft2; ft2 = ft1; ft1 = f; ht2 = ht1; ht1 = h; return h; }; Archivo de Parámetros class pidcontroller { float integral; float lasterror; float P, I, D; public pidcontroller(float p, float i, float d) P = p; I = i; D = d; integral = 0; lasterror = 0; } public float checkPid(float input, float setpoint) float error = setpoint - input; integral += error; float derivative = error - lasterror; lasterror = error; return ((P * error) + (I * integral) + (D * derivative)); }; Archivo de Parámetros Modelo dinámico Controlador PID Modulo E/S UDP Modulo E/S UDP Red
Objetivo Entrada PID (yaw) PID (roll) PID (throttle) PID (pitch) Sistema de Control PID (yaw) Objetivo (referencia) PID (roll) Emisora Entrada PID (throttle) PID (pitch) UAV Cámaras Controlador
Arquitectura General del Sistema de Desarrollo para Control de UAVs Visualizador 3D off-line trazas on-line Simulador Modelo Red RS-232 Controlador (PID) trazas Visualizador (Gráficas de los PID) Cálculo del error 10
Obtención de la información Cálculo de las señales de control de PID Tratamiento de las señales generadas Tratamiento de los casos especiales Envío de las señales de control