GCLM - Integration and Test Lead
Named Grand Canyon Laser Machining because the task “would be like carving the Grand Canyon with a spoon”, this program will probably go down as the pinnacle of my career, and I was fortunate enough to be entrusted with the positions of I&T Leader and Product Owner. The program was fifteen months long from concept to fruition and culminated in a customer demonstration that flawlessly coordinated greater than fifteen devices to accomplish a task. It also established General Dynamics Florham Park as robotics experts within our field.
Responsibilities and Contributions
Team Leader
As Integration & Test lead and Product Owner, I was responsible for ensuring success of the final technology demonstration to the customer. With input from the other stakeholders, I communicated to the development team task priority and the release plan.
Audio Detection Circuit
The problem I was tasked with solving was identifying when a end mill hits a new material without electrifying the end mill. Machinists can tell when the machine hits a new material by ear, so I gave an Arduino the ability to listen. Using a microphone and performing an FFT on the data allows me to see what frequencies were associated with hitting the new material and used that as a threshold. In testing we were able to detect the new material and stop the cutting after removing just 0.010” (at a max).
Path Planning
Developing and implementing the algorithms to determine the system’s path was one of my major contributions to the program. The system had to abide by a handful of constraints but still be able to respond and adjust the path based on new sensor data.
Ellipse Fitting / Center finding
Accurately finding the center of a slightly elliptical profile in the presence of noise is quite the challenging task. So is finding the center of a cross section that varies with distance. Working off a reference paper, I was able to develop and implement a robust algorithm that located the center of these cross sections with an accuracy of 1mm.
Attitude Control
Controlling the attitude of this system was no straight forward task; fortunately, I had experience in Guidance, Navigation, and Control that came in handy. I developed a C++ library to allow us to convert between attitude representations: Euler angles, quaternions, principle rotation vectors, MRPs and DCMs. This enabled us to work with quaternions in software but change to Euler angles when communicating to the devices (hardware constraint).
System Troubleshooting
One of the most frustrating things about integration and testing is debugging the system when problems arise. Working with a team of 3, we became extremely efficient at identifying and resolving issues. As an example, we had a sensor that would frequently be put into an error state and would have to be reset before proceeding. We implemented a TCP/IP addressable relay to toggle power to the device and some additional software to identify when the sensor is back online - never had an issue with the sensor again.