I'm a maintenance planner who's been handling Siemens PLC orders and retrofit projects for about 6 years. In that time, I've personally made enough mistakes to buy a used car. I now maintain our team's pre-install checklist. These are the questions I wish someone had answered for me back in 2019.
Honestly, this is the first question I got wrong. I bought an S7-1200 for a line that needed 4-axis motion control. It worked, but barely. The CPU hit 92% load on day one.
Here's the rule of thumb I use now: If your project needs more than 3 motion axes, or if you're integrating into an existing siemens plc catalog with PROFINET IO, go S7-1500. For standalone machine control (conveyors, packaging cells), the S7-1200 is usually enough. For pure logic replacement — like swapping out an old S7-300 — the S7-1200 works fine with some planning.
What most people don't realize is that the S7-1200 firmware version matters more than the model number. I once ordered 12 S7-1200s, all with old firmware. Had to flash every single one before we could use TIA Portal V17 features. That was a fun Friday.
I said "it worked on my screen." They heard "it's ready for download." Result: a $3,200 rework because I didn't verify the hardware configuration offline first.
TIA Portal is powerful, but it's a memory hog. If you're working with a plc and hmi programming project that has more than 30 screens, allocate at least 16GB RAM to the VM. We use 32GB for our main dev machine now. Also, turn off automatic compilation — that's what crashed my project three times in one week.
The fix? After my third crash, I created a pre-compile checklist: close all unnecessary windows, save the project, clear the compilation cache. It sounds basic, but it works. We've caught 14 potential errors using this checklist in the past 18 months.
"5 minutes of verification beats 5 hours of debugging."
This one surprised me. We had a mobile test rig that used a camper battery charger as a DC bus supply. The charger had a Modbus RTU port, so I assumed it would talk to the S7-1200 directly. Three days of failed communication later, I learned that the charger's protocol wasn't standard Modbus — it was a proprietary variant.
The solution? Use a gateway module. We put a Siemens CM 1241 RS232/485 between the PLC and the charger. Cost about $400 more than I'd budgeted, but it worked. Lesson: never assume a device speaks standard protocols. Check the manual and ask the vendor for a protocol spec sheet before you buy.
Yes, but with a caveat. Liam Bee's tutorials are great for getting started, especially if you're new to Liam Bee PLC and HMI development with Siemens TIA Portal. His channel got me through my first HMI screen creation.
But here's something vendors won't tell you: tutorials teach you the happy path. They don't show you what happens when your HMI tags don't match the PLC tags because you renamed a DB variable and forgot to update the HMI references. That happened to me on a 20-screen project. Cost us a 3-day delay.
Use tutorials to learn the syntax. Then build your own project from scratch to learn the edge cases. And always compile with "check consistency" enabled.
This is the question nobody asks but everyone should. In my first year, I connected a starter directly to the S7-1200 digital output without testing it first. The starter had a short circuit in the coil. Blew the output channel. $150 repair.
Here's the quick test I do now:
The 12-point checklist I created after my third mistake has saved us an estimated $8,000 in potential rework.
The siemens plc catalog is huge. I spent two hours once looking for a specific analog input module. Turns out I was filtering by the wrong product group. Classic rookie move.
My shortcut: Use the catalog's search by order number. If you don't have the order number, filter by: 1. CPU family (S7-1200, S7-1500, etc.) 2. Module type (digital I/O, analog I/O, communication) 3. Then by specific features (e.g., 8-channel vs 16-channel)
Also, bookmark the siemens plc catalog PDF on your phone. It's searchable and works offline. Saved me on a customer site with no internet.
This was true years ago when LOGO! was only for simple logic. Today, LOGO! has advanced features like Ethernet and basic web server. But it's not a replacement for an S7-1200 if you need real-time control or complex motion.
The 'LOGO! is just a toy' thinking comes from an era before V8 firmware. That's changed. For a simple pump control or lighting system, LOGO! works fine. But for anything with timing-critical loops or PROFINET IO, stick with the S7-1200. I learned this when I tried to use a LOGO! for a small conveyor system. The timing jitter was unacceptable. Had to swap it out.
The numbers said go with separate developers for PLC and HMI. My gut said have one person do both. I went with separate developers. Turns out they had different interpretations of 'alarm priorities.' The HMI showed 'Critical' alarms as 'Warning' because the HMI developer used a different tag naming convention. $1,800 in rework.
Now my rule: one person writes the PLC code and the HMI screens, or they work side-by-side. We create a shared tag table upfront. Any deviation gets flagged before compilation, not during testing.
The question isn't 'can we integrate them?' It's 'how do we make sure they match on day one?' The answer: a shared tag plan and a pre-integration review meeting. Costs an hour of time, saves days of rework.