1 of 1

Python Based Wind Turbine Data Acquisition System

After the successful execution of al the customer and engineering requirements, the team was able to create a data acquisition system that plotted live data and recorded historical data to a csv file.

Xuefeng Jiao, Spencer Norton

Department of Mechanical Engineering, CEIAS

Northern Arizona University, Flagstaff, AZ 86011

This project aims to create a reliable and accurate wind turbine data acquisition system. A Raspberry Pi is used to run Python codes that can read data from multiple sensors. An electrical enclosure is used to house and protect all the components. The result is a system that can measure the temperature, barometric pressure, wind speed, voltage, and current output of a wind turbine with specific accuracies and resolutions. To visualize data, a touch screen display is used with python libraries to generate graphs to show all the collected data and store it in a csv file.

Abstract

Methods

Results

Conclusion

The team was able to build an amazing data acquisition system that can read and record data, plot data, and display other relevant information. The system is comprised of a Raspberry Pi 4B, a WaveShare high precision ADC to read voltage, a DS18B20 temperature sensor, an MPL3115A2 pressure sensor, shunt resistors to measure current, a voltage amplifier for the cup anemometer, and multiple circuit components to make it all work. To house all of the components, an electrical enclosure and a touch screen are used to interface with the system and simplify the procedure for using it.

References

[1] “The python standard library,” The Python Standard Library - Python 3.11.0 documentation. [Online].

[2] Waveshare, “Waveshare/high-precision-ad-da-board,” GitHub. [Online].

Acknowledgements

Northern Arizona University Mechanical Engineering Department

David Willy, Associate Teaching Professor

Requirements

The team utilized Python and sensor libraries from different device manufacturers. The team adapted codes to work for the requirements of the project and used matplotlib to plot the live data being recorded. A Waveshare ADC was used to read voltage, shunt resistors to measure current, a DS18B20 thermocouple to measure temperature, a MPL3115A2 barometric pressure sensor to measure pressure, and an Adafruit anemometer to measure wind speed.

Check out our website for more information!

Customer Requirements

CR 1

Small Enclosure

CR 2

Display Live Gauges and Graphs

CR 3

Download Historical Data to CSV File

CR 4

Cost within Budget ($1500)

CR 5

Reliable Design

CR 6

Durable and Robust Design

CR 7

Safe to Operate

Engineering Requirements

ER 1

Measure Wind Speed (0-25 m/s)

ER 2

Measure Temperature

ER 3

Measure Barometric Pressure

ER 4

Measure Turbine Voltage

ER 5

Measure Turbine Current

ER 6

Meet Specific Resolution Requirements

Fig. 3: Component Sub Panel

Fig. 1: Enclosure with Touch Screen

Fig. 2: Enclosure with Interface Ports

Fig. 4: Matplotlib Graphs of Live Data

2022 Summer-Fall Capstone