circuitcellar.com
Magazine Support   Digital Library   Products & Services   Suppliers Directory 
 
 





Priority Interrupt Archive

 
May 2004, Issue 166

Priority Interrupt
by Steve Ciarcia


All Washed Up

 

Ever think about how dependent you have become on the guy who writes the control program for a product and how vulnerable you are if he doesn’t know what he’s doing? Last week I had an interesting adventure thanks to a company obviously still working out the bugs in the transition from electromechanical cams and switches to C++ and microcontrollers. I went to the car wash.

Ordinarily I wash my car at home. I even installed hot and cold water to a hose reel in the garage so I can do it more easily. I don’t know whether I was weak-willed that day or just feeling adventurous, but I decided to go to the drive-through car wash down the street instead.

I pulled up to the entrance of the car wash. The guy leaning back reading the sports section really didn’t care that I had driven up. He was determined to finish whatever he was reading. As I was about to lean on the horn, he finally got up and walked around the car. While I was waiting for my change, I noticed a bunch of posted disclaimers. Apparently SUVs do nasty things if they fall off the tracks or something like that. With all the signs warning me that the car wash wasn’t responsible for all the damage they intended to perpetrate on my vehicle after the process started, I figured I shouldn’t care that my SUV would total the car wash as reprisal either.

The operator came to the conclusion that my SUV was tolerable and he took my money. I don’t know why they call it a "drive through," because that’s the last thing they want you to do. Just put it in neutral, sit back, and listen to music while everything gets clean.

Well, so much for the music. Satellite radio doesn’t like roofs and I was too far from a terrestrial transponder. Ten feet into the tunnel, my XM Radio turned to pink noise, and I was subjected to a soapy whiteout. The marvel of mechanical ingenuity rotated nozzles, squirted soap, and sprayed a mini hurricane of detergent and water as I progressed through the washing stages. Maybe this isn’t so bad after all, I thought.

The car was slowly pushed to the next stage where rotating cloth strips started beating on the car. "Beating" might be a strong description, but it surely seemed like that. I realized a long time ago that a "touchless" car wash is useless without a little elbow grease. Let’s just say this was robotic elbow grease.

Rotating sprayers went up and down the side doors as the cloth strips went wap, wap, wap against the hood and windshield. I just wished this thing wasn’t washing my car quite so hard, but I was consoled with the knowledge that it would be only a few more seconds until the rinse cycle started. Or at least that was how it was supposed to work.

Suddenly, the track stopped moving. For whatever reason, however, the washing continued cycling through the same series of maneuvers. Instead of the 90 seconds for the whole wash, rinse, and dry, it had now been 2 minutes and I was still seeing soap and spraying water. Something had happened to the system and it was stuck. OK, operator. Now is the time you get off your chair and go press the reset button, I said to myself.

Through the torrential assault I could see a control panel with a bunch of colored lights mounted on the wall. A red indicator blinked incessantly, but it didn’t seem to do much else. The cleaning cycle and rotating cloth continued to go wap, wap, wap as a monsoon raged all around the car.

Where the heck was the operator for this thing and how was I supposed to get out of there? What was he doing back there, sleeping? Didn’t he see that the line wasn’t moving anymore? I honked the horn twice, waited 30 seconds, and honked again. Where was this guy? I thought about opening the door to find him, but getting 20 gallons of water out of the upholstery quickly stifled that consideration. I thought about using my cell phone, but whom would I call? If this guy wasn’t in the office to see that his conveyor system wasn’t moving, he wasn’t there to answer the phone either. Then, the real anger hit me. What idiot designed the control program for this car wash system?! Didn’t he ever hear about closed-loop control sensing or watchdog timers?

At this point, I was starting to get ripped. At the 5-minute point, I thought about climbing over the seats and going out the hatchback. I’d get drenched, but perhaps it wouldn’t be quite as soapy on that route. Then, I said screw it. The most off-roading this car had ever seen was the curb in a parking lot, but I wasn’t going to sit there to the point where I’d have to argue with the car wash owner to pay for a new paint job because they washed it too well. I jammed the car in gear and drove the 30 feet down the rest of the car wash and out the exit. I did hear a few twangs and a ripping sound, but whatever brushes, track linkage, etc. was in the way, it was no match for a 3-ton SUV.

I stopped just outside the car wash to clear the soap off the windshield. The operator came running out yelling I had broke his car wash. I said it had stopped working long before I did anything to it and there weren’t any signs prohibiting emergency exits. His reply was, "I hate SUVs!"

Of course he didn’t understand, but I replied, "Yeah, and I hate dumb embedded-control programmers!"

 

steve.ciarcia@circuitcellar.com