I’m often asked by students how to become a PLC Programmer. In this article I will go over some of the key steps I took along the way to break into this exciting field. Of course there is no one-size-fits-all solution here, and I’m sure there is an infinite number of paths one can take. That said, I can only reflect on my own experiences and the things that led me to the point I am at today.
If you’ve been wanting to break into this exciting field and have often wondered how to become a PLC Programmer in today’s fast paced manufacturing environments, then I encourage you to keep reading…
What Is The Job Of A PLC Programmer?
A PLC Programmer is someone who designs, creates, maintains, and troubleshoots industrial automation systems that are either directly or indirectly driven by Programmable Logic Controllers (PLCs). This individual will be responsible for all aspects of the safety and reliable control of machines and automation equipment by leveraging industrial grade hardware and software.
Typical PLC manufacturers will include but are not limited to:
- Allen-Bradley (Rockwell)
These are the more common ones you will see in industry, listed in the order of popularity from top to bottom (at least in North America). To become a legitimate PLC Programmer you should have a firm command of at least one of these control systems, with exposure to two or more a definite asset.
Fortunately, once you have a good command over one of these control systems, making the leap to one of the other ones listed is not an insurmountable task. They all operate on the same underlying principles, therefore, aside from learning their particular “IDE” (integrated development environment) and nuances, it should not be too difficult a task to learn the others when you need to.
For someone getting started today, who lives in North America, I would definitely recommend that you lean towards either Allen-Bradley (Rockwell) or Siemens PLCs. These two manufacturers are by far the most common programmable logic controllers used in industry today and will be the focus of the reminder of this article.
Where To Begin Your Journey As A PLC Programmer?
First, I am a big advocate for education of any kind, however, there is merit to gaining formal education from an accredited post-secondary institution. Especially when your just starting out or trying to get your foot in the door with a potential employer. Having an accredited credential can be extremely valuable and separate you from the rest of the pack.
Therefore, my #1 recommendation for breaking into the field of Industrial Control, and PLC Programming is to get a high quality education from an accredited post-secondary institution in your area. Now I’m sure I am going to get a few people that will say they didn’t need to go to college or university, however, I would say to them, you are the exception not the norm!
#1 – Get A Post-Secondary Degree or Diploma
As I suggested above there is no substitute to showing a potential employer that you have both the “hard” and “soft” skills necessary to “hit the ground running” and immediately have a positive impact on their company.
I assure you, having a post-secondary degree or diploma in your back pocket when you walk into an interview, particularly when you have no “real” hands-on experience in the world of automation, will be your greatest asset.
So what programs should you consider taking? I would say any program that is either directly or indirectly related to the field of engineering, automation and control would be a huge asset. So these are programs such as Electrical Engineering, Electronics Engineer, Computer Engineering, Mechanical Engineer, Mechatronics Engineering and the list goes on.
Really, engineering programs of most any kind will speak volumes to a potential employer about your ability to quickly get up to speed with any challenge that you are presented with. This is largely because, in most cases anyway, at least one of the people sitting across the table from you will know exactly what you had to endure to get to this point…once upon a time they were sitting across the exact same table in the exact same chair you are!
The University or College Conundrum
So now the big decision is do you go ahead and register at your local community college or pursue a university education. This is always a debate as there are pros and cons to both. That said, in my experience (and I am a full-time teacher at my local community college in Electrical Engineering Technology) colleges are more geared to those vocational skills that employers are actively seeking. Meaning, a college education will equip you with the specific hardware and software skills being utilized in industry today.
This is one of the huge advantages a college education will have over a traditional university education. Universities are geared to the more theoretical aspects of a given engineering discipline and is definitely more mathematically rigorous. However, where universities shine is the knowledge that it will instill that will require you to think analytically and outside of the box, to think critically, and to problem solve.
So which one do I recommend you’re asking…well, if your intent is to become solely a PLC Programmer then I would certainly recommend the college route. However, if your aspirations may transcend this profession and your are interested in moving up a “company ladder” or into leadership and executive roles, then I would say university is the way to go. Having only a college diploma can be limiting in some cases but certainly not all.
Have I answered the question??? I think so, but if you have the luxury of time, like most young people do, I certainly always recommend to my students that they get both a degree and a diploma, this will most certainly serve you best and separate you from the crowd! And since most 3-year college diploma programs have articulation agreements with universities, completing your degree after you complete you diploma can be fast-tracked.
But I Already Have A Degree And/Or Diploma!
My #1 recommendation above assumed that you don’t have either a degree or diploma in a related engineering field, but what if you do and you just want to learn PLC’s and want to become a highly employable PLC Programmer!
If you fall into this category then first let me start by saying congratulations! You have accomplished something that nobody on this planet will ever be able to take away from you, well done! Now let’s move on to what to do next seeing that you have a big part of the process already out of the way.
#2 – Get Your Hands Dirty Using PLC Hardware And Software
Don’t get me wrong this is not something you have to wait until you have a degree or diploma to do. In fact, there is no time like the present to start playing with the actual hardware and software used to control tens of thousands of automation systems in production today!
The fact that you are on this website is a great starting point, so if you haven’t already done so, Register Today! Now that you’re here and have registered, you can take advantage of our forums, the many in-depth articles we have here on PLCGurus.NET, and the growing number of YouTube video tutorials all aimed to do one thing…teach you how to become a skilled and efficient PLC programmer! You can also view a large number of our videos right here on our Learn PLCs page.
To Emulate Or Not To Emulate – That Is The Question!
So what do I think of emulators. Well before I discuss this topic, perhaps I should tell you what an emulator is in case you don’t know. Using Rockwell’s emulators as an example, an emulator is a way to simulate or “emulate” physical PLC hardware in software on your PC or laptop. That’s right, some of the “bigger” automation companies such as Rockwell provide software based emulators that allow you to create, upload, download and run programs without having to pay for the actual physical hardware.
In fact, I did a complete article that will walk you through step-by-step how to download, install and run RS500 Emulator software completely free. Also included in that article is a three part YouTube video walking you through everything you need to know to get your hands on this free software. Watch the first video right here, right now!
Granted the software that is available for free download is the RSLogix Micro Edition that supports only the MicroLogix 1000 and 1100 series controllers. However, this is just a stripped down version of the full blown RSLogix500 programming software.
This means that once you have a good command of the MicroLogix controller platform and the RSLogix Micro Edition software, you will have no problem programming the more powerful and traditional SLC based PLCs on the market…and believe me when I say, there are a lot of them out there! This includes SLC 5/01’s, 5/02’s, 5/03’s, 5/04’s and the Ethernet based 5/05’s. The software to program all of these controllers is exactly the same!
The Downside of PLC Emulators
While emulators are a great way to get you going with creating, uploading, downloading and running programs in a “virtual” processor, there are some limitations.
- There is no way to interface actual physical I/O. So you don’t get that tactile hands on learning you would with physical PLC hardware.
- You are limited to emulate discrete I/O (on–off) only, meaning, no analog!
- You don’t get a good feel for setting up communication drivers and uploading/downloading projects over different communication protocols such as RS232 serial or Ethernet.
There’s Nothing Like The Real Hardware!
If you are already working in the field and you have access to actual PLC hardware, then, like they say, Bob’s your uncle! PLC hardware, as it is, can get quite pricey, especially if you’re aiming for the Allen-Bradley or Siemens variety.
However, if you don’t have the luxury of working for someone who can fund your PLC Programmer ambition, there are some lower cost solutions available. For about $400 you can pickup a MicroLogix Programming kit on Amazon that will give you everything you need to get up and running quickly with the Allen-Bradley MicroLogix based controllers and the RSLogix500 programming software mentioned above .
Check out the Allen-Bradley MicroLogix 1000 PLC Trainer ~ PLC Training Starter Kit With Lessons For RSLogix 500 on Amazon!
And if you’re looking for the perfect text to complement the above trainer or just want to gain more insight into Rockwell/Allen-Bradly SLC based controllers, then I would also recommend Hands-On PLC Programming with RSLogix 500 and LogixPro also on Amazon!
But What Else Can I Do – Microcontroller Anyone?
This is the part where I move slightly away from traditional PLCs. Like I said above, PLC’s can get quite pricey especially if you’re funding it yourself. Therefore I highly recommend that you look at getting your hands on a commercial off-the-shelf (COTS) single-board computer (SBC).
The reason I recommend them, cost benefits aside, is that they will expose you to higher level programming languages such as C, C++, C#, VB and Java. If you really want to differentiate yourself as a premiere programmer, then learning higher level languages is an absolute MUST!
Here’s a quick list highlighting what learning high level programming languages on a COTS SBC can do for you:
- Expose you to languages that are strongly typed that breed good programming methods and design patterns.
- Factory automation is no longer running on the production floor in isolation. With business intelligence (BI) systems converging with factory automation systems, the need to have a firm grasp on these higher level languages has never been more important than it is today.
- Teach you the proper way to architect larger scale software applications and problem solving methodologies.
- Expose you to both discrete and analog I/O and how to wire them.
- Did I mention cost…for under $100 you can pick up one of these SBC’s and unlock a world of possibilities.
I actually did an article that pitted PLCs versus Microcontrollers. Check it out once you’re done over here!
If you’d like to pickup one of these credit-card size power houses, let me recommend 3 of them so you’re not overwhelmed when you go off and do a Google search.
- Beagleboard (BeagleBone Rev C)
- Raspberry Pi 3 Model B Motherboard
- Elegoo EL-CB-003 MEGA 2560 R3 Board
All of these boards are extremely powerful and will give you hours of programming pleasure. That said, for the purposes of industrial type applications I have to recommend the Beaglebone Black listed in the number one spot above.
I simply love these little SBC’s and personally own several…(I collect these things like Pokemon Cards)! Check out the image below, these guys are truly the size of a credit card, however, are jam packed with computational power.
The Beaglebone Black has a 1GHz ARM-based CPU, 512MB of RAM and 2GB of onboard storage, expandable with a MicroSD slot. In practical terms, this is enough to run a Linux OS, along with a web browser and other desktop applications. It can be leveraged to be a powerful tool for sophisticated projects, and a good way to learn about Linux-based operating systems.
If you are considering purchasing one of these devices to start playing with (I highly recommend you do), I would like to recommend this book that is available on Amazon.
It is authored by Derek Molloy and titled Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux. It is by far the best and most thorough book I have ever purchased on COTS single-board computers in general, with specific emphasis on the Beaglebone Black SBC.
Well I think I’ve rambled on enough and hopefully have given you some useful things to think about and take away with you. I certainly hope you enjoyed reading this article and if you’re interested in knowing How Much Money A PLC Programmer Makes, be sure to check out the article.
I do encourage you to become a member of our growing community of professional engineers, technicians and technologists, Register Here!
Also, check out our YouTube Channel to see some great videos…and don’t forget to like and subscribe to our channel!
If you run into any problems in your day-to-day engineering activities please be sure to check out our Live and Interactive PLC Forum! And if you so desire, assist other community members by replying or offering helpful information to the questions or challenges they may be facing right now!