The Crazyflie 2.1 developed by BitCraze is a quadcopter especially suited for the development of prototypes. At a hardware level through the use of plug and play modules, such as the deck modules available through BitCraze. At a software level the open-source nature of the firmware allows for easy modification. The Luckfox pico mini B, is a small form factor board based on the RV1103 chip, able to run linux operating systems. Given the small dimension it is particularly suited for embedded applications. The objective of this thesis is to explore various options in order to unite these hardware components. In particular with the goal of giving the Luckfox control over the drone using a serial interface. In particular the instructions to the drone are to be generated by the FieldCalc++ framework, implementing Field Calculus for an Aggregate programming context, developed in C++. In particular we will leverage the CFLIB, a python library which allows the development of interactive clients or scripts to automate drone behaviour, through a UART serial driver. We will discuss how to establish such a connection both in hardware and software, as well as exploring a possible option for communication between FCPP and the python library.

Il drone Crazyflie 2.1 sviluppato da BitCraze è un quadricottero particolarmente utile nello sviluppo di prototipi. A livello hardware con la possibilità di aggiungere moduli plug and play, come gli appositi deck forniti da BitCraze. E a livello software data la natura open-source del firmware. La scheda integrata Luckfox pico mini B, è una piccola scheda basata sul chip rockchip RV1103, capace di utilizzare sistemi operativi Linux. Date le sue piccole dimensioni risulta ottima per l’utilizzo in ambienti embedded. L’obiettivo di questa Tesi è di esplorare opzioni per l’utilizzo in congiunzione di queste due componenti hardware. Con l’obiettivo di permettere il controllo del drone tramite la scheda Luckfox. In particolare si desidera offrire alla Luckfox un’interfaccia di comunicazione seriale con il drone in modo da trasmettere istruzioni. Tali istruzioni saranno generate dal framework FieldCalc++(FCPP) per l’implementazione del Field Calculus in ambito Aggregate Programming, sviluppata in C++. Nello specifico verrà esplorato l’utilizzo della CFLIB, libreria python utilizzata per lo sviluppo di client interattivi o di script per il controllo autonomo dei droni CrazyFlie, tramite driver seriali utilizzando l’interfaccia UART. Si discuterà di come realizzare questa connessione sia a livello fisico che software, oltre che una possibile opzione software per la comunicazione tra la libreria FCPP e la libreria di controllo del drone.

Espansione del drone Crazyflie con scheda LuckFox di controllo on-board

MONDINO, PIETRO GIOVANNI BRUNO
2023/2024

Abstract

Il drone Crazyflie 2.1 sviluppato da BitCraze è un quadricottero particolarmente utile nello sviluppo di prototipi. A livello hardware con la possibilità di aggiungere moduli plug and play, come gli appositi deck forniti da BitCraze. E a livello software data la natura open-source del firmware. La scheda integrata Luckfox pico mini B, è una piccola scheda basata sul chip rockchip RV1103, capace di utilizzare sistemi operativi Linux. Date le sue piccole dimensioni risulta ottima per l’utilizzo in ambienti embedded. L’obiettivo di questa Tesi è di esplorare opzioni per l’utilizzo in congiunzione di queste due componenti hardware. Con l’obiettivo di permettere il controllo del drone tramite la scheda Luckfox. In particolare si desidera offrire alla Luckfox un’interfaccia di comunicazione seriale con il drone in modo da trasmettere istruzioni. Tali istruzioni saranno generate dal framework FieldCalc++(FCPP) per l’implementazione del Field Calculus in ambito Aggregate Programming, sviluppata in C++. Nello specifico verrà esplorato l’utilizzo della CFLIB, libreria python utilizzata per lo sviluppo di client interattivi o di script per il controllo autonomo dei droni CrazyFlie, tramite driver seriali utilizzando l’interfaccia UART. Si discuterà di come realizzare questa connessione sia a livello fisico che software, oltre che una possibile opzione software per la comunicazione tra la libreria FCPP e la libreria di controllo del drone.
Crazyflie drone expansion through on-board Luckfox board
The Crazyflie 2.1 developed by BitCraze is a quadcopter especially suited for the development of prototypes. At a hardware level through the use of plug and play modules, such as the deck modules available through BitCraze. At a software level the open-source nature of the firmware allows for easy modification. The Luckfox pico mini B, is a small form factor board based on the RV1103 chip, able to run linux operating systems. Given the small dimension it is particularly suited for embedded applications. The objective of this thesis is to explore various options in order to unite these hardware components. In particular with the goal of giving the Luckfox control over the drone using a serial interface. In particular the instructions to the drone are to be generated by the FieldCalc++ framework, implementing Field Calculus for an Aggregate programming context, developed in C++. In particular we will leverage the CFLIB, a python library which allows the development of interactive clients or scripts to automate drone behaviour, through a UART serial driver. We will discuss how to establish such a connection both in hardware and software, as well as exploring a possible option for communication between FCPP and the python library.
Autorizzo consultazione esterna dell'elaborato
File in questo prodotto:
File Dimensione Formato  
ElaboratoMondino.pdf

non disponibili

Dimensione 2.93 MB
Formato Adobe PDF
2.93 MB Adobe PDF

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14240/164156