Merging modern software development with electrons and metal
Random header image... Refresh for more!

Category — PLC Development

Book Review: Cascading Logic

Cascading Logic: A Machine Control Methodology for Programmable Logic Controllers by Gary Kirckof, P.E., published by the ISA.
My rating: 4.0 out of 5.0
Summary: A good but imperfect book

Cascading Logic is a unique book: it is the only intermediate level PLC programming book that I found (I have not found any advanced PLC books).  Sometime I should discuss why I think there are so few intermediate and advanced books (basically, PLC market size and fragmentation), but here is what I expect for each level:

  • Beginner book: an overview of PLC programming, and some discussion on how to do tasks.
  • Intermediate book:  how to put a complete PLC program together and why you should do things a certain way (best practices).
  • Advanced book: how to write the best PLC program, tips and tricks, covers advanced applications such as motion control, interfacing to advanced sensors (such as machine vision), analog I/O, and using advanced PLC instructions.

At $89 for a 206-page book, Cascading Logic is not a good value (unless you can find it used for a decent price), but it is still very much worth reading if you program PLCs professionally.

So what do I think?

  • It’s the only PLC book I found which covers how you should program a PLC (the best practices of PLC programming).
  • It’s not for beginners (in PLC programming or automation); a beginner would have a hard time following the examples.
  • The book is well written overall, but the style is terse.
  • The book builds on concepts to show a pretty complete program that covers most areas needed for a real machine (including operation, startup, errors, maintenance) and how to write code that can  be easily understood and updated.
  • The examples are too narrowly focused on automotive assembly machines; automation is a very broad field.  My PLC usage has nothing in common with the author’s examples.
  • The book only uses basic PLC instructions that all PLC have.  Overall, this is a plus, since it makes the book applicable to all PLCs, and thus a good starting point for any PLC programmer.
  • The book only covers basic systems with pneumatics, binary sensors,  and clutched motors.

I’m very glad I bought the book.  I have a lot of thoughts on PLC and PC automation programming, but I need to finish a series or two first…

February 21, 2012   No Comments

Free PLC Simulators

I recently decided to see what kind of free PLC simulators and integrated development environments (IDE) I could find that run on Windows.  A free IDE+simulator is great for teaching; for example, I can give examples that any of my readers can try out, but if I use a real PLC, I’ll be using what I have (Panasonic), which probably isn’t what most of my readers have.

Here is what I found:

  • Tri-PLC’s i-TRiLOGI free development environment supports both ladder logic and their version of BASIC and includes a simulator.  Tri-PLC also sells low cost PLCs.
  • Infoteam’s OpenPCS free development environment supports all the IEC61131 languages (including ladder and structured text) and includes a free PC-based simulator.  Infoteam’s business model is similar to CoDeSys:  customizing and charging money for the OpenPCS runtime.  (CoDeSys also has a simulator, but their free download is time-limited to a maximum 1 hour continuous run time.)
  • EasyPLC is basically a soft-PLC with a HMI builder and is free in demo mode (simulation only).  It’s worth a look: for example, its simulation mode includes 3D.  The commercial license is affordable, starting at 50 Euros).
  • I vaguely recall rumors of being able to use an Allen-Bradley simulator for free, but couldn’t find anything when I searched (besides,  I don’t think the development software would be free….) Note 3/15/2012: see next paragraph for A-B link
  • Via MrPLC, I found a link for Allen Bradley MicroLogix 1000/1100 free starter software and RSLogic Emulate 500 simulator.  I haven’t tried this combo out, and I don’t know the limitations, but in theory you should be able to learn some A-B programming for free.

I choose to download and try out OpenPCS because I really like having support for all the IEC61131 programming languages.  I haven’t used OpenPCS enough to be able to discuss it intelligently, but hopefully I’ll be able to write more in a month or two.

If you really want to learn PLCs, then at some point I think you have to buy a real PLC and connect it to real sensors and outputs.  Simulating stuff just isn’t the same.  Real PLC’s can be quite affordable; many manufacturers (including IDEC and Siemens) sell complete kits (PLC and software, plus sometimes a HMI) for $250-$400, Tri-PLC and the Automation Direct Click! series are <$150 and have free software, Panasonic FPWinPro 6 Basic is free (but code size limited), etc.

Beyond PLC’s there are some interesting options.  For example in the PAC world Opto 22 has a free IDE and control simulator, but you need Opto 22 I/O since there’s no I/O simulation.  In the robotic world, Denso Robotics has a free 3 month trial of WinCaps III which includes 3D robot simulation with no controller required.

Back in the PLC world, I’ve finished reading Cascading Logic; it’s a good book, and I hope to get a review up fairly soon.

December 5, 2011   No Comments

PLC Programming Best Practices?

One thing I really like about the software development books I’m reading is that most of them don’t just describe features, but give practical advice, based on experience, on the best ways to do things.

I’m wondering if they are any similar books for PLC programming?  Books that don’t just discuss how to write a ladder logic program, but the best way to do it — and why that recommended way works better.  (Note: I’m thinking books here, not websites or blogs, because this is the kind of topic that is best approached in a systemic way by a substantial book, not a serious of disconnected posts.  The Art of Unit Testing is a good example of what I’d like to see.)

September 27, 2011   No Comments