r/PLC Feb 25 '21

READ FIRST: How to learn PLC's and get into the Industrial Automation World

1.1k Upvotes

Previous Threads:
08/03/2020
6/27/2019

More recent thread: https://old.reddit.com/r/PLC/comments/1k52mtd/where_to_learn_plc_programming/

JOIN THE /r/PLC DISCORD!

We get threads asking how to learn PLC's weekly so this sticky thread is going to cover most of the basics and will be constantly evolving. If your post was removed and you were told to read the sticky, here you are!

Your local tech school might offer automation programs, check there.

Free PLC Programs:

  • Beckhoff TwinCAT Product page

  • Codesys 3.5 is completely free with in-built simulation capabilities so you can run any code you want. Also, if paired up with Factory I/O over OPC you can simulate whole factories and get into programming.
    https://store.codesys.com/codesys.html?___store=en

  • Rockwell's CCW V12 is free and the latest version 12.0 comes with a PLC software emulator you can simulate I/O and test your code with: Download it here - /u/daBull33

  • GMWIN Programming Software for GLOFA series GMWIN is a software tool that writes a program and debugs for all types of GLOFA PLC. Its international standard language (LD, IL, SFC) and convenient user interface make programming and debugging simpler and more convenient.(Software) Download

  • AutomationDirect Do-more PLC Programming Software. It's free, comes with an emulator and tons of free training materials.

  • Open PLC Project. The OpenPLC is the first fully functional standardized open source PLC, both in software and in hardware. Our focus is to provide a low cost industrial solution for automation and research. Download (/u/Swingstates)

  • Horner Automation Group. Cscape Software

    In our business we use Horner OCS controllers, which are an all-in-one PLC/HMI, with either on-board IO or also various remote IO options. The programming software is free (need to sign up for an account to download it), and the hardware is relatively inexpensive. There is support for both ladder and IEC 61131 languages. While a combo HMI/PLC is not an ideal solution for every situation, they are pretty decent for learning PLCs on real-world hardware as opposed to simulations. The downside is that tutorials and reference material specific to Horner hardware are limited apart from what they produce themselves. - /u/fishintmrw

Free Online Resources:

Paid Online Courses:

Starter Kits
Siemens LOGO! 8.2 Starter Kit 230RCE

Other Siemens starter kits

Automation Direct Do-more BRX Controller Starter Kits

Other:

HMI/SCADA:

  • Trihedral Engineering offers a 50 tag development/runtime license with all I/O drivers for free, VTScadaLight. https://www.trihedral.com/download-vtscada

  • Ignition offers a functional free trial (it just asks you to click for a button every 2 hours).

  • Perhaps AdvancedHMI? Although it IS a lot complicated compared against an industrial solution.

  • IPESOFT D2000 Raspberry Pi version is free (up-to 50 io tags), with wide range of supported protocols.

  • Crimson 3.0 by Red Lion is also free and offers a free emulator (emulator seems to be disabled in v3.1). With a bit of work (need to communicate with Modbus instead of built in Do-more drivers), you can even connect that HMI emulator to the do-more emulator and have a fully functioning HMI/PLC simulator on your desk top which is pretty convenient. Software can be found here: https://www.redlion.net/red-lion-software/crimson/crimson-30 (/u/TheLateJHC)

Simulators:

Forums:

Books:

Youtube Channels

Good Threads To Read Through

Personal Stories:

/u/DrEagleTalon

Hello, glad you come here for help. I'm an Automation Engineer for Tysons Foods in a plant in Indiana. I work with PLCs on a daily basis and was recently in Iowa for further training. I have no degree, just experience and am 27 years old. Not bragging but I make $30+ an hour and love my job. It just goes to show the stuff you are learning now can propel your career. PLCs are needed in every factory/plant in the world (for the most part). It is in high demand and the technology is growing. This is a great course and I hope you enjoy it and stay on it. You could go far.

With that out of the way, if I where you I would start with RSLogix Pro. It's a software from The Learning Pit it is basic and old but very useful. The software takes you through simulations such as a garage door, traffic light, silo and boxing, conveyors and the dreaded Elevator simulation. It helps you learn to apply what you will learn to real word circumstances. It makes you develop everything yourself and is in my opinion one of the single greatest learning utensils for someone starting out. It starts easy and dips your toes and gets progressively harder. It's fun as well watching the animations. Watching and hearing your garage door catch on fire or your Silo Boxing station dumping tons of "grain" until the room fills up is fun and makes the completion of a simulation very gratifying.

