Welcome to My New Internet Abode

February 2nd, 2010 | No Comments »

You are probably here because my old web site automatically redirected you here.  My old site will vanish in a few weeks, and I don’t know how long it will take Google, Yahoo, Bing and other search engines to find me again, so please update your bookmarks.  Everything other than the domain name is about the same, so proceed as usual, and please let me know if you find something broke.

Orifice Meter (d/p) Range Changer

January 31st, 2010 | No Comments »

Do you need to change the range of an existing orifice (d/p) flow meter? You do not need to gather a bunch of process data and break out your old slide ruler for this one. You only need to know the existing meter’s flow range and d/p range. Enter those two values and your desired flow range into my Orifice Meter Range Changer and it will tell you what to calibrate your orifice (d/p) meter to.


You have a d/p transmitter calibrated to 0 – 100 inches of water connected to an indicator with a range of 0 – 25 gallons per minute (GPM). The indicator occasionally reads full scale, so you want to change its range to 0 – 30 GPM. What do you calibrate the d/p transmitter to?

Orifice Meter Range Changer Screen

You calibrate your d/p transmitter to 0 – 144 inches of water to achieve a flow range of 0 – 30 GPM.

What if 30 GPM is not high enough? What is the maximum flow range you can achieve without changing the orifice? Your d/p transmitter has a maximum range of 0 – 250 inches of water, so enter 250 into New d/p Range field.

Orifice Meter Range Changer Screen

You can calibrate your flow range to 0 – 39.5 without changing the orifice.

I put a link to Orifice Meter Range Changer over there on the left, right under my orifice bore calculators.

PID Loop Tuning Practice

January 31st, 2010 | No Comments »

Lambda Tuning Icon
Let’s face it. We can’t always perform open loop step tests
on control loops. Even if we can, frequent load changes can make step tests impractical. Sometimes we must tune control loops by trial and error. In such cases, knowledge and experience are keys to success. The more experience you have tuning control loops using a recognized method, the better you will be at recognizing poorly tuned loops and tuning them by trial and error. With experience, you can inspect a control loop and instinctively determine if its tuning parameters are reasonable. Furthermore, if you must tune a control loop by trial and error, you will know in which direction to begin moving the tuning parameters. Gaining experience can be difficult, however, and you probably should not practice on production control loops. Consider using my PID Loop Simulator and PID Loop Analyzer to hone your loop tuning skills. Start by studying First Order Plus Dead Time (FOPDT) non-integrating processes, also known as self regulating processes (flow, for example), and then move on to integrating processes (level, for example). Simulate and tune several non-integrating processes, ranging from relatively small process gains to large ones and short process time constants to long ones. Stick with a consistent Lambda value (closed loop time constant), perhaps three times the open loop time constant. Document each one’s PID parameters and compare your results. Consider performing the same exercise utilizing the Ultimate method. You can find an example in this document. Then do the same thing with integrating processes. Finally, compare the non-integrating PID parameters to the integrating ones.

View this brief example to help you get started.

I too am a Strange Loop

January 31st, 2010 | No Comments »


I like reading two books of different genres in parallel, usually fiction and nonfiction. I read one for awhile and then switch to the other. I like the contrast. I recently read Douglas Hofstadter’s I am a Strange Loop and Scott Adams’ Stick to Drawing Comics, Monkey Brain!, the former science and the latter comedy. Instead of contrast, though, I found a unifying theme. Both authors spend considerable time talking about the psychology of consciousness. Hofstadter says we are born without an inner light (a sense of self) and we acquire one through life’s many experiences. Likewise, Adams says we are nothing more than “moist robots.” Both agree that we have no “free will.” Hofstadter says our actions “are the outcomes of physical events inside our heads.” Adams has his Pleasure Unit Theory: “People organize their lives to get their minimum required units of pleasure…” According to Hofstadter and Adams, “will” has nothing to do with our actions. Both authors agree that our brains trick us into believing we have a free will. My brain has done a good job of tricking me. I quit using tobacco a few years ago. It was the most difficult thing I have ever done. I wish I could claim it was my strong will that enabled me to quit, but it was apparently in my brain’s program. For all I know, I am nothing more than a computer algorithm running in a game console being manipulated by some fat kid with a joystick. If that is the case, I wish the fat kid would give the joystick to a smarter kid.

I highly recommend both books, by the way. Perhaps this commentary will manipulate the physical events inside your brain such that your body will take the actions required for you to read the books. And perhaps your brain will trick you into believing you enjoy them. Mine did.

PID Loop Analyzer Update

January 31st, 2010 | No Comments »

You may have noticed PID Loop Analyzer’s version number creeping up. I fixed several bugs and greatly enhanced its performance over the last couple weeks. I am not ready to declare it bug free (I will never make such a bold statement.) but it passed my latest round of functional and performance tests. No one can find bugs faster than end users, however, so please report any bugs you encounter. I really appreciate all feedback.

I added one new feature, too: a simple report generator. Once you finish analyzing your control loop, click the Enter Data button and select Copy to Clipboard. Open your favorite text editor and paste (Ctrl V) PID Loop Analyzer’s report into it. The report contains fields to document the loop number and old PID tuning constants, and it documents the new PID tuning constants and process dynamics. An example follows:

PID Loop Analyzer Report


Loop Number:
Original P:
Original I:
Original D:

New P: 0.718 Gain
New I: 9.6 Repeats per Minute
New D: 0 Minutes

Process Information
Dead Time: 2 Seconds
Process Gain: 0.9 EUs per %OP (0.6 %Span per %OP)
Time Constant: 6.25 Seconds

PID Loop Analyzer

January 31st, 2010 | No Comments »

