javafawt

Public

@upnadrone

Download board files

Files for version 1. Pick what you came for.

Share javafawt

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

JavaFAWT

JavaFAWT is a fan-array-wind tunnel (FAWT) open-source software and hardware architecture developed by the drones lab of Universidad Pública de Navarra. It includes diagrams and PCB layouts for electronics, CAD designs for hardware, and source files for running and adapting the software.

Introduction

The proposed control scheme follows a wireless server-client architecture. A Java GUI is provided for the control station (server) to connect and command each fan, organized in series of modules. Each module is managed by a single Raspberry Pi client (currently tested with Raspberry Pi 3, 4, Zero 2 w), which receives the fan speed control messages from the server via a wireless WebSocket. The client receives the message, identifies its connected fans, and converts the speed signal to a PWM output for each fan, allowing for precise individual control of an indefinite number of fans. Thanks to the custom PCB interface, an external power supply can be used for each module, and a single control power source is used to elevate the 3.3V PWM control signal for each and every fan up to a standard required voltage.

Features

  • Modular low-cost FAWT architecture.
  • Individual or multiple fan speed control through a simple unified interface.
  • Websockets protocol implemented for wireless communication with each fan module.
  • User-programmable automatic speed sequences via .CSV files for repeatability and reproducibility of experiments.

Bill of Materials (BOM) can be found here

PCB Manufacturing project can be found here

How to install & run

Detailed instructions for installing and running the software can be found here.

A Tutorial/Manual of use can be found here.

Files structure

  • Documentation
    • private
      • docs -> .md files for generating public documentation site.
      • site -> compiled documentation website for dev purposes.
    • public -> compiled documentation website for public purposes.
  • Examples -> provided examples.
  • Hardware
    • module -> All the components required to assemble a single module.
    • testing_equipment -> Other components developed for testing.
  • Software
    • clientCode -> Python PWM client
    • functionalities -> example functionalities provided for automatic fan control.
    • pythonCode -> Python client file for controlling the fans from the Raspberry Pi.
    • serverCode -> JavaFAWT server software.

Dataset for inverse flow control

Our recorded dataset consists of approximately 45,176 samples recorded with our experimental 6x4 wind tunnel. It includes two CSV files: one for relative pressures (directly extracted from the nanoDAQ LTS-32 pressure scanner readings), one for velocities (extracted by converting the relative pressure, temperature and density values to velocity). The dataset can be found in Hugging Face: https://huggingface.co/datasets/UPNAdrone/WindTunnel

Work in progress

  • Fan speed feedback is currenly under development.

Licensing

JavaFAWT is made available under the MIT License. You are free to use, modify, and distribute this module in accordance with the terms of the MIT License.

Reference and Citation

If you use this module for research, please consider citing our paper to acknowledge its contribution:

@article{pending,
  title={},
  author={},
  journal={},
  volume={},
  pages={},
  year={},
  publisher={}
}

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.