Creating a Homebrew Industrial Process Monitor?
pionzypherm asks: "I work at a glass plant for a major beer company. My job entails monitoring the furnaces that melt the glass. I have been working on a project on the side, collecting data from various sources and compiling it into an easily used form for the higher ups. I've finished two of our three furnaces, but one remains. This furnace uses technology from the early nineties. There is no networking, the hardware is completely closed and unavailable for any screen scraping. Two of the items I'm looking to monitor (and would appear to be the easiest starting point) are two valves for a gas and oxygen line which will provide data on a portion of our energy usage. I was thinking of a microcontroller board or something similar tied in to monitor the positions of the valves. I'm unsure where to begin though. What books, microcontroller boards or alternatives would you recommend for someone new to this? What suggestions would you have for such a project, and what pitfalls might I run into?"
You might try to ask this question on some of the robotics yahoo groups. They are filled with people that do this kind of thing for a hobby and spend a great deal of time thinking about such things not to mention that they do their work with small home brew or cheap microprocessor systems.
People that make their own CNC machines know a LOT about monitoring position of things etc. This might be your best bet for initial and longer term answers and help about how to accomplish what you wish to do.
One piece of advice though is think through what you want to ask. When you ask, explain the system in some detail, your thoughts on what might be monitored, how, and what your end goal is with your monitoring. They may have suggestions that go beyond your knowledge scope if you explain more about the system so they can think about the problem with all the requisite information.
Support NYCountryLawyer RIAA vs People
If all you need is monitor the position of a valve, you can homebrew the position sensor yourself using a plastic disc, a magic marker, and an LED. The sensor sends pulses as the valve turns, these get picked up by a small microcontroller board. Get an experiment board that supports RS-232 serial. Then, you write some minimal code on the microcontroller to process the events into some reasonable data format, and send them over serial to a PC. Do your real logging and data processing there, instead of on the micro board.
There are tons of options out there (I havent worked in the field for ~ 10 years). Assuming you can access something to get the readings off you could get a 90-30 PLC to pull the data points. The Cimplicity MMI is a great software package for monitoring, alerting, reporting etc. Try calling GE Fanuc and just tell them what you are trying to do and the can give you plenty of options.
Are they not willing to fund it/hire someone to do it?
You might be making this too complicated.
Let's say you misjudge the tolerances and your fancy little project gets turned into cinders/melts inside the furnace?
Why can't you monitor the volume of gas flow and then calculate the energy? I assume these gases are stored in a tank or something like that. It should be comparatively easy to attatch some type of flow sensor upstream of the furnace.
These folk:
http://www.parallax.com/
are in the business of making small microcontroller projects easy, quick and fun. Something like a member of their Basic-stamp family would be pleasantly overkill for your needs. They can convert your temperature readings, valve closures, infra-red readings and such to a time-stamped serial data stream that your computers can collect. There's a large number of good books on how to make the Basic Stamps do all sorts of cool stuff. So if you spend the money there, you'll be building a working system from cookbook instructions.
With externally actuated valves my favorite sensor is the hall-effect sensor (available at the site above). It's corrosion resistant, doesn't wear and is not angle sensitive. You glue the cute little magnet where it will fit, and the sensor where it will be close to the magnet in the on-position and Viola!
When you want a low cost solution, and to make thousands of them it's hard to beat the Atmel ATtiny series of microcontrollers for low power/cost and high reliability.
Spending the money up front for a reliable, standard solution will save a ton later when your homebrew breaks or some other poor bastard has to support it. There's been too many times I've opened a a panel where my first words are "WTF?".
Especially if you're working with oxygen. Get yourself a nice little flow meter (micromotion makes a good one). Then you can get both volume, and (presumably) valve position. If the valve is electrically actuated, you can use the information for a host of alarms.
Either way, if the information is valuable enough to record, its worth the money up front.
I am billdar, and I approve this message.
Put a toad in the furnace and then ignite it. If the toad does not jump out then clearly the furnace is not heating quickly enough. For day to day management use a dragon. They are very good with high temperatures and will be able to help out with your energy bills by giving your furnace the odd blast. One safety tip with the dragon though is that if your name is George its probably best not to let the dragon know that.
Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
What truth?
There is no dupe
Are you trying to monitor energy usage or provide more advance controls to the furnace? For control: first I would find out the specs on those valves (mfg, inputs, outputs) find out if the mfg has a control board and what interface it uses. Otherwise a PLC is one way to go, and usually can you can get i/o that will work in most applications. Start at one piece at a time. An industrial PC could work too. For Energy usage monitoring I would start by sub-metering the furnace's gas and electrical feeds. They have whole product line around this. Call some vendors and get a demo
If you just want the position of two discrete valves I would suggest finding a used PLC on Ebay. Single box types (like an Allen Bradley SLC 150) that work with discrete IO only can be had for a little bit of nothing. Your biggest concern with costs would be the programming software so I would stick with brands offer it free of charge.
Without knowing what kind of budgetary firgure you are working with to implement this it is hard to get much more specific.
"Sacrifice for the good of The State" - The State
i think the easiest sensor out there is the temperature, start there to learn
t rol.html
http://www.lemis.com/grog/brewing/temperature-con
and
http://www.hoppie.nl/tempsens/#hardware
will def help there
back in the day we didnt have no old school
There are people that do industrial automation. There are large companies that make every type of sensor you can imagine to monitor anything you want. There are industrial controllers to control automatic assembly lines. This stuff is all off-the-shelf. It's not "homebrew".
If you're asking this on Slashdot, you're looking in the wrong place.
Do it like a professional would do it. It's a furnace. Stuff can go wrong. Monitoring it with a half-assed homebrew approach is probably worse than simply observing it carefully and worrying about it all the time.
You should probably install an electronic flow control valve with a flow sensor. Use a microcontroller, PLC, or some such thing to monitor your sensor & control your valve. Monitoring it visually (via camera hooked to an embedded computer) is doable, but way harder than what I just described above. You also run into problems with high temperatures getting to your camera. Take a look at some of the solutions Freescale has to offer. You can order a development board, so you can breadboard something together. Should cost around $200. http://www.freescale.com/webapp/sps/site/homepage. jsp?nodeId=02430Z
For a SR Design project for Electrical & Computer engineering, we were tasked to do exactly this with a freescale microcontroller. We needed to precisely monitor the amount of certain gasses put into an oven we use to bake chips.
Hardest part about all of this is getting to know the specific PLC or microcontroller you're using. PLC's are easier (generally) to program than most microcontrollers, but not quite as versatile in number/type of interfaces.
You need to have a very good understanding of Assembly, C, & how sensors work.
You also need to be able to read & understand the mind numbing manuals & technical documents describing the sensors & microcontrollers you choose to use.
-Steve
I own a small glass studio and we use a number of different types of process controllers to run the furnaces and annealers. May I suggest you look at the Fuji PXG series of controllers; they are relatively cheap and support MODBUS/RS-485 which allows easy serial interface to PC. Fuji also provides a free basic application (PXR-Lite) to program and monitor the controllers. You can send me email jon[at]eastfallsglass[dot]com for more information.
If you are doing serious industrial work do not attempt to roll your own unless you absolutely have to. The money you save on professional instrumentation will be wasted in downtime and glitches.
There are plenty of professional solutions out there, from gas flow monitors to automated valve systems to integrated industrial process monitoring and control systems. If you are looking to control fuel and oxygen supplies then you need to get stuff that is blastproof so that a stray spark can't set anything off.
Start off with a major supplier like Grainger Industrial Supply. There are tons of components there that might suit your situation. Particularly look at their process monitoring section.
Sapere aude!
Why don't you use gas flow monitors instead. Most of the modern ones offer rs232 and some even have 10baseT interfaces. These devices are temperature compensated and can be set to match the gas being measured. This would be much more accurate than monitoring the valve position.
Judging from your question, you sound like a programmer thrust into a hardware problem or a plant engineer thrust into an IT problem. In either case, check with your contacts, suppliers or company engineering group to get suggestions for implementing and monitoring the monitor systems.
Perps the best place to start is OMEGA.
Check out the Arduino board.
L /
http://www.arduino.cc/
It is completely open source and talks to a computer via usb. It is designed as a multimedia interface. There are lots of tutorials that tell how to connect almost anything to it. There are connections to all kinds of web enabled and multimedia programs.
If you want ethernet connectivity, check out the Make controller.
http://www.makingthings.com/products/KIT-MAKE-CTR
It isn't quite as easy to deal with as the Arduino but it does have ethernet and has all the other advantages of the Arduino.
Check out Pic Micro controllers. You can even use something like PicBasic Pro (melabs.com) to program the PIC's these days. You basically give the chip a regulated power supply (or buy a prototyping board) and use code to work with the IO.
They even make blank prototyping boards that are already silkscreened for what components to use.
You'll need a pic programmer (I use this one, some blank PIC chips (a few dollars each at mouser.com), and some software to program them in.
Another approach is to use Parallax BasicStamps. They cost a bit more for each chip (like $40 I think), but you can get a kit with everything you need for a hundred bucks or so. They can be programmed in Basic, which makes them great for getting started in electronics.
Don't think that a small group of dedicated individuals can't change the world. It's the only thing that ever has.
One technique you might think about, coming from a "first do no harm" strategy to avoid being blamed if something goes wrong with the equipment, is to try to not add new sensors or valves and etc to the equipment, but try to take advantage of the increases in computing power to simply read it and recognize the situation exactly as a human would.
Check out this project: http://www.eissq.com/DialADC.html It describes software that uses a webcam pointed at an anologue needle gauge to recognize the position of the needle. Why not, as much as possible, set up passive sensors that don't touch or interact with the equipment in any way, feed them into a cheap multi-gigahertz computer, and process everything that way ? If the furance has a big accident, it would be hard to blame your apparatus.
...let's be clear about this: all you're doing is monitoring and gathering data - there is to be no feedback signal from the homebrew rig to control the valves. There's a whole field devoted to control theory, one that is best not trifled with, especially with industrial processes that can potentially cause fatalities.
If you really want meaningful data from those process streams, you're much better off installing calibratable (calibrable?) flowmeters on those lines that cover the performance range of the process fluids you're working with. If you've got the flow, you don't need the valve position, unless it's for a secondary indication to validate the valve's performance (e.g., position vs. Cv vs. measured flowrate). The flowmeters can be hooked up to provide data for remote collection, or more simply, display data for periodic local reading. Here's a mess to start with. Whomever you buy from, you'll need to develop specifications defining the operating range, operating conditions (pressure, temperature, humidity), power requirements, tolerances, calibration frequency, etc.
Science never settles, never rests.
I'm a high school student with a part time weekend job at the local bottling plant. I'm supposed to walk around with a clipboard and check the furnaces every half hour, but I'd rather just sit in my chair all night and read bad science fiction books. Does anyone know how I can use linux to solve my problem?
I read that as "Creating a Hebrew Industrial Process Monitor?"
Really wouldn't know where to begin with that one.
sic transit gloria mundi
There are a whole lot of things that go into handling an industrial system. If you're really going to try to do this on your own, you've got a lot of reading ahead of you; the cost of faults in an industrial system is typically prohibitively high. You're going to need a deep familiarity with modern methods. You're going to need to be familiar with direct hardware control, realtime coding (which is harder than most people think,) constant test polling, and all sorts of stuff most programmers never, ever have to deal with.
This is not something you can take lightly. If you're going to do this, you have to get it right, the first time, and that means your test cases and regression tests have to be diamond-hard, your specification has to be absolute, and you have to know your timing will not fail. These are difficult issues, but with the appropriate know-how, this can be done.
Here are some places to start:
Embedded Control:
Realtime:
Integration:
Testing:
StoneCypher is Full of BS
I build CNC and automation equipment, so I can pretty safely say that from what you describe this is a brain-squishingly trivial project. Probably one that can be done over lunch - After you spend five years climbing the learning curve, which is not at all trivial.
I would just ask someone who does do this for a living out for lunch, it'll take them ten minutes. I do this when I need coding done. The price of a few beers to get the occasional patch or script written is a lot more efficient than many years learning coding to do it myself the one time a year the need comes up.
The learning curve on automation hardware is at least as steep as learning Linux, and with crappier documentation. Coding guys usually seem to underestimate the complexity of the physical engineering and design side, and think they are always bright enough to just pick it up and do our jobs. There is more to hardware engineering than the butt-crack guy with a monkeywrench, just like there is more to coding than script kiddies.
In short - unless you want to go into this as a hobby or career change, just treat a hungry engineer to lunch and call it good. Even if you paid him it'd be less than the books you'd need.
The question is incredibly stupid. Rather like:
"I've been put in charge of network security, and I've noticed that intrusion detection is a problem, so I've decided to build a secure operating system to prevent this. Would you recommend a PC or a MAC architecture."
There is a WHOLE industry that provides solutions to this problem. How do you think facilities are automated, some random choice of micro-controller? You should BUY a solution, it will do more an cost less and do less harm.
I'm sure this post will start with bad karma, and be modded down to -273.15, but here's my take on it:
It's very cool you're doing this. As you stated it, this is a prototype so you're not about to rely on it, just play with it and test it. That's hacking at its finest: getting equipment to do unexpected but useful things, efficiently.
The people who say "contact a robotics firm/authority" are probably technically correct, but as Robert Heinlein was fond of saying, specialization is for insects. You might want to hit those resources for influences but keep going on the project.
My advice would be to decide whether you want a net of smart controllers, or a central controller processor connected to dumb sensors. Other than that, I know zero about this technology but think your project sounds like a lot of fun.
Never accept doubt as a substitute for enthusiasm.
technical writing / development
If there's a way to read a voltage level, you're halfway there. If not, you'll have to build or buy some kind of sensor. There's an open source software package called Argus http://argus.tcp4me.com/ that I use to monitor network devices but I've heard of people using it to monitor various manufacturing functions. It's overkill if you're just wanting to monitor 2 or 3 valves but if you have a lot of them it's a perfect way to do it. It has a web interface and can e-mail you when something changes state. It's pretty easy to install but you'll need somebody who knows a bit about Apache and CGI to help you set up the web interface.
I just tried the newest version yesterday and it started sending me alerts via my e-mail while I was still configuring it.
Kerry
Tell us why your Engineering department isn't involved. Right now it sounds like politics is going to be your biggest pitfall.
If you don't have an Engineering department, then Maintenance. Somewhere you must have people with titles like Millwright.
Even if all of that is contracted out (either third party, or a separate entity within the "major beer company" family) then you need to find those contractors and have a chat.
If you're trying to joe-together a proof of concept so that funding & authorization will follow, tell them that. Be clear you want it to become a proper project they will install. If you sound like to want to just fudge something together that they're going to have to repair later, they won't give you the time of day.
Also I'd look to the manufacturers of the existing equipment. There's good chance they've developed 'bolt-on' upgrades to do what you want.
Also I'd think about bouncing it off the younger Millwrights first. They're likely less bitter and more recently educated. You could have better luck getting them interested in talking about your ideas over their coffee break.
Anyway, let's empahsize that the Millwright/Maintence crews tend to be grumpy because they have to fix dumbass ideas all the time. Use that. Tell them straight up you've got an idea and you want their input so it doesn't become a hassle. That show of respect will go a long way.
Obtain a 68HC11 microcontroller (they are available for around $30, quantity 1). You will need an RS232 adaptor (figure another 10 bucks).
Attach a small disk to the valve. Put aluminum foil on one side, and earth the foil. Cut a series of holes around the disk (before attaching the foil, and the disc should be a non-conductive material). Put a sensing whisker so that the whisker is in contact with the foil, or disc. Now when the valve turns, the microcontroller will get pulses.
Of course, this doesn't tell you which way the valve is turning. Use a second circle of holes, offset, and another whisker, not offset (or the other way around). The phase between whisker activation will tell you which way the disk is turning.
===H===H===H===
=====W
==H===H===H===H
=====W
Where H is a hole, and W is a whisker pickup. If the lower pickup activates first (from a state of no pickups active), the disc is being rotated counter-clockwise. If the upper pickup activates first, the disc is being rotated clockwise.
The amount of rotation is determined by counting the activations on a single whisker. The speed of rotation is determined by activations/time.
So, the pickup shouldn't cost more than an evening to build, and two bucks in parts.
You can dispose of the microcontroller and directly (I would use a 7404 for buffering and some isolation) drive a PC parallel port.
Just another "Cubible(sic) Joe" 2 17 3061
I looks like you're trying to measure the flow of natural gas and oxygen by measuring valve position. While it is possible to do, you would need to be able to calibrate the position to flow rate, this would also require very consistent supply pressures and back pressure. On top of that the flow is not likely to be linear with valve position. I've worked with valve positionners that can do this but you'll need to do some redesigning of your control system to integrate them, for that you'll need an expert.
/ productlevel1.htm
If you have any budget at all to work with I would suggest direct measurement of flow using appropriate instrumentation such something from: http://www.emersonprocess.com/daniel/products/gas
They cover all sorts of volumes of flow, can track total volumes consumes, and can be interfaced with other systems either through analogue or digital interfaces.
I would also suggest checking out various industrial control/instrumentation/automation forums out there and maybe hunting down someone locally to consult with.
Monitoring gas and oxygen supplies and all the hardware that controls it can be dangerous. What if your homebrew micro-controller with its connection wires makes an earth-loop and noise gets on the signal control lines?
What is your fail-safe strategy? Do the valves fail open or closed if something short circuits in your setup? Does your home-grade micro controller survive the heat & vibration of the environment?
Buy something of the shelve from a "standard" industrial automation firm. You can get anything from a $49,- PID controller to a $5 million DCS just my googling. Used industrial control parts even turn up on Ebay these days.
Disclaimer: I actually seen a fully functional glass furnace in action. And I have also seen a fully functioning glass furnace during a control computer blackout. For the people that don't know glass furnaces: once you fire them up most designs need to run continuously until they reach their end-of-life. Once they powerdown and the glass solidifies the only way to get it running is to break it down and build a new one. Imagine that: A 12 year lifespan and you need a 100% uptime for the control computers (redundancy is your friend)..
I have a solution for you that will work. I thought I might give it to you for free (as in beer) but decided I would rather exchange it for beer (as in free). But, I only drink microbrews (being an Oregon beer snob)... so I guess you're out of luck.
"Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
Are you trying to extract flow information from non-instrumented valves? If so, you need to either replace the valve with something modern that outputs its data cleanly, or just insert flowmeters in series with the values to be monitored. Either way, get something clean and professional, don't do a DIY job that's hard to maintain. Also, once you have an instrumented device, I'd not recommend putting a homebrew micro-controller system on a factory flow, especially a glass factory, which abounds in abrasive dust. Any consumer cooling fan, for example, would quickly see its bearings ground and clogged by silicate dust. Get a real industrial device with sealed bearing, etc. Devices that can widthstand factory floor abuse, high temperature and high dust levels are expensive, but there is a good reason.
Fantasy: http://ferrisfantasy.blogspot.com/
Every time someone asks Slashdot a question like this, the hysteria crowd comes out of the woodwork to scream about how it's absolutely impossible for an "amateur" to do it, and you absolutely must hire a "professional," lest something tragic happen, ranging from the ever-popular "you'll lose your job!" to a bucket of dead puppies or something.
Yes, I realize that professionals are sometimes necessary, especially in situations where life is clearly at stake (pilots, medical, law, etc.) I'm sure some jackass will show up to tell me how this is an industrial furnace and that clearly means that a professional is warranted, but we have no idea what the particulars of this situation are. Just stick to the freakin' question, people.
It used to be the case that "professional" implied not only a degree of competence, but also a certain amount of integrity and experience. But that's just not true any more. All it means now is that someone gets a paycheck for doing something. Often it means that they're experts in nothing more than doing something as cheaply as possible.
For what it's worth, I'm personally fond of the Atmel AVR microcontrollers. Many, many people are also fond of Microchip's offerings in the PIC line. But for rapid development, something like the Parallax BASIC Stamp is probably the way to go. They're cheap and easy (like a good woman) and let you focus on the task at hand rather than the bit-level details of how to read sensors, etc.
There's standard hardware for this sort of thing. You can get little industrial I/O units with Ethernet interfaces. They're little boxes with an Ethernet connector on one side, and digital, analog, or thermocouple inputs on the other side. They're built to hold up in a factory floor environment, and easily replaced if damaged. You can even get wireless ones.
If you're going to send signals around a plant, 100baseT is actually quite noise-resistant. More so than TTL signals or even RS-232, because it's a twisted-pair differential signal.
To talk to these things, LabView is often a good option. You can create panels of dials, gauges, and graphs with little effort, log and analyze data, and give the plant operators the tools to see what's going on.
You can not go wrong with Allen-Bradley PLC systems. Find a large Allen-Bradley vendor (Rexel-Nelson is a good one) and use them as a resource.
Have them send a representative out to you and help tell you what product line will fit you best. That's what vendors are for.
If there is a possibility of becoming one of your suppliers, any good vendor will bend over backwards when you need help like this.
check out silicon labs' www.silabs.com (formerly Cygnal's) line of 8051 micros (up to 100mips or so I think). They can be ordered from digikey, cost $5-$10 and provide dozens of ADC channels, DACs, comparators, PWM, timers, onboard flash, ram, temp sensor, voltage references, internal clock, etc. etc.
Their development kits run under $100 and include target prototyping board, debugger/programmer, compilers, etc. I like the c8051f31x family, as they come in 32-LQFP packages, which are not overly fine pitched, so easy enough to work into homemade PCBs. there are also DIP packaged versions of a couple families. Handy for cranking stuff out quick. Think they even have nifty USB dongles ready-to-program.
I've used these in diy projects ranging from wine cellar temp controllers, weather station data loggers, cinema timecode generators / slates, robot control, arcade machine controls, not to mention all the boards these chips get designed into at work.
If you want to reply offline using the email address above we can refer you to an industrial monitoring systems specialist who does work for, among other companies, Corning Glass.
It's a furnace and there are rules that apply (eg AGA) which are in place to stop people doing things in an unsafe manner. There will be issues with explosive atmospheres (hazardous areas) and special instruments/equipment required.
I do this sort of stuff for a living and it is bad enough when an experienced engineer does not interperate the gas code correctly, you don't even seem to be aware of some of these issues.
Pay a professional who do this for a living and you won't have to be explaining why your employer needs to buy a new furnace, if not deal with death and injury.
Have you looked at all the data acquisition stuff National Instruments sells? They ought to have something that will work, although it will pretty much have to be PC-based. Definitely beats the hell out of trying to homebrew this, though. I'd say that if you have to ask, it'll be too much work -- microcontroller projects have a way of taking way more time than they should.
Is there a visible moving part that you could just take digital images of at intervals and use some visible, machine discernable marking point to calibrate a monitoring program?
STOP. You're being farmed.
Why use home brew you could do it with a PLC of almost any brand(most likely AB or Omron) over an Ethernet network that way you could automate the whole plant and remote monitor from home. If you go with AB you can use the DF1 protocol to read the information directly off the PLC it's not difficult at all. I just graduated from college and my senior project was similar to this with some other fancy stuff such as QC and a nice HMI and SCADA system. I say for 25k you could automate your plant and control product flow. By the sounds of it that might put you out of a job. well best of luck and make sure you don't use anything home brew because when something goes wrong with the hardware you made you will be the one in court trying to explain why the valve read open but wasn't and the pressure vessel exploded. PS. you could do it for cheaper but then you sacrifice quality and that means more repair time and down time.
So you're trying to use a "homebrew" solution at a major beer company? Isn't that like dividing by zero or something?
(note to morons: this is a joke)
It would help to know if you know whether the valves are calibrated in some way, as well as whether you can see the position of the valve in some way (not all valves you really can easily, like a gate valve, as opposed to a ball valve). Is valve position to gas flow known here?
If this is like a ball valve, you could find position with a camera aimed at the valve. As the valve opens or closes, the lever moves, which you can capture. As long as you have a standard behind it (like a ruler, circular ruler/dial), you could just simply use a camera and record it to a file. Then run an analysis program that takes stills from the vid file and notes position along with the frame (frame correlates to time) and get your info from there. All this is a high tech dial capture they use to use in regular furnaces that had a pen plot onto paper (the pen would move outward over time and the paper was gridded accordingly)--you'd see these on metallurgical furnaces.
If more like a gate valve, you could do the above by simply putting a mark on the handle (paint) and monitor that position.
Better would be to use a rotary encoder. There can go ridiculously high, but even nowadays, 2048 or 4096 positions per turn are typical (you can go far higher depending on your needs). Many, many hacks exist for this in the CNC world, but look up "rotary encoder" on google. US Digital makes one that you could probably figure out pretty quick, and you would have to hook it up to a counter (see boondog automation), for which there are chips to interpret the quadrature single and then you can choose your capture method (ISA card, conversion to serial, regular DAQ, etc.).
Note that with rotary encoding, there are sort of 2 types. One is a counter--it counts ticks of light/dark light as the encoder moves, and since there are 2 disks, it can tell position by the spectrum of light. The other is absolute position--this will tell you the position of valve in a circle. Both have their places and purposes--fast turning counts, I'd go with the counter type. Slow turn valve or especially valves like a ball valve that can't go over a revolution, I'd go absolute position.
btw, this is from an amateur.
At last count I think there were something like 38 states that offer Control Systems Engineering as a practice of engineering one can register for. This is basically the ISA's Control Systems Engineer certification.
For those who are clueless about the whys and wherefores of registration of professional engineers: All states in the US offer tests for which you can become a registered professional engineer. It's basically a way to put your name on the line. You stamp the drawings and documents with a seal that says you take responsibility for the design. Note that this stamp works both ways. If you consult and the customer changes your stamped design before or during construction, you can not be held liable. However, if they adhere to your design and it fails to perform as expected, you can be held liable.
It also entitles you to act as expert witness in a court of law. Many municipalities insist that a senior operations or design office have a registered professional engineer in charge.
Control Systems Engineering is an extremely broad field of study. It includes practical applications of thermodynamics, fluids, valve types and applications, instrumentation, real time network design, Laplace transforms of various process behaviors, Understanding P&I Diagrams, and so on. There is a lot to study and a lot to know. I came at my practice via an electrical engineering degree. However, there are nearly as many chemical, mechanical, and civil engineers among our ranks.
Most schools don't teach controls engineering. The ISA is hoping to slowly change that. However, there aren't many who choose to get in to engineering in the first place. Engineering doesn't present a clear promotion path to the executive halls as one might see with the sales, accounting, or legal professions. So most of our students are in it for the love of the subject, not because they seek to become top dawg of the company.
On the positive side, Professional Engineers often have opportunities to join standards committees. And it is through the standards processes that one can really make a difference in the world. I wish there were more people interested in this sort of thing, but sadly, very few students want to think that far ahead...
Nearly fifty percent of all graduates come from the bottom half of the class!