If you tune PID control loops by trial and error, or even if you tune them using a scientific method, give my PID Loop Analyzer a try. The following description comes out of its documentation: About PID Loop Analyzer.

PID Loop Analyzer is a software tool designed to help you optimally tune your control loops with very little process disruption. You perform an open loop bump test on your production loop and provide the test data to PID Loop Analyzer, and it models your process and suggests PID tuning parameters based on Lambda tuning rules. It allows you to select safe settings from aggressive to conservative. Do you want quarter decay response instead? No problem! You can now tune your loops using Z&N’s Ultimate method without putting your production processes into sustained oscillation!

It currently supports first order plus dead time processes (flows, pressures, etc…) only, but the next version will support integrating processes, too. It now supports both first order plus dead time and integrating processes. Once I implement integrating processes and a couple other features, an offline version will be available for a nominal fee. You can find out how to use PID Loop Analyzer in its documentation, About PID Loop Analyzer. I provide links to both in the left sidebar.

Try it out with the following data files. Note the lower range value, upper range value, and column assignments at the top of each file.

Safety Topic: The Bystander Effect

January 30th, 2010 | No Comments »

You are strolling down a busy sidewalk. You hear tires screech, and you turn just in time to see a car hit a pedestrian and speed away. The victim is lying in the busy street, injured and bleeding, just yards away from you. What do you do? Do you spring into action and help the victim? Do you call for help? Perhaps you continue on your way and hope someone else helps the poor soul.

You may remember watching the news report of 78-year-old hit-and-run victim Angle Torres lying in the street while onlookers ignored him, and motorists swerved around him and continued on their way. It was a horrific scene that outraged many people and called the onlookers’ humanity into question. Would you have helped Mr. Torres? You may not have helped him because of a psychological phenomenon called “The Bystander Effect.”

According to wikipedia, “The bystander effect [...] is a psychological phenomenon in which someone is less likely to intervene in an emergency situation when other people are present …” Many examples of this phenomenon exist. Furthermore, a form of the bystander effect exists in our work environments. How many times have you noticed a physical hazard – a slippery spot on the floor, a cord across the walkway, an exposed hot surface, etc. – and walked right past it? How many times have you noticed a coworker doing something unsafe and said nothing? Are we destined to be passive observers? I think not!

Decide now to defy the bystander effect! Decide now to get involved! Decide now to be a hero!

  • If you encounter an emergency, evaluate the situation for your own safety, and then intervene. Others will most likely follow your lead.
  • If you are the victim, look directly into a bystander’s eyes and ask him or her for help. Tell him or her exactly what you need. Be direct and persistent. People really do want to help.
  • If you encounter a physical hazard, stop what you are doing and render the situation safe. If the task is more than you can handle, place a barricade around the hazard and notify appropriate personnel.
  • If you witness a coworker working unsafely, get involved. Help him or her do the task safely. Your coworker will appreciate your compassion and your help.

Most of us feel a strong compulsion to not get involved. Like it or not, we tend to be passive bystanders, waiting for someone else to intercede. I pledge to be that someone else. Will you make that pledge, too?

The Importance of Detailed Instructions

January 30th, 2010 | No Comments »

The following picture struck me as funny. A colleague sent it to me. A supervisor apparently left the thermowell with the night crew with instructions to install it while the unit was down. The supervisor returned the following morning to find it installed as depicted in the picture. It highlights the importance of taking nothing for granted and leaving detailed instructions.


QR Code

January 30th, 2010 | No Comments »

Drink More Ovaltine!

Get out your secret QR decoder rings, and decode the secret message on the left! Be the first to post the message in plane text in the comment section and win fame (but not fortune) and accolades from your friends and peers!

[Update July 21, 2008: Time's up; the answer is "Drink More Ovaltine!"]

Actually, QR code is neither steganography nor cryptography. It is a fancy barcode, created by Japanese corporation Denso-Wave.
According to Wikipedia, it was “initially used for tracking parts in vehicle manufacturing” but is now used for storing general information and “may appear in magazines, on signs, buses, business cards or just about any object that a user might need information about.”

Read what google says about QR Codes:

QR Codes are a popular type of two-dimensional barcode, which are also known as hardlinks or physical world hyperlinks. QR Codes store text which can be a hyperlink, contact information, telephone number, even whole verses of poems!

To the human eye QR Codes look like hieroglyphics, but they can be read by any device that has the appropriate software installed. Such devices range from dedicated readers to mobile phones. So, a person with a suitable mobile device can scan a QR code, on a magazine say, which causes the phone’s browser to launch to the URL in the QR code.

Google added QR Codes to its Google Chart API, so I added it to my Google Chart Generator. Now you can create QR codes, print them, and label everyting you own with them.

Google-O-Meter and Maps

January 30th, 2010 | No Comments »

I am surprised by the fact that Google Chart Generator is by far the most popular feature of my website. It makes sense, though, now that I think about it. It appeals to a much broader audience than everything else here. Google recently added a couple more chart types to its Google Chart API: Google-O-Meter and Maps. Therefore, in a shameless attempt to pander to the masses, I incorporated them into my Google Chart Generator.


Google-O-Meter creates charts similar to the familiar Speed-O-Meter (speedometer). Users can specify image size and image background color, dial color gradient, pointer position, and a pointer label. It’s simple, quick, and easy to use. Give it a try if you need to display a single point of data in relationship to its range.

My Stomping Grounds

Maps creates simple, yet elegant, charts of land areas, including Africa, Asia, Europe, Middle East, South America, USA, and the world. Users can highlight selected countries or states with any color along a user specified color gradient (scale). I see plenty of potential applications for Maps. Experiment with it; you may be surprised at how much you learn about geography.