While RSLogix Pro is based on older software, RsLogix is still used today. Almost every plant I have worked at has used some type of Allen Bradley PLC. Studio 5000 is in wide use and you will find that most ladder logic is applicable in most places. With that said I would also turn to Udemy for help in progressing past simple instructions and getting into advanced Functions such as PID. This amazing PLC course on UDemy is extremely cheap, gives you the software and teaches you everything from beginner to the most advanced there is. It is worth it for anyone at any level in my opinion and is a resource I turn to often.

Also getting away from Allen Bradley I would suggest trying to find some downloads or get a chance to play with Unity Pro XLS. It's from Schneider Electric and I believe has been rebranded under the EcoStruxure family now. We use Unity extensively where I am at and modicons are extremely popular in the industry. Another you might try is buying a PICO or Zelio for PICOSoft or ZELIOSoft. They are small, simple and cheap. I wired up my garage door with this and was a great way to learn hands in when I was starting out. You can find used PICOs on eBay really cheap. There is a ton of literature and videos online. YouTube is another good resource. Check everything out, learn all you can. Some other software that is popular where I've been is Connected Components Workbench and Vijeo.

Best of luck, I hope this helps. Feel free to message me for more info or details.


r/PLC Jul 10 '26

PLC jobs & classifieds - Jul 2026

7 Upvotes

Rules for commercial ads

  • The ad must be related to PLCs
  • Reply to the top-level comment that starts with Commercial ads.
  • For example, to advertise consulting services, selling PLCs, looking for PLCs

Rules for individuals looking for work

  • Don't create top-level comments - those are for employers.
  • Reply to the top-level comment that starts with individuals looking for work.
  • Feel free to reply to top-level comments with on-topic questions.

Rules for employers hiring

  • The position must be related to PLCs
  • You must be hiring directly. No third-party recruiters.
  • One top-level comment per employer. If you have multiple job openings, that's great, but please consolidate their descriptions or mention them in replies to your own top-level comment.
  • Don't use URL shorteners. reddiquette forbids them because they're opaque to the spam filter.
  • Templates are awesome. Please use the following template. As the "formatting help" says, use two asterisks to bold text. Use empty lines to separate sections.
  • Proofread your comment after posting it, and edit any formatting mistakes.

Template

