An Arduino-based payload sensor system designed for collecting comprehensive telemetry data during water rocket flights. This compact instrumentation package provides real-time data acquisition for flight dynamics analysis, recovery assistance, and educational aerospace applications.
- Educational Rocketry β Hands-on aerospace engineering demonstrations
- Flight Dynamics Research β Data collection for trajectory and performance analysis
- STEM Outreach β Interactive learning platform for physics and engineering concepts
- Competition Rocketry β Telemetry systems for water rocket competitions
- π Multi-Axis Motion Tracking β Complete 6-DOF measurement with triaxial accelerometer and gyroscope
- π‘οΈ Environmental Monitoring β Atmospheric pressure and temperature sensing for altitude calculation
- πΎ Data Logging β High-frequency data capture to microSD card storage
- π Recovery System β Audible buzzer for post-flight payload location
- π‘ Status Indication β Visual power and system status monitoring
- π Real-time Processing β Onboard altitude calculation and flight phase detection
- Data Acquisition Rate: Up to 100 Hz sampling frequency
- Flight Duration: 15+ minutes continuous logging (9V battery)
- Altitude Range: 0-1000m (limited by pressure sensor)
- Acceleration Range: Β±16g triaxial measurement
- Operating Temperature: -10Β°C to +85Β°C
| Sensor | Model | Measurement | Range | Precision |
|---|---|---|---|---|
| Accelerometer/Gyroscope | DFRobot WT61PC | 3-axis acceleration & angular velocity | Β±16g, Β±2000Β°/s | 16-bit resolution |
| Pressure Sensor | MPX4115A | Atmospheric pressure | 15-115 kPa | Β±1.5% accuracy |
| Temperature Sensor | LM35DT | Ambient temperature | -55Β°C to +150Β°C | Β±0.5Β°C accuracy |
- Microcontroller: Arduino Micro (ATmega32U4)
- Storage: MicroSD card (FAT32 formatted)
- Power: 9V alkaline battery (6-12V input range)
- Recovery Aid: Piezo buzzer (85dB @ 10cm)
- Status Display: Power indicator LED
- PlatformIO IDE (VS Code extension recommended)
- MicroSD Card (Class 10 recommended, FAT32 formatted)
- 9V Battery and connector cable
The following libraries are automatically managed via platformio.ini:
lib_deps =
https://github.com/DFRobot/DFRobot_WT61PC.git @ 1.0.0
SD @ 1.2.4| Library | Purpose | Documentation |
|---|---|---|
| DFRobot_WT61PC | IMU sensor interface for accelerometer/gyroscope data acquisition | GitHub |
| SD | MicroSD card file system operations and data logging | Arduino Reference |
-
Clone the Repository
git clone https://github.com/AdzCoder/rocket-sensor.git cd rocket-sensor -
Hardware Assembly
Follow the detailed wiring instructions in
DESIGN.mdor reference the circuit diagram:Key Connections:
- WT61PC: SoftwareSerial on pins 10(RX), 11(TX)
- MPX4115A: Analogue pin A2
- LM35DT: Analogue pin A3
- SD Module: SPI interface, CS pin 17
- Buzzer: Digital pin 13
- LED: Digital pin 13 (onboard)
-
Software Upload
# Open project in PlatformIO pio run # Upload to device pio run --target upload # Monitor serial output (optional) pio device monitor
-
Pre-Flight Checklist
- Insert formatted SD card
- Connect 9V battery
- Verify LED power indication
- Test buzzer functionality
- Confirm sensor readings via serial monitor
Data is logged to flight_data.txt on the SD card in CSV format:
Time(ms),Pressure(Pa),Temperature(C),Height(m),AccelX(m/s2),AccelY(m/s2),AccelZ(m/s2),TotalAccel(m/s2),GyroX(deg/s),GyroY(deg/s),GyroZ(deg/s)
| Column | Unit | Description |
|---|---|---|
| Time | ms | Milliseconds since system startup |
| Pressure | Pa | Atmospheric pressure (absolute) |
| Temperature | Β°C | Ambient temperature |
| Height | m | Calculated altitude above launch point |
| AccelX/Y/Z | m/sΒ² | Triaxial acceleration components |
| TotalAccel | m/sΒ² | Vector magnitude of acceleration |
| GyroX/Y/Z | Β°/s | Angular velocity components |
- Flight Phases: Launch, coast, apogee, descent identification
- Performance Metrics: Maximum altitude, peak acceleration, flight duration
- Trajectory Analysis: Velocity and position estimation through integration
- Recovery Data: Descent rate and landing impact analysis
- Pre-Launch β System initialization and sensor calibration
- Launch Detection β Acceleration threshold triggering
- Flight Logging β High-frequency data acquisition
- Recovery Mode β Buzzer activation for payload location
The recovery system uses intelligent landing detection:
- Arms after 15 seconds of operation to prevent false triggers during setup
- Activates when landed condition detected (9-12 m/sΒ² total acceleration sustained for 2+ seconds)
- Provides 85dB alert for payload location assistance
- Data Integrity β Regular file synchronization to prevent data loss
- Fault Detection β Sensor error handling and status reporting
- π Design Documentation β Detailed system architecture and component selection
- π Wiring Diagrams β Complete electrical schematic
- π§ͺ Test Results β Ground testing and validation data
Development Team: Group A04
Institution: University of Warwick, School of Engineering
Module: ES192: Engineering Design (2022/23)
Sprint: Electronic Systems Design Sprint 2
- Sensor Integration β Multi-sensor data fusion and calibration
- Real-time Systems β High-frequency data acquisition under constraints
- Embedded Programming β Arduino development for aerospace applications
- System Design β Requirements analysis and hardware selection
| Problem | Symptoms | Solution |
|---|---|---|
| No Data Logging | LED on, no TXT file | Check SD card formatting (FAT32) |
| Sensor Errors | Serial output shows NaN | Verify SoftwareSerial connections and library versions |
| Power Issues | Intermittent operation | Check 9V battery voltage (>7V required) |
| Recovery Buzzer | No sound after flight | Verify buzzer connections and pin 13 continuity |
Identified improvements for next iteration:
- GPS Integration β Absolute position tracking for recovery
- Wireless Telemetry β Real-time data transmission during flight
- Advanced Sensors β Magnetometer for orientation determination
- Data Visualization β Onboard display for real-time monitoring
- Multi-Stage Detection β Support for multi-stage rocket configurations
This educational project has been completed, but contributions are welcome:
- Fork the repository for your own experiments
- Document modifications clearly for other students
- Share results with the academic community
- Maintain educational focus in any derivatives
Status: Completed (Academic Year 2022/23)
Maintenance: Educational reference - not actively maintained
Usage: Available for student projects and educational demonstrations
This project successfully demonstrated practical application of embedded systems in aerospace instrumentation and provided valuable hands-on experience in sensor integration and real-time data acquisition.
MIT License β see the LICENSE file for details.
Developed as part of the Engineering Design module at the University of Warwick. This project showcases practical application of electronic systems in aerospace engineering education.
