Maeve Stites

Electrical Design Engineer, Sensata Technologies - High Voltage Sensing & Controls
Electrical and Computer Engineering B.S., Olin College of Engineering

Email: maeve@mstites.com

Vision Stand Calibration


Cover photo

Overview

I developed software to calibrate the Vision Test Stands at JDES (John Deere Electronic Solutions). The testers verify the functionality of displays used in John Deere tractors and construction equipment. Each Vision Test Stand uses a camera to view the display and a pneumatic finger to interact with the display.

This project's goal was to calibrate the Vision Test Stands to make their functionality identical - to reduce the number of false failures during manufacturing. I used a pre-existing Vision Test Stand Diagnostic Fixture for a common reference to calibrate the stands. I wrote software to generate a local machine offset for the Pneumatic Finger position - such that the coordinate system was identical on all testers. I also wrote software to generate a table of exposures and expected color hues for each tester. Finally, I wrote reusable software to allow engineers to easily interact with these calibration files in their own code.

My Role

I managed the Vision Stand Calibration project. I brought the project all the way from an initial problem to completion.

This role included:

  • Project planning - When I first got this project, I was told to find a way to calibrate the finger and camera on the Vision Test Stands. It was my responsibility to come up with the approach on how to do this.
  • Software Design - I created the calibration file format, software to generate the calibration files, and reusable software to access the calibration files for use in test software on the stands. All of the code was written in NI LabVIEW.
  • Documentation - I created extensive documentation on all of the software I wrote and my engineering process. This included information on how to maintain and update the code I wrote, as well as how to use the utilities which access the calibration file data.

Software Approach

Finger Calibration

Finger

The finger lined up on the button during calibration.

The Finger Calibration software directs the machine operator to line up the pneumatic finger over a button on the diagnostic fixture. The software then finds the difference between the read distance and the known distance of the button, writing that difference to a text file local to the machine.

Color Hue Calibration

The goal of the color hue calibration software is to create a table - specific to a tester - of exposures, expected hues, and tolerances for all colors used during screen functionality tests. For example, machine one may have an exposure of 100,000 ms to read blue as 145 and another machine may have an exposure of 40,000 ms to read blue as 140.

The software generates the file by stepping through the following process:

  1. Rough Step Photos: Take photos from 10,000 ms exposure to 300,000 ms exposure, making 5000 ms steps. Find all color hues for every photo.
  2. Pick the best Rough Exposure for each Color: Choose the exposure that returns the hue closest to the ideal hue for each color (IE Blue is 140).
  3. Find the best Exposure for each Color: Starting from the best rough exposure for each color, the software takes photos with exposure time steps of 1000ms to find a more ideal exposure setting that returns a more accurate hue reading. The software knows which direction to search in based on if the hue reading was higher or lower than desired; since we know that as exposure time increases, hue reading decreases.
  4. Get Hue Reading: Using the exposure values found for each color, take 10 photos and find the hue reading for each, save the mean of that value as the ideal hue.
  5. Write Results to File: Record the exposure time setting, hue reading, and tolerance values for each color to a csv file.

The two part process to find the exposure time (first finding a rough exposure, then a more ideal one) reduces the run time from over ten minutes to under three minutes when compared to taking photos with exposure times incrementing by 1000 ms from 10,000 to 300,000 ms.