Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Question About PLCs

  1. Apr 8, 2013 #1
    Do you guys have some knowledge about PLC's? How important is for me(student) to learn programming PLC's?
    Last edited by a moderator: Apr 8, 2013
  2. jcsd
  3. Apr 9, 2013 #2

    jim hardy

    User Avatar
    Science Advisor
    Gold Member

    I think you should do at least one project with a PLC.
    You'll learn them on the job, so familiarity with the basics is all you need to pick up in school.

    I have very little experience with PLC's. Our plant was old enough it didn't have many.

    It is important to become decent at programming. Do they still teach Fortran?
    Understand the concept of re-entrancy. It applies to any program be it on PLC or mainframe.
    Programmers take care of the finer points of computer science, as an engineer you need to be keen in your physics.
    That said, the best programmer I ever knew was a PhD in physics..... he taught me about reentrancy and interrupt handling.

    I did use a few of these in 1990's for very specific tasks that had to be automated:
    http://micromint.com/Modules/domino.html [Broken]
    They offered the benefits of:
    your office PC is your development system,
    they have standard I/O ports and I^2C, and real time clock
    there's room on the development board for your I/O circuitry
    and they program in Basic;
    So you can do a small project on petty cash.
    Once upon a time we needed a crane interface and couldn't get a quote from anybody with less than five zeroes in the price. We did it ourselves over a weekend for about $400. Was boss ever happy ! [oops another boring anecdote - never again !]

    Nowadays TI has caught on and offers similar products (finally!)

    You'll quickly surpass me.

    old jim
    Last edited by a moderator: May 6, 2017
  4. Apr 10, 2013 #3


    User Avatar
    Science Advisor
    Gold Member

    Most of my Programmable Logic Controller (PLC) experience is from the applications of simple PID controllers used for controlling Environmental Stability chamber's conditions for Pharmaceutical Stability Testing and Remote Terminal Units (RTU) used for doing Automatic Generation Control (AGC) at power plants. These are considered single variable PLCs.

  5. Apr 15, 2013 #4
    I don't think there is anyone teaches Fortran anymore. Instead there are C,C++ C# and others. But basic principle is the same. If you know one of them, you can quickly get good at any(my opinion). YOu said "
    I did use a few of these in 1990's for very specific tasks that had to be automated:"
    That's my problem, I am good at programming but my problem is when I need to connect my program/application with something real(to move something). How to sufficiently connect electronics and programming, that's my problem.
    Last edited by a moderator: May 6, 2017
  6. Apr 15, 2013 #5


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Some keywords for working with PLC's : Ladder logic. Frequently PLC programs are shown in this format, good to know about and understand. This format shows explicitly the electro-mechanical connections required to make it work.

    As mentioned above you should get some experience with a PLC. However there are many manufactures of PLCs and each of them have different implementions of essentially the same product. So some relearning is always necessary. Generally they have there own instruction sets so higher level languages are of little use.
  7. Apr 15, 2013 #6
    That's the problem that PLCs were designed to solve. You want to connect your laptop to a machine and make it do something using C, C++, or C#? - not easy. You want to connect a PLC to a machine and make it do something using ladder logic? - easy. If you've never worked with machine prints or relay logic then you should probably start there.
  8. Apr 16, 2013 #7
    Actually I use to work a little bit with PLC's 2 years ago. 1 semester in college. But at that time I didn't realize the importance of PLC's or I was just lazy, I am not searching excuses, so basically after semester ended I stopped dealing with PLC's.
    And basically in the college (at least mine - I won't say for other colleges) student can't learn a lot with PLC's, college is more there to show you PLC and some basic applications, but it's up to you(when I say you I mean on a student) will you search further and dig in.
    At that time I was facing with following problems
    1. Accessibility or access to education(I mean on PLC's) on the internet is not even close spread like it is a case with C,C#, C++, Java....
    2. Software itself. I have got a software from the college and we used to work with SImatic S7-300, but I couldn't find any good book to learn. All I have had was a Siemens Manual. I found a book from some other manufactures but that was like reading a Java book and programming in Visual Studio with C#.

    So to start again I need to resolve those two problems first. I'm still a student so problem number 1 is not a problem and about problem number 2. Is there out any good book or something similar about Siemens simatic PLC's?
  9. Apr 16, 2013 #8

    jim hardy

    User Avatar
    Science Advisor
    Gold Member

    I believe one always learns fastest by doing something out of sheer curiosity.

    For motion there's lots of hobby robotic sites and kits. here's just one from a quick search.
    http://www.hobbyengineering.com/DeptRB.html [Broken]

    Old printers are a rich source of stepper motors and gears, and hobby sites carry stepper motor driver kits . Perhaps you have a telescope or camera to aim.

    You're a student......

    seems to me one of these with a real time clock
    and a fluorescent display
    could make a digital clock in Roman Numerals.
    What great Christmas presents .
    Plus you'll learn string manipulation and probably I^2C communication.
    Last edited by a moderator: May 6, 2017
  10. Apr 16, 2013 #9
    But that's the problem Jim. I don't know how to link little motors with my application.
    All I know is to write some code. I already got this http://www.mikroe.com/easyavr/v5a/
    I can buy all those stuffs, but I am afraid I don't know how to use them
    Last edited by a moderator: May 6, 2017
  11. Apr 16, 2013 #10

    jim hardy

    User Avatar
    Science Advisor
    Gold Member

    So you already have a microcontroller?

    Start out embarrassingly simple.
    When I started out with the Domino, first thing I did was hook it to PC per directions and tell lt "Print log(10)", which to my amazement it did.
    It was a small step for mankind but a great one for me.
    After about a month I had it monitoring our PA system traffic through home-built interface.

    So admit you're a beginner - we all are.

    Here's a Basic language program that turns a PC into a roman numeral digital clock.
    If that strikes your fancy, learn to interface a fluorescent display to one of the ports on your machine. In my day we only had parallel and RS232 to worry about...

    you will learn more quickly than I for you are still young with a facile mind.

    That looks like a powerful micro you have bought.

    Have fun with it !
    Last edited: Apr 16, 2013
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook