All control is based on binary code. Representations of reality based on binary code are pretty simple when the task is sensing input switches and turning on contactors, programming is relatively straight forward. Sensing analog signals and representing them as zero’s and one’s isn’t too bad either. With some simple rules, we have created great sophistication in sensing and creating analog signals. If you don’t believe it, listen to your favorite MP3 or CD and recognize that everything you hear is zero’s and one’s.
But life gets more complicated when you have to use zero’s and one’s to describe 3 dimensional coordinates, trajectories and critical tool paths. These systems are typically the domain of robots and CNCs.
Then there is the world of electric motors. In some sense, there is nothing more “real time” than managing the voltage and current to an electromagnetic system that could be running at 20,000 RPM. Control systems have to be able to operate in the microsecond range to correctly manage the load.
At the opposite end of the speed domain is the process control world. Large scale processes like distillation of petroleum take hours and days to execute. In this domain, the process being controlled is represented in terms of analog values that are manipulated according to relationships based on proportionality, first derivative and integral damping of the control.
And its all called “control”. This is where the ambiguity starts. We have a single term which can refer to a wide range of referents.
Maybe where the guys at National Instruments got it right from the start. Though not it’s initial goal, the company created a descriptive language that started out with no assumptions or presuppositions. The original purpose was to control the widest possible range of scientific instrumentation. And with that purpose in mind, and as the capability to describe the world in terms of “instruments” in higher level languages, a very powerful platform of control evolved into what we now have in the current Labview programming software. A high level symbol set that can be used to describe almost any control requirement using graphical tools with virtually no hard coding. Pretty amazing stuff.
This is the only example I can come up with for the descriptive language of control. Is it perfect? Nothing is. But Labview is head and shoulders above anything else that’s out there. And I think this is the reason that National Instruments has grown from the niche player with the parallel instrumentation bus of the 1960’s and 70’s, into the $800 million giant that it is today. And the world is a better place for it.