Real-time visualization and analysis of electromagnetic braking dynamics

- Dual-sensor acceleration monitoring (front/rear)
- Real-time FFT for frequency analysis
- Material characterization (Copper/Aluminum/Steel)
- Export-ready data formats (CSV, PNG)
- Interactive controls for zoom/filtering
graph TB
A[Arduino Nano] -->|I²C| B[MPU6050 Front]
A -->|I²C| C[MPU6050 Rear]
D[Neodymium Magnets] -->|Under| E[Test Track]
A -->|USB| F[Computer]
Part | Specification |
---|---|
Microcontroller | Arduino Nano 33 IoT |
Accelerometers | 2x MPU6050 (I²C addresses 0x68, 0x69) |
Magnets | NdFeB N52, 10x10mm |
Conductor Plates | Copper/Aluminum/Steel, 1-3mm thickness |
-
Firmware Upload:
cd Firmware/accelerometer_reader platformio run --target upload
-
Processing Setup:
# Install required libraries git clone https://github.com/Customize5773/BrakeScope.git cd BrakeScope/Visualization
-
Python Analysis Tools:
pip install -r Analysis_Tools/requirements.txt
- Connect Arduino via USB
- Launch Processing sketch:
BrakeScope.pde
- Press
e
to start data recording - Press
s
to save screenshots
sequenceDiagram
participant User
participant Arduino
participant Processing
participant Python
User->>Arduino: Launches car
Arduino->>Processing: Streams accelerometer data
Processing->>User: Displays real-time plots
User->>Python: Runs analysis scripts
Python->>User: Generates report.pdf
python Analysis_Tools/braking_analysis.py exports/raw_data/20250719_run1.csv
jupyter notebook Analysis_Tools/frequency_analysis.ipynb
- Place car on level surface
- Run calibration:
Press 'c' in Processing window
- Verify outputs:
cat Visualization/data/calibration/mpu6050_front.cal
Symptom | Solution |
---|---|
No serial data | Check port number in portNumber = 0 |
High noise | Verify sensor mounting stability |
Drifting baseline | Recalibrate with key 'c' |
MIT License - See LICENSE for details