Giter Site home page Giter Site logo

drone's Introduction

Controllo Altitudine Drone

Autore: Matteo Onger

Descrizione: Il progetto punta a recuperare il telaio e i motori di un drone già esistente ma danneggiato, sostituendone la circuiteria di controllo e programmandola affinché, tramite messaggi MQTT, sia possibile controllare da remoto il quadrirotore. In particolare, una volta acceso, sfruttando un sensore ad ultrasuoni posto sotto la scocca del drone, sarà possibile impostare una quota obiettivo che il veivolo, controllato dal microcontrollore, punterà a raggiungere. Sempre attraverso messaggi MQTT sarà possibile ricevere informazioni sullo stato del drone o forzare un atterraggio graduale mediato dal MCU.

Hardware:

Già presenti:

  • Telaio quadrirotore Nine Eagles Galaxy Visitor 6 Pro
  • 4 x Motori 8520D [doc]

Aggiunti:

  • Wemos D1 Mini [doc]
  • 2 x Dual H Bridge L298H [doc] (ogni ponte H controlla due motori)
  • Sensore ultrasuoni HC-SR04 [doc]
  • Connettori Micro JST 1.25 mm
  • Jumper
  • Batterie LiPo 3.7V

Librerie usate:

Struttura messaggi MQTT:

E' possibile inviare al drone tre diversi tipi di messaggio:

  1. 'S' : comanda al drone di atterrare.
  2. 'I' : chiede al drone di fornire informazioni circa il suo stato attuale.
  3. 't:trg:esp' : imposta una quota obiettivo trg (intero, espresso in cm) con un margine di errore eps (intero, espresso in cm).

Schema:

alt

Note:

  1. I quattro motori arrivano a richiedere fino a 2 Ampere per generare una spinta sufficiente al decollo, è dunque necessario verificare che non vi siano limitazioni sulla corrente massima di scarica della batteria utilizzata per alimentarli.
  2. Le eliche adiacenti ruotano in verso opposto una all'altra nei quadrirotori. Anzichè gestire e collegare con cavi e pin differenti le coppie di motori che debbono muoversi in verso opposto, si è preferito trattare ugualmente tutti gli attuatori sia a livello software sia a livello hardware fino ai ponti H, come se tutti dovessero lavorare nella stessa direzione, per poi invertire il collegamento motore - ponte H. Questo riduce la complessità del circuito finale e del codice necessario.
  3. E' necessario personalizzare il codice sorgente inserendo i dati della rete WiFi e del MQTT broker a cui si intende collegarsi e adattando alcuni parametri alla specifica configurazione.
  4. Per migliorare il controllo del veivolo sarebbe opportuno aggiungere altri sensori (come accelerometri, giroscopi, ...), ma nel caso specifico si va incontro a problemi di spazio e peso, oltre al limite dato dal ridotto numero di pin disponibili.

drone's People

Contributors

matteoonger 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.