Carrying out test plans and automating data extraction
It's finally track day, and there's little I like more than carrying out a good test plan with equipment we know we can trust. Once we got there, the first step was to set up the sensors so we can record data. The sensor PCBs take the voltage from the differential pressure sensors and convert it to a CAN value somewhere between -32,768 and 32,767, being the range of 16-bit signed integers. We didn't code in any other conversions to keep the recorded data as "raw" as possible to make debugging easier, although we did add an averaging over 10-point intervals to limit the amount of data being sent over the CAN bus. With 25 Hz output frequency, these combined to give an effective 250hz of average readings. Both boards plugged in to breakouts on the dashboard, keeping connections central and thus limiting the required length of both the pneumatic tubing and CAN connection cable.
We had three tests to get through; the on-track methods are summarised below:
Setup up cones for representative corner scenario
Confirm toe, camber, ride height match the CFD test case
Confirm tyre pressure is appropriate
Log ambient temperature and pressure, and track temperature
Assemble all rakes off the vehicle
Mount yaw and pitot-static probes to the vehicle (see Figure 2)
Target airspeed: 18 ms-1
Corner radius: N/A
Mount S_Z0.35 rake to the vehicle
Use air pump to confirm functional readings from each Kiel probe, including yaw and pitot-static probes, using live telemetry.
Driver to conduct a single run down the main straight, keeping speed below 5 ms-1 and being prepared to stop if necessary. Purpose is to confirm integrity of the rake mounting and to log sample data.
Driver to return to pits, recorded data to be extracted and examined to confirm it looks as expected (see Figure 3)
Upon satisfaction with the data, driver to conduct 12 "runs" up and back the main straight, each time accelerating quickly to the target airspeed and holding this speed for as long as possible (Figure 4)
Driver to return to pits, recorded data to be extracted and examined to confirm it looks as expected (see Figure 5)
Unmount S_Z0.35 rake from the vehicle
Target airspeed: 18 ms-1
Corner radius: N/A
Reconduct steps 2-4 of track arrival procedure
Mount S_Z-0.11 rake to the vehicle
As per steps 2-6 in the previous test case
Unmount S_Z-0.11 rake from the vehicle
Target airspeed: 14 ms-1
Corner radius: 13.2 m
Reconduct steps 2-4 of track arrival procedure
Driver to conduct 4 hot laps to warm up tyres and accustom to track conditions
Driver to return to pits, mount RC_Z0.35 rake to the vehicle
As per steps 2-4 in the first test case
Upon satisfaction with the data, driver to conduct 12 laps of the "Short" circuit at medium speed, accelerating to and maintaining the target speed throughout the corner of interest while keeping the vehicle as close to steady-state as possible
Driver to return to pits, recorded data to be extracted and examined to confirm it looks as expected
Unmount RC_Z0.35 rake from the vehicle
Our test plans got more and more detailed and precise as the year progressed and we learned what extra detail we wanted and needed from our testing. Originally, they were just instructions for setup and for the driver, but they evolved into a complex document covering the day before through to the day after. Additions included:
Full car and equipment setup specification, including mount locations and tolerances
Desired ambient and track conditions
Guides/processes for pre-track preparation and post-track pack-up
Outline and justification for each test process to help in creation of any on-the-spot decisions or contingencies at track (and to force the plan writer to only include tests worth doing).
Data extraction and post processing, again to help in decision-making if any last-minute decision-making by effectively linking different parts of the overall test plan together
The plans were also accompanied by post-test reports containing an overview of key results, discussions, required future work, location of raw and post-processed data, and driver feedback. There were two main goals that justified all this complexity: Providing decision-making tools to allow us to still get useful data even if some things went wrong, and to provide an instruction manual to carry out all the tests exactly as intended in the case of the test plan author being absent.
Figure 1: Example test plans from initial track-testing of the EV24 side-floors that I've retrospectively included here
Figure 2: Pitot-static and yaw probe in a temporary prototype mount being tested on the nose of the vehicle
Figure 3: Recorded data from the S_Z-0.11 rake after the slow speed out lap, used to assess the quality of data and check for null data before committing to the full test run. In this case, note that one of the sensors is clipping the minimum value; this was fine as we could still get the data we needed once up to speed, but this sensor had a new resistor installed after returning from track to offset the voltage to a more appropriate range. Similarly, we also swapped out the resistor on the sensor with high positive voltage offset to avoid clipping the maximum value at speeds closer to Vmax, for future track days.
Figure 4: Image of EV23 with the S_Z-0.11 rake attached during an initial low-speed test to confirm structural integrity. The yaw probe had been temporarily removed from the nose for maintenance while this test took place; unfortunately we had no good photos of the car with both rake and yaw probe attached while on track.
Figure 5: S_Z-0.11 rake (raw) data from its full test plan run. Unlike the S_Z0.35 rake which was positioned with some probes inside the recirculation zone, all probes on the more rearward S_Z-11 observed a positive correlation between total pressure and vehicle airspeed, which reflected expectations.
Before going into data extraction, I'll briefly discuss the new yaw probe as seen in Figure 2. At this point it's still very much a prototype design, and was subject to very imprecise manufacturing methods. As a result, its output was a little noisy but the concept was nonetheless proven at this track test, and was sufficient in fulfilling its role of filtering data that satisfies the test conditions. A more precise design with more rigorous wind tunnel testing will be carried out before the next aerodynamics track tests. Figure 6 contains the wind tunnel test results for this yaw probe. Combined uncertainty of the yaw probe and pressure sensors using a RMS method came to 10 Pascals with a 1.25 factor of safety, which suggests that between approximately 10 and 14 ms-1 the precision is only to the nearest 2 degrees and that the results probably shouldn't be trusted at all below 10 ms-1. 0.5 degree precision is achieved above 22 ms-1. Ideally, 0.5 degree precision would be achieved at all speeds above 10 ms-1 in a future improved yaw probe.
Figure 6: Yaw probe calibration/mapping results from wind tunnel tests at three airspeeds. Fewer teste were run at negative yaw angles after it was clear that the linear trends were continuing. Further velocities were interpolated/extrapolated.
Unfortunately due to deteriorating weather, we were unable to complete the representative/median cornering case test. This wasn't a huge loss, as it would have had the least emphasis during validation anyway, due to a fair bit of uncertainty at this point in being able to reproduce the exact driving scenario down to the steering, slip, and roll angles. We therefore didn't want to put significant validation effort into trying to tune our CFD setup to match this case, but had planned to use it as more of a guide to identify any significant discrepancies. More emphasis on cornering, as well as braking scenario validation will come later in the year and into next year.
Extracting the data was easy enough as there wasn't that much to go through, nor was I interested in any relationship between different systems on the car as we're just trying to replicate 3 steady state cases for now, with an emphasis on quality and quantity of data rather than variety. That said, I'd still rather not have to go through all the values and hand pick the ones we want, so I wrote a MATLAB program to do it for me. Each case has two physical requirements, being freestream airspeed and corner radius/yaw angle, both of which can be obtained from the pitot-static and yaw probes respectively. It was simply a case of filtering out data points where both of these requirements were satisfied. I put a tolerance of 0.5 degrees for yaw and 0.5 ms-1 for airspeed which returned a decent slice of data for the straight airflow cases, with a few missing sections towards the end of the S_Z-0.11 test where wind was starting to pick up and intermittently pushed the yaw probe readings outside this tolerance. The flat section observable at the start of the data in figures 3 and 4 was identified and averaged by the script to give a calibrated 0 reading for each sensor. Finally, the CAN data was converted back to voltages and then to total pressure, after which they were all scaled such that the highest total pressure reading for a free-stream-positioned Kiel probe matched its free-stream value in CFD. This normalised the readings to CFD to account for differing gas properties; this changed the readings by a maximum of only 0.8%.
Validation for the rake data had two criteria:
Total pressure magnitude at each probe
Minimum XY distance from the experimental total pressure at each probe point, to a point with equal total pressure in CFD
The second aspect acknowledges the high velocity gradients between freestream and core wake/recirculation regions across the thin perimeter of the wake "cloud", meaning even if the magnitudes are significantly different, it may only be a 5 mm difference in position of the wake that has caused the otherwise concerning magnitude.
There were no plots or other automated post-processing done to the data, as it did not reflect how it was collected or to be validated. The total pressure magnitudes were a single value and independent of other points, and analysis of the shape of the wake rests on some assumptions that the real shape between the measured probe points at least somewhat resembles that in CFD. There simply isn't enough spatial resolution of theses rakes to visualise the precise shape using only experimental data. Instead, for each point, it was noted if the experimental total pressure suggested a freestream, perimeter, or core wake reading (Figure 7). This simplified "map" of the wake will guide coarse adjustments to the CFD setup before the precise numerical data is used for fine tuning and assessing overall improvement in CFD/track correlation.
Figure 7: Simplified map of measured total pressure values for the straight airflow cases at (left) Z=0.35 and (right) Z=-0.11, based on whether the value was freestream (above 90% of true freestream value), or indicative of a boundary region (above 67%), or of a core wake region (below 67%)
A final note on surface flow tests as mentioned in the CFD post-processing post: The test runs for the tuft testing on the selected bodywork area were conducted at the same target speed in a straight line, with a camera at 100mm zoom positioned perpendicular to the track to capture the tufts externally with a low field of view to reduce perspective distortion. For this simple test, no optical flow analysis was conducted for precise angles or turbulence analysis. I'll cover these results briefly in the next post.