Machine Control Industrial Automation Systems
 
Machine Control Industrial Automation Systems
  Machine Control Site Map Company Contact Info Services
Home
Up
 

Machine Control

 

Robotic controllers

Machine Control  Industrial Automation 

These are purchased from the robot manufacturer and control the x,y,z movements of the robots.  You will here letter abbreviations for types of machine controller, like the Fanuc RJ2 or RH controllers.  What you need to know though, is that these controllers are essentially a multi-tasking operating system housed in a box.  I will never forget my shock when I first found out that a the RJ2 controller mentioned above had basically the same processor as a MicroVax (this was in the mid 90's).  Since my background was on higher level machines, these robots ceased to intimidate me at that point.  

 

Robot controllers are interesting computers.  From one standpoint, they have massive computing ability.  They can calculate paths for the machine to take in three dimensional space in milliseconds, that will keep the robot from running into obstacles or from encountering a singularity.  But, they have problems with real-time processing of I/O signals.  Obviously, this is because they are calculating 3D paths.  So, for simple I/O considerations, a robot controller is ok.  If you only have a few inputs and they don't require millisecond response, you can use the robot controller to make decisions based on I/O.  However, if you have massive amounts of digital I/O, do yourself a favor and use a plc to handle the majority of the logic for you.   

 

Typically robot controllers program in two languages.  Some sort of high level language and a simple teach pendant based language.  The high level language resembles usually resembles something like Basic or Fortran, allowing for conditional branching based on inputs, counter values, timers etc.  The teach pendant based programming is a sequentially based language.  What I mean by this is that you "teach" the machine a pattern or sequence of events.  For instance, you can position it to a home position and tell it to start here.  Then move it to a pickup location and hit the record button, then tell it to grip an object, and hit the record button... and so on, until your sequence of events is finished.  Most applications are mainly teach pendant applications, a smaller percentage are programmed in the higher level language.

 

 

Programmable Logic Controllers ( PLC's )

 

There are many vendors of plcs out there, plcs are used for direct machine control.  PLCs are designed for systems with a massive number of I/O, and they are designed to appear to operate in a non-sequential way, as electrical circuits would.  The reality is that everything in the computer world is sequential, but computers are so fast that with a good operating system, they can appear to be simultaneous.  For instance,  the first thing the plc does is to take a snapshot of all of its I/O prior to doing a scan through your program.  Now that it has that snapshot, it can use your program to decide what to do with it, the reality is that it solves the first rung of logic in your program first, then it solves the second and so on, until it is done.  Then it updates the outputs.  But, what you perceive to happen is that all of the logic is solved at the same time.

 

PLC's are good at solving logic problems based on inputs and outputs.  They are good at utilizing counters and timers to make decisions and to run machinery.  PLC's are also pretty good these days at driving HMI's ( human machine interfaces ), like touchscreens and displays.  But, they are not too good at math.  Simple math calculations are painful to implement, taking a lot of time to program and debug.  This is why plc's and robot controllers can get along so well together.  Each is weak in the strong area of the other, and vice versa.  Most robotic systems will have some sort of plc control on it, with only simple handshaking between the robotic controller and plc.

 

When you get past the 3D stuff, and are just talking machine control, plc's are it.  One plc can control a whole production line, or there can be a plc on each machine and an area control plc, it just depends on the complexity of the machines involved.

 

 

Personal Computers ( PC's )

 

May or may not be industrial computers, usually running some version of an MS Windows operating system.  Can be used for direct machine control, but usually involved when there is a need for either data collection or operator feedback.

 

My personal favorite is PC based control, but that's probably just because this is where I have spent the most time.  You will find people that disagree, but in my opinion a PC can control any machine just as well as a PLC.  I will however, grant that it would take more programming effort to make this happen.  A PC could control a robot as good as any robot controller.  In fact, many robot companies are now using PC's as the basis for their newer generation of controllers.  A PC has a built in HMI, the monitor is perfectly capable of displaying process information back to the operator.  And a PC is great at math.  Oh, and by the way, a PC can more easily communicate with other computers on a network.  In recent years, there has been much effort by PLC companies to develop communications products that will allow PLC's to communicate over Ethernet and Devicenet and others.  I have used some of them successfully, and they still aren't as easy or intuitive as a PC networking interface.

 

If you should decide to use PC based control, the first thing you have to decide is; what type?  There are many ways to go.  You could use something like SoftPLC, where the PC is in a rack and looks like a PLC, but it programs like a PC.  Or, you could use an Industrial PC or Desktop PC for your control.  I have used both, and at least in the applications I used them in, I saw no advantage to the Industrial PC and ultimately replaced them with desktop PCs.  Ok, so you've decided to use a Desktop PC, now, what kind of operating system are you going to have, Windows NT, Windows 2000, Windows XP (professional), Windows CE or some other?  Don't even fool around trying to use a home edition operating system, you will have problems.  Next step, your I/O.  You could use Opto 22, you've heard a lot about that.  There are also a menagerie of Opto 22 look alikes out there.  Depending upon your budget, you could buy a PLC to use as a frontend to your PC control.  At first glance it seems to kind of defeat the purpose doesn't it?  But, there are situations where this is a good idea... and, there are many, many more alternatives.

 

There are, of course, more expensive and cheaper ways to proceed.  In general, I would say that using PC based control is no more expensive than PLC based control, and often it is more economical.  What you might sacrifice by going with PC based control is some reliability, again, it depends on your design and needs.  For example, many PLC's are designed with hot standby and switchover capability, so, if one processor goes down for any reason, the system stays up and runs.  There are things you can do and products that you can buy that will help make the PC this reliable too, but, I don't feel that it quite gets there myself.  If I were designing a nuclear plant, and had to have it working all the time, I would choose the PLC, not the PC.  Now, having said that, I have put in many PC systems and most have ran years without problems, 24 hours a day.  I've also had a couple fail in a few months, so, you will have to be the judge.

 

Above you will see pictured the instrument controls for a PC based industrial gage.  Designed in 1989, built and running in 1990, this and 25 other gages very similar to it ran for 15 years, until 2005 when the company went out of business.

 

 

 

 

 

Copyright © 2006 [ASI]