Giter Site home page Giter Site logo

ctrl_vc_sockets's Introduction

Controlador Vuelo Circular Sockets (ctrl_vc_sockets)

Este proyecto consiste en un sistema programado bajo ecosistema Arduino, para ser utilizado como controlador de variadores brushless (ESC) en aeromodelos de Vuelo Circular. Puntualmente para esta versión, se ha utilizado como entorno de desarrollo Visual Studio Code, con los plugins oficiales de PlatformIO y Espressif IDF.

El objetivo es desarrollar 3 variantes de código para diferentes aplicaciones:

  • Código 1: para control esencial de regimen de variador (aplicable a vuelo sport nivelado, puede intentarse alguna maniobra sencilla como el looping, se notarán algunas quedadas de motor en trepadas y algunas aceleraciones en descensos, en mayor o menor medida de acuerdo a la relación peso / potencia del modelo).
  • Código 2: con idéntica base al código 1, pero con agregado de sensor hall. (En este caso el sensor permite monitorear de forma directa el movimiento de los polos del rotor, o bien utilizar imanes externos que se instalen según se desee, para poder calcular las rpm y reaccionar también a las variaciones que se detecten, ajustando el regimen del variador, es decir, realizando un control governor sencillo sobre las rpm del motor).
  • Código 3: contando también con un sensor hall, pero agregando las lecturas de un sensor de medición inercial (IMU) para calcular en todo momento la posición de la nariz del modelo, y decidir en base a ello los ajustes a realizar en el regimen del motor. (Esta variante lógicamente requiere un código más complejo y mayores cuidados en la puesta a punto, pero posibilita un control más armónico del vuelo, aplicando potencia en los lugares donde más se la necesita, y quitando en aquellos donde el exceso genera aceleraciones no deseadas). Es una alternativa más completa y eficiente para vuelos acrobáticos de precisión, tal cual sucede con otros desarrollos conocidos de controladores para Acrobacia F2B por ejemplo.

Componentes:

  • Placa de desarrollo Wemos D1 Mini (u otra basada en módulo ESP8266 12F, con pocas modificaciones puede adaptarse también para módulos ESP32).
  • Pulsador mecánico standard 6x6 o 12x12 mm.
  • Sensor efecto hall A3144 o equivalente (opcional, solo si se desea disponer de información y control variable de rpm durante el vuelo).
  • Cables servo RC con conectores.

Herramientas:

  • Soldador de punta convencional.
  • Estaño standard de electrónica.
  • Termocontraíble / cinta kapton / cinta normal.

Características:

  • Alimentación directa mediante BEC.
  • Configuración práctica por interfaz gráfica utilizable en móvil (Android).
  • Aceleración suave programada para partida.
  • Alerta de corte de motor antes del cierre de vuelo.
  • Parada de emergencia accionable desde app u opcionalmente desde botón de pánico.
  • Items seteables:
    • Demora partida: el tiempo a esperar antes de arrancar el motor luego de iniciada la secuencia (segundos).
    • Tiempo vuelo: el tiempo neto de vuelo (segundos).
    • RPM motor: el regimen a utilizar en el motor (porcentaje ESC).
    • Polos motor: cantidad de polos en el rotor p/cálculo de rpm (unidades).
    • Offset motor: ajuste de desviación en la lectura de rpm (unidades).
    • Tolerancia ajuste RPM: variación mínima de régimen que debe suceder para realizar un ajuste (rpm).
    • Ajuste RPM trepada: regimen a adicionar al valor actual p/ mejorar la trepada (rpm).
    • Ajuste RPM bajada: regimen a descontar al valor actual p/ suavizar el descenso (rpm).

Todo (por hacer):

  • depurar código IMU para implementar versión release del control inercial.
  • agregar variante OTA (Over The Air) para permitir la actualización inalámbrica de firmware directamente desde servidor.
  • agregar alternativa para almacenar diferentes combinaciones de seteos en app.
  • agregar alternativa para backup de seteos en app.

ctrl_vc_sockets's People

Contributors

mundostr avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.