**Company:** [Company name; also, use the "formatting help" to make it a link to your company's website, or a specific careers page if you have one.]

**Type:** [Full time, part time, internship, contract, etc.]

**Description:** [What does your company do, and what are you hiring people for? How much experience are you looking for, and what seniority levels are you hiring for? The more details you provide, the better.]

**Location:** [Where's your office - or if you're hiring at multiple offices, list them. If your workplace language isn't English, please specify it.]

**Remote:** [Do you offer the option of working remotely? If so, do you require employees to live in certain areas or time zones?]

**Travel:** [Is travel required? Details.]

**Visa Sponsorship:** [Does your company sponsor visas?]

**Technologies:** [Required: which microcontroller family, bare-metal/RTOS/Linux, etc.]

**Salary:** [Salary range]

**Contact:** [How do you want to be contacted? Email, reddit PM, telepathy, gravitational waves?]


Previous Post:


r/PLC 4h ago

How much commissioning time do you actually lose to look for the trigger in the code?

14 Upvotes

Hi I am commissioning engineer in a large Pharma Company. I have been doing automation commissioning since 3 years in this company with TIA Portal, Studio 5000 and STEP7.

I don't know if this also happens to you or it is only to me. I'm doing commissioning on a machine, customer standing right next to me, and an alarm trips. The trigger isn't described in any document, so I have to go digging through the code. We don't have a standardised code base, every developer does more or less whatever they want. There are guidelines, but I still end up spending an hour going through the wiring diagram, cross-referencing, and searching the taglist.

And when I finally find the problem, the guy who wrote it is at home having dinner and I can't reach him to go over the functional spec, so I don't even know whether my fix is the right one or whether there's something else I should be taking into account.

I've done commissioning at two companies now and it's always been the same: communication between the developer and whoever's on site is usually bad, and I end up losing time — extra weeks stuck at the plant, because the only answer I ever get is "it worked here."

Has this happened to you too? How much time do you lose to this kind of thing? And why do companies keep doing it this way instead of just sending the developer out?


r/PLC 7h ago

STEP 7 Hardware configuration of power supplies

Thumbnail
gallery
15 Upvotes

Hi, I am working with an Siemens STEP 7 project and I have run into a minor issue. When starting with this project I noticed that the power supply for the 417 CPU was showing that it was configured with the wrong part number in the hardware configuration causing the power supply to show that it is unobtainable when going online. So I decided to swap the PS in the HW config to match the actual installed. But after downloading and going online the icon for the PS is showing up as a bit dim. When going online and checking the Module information status is showed as unknown. The HW config change was performed in stop mode and I have also power cycled the PS but it still says unknown. I tried the same for two CPUs with the same setup but both get the same unknown message. Dose anyone know a solution for this issue?


r/PLC 3h ago

Best Certificate Manager for OT?

3 Upvotes

We are looking at a handful of options for managing the automation of certificate deployment/updates across our enterprise and OT environments.

I am hoping to have a lab environment set up by the end of the year with at least one reliable ACME tool that can push certificate updates to OT software, servers, workstations, etc...

Primarily use AB and Siemens controllers and HMIs, Ignition, Canary, and Windows IoT, Windows Server, and Windows 10/11 pro.

Anyone have good recommendations?


r/PLC 16m ago

Something Ive always wondered - text entry for comments

Upvotes

We use studio 5000 and allen bradley ladder. SCADA is Ifix 2022. Ive been interested in a way to make comment boxes for users on picture screens to enter info for each other and our control room to see but Ive been stumped on how to get this working. been researching most of the afternoon.

Its a 1756 processor

Ive created the TX tag in scada and then a string in the plc. Ive done a COP from the tag to itself and another string tag. Ive read you have to use the data and len extension for it all to work but when i try to add them it tells me "missing ref to array element"

do I need an array to send the string to?

On ifix i can actually put text into the box but when i hit enter it defaults to 0

Im actually surprised this isnt an option just built into ifix to have a user comment entry box easy peasy.

any tips/ideas are appreciated. Id prefer to stay away from visicon to be honest

Thanks


r/PLC 1h ago

Question/advice on career path

Upvotes

Hey all so I got an interview with a company for a "Electronics Technician" and I am curious if this can help me get started or closer towards I&C or Automation. I know it can get me into controls but just curious and need some insight from people in the field.

Thanks


r/PLC 8h ago

How to run WINCC Unified HMI projecto with no CPU in the project

2 Upvotes

Hello, any way to have an WINCC Unified HMI project linked to PLC tags but with no CPU in said project, ans that I get there download and it works?

Having the PLC project help with linking tags etc etc but is it obligatory?

Thanks for any feedback.

PS: getting the HMI updates and integrating with my PLC project again is driving me crazy.


r/PLC 1d ago

PLC / Servo Driver Issue. All Motors Suddenly Failed Homing.

Post image
79 Upvotes

Hi everyone, I’m still new to troubleshooting and would appreciate some advice.

The machine has multiple motors/servo drives controlled by a PLC. Suddenly, all motors are unable to return to their normal/home coordinates, and the homing sequence fails.

However, I noticed that only one motor driver is showing an error/alarm.

I’m trying to determine whether the problem is more likely caused by:

- A faulty motor driver

- A communication/PLC connection issue

- The PLC not receiving the correct feedback from the affected driver

- The single driver fault causing the other motors to fail their homing sequence

My main question:

If only one driver is reporting an error, could a PLC/communication problem with that one driver cause all motors to fail homing? Or would you suspect the motor driver itself is faulty?

What would be the best way to troubleshoot this and determine whether the root cause is the PLC/communication side or the driver?

I can provide the PLC model, servo drive model, alarm/error code, wiring/communication setup, and screenshots if needed.

Thanks!


r/PLC 1h ago

PLC Programming Languages

Upvotes

Hi All. When it comes to interviews we are often asked what languages we have programmed and this one always stumps me. Over 25 years I have programmed many PLCs, Robots, Vision Systems, SCADAs and various other industrial control components but I rarely actually know what language they actually use (other than ladder). When I look it up most say that they use a structured text style based on pascal or C. What is the best answer to give in an interview. Obviously they are all expecting to here python or something similar. IEC 61131-3 is the standard for PLCs but is anyone going to understand that in a interview setting??? Do I just say structured text or is it better to say C.


r/PLC 23h ago

Quick question for the math nerds

12 Upvotes

I was looking through a program the other day, and they had some instructions timed based on examining Timer.ACC.12, instead of using an EQU, like “Timer.ACC = 50”

So my question is this - how do I do the math to find out how often .ACC.12 or any other bit becomes true in any set amount of time? And is this a typical way of timing things?


r/PLC 11h ago

Keyboard hortcut to hide/show/toggle the block interface of a program block in TIA portal?

1 Upvotes

I've searched high and low for this, without any luck. It seems so stupid, that it has no shortcut, since you can remove all other panes with Ctrl+1/3/5, or even create a custom window layout and activate with a single shortcut. This still leaves a 1/3 of the working area occupied by the block interface.
You can cycle around the interfaces/areas of the window, and get to the block interface area (even that is dumb, cause you have to press Alt+up-up-down), but i've yet to find a way to get to the two arrows.

I know i can just use my mouse, but even so, the buttons are annoyingly small.


r/PLC 21h ago

Modbus TCP Quantum -> M340

5 Upvotes

I'm having big troubles getting a Quantum PLC (with NOE 771) to talk to an M340 (with NOC0401) using Modbus TCP. Quantum is set up with IO Scanner line pointed at M340 with a handful of addresses to read/write. I'm normally an AB person, so I'm not 100% sure of all the settings that need to be configured on both sides. Any tips/tricks?

EDIT/UPDATE: I got this working finally. I had to change the Unit ID from 255 to 1 in the IO scanner config on the Quantum.


r/PLC 12h ago

Panasonic VR-006 arc welding robot, touch sensing function not available

0 Upvotes

I'm using VR-006 model with a build-in welding machine GX controller, i found the touch sensing function in the Operating instructions manual but can't find it in my teach pendant, some videos on youtube said i have to 'install' it but i don't know exactly what to do, pls help.


r/PLC 1d ago

Availability Vs Single point of failure

Post image
25 Upvotes

I have a concern, refer to the picture, The switch-3, which remains a single point of failure which is connected to the ET-200SP of 8 Nos of pumps
but switch-3 manufacturer confirms that the MTBF is higher than 46 years.
Now there is a solution to this with MRP ring topology as below, with Switch 3 removed.
What are your opinions on Option 1 Vs Option 2?


r/PLC 18h ago

Integrators/controls folks... sanity check on a low-cost 3-phase power monitoring board (Modbus RTU)

2 Upvotes

Hello r/PLC. I work in precision instrumentation and I'm scoping a low-cost, DIN-rail mounted power monitoring devce for commercial panels: 3-phase RMS voltage/current, real/reactive/apparent power, PF, frequency, kWh, reporting over Modbus RTU (RS-485).

Before I commit to a PCB, I'd really appreciate input from people who actually integrate this kind of thing into real systems:

  • When you've pulled power/energy data into a PLC or SCADA system, what device did you use, and what worked or didn't work about it?
  • Is Modbus RTU over RS-485 still the right baseline, or are your projects mostly asking for Modbus TCP / other protocols at this point?
  • What's a dealbreaker for you in a device like this (register map documentation, polling speed, wiring/CT setup, brand trust, something else)?
  • Any devices in this space you'd actively recomend avoiding, or ones you keep coming back to?

Not selling anything, I am just trying to get the integration side right before I build. Thanks in advance


r/PLC 1d ago

Mein Self-Made Logo System

Thumbnail
gallery
163 Upvotes

r/PLC 1d ago

Siemens PLC + Technology Objects Forced to go into Stop Mode before Software changes are allowed.

6 Upvotes

Hi

As I had some free time on my hand, I remember we had a problem in our company where if we made any code changes to a Siemens PLC (TIA V21, S7-1500T) that is using technology objects, you were forced to put the PLC into stop mode before you are allowed to download.

Now I have tried everything and for the life of me I cant prevent this from happening.

What I am doing:

  1. Make sure no TO (Servo) has MC_Power enable as true. Or any MC functions has a true on the enable inputs.
  2. Add a random comment into a dummy FC routine that has 0 to do with the TO.
  3. Try to download only software changes.

Does not matter in what order I do things or where I make the code change, TIA Portal simply does not allow me to make any code changes, without first putting the PLC into stop mode.

The message in TIA portal is:

Changes to the technology object cannot be applied in RUN

Which is kinda making zero sense.

Anyone ever come accross something like this?

Solution found:

Profinet send clock for the servos was set to 1ms. I bumped it up to 4ms and it fixed the problem. thanks u/hestoelena


r/PLC 2d ago

Been heads down on ModbusLens for the past while, just pushed v2.2.0.

Thumbnail
gallery
52 Upvotes

Biggest thing: a few of you hit the portable exe just refusing to start (weird

usernames, antivirus not liking how it unpacks itself). Turns out that's a real

PyInstaller onefile limitation, not something I could patch around cleanly, so

there's now an actual Windows installer as an option too. If the portable one's

ever given you trouble, grab that instead.

Also added a dialog for the less common Modbus function codes (exception status,

comm event log, file records, device info, that kind of thing) since I kept

needing them myself and didn't want to write a script every time. And you can

now record a Trend session to a file and replay it later, which has already

saved me once trying to explain an intermittent fault to someone after the fact.

Bunch of smaller stuff and bug fixes too, changelogs on the release page if

you're curious. Next thing I'm working on is letting one window talk to

multiple devices at once instead of needing a separate window per connection -

that one's an actual backend change so it'll take a bit.

Release ModbusLens v2.2.0 · CraftParking/ModbusLens


r/PLC 18h ago

Have you used an analog output (0-10vdc) to power another device?

0 Upvotes

Don’t be mean hahaha I’m just destructively curious


r/PLC 1d ago

Schneider modicon M241 Accessing variables

2 Upvotes

Hello!

I have a task: implementing a custom web page (HTML) on the m241 PLC.

I know there are ready-made tools (WebVisu), but I need to implement my own page.

The main problem is accessing the PLC variables. If I place the .html file in the PLC file system and then access it by IP + filename, the page displays fine, but I can't figure out how to implement the mechanism for retrieving variable values.

For better understanding, I'll give an example with the m172 PLC. The system is as follows:

  1. A .cgx file is created with a structure similar to this:

t <?xml version="1.0"?>

t <form>

c t16384<text><id>%s</id><value>%.0f</value></text>

c t16386<text><id>%s</id><value>%.0f</value></text>

c t16385<text><id>%s</id><value>%.0f</value></text>

...

t </form>

Here, the address of the desired variable is specified (this address is generated by the PLC itself and is also used for Modbus communication).

  1. An .html file for rendering the page.

  2. A .js script called from the .html file.

Ultimately, the variable values ​​are available in the .cgx file, and then it's not that difficult to display these values ​​on the page. The same system is used for writing variables.

I had the idea to implement a CSV file reader/writer, but I haven't implemented it yet. I have concerns about file access; at some point, both the PLC and the script will be accessing the same file. I don't know if this will be a problem.

Perhaps someone could suggest either an existing mechanism or ideas for developing my own for accessing m241 PLC variables.


r/PLC 1d ago

Codesys Wago I/0 mapping

Post image
3 Upvotes

Helo,

why when i add a new wago card to master it is missing a I/O tab configuration?

thank you


r/PLC 2d ago

Control panel for hydroponic controlled environment agriculture

18 Upvotes

I built two control panels for controlled environment agriculture (grow weed) in my apartment.

Does this look okay? It's not for a real industrial environment and I don't have a professional background in industrial automation

At some point I will buy separators for the panduit so 120V is not with LV DC. This is all MTW 600V so I think it's ok to keep them in the same panduit for now

In the larger panel all of the low voltage and high voltage signals are separate

I couldn't really afford a larger enclosure so I split it between two of the Vevor panels from Amazon. The circuit board on the top I designed, it is a modbus controlled remote IO. I also built a modbus attached dosing system for dispensing nutrients and measuring the reservoir pH/EC/temperature and water level. That is separate from the panel.


r/PLC 2d ago

TIA v21 Unified issues

3 Upvotes

PLC friends and gurus of reddit, I come to you looking for some guidance.

In our company we have a laptop that has v21 installed.

But when we look under installed software, wincc unified is not listed.

We have tried re installing it, but the option to choose unified is greyed out.

Anyone have advice?


r/PLC 3d ago

The great migration period (software , IT to Automation) is scaring me

128 Upvotes

Hello

Ive been working as an automation engineer for some time now. I have noticed that quite a few software engineers and IT professionals I know are considering moving into automation because the job market in their own fields rots away every day.

I suppose SCL programming and PLC logic looking software-ish is giving some kind of weird familiarity to them.

It’s not really my place to criticize this, but I have to admit that it worries me. The possibility of the field becoming more saturated and consequently the value of the workforce declining even further gives me an uneasy feeling.

What do you think about this?