Learning PC Based Controls

recondaddy

Member
Join Date
Apr 2006
Location
Atlanta, GA
Posts
77
Hello everyone,

I've been doing PLC-based controls for my whole career, but I am interviewing for a position in a company that also uses some PC-based controls (C, C#, C++, VB6, etc.)

Now, I've written some C++ and VB code for programming classes in college, but they've never controlled anything outside the PC. Can anyone recommend a good resource for getting up to speed on PC based controls. I've got scads of VB and C++ books, but none of them touch the issue of PC based controls or even something as simple as actuating a relay.

I NEED HELP!!

Thanks.
 
That's quite a broad topic. Usually, the Microsoft development tools are only used for HMI, or higher-level data acquisition where there is a PLC or some kind of real time control running underneath.

Some companies specialize in doing PC Based Real-Time control (Software PLCs), Beckhoff's TwinCAT is one such product, but it is programmed using the IEC 61131-3 programming languages (Like Ladder and Structured Text), again, the MS tools can be used, but only for the higher-level non-realtime tasks.

Otherwise, C and C++ can be used to program embedded systems, but that's a whole different skill set, usually not done by Controls Engineers.

Maybe you could do a little inter-personal networking and figure out ahead time time what kind of tools that company is using, and how they use them.
 
Steve,

Thanks for the reply. I was actually thinking that maybe I was asking the wrong question, because I didn't know the right question to ask.

I've seen some online projects where people have actuated simple relays using the DTR and RTS pins of a serial cable, but I knew that what these guys are doing is obviously much more complex. Though I haven't seen the guts of the system, I'm certain that there is some sort of I/O chassis that is interfaced with a PC that is running some sort of software that is designed for controls.

For example, I've used SoftLogix before, which is PC based controls. However, the program is written in ladder, function block, or structured text.

Does anyone know of a controls software where the controls engineer writes the program in one of the languages I mentioned (C, C#, C++, VB, etc.), and it interfaces with I/O through some sort of communications medium (ethernet, profibus, CAN, etc.)?

Thanks.
 
I used to do PC based control with QuickBasic. We used a single board computer connected to I/O through the serial port.

You need a knowledge of the specific communications protocol to get the I/O to do anything, but it is pretty straightforward for serial based stuff like Opto22 or Modbus. You need to write a routine that 'translates' your program code to/from the I/O protocol and call it whenever your program needs to read or write values to the I/O.
 
AHA!! QuickBasic does ring a bell. He mentioned that in the interview, yesterday. That, at least, points me in a general direction.

Thanks, guys.
 
There's a very good reason such topic are scarce. Writing your own PC based control is NOT cost effective or practical.

Let's say you want to develop a control system with say.. visual basic, you will need some or all the following:

  • Buy or write your own I/O driver.
  • Buy or develop your own hardware I/O interface.
  • Write code for the process or develop a higher level code (like ladder) with lower level language.
  • If you want HMI, you want to code a HMI as well and also develop a driver for the HMI.
There are related books, just google for "books visual basic automation"

I have only done one real project with Visual Basic and the result ended up more costly then a off the shelf project. I'm sure that's partly due to my lack of experience on VB; but supporting such program is always an issue.
 
The future of PC to PLC communications for us is "Ingear"

http://ehelp.ingeardrivers.com/

We used to use Kepware, but the communication lag was always an issue (usually 50mSec - 150mSec)

We have converted everything (almost) to Ingear and it is smooth running now.

Great interface if you can program in VB6.
 
There's a very good reason such topic are scarce. Writing your own PC based control is NOT cost effective or practical.

That could be true. The company I used to work for was phasing out PC based control and moving toward PLC based control back in the mid 1990s. The PLCs were getting into the price range that made them the better solution.

The only advantage that I can think of for a PC based system would be the ability to handle complex math calculations/formulas and such.
 
You folks have been a tremendous help. I've ordered a couple of books to get me started on the basics of PC-based control -- not on an industrial scale -- but on a home project scale.

That will at least get me started. I wish I had taken more courses on computer science in college, but I'll get there.

Again, many thanks.
 
PLC Programming Using Object Oriented Programming

Hi recondaddy,

There is one company I know of that offers Object Oriented Programming for programming PLC's. The company is 3S-Software.

You can find the details here: http://www.3s-software.com/index.shtml?en_object_orientation

For example, Beckhoff's TwinCAT PLC Software is based on CoDeSys from 3S-Software.

You can download a free version of CoDeSys here:
http://www.3s-software.com/index.shtml?en_download

They also have sample projects available here:
http://www.3s-software.com/index.shtml?sample_projects

I hope this helps, and good luck!

PS: you could also take a look here :
http://www.industrial-automation-hands-on.com/plc-programming.html
 
Last edited:
If you want real time controls you better not be using Windows.

We use QNX. The code is written in C or C++.
Currently we run our software on Advantech UNOs. They seem pretty rugged so far. Yes Delta Computer Systems really does computer systems too.

We have tried Windows CE. It wasn't lean and mean enough and it is really geared for high volume products not low volume systems.

One you get away from Windoze it is a whole new ball game. Everything is new and you must start thinking more like an embedded programmer that writes interrupt routines, tasks, threads, drivers, etc. In the PLC world 95% of the work is already done for you.
 

Similar Topics

I've gotten to the learning curve where I can program a call for pump to come on at set point but I'm not sure how to turn the same pump off when...
Replies
1
Views
50
I want to pick up an Allen Bradley PLC so I can practice writing programs. I have 10 years as a maintenance tech and a good understanding of...
Replies
8
Views
221
Hi all, i have started a new chapter in my career with a local company. a lot of their plc's is omron and i have the cx version 9.75 software...
Replies
25
Views
4,156
Can you guys recommend a course or book for my son to start learning PLC programming? He’s telling me he’s thinking of taking some $100 course...
Replies
31
Views
6,981
Hello All, I have recently had the opportunity to dabble in TIA portal for the first time. Been working in automation for almost a decade now and...
Replies
18
Views
2,594
Back
Top Bottom