Friday, March 16, 2018

Failing with Elegance

In the post below, Alex reflects on a frustrating problem in the lab. In many ways, our failures can be even more valuable than our successes, as they give us an opportunity to learn. Not to mention, as a mentor of mine once said, if you're not pushing into resistance and having problems then you aren't truly doing quality experimental science!

By Alexandre S├ęguin

Over the past semester, I have been working alongside Paul, Jake and John to set up a cryogenic vacuum chamber to emulate Moon-like conditions. I was assigned to a setup of a solenoid valve which controlled the flow of liquid nitrogen in the chamber. This subsystem includes the valve itself, a driver and a micro-controller. In short, the micro-controller reads a temperature input, determines whether the valve should open or close, and sends a signal to the driver which then activates the valve appropriately. Things did not go as smoothly as expected, and you will now have the opportunity to understand my thought process at the time. At the end, there will be a reflection on the lessons learned and the importance of handling frustrating situations well. Let’s get to work!

Unlike what our parents might have shown us, the first step to installing anything is to read its manual. After reading the relevant sections, I wired up the valve, provided power response. Not the end of the world, I most likely attached the wrong wire somewhere! After double and triple checking my work, it became clear the issue was somewhere else so my next thought was to check the input and output voltages. The micro-controller in question is solder-less, therefore I used a voltmeter on the port screws to see if the values were those I was expecting. They were not, and their magnitudes did not tell me anything of significance. At least, I had power and hence something to work from.

The infamous solenoid valve! This shiny component will allow us to control the amount of liquid nitrogen in the cryogenic vacuum chamber.

At this point, it finally dawned on me that I should use the lab’s multimeter to check the output currents. Unfortunately, the instrument returned nearly 0 amps. Back to the drawing board. Since the wiring seemed in order,  I reasoned that perhaps I had entered the incorrect settings for the micro-controller’s software, so I went back into the manual. I perused every single detail of that little booklet: no word was left unread, every diagram was studied, I knew where to find every piece of information related to the device. Along the way, I tried different combinations of settings. To name a few, I tried using the Output 1 port, the Analog port, and attempted to manually set the higher and lower voltage limits. Alas, I still had an unresponsive sensor on my hands.

At this point, it had been nearly a month of frustration and experimentation with every relevant combination of settings. I decided to restore them to the most likely configuration and to measure the output voltages once more, this time directly across wires. I found a resistor with an unusual resistance in the dark reaches of a drawer (186 kOhm according to its colour scheme) and put it in series with the output wires. Using the expected currents and trusty Ohm’s law, I calculated the voltage drop I should expect, and when I measured the potential drop across the resistor, the multimeter showed exactly the values I had calculated! So why in the world is this valve not working then? Out of desperation, I ripped out the DB-9 wire and adapter connecting the micro-controller to the driver and instead connected the two devices directly with prototyping wires. Unexpectedly, the valve started working perfeclty! I knew the adapter worked correctly because I used it on another project just weeks prior. The culprit was thus the provided DB-9 wire; my wire setup and the micro-controller settings were correct all along. This whole ordeal took me five times longer to complete than I had anticipated.

The driver for the solenoid valve. A defective DB-9 wire connected to this output was causing the valve to misbehave.

After failing to recognize the problem early, I reflected on why that was and what I learned along the way. In the end, I think the experience was more beneficial than detrimental, but at the time it sure felt like I was failing at a very simple job. On the bright side, I now understand how to operate the micro-controller in nearly every imaginable situation. Despite my methods being somewhat brute force, I also discovered what to check first (and how to check it!) when troubleshooting an electronic system, and that wires are not to be trusted until tested, especially if they didn’t come in a sealed box. I also taught myself how to solder wires, which will surely prove itself useful in future projects. I attribute taking so long to complete the setup to a lack of experience. In undergraduate electronics labs, we are always given the right tools so that we can apply a concept taught in lecture. But before starting to run experiments, there are important yet easily overlooked steps to perform, such as ensuring the equipment we use is functioning.

As John told me, sometimes things just happen this way. We all encounter times when nothing works the way we want it to, and that’s ok. Outside the field, there is sometimes a notion that scientists and engineers never make mistakes, which could not be farther from the truth. Just like everyone else, when things don’t work out, there is a time to stop and take a step back and there is one to go full throttle and keep trying. Whichever avenue is chosen and whatever the circumstance, the important point is to learn from the experience and ultimately walk out with more wisdom.  

No comments:

Post a Comment