Design of experiments (DOE) for MecE 668. Testing the maximum instantaneous velocity an autonomous vehicle can travel in a turn before slipping.
Values retrieved from the MPU-6050 Register Map and Descriptions Revision 4.2 located here and the Product Specification Revision 3.4 located here.
Accelerometer | Sensitivity | Gyroscope | Sensitivity | Hexadecimal | Binary |
---|---|---|---|---|---|
+/- 2g | 16384 | +/- 250 deg/s | 131 | 0x00 | 00000000 |
+/- 4g | 8192 | +/- 500 deg/s | 65.5 | 0x08 | 00001000 |
+/- 8g | 4096 | +/- 1000 deg/s | 32.8 | 0x10 | 00010000 |
+/- 16g | 2048 | +/- 2000 deg/s | 16.4 | 0x18 | 00011000 |
- Accelerometer --> Outputs raw accelerometer values [acceleration in g force]
- Gyroscope --> Outputs raw gyroscope values [angular velocity in deg/s] and includes a calibration sketch
- SDLog --> Logs accelerometer and gyroscope values to SD card
- Main --> Logs accelerometer and gyroscope values to SD card and controls vehicle with a PWM signal
Raw data from sensor (.csv), videos (.mp4), and results (.mat) are included in sub folder titled 'data'. To add additional data or reanalyze existing data the following scripts and functions can be used:
- main --> Run this script to call all other MATLAB functions. Specify file names for reading here.
- scale --> Find the ratio of pixels to meters in the real domain.
- positionLogger --> Logs the x and y coordinates of the centroid of the tracking disk from a masking function.
- fileReader --> Reads the .csv file recorded by the Arduino.
- cleanData --> Applies filtfilt and a moving mean average to clean sensor data
- dataSlicer --> Matches the sensor and video data. Removes stationary data.
- circleFilter --> Finds the radius of the circle of the vehicle and determines stats to determine when vehicle slips.
- plotter --> Creates multiple graphs of all the data and outputs instantaneous velocity at slip.
- resultsMaster --> Run to see summary of all the instantaneous velocity results for each trial. Make sure to comment all plots in plotter function beforehand.
- Circuit_Layout --> Wiring layout using Fritzing
- Calibration_Blobs --> Print at "actual size" and do not scale! Used for scale.m.
- doeMatrixGen --> Calls Completed Experiments .csv to analyze remaining experiments to conduct.
- Miles Skinner
- Dylan Rose
- Jean-Luc Olsen
- Olanrewaju Bello
- Mark Sherstan