DIFFERENCES IN Ladder Logic and Function Block Diagrams

Поделиться
HTML-код
  • Опубликовано: 7 авг 2024
  • In this lesson we show you how to program the same basic functionality in Ladder logic vs function block vs structured text, the three languages of Connected Components Workbench for the Allen Bradley Micro800 line of PLC.
    One note about this lesson. It is not meant to be a comparison of which one is better. In later lessons we show situations where one may be easier to use than another but each language has an important place in industrial automation and you should be familiar with all of them.
    Items used in this video:
    twcontrols.com/plc-trainers
    The above links make these videos possible. Please use them!
    Support these videos by becoming a patron on Patreon: / timwilborne
    Subscribe to our channel ruclips.net/user/TimWilbo...
    Instagram / timwilborne
    Facebook / timwilborne
    LinkedIn / timwilborne
    Twitter / timwilborne
  • НаукаНаука

Комментарии • 40

  • @TimWilborne
    @TimWilborne  3 года назад +3

    Thanks for watching! If you are looking for the complete Connected Components Workbench PLC Training series, visit twcontrols.com/micro800-connected-components-workbench-lessons

  • @lion-e-nl
    @lion-e-nl 3 года назад +1

    I remember when I used to work as a field service engineer my colleague programmers used structured text for several small programs handling stuff which was used a lot in a program like the movement of a cilinder or conditions for the E-stops which where included on lots of places. It was a pain to troubleshoot...

  • @stefanolivingketo1076
    @stefanolivingketo1076 3 года назад +2

    great video Tim, I wanted to explain Function block to a friend in easy terms, this video will help Thanks for taking the time to make it.

  • @grana1230
    @grana1230 3 года назад +1

    Very helpful video for me thanks for sharing your knowledge with us

  • @bakrymoawia6835
    @bakrymoawia6835 4 года назад +2

    Ur the best thanks u

  • @ricktolbert6165
    @ricktolbert6165 8 месяцев назад +1

    Thanks!

  • @graemepeek
    @graemepeek 4 года назад +2

    Tag Comment not tied to Tag not because its Structured Text but because components workbench doesn't show it, other PLC programs give you the option to show it. The poor displaying state of tags is also is CWB issue. Structured text is becoming the programming language of choice for many more companies. The language you select is driven by the task. A PLC program ideally would be a mixture of languages, you look at the task in hand and select the best language, for example a simple cylinder might be best suited to using ladder where a more complicated task might be structured text. The case statement in structured text is very powerful and one of the reasons ST is the one I select more often, especially for state machine programming. So before selecting a language evaluate the task and select the right language, this is hard as we all have our go to languages but this is still the best practice. Also no matter what language comment, comment, comment and make tag names VERY descriptive.

    • @TimWilborne
      @TimWilborne  4 года назад +2

      Very good points Graeme. I think it time Rockwell with make the Structured Text monitoring and descriptions better.

  • @kenwade2224
    @kenwade2224 3 года назад +1

    Great Video just what I was looking. Question can an OR have more than 2 inputs

    • @TimWilborne
      @TimWilborne  3 года назад +1

      Yes, just right click the branch and add a branch level.

  • @tedherlo680
    @tedherlo680 2 года назад +1

    Hey Tim, Can you please help me understand something that is confusing me. At 4:50, the ladder shows the following inputs : _IO_EM_DI_00 () and _IO_EM_DO_00 (), but when you show the function block at 5:56, it shows _IO_EM_DI_00 and _IO_EM_DO_01. I don't understand why the ladder and the function block do not have the same inputs. What am I missing?

  • @JohnSmith-lv8xk
    @JohnSmith-lv8xk 3 года назад +1

    For those people who you claim to talk out of buying one of your trainers 😏
    This would be a really good lesson to run on the Micro810 for 150 bux (controller and USB adapter) a good one to get your feet wet.

    • @TimWilborne
      @TimWilborne  3 года назад +1

      Yes, I like the 820 better though, a few more bucks but a lot more learning opportunities.

  • @marcelodigamon4845
    @marcelodigamon4845 3 года назад +1

    Hi Tim I learned a lot from your tutorials, thanks.. We have PLC trainer in our workshop its SLC 5/05 CPU but its broken we don't have spare hard to get new one because its going to be obsolete. Can we used the 1747 AENTR card instead? if yes how do we program it. Thanks in advance for your reply.

    • @TimWilborne
      @TimWilborne  3 года назад +1

      The 1747 AENTR would just put the SLC chassis I/O up on Ethernet, you would still need a controller to read and write to that I/O.

  • @Pakistanzindabad-jg7mw
    @Pakistanzindabad-jg7mw 4 года назад +1

    sir can i use delta plc data cable on allan bradelay micrologix plc

    • @TimWilborne
      @TimWilborne  4 года назад +1

      I'm almost positive you can't. Seems like I tried to do the opposite one time.

  • @bhavikmistry4309
    @bhavikmistry4309 3 года назад +1

    Hi Tim,
    I am trying Structured Text programming. I am stuck as I am unable to find Pulse Coil Instruction (Coil with P in it)
    Can you help me with this?

    • @TimWilborne
      @TimWilborne  3 года назад +2

      No the pulse coil isn't available in structured text. That would make a good video. I'll put it on the list.

  • @aaw7410
    @aaw7410 2 года назад +1

    whats the reason for not using studio5000?

    • @TimWilborne
      @TimWilborne  2 года назад +1

      You program the Micro800 PLCs with Connected Components Workbench, not Studio 5000. Here is a lesson series on Studio 5000.
      twcontrols.com/controllogix-compactlogix-studio-5000-lessons

  • @davidbabic6121
    @davidbabic6121 3 года назад +2

    Just curios, im still learning. Shouldn''t the stop button be normally closed? in my mind it seemed like you needed to push start button and hold stop button (cloesed) so the motor runs. hoever when you run the code it still worked ? sorry if you dont understand my question.

    • @garyhelwig1587
      @garyhelwig1587 3 года назад +2

      Start buttons are usually wired N/O, stop buttons wired N/C. This means when nobody is pushing any physical buttons, the input you wire the start to = 0, the stop input will = 1. When you push the stop button, the input will then = 0. If you program the stop to a be N/C (in the program), it will be False unless you push the button, so you would need to hold the stop button down, then push the start to bring on your output, & the moment you take your finger off the stop button, the output will turn off. Hope this helps.

    • @TimWilborne
      @TimWilborne  3 года назад +3

      Gary is correct. A little background on why this one is using a normally open stop button... Our first lesson was the wiring enough to get started exercise in which all the buttons are wired normally open. And this particular video we're using that wiring setup, hence the red button being normally open. In a future video we're going to go deeper into the differences between a normally open and normally close stop button.

    • @davidbabic6121
      @davidbabic6121 3 года назад +1

      Hey guys, thanks for taking the time to reply. Thankful for the videos

    • @_DigitalCam
      @_DigitalCam 3 года назад

      This also confused me. I’m a new Component Specialist for an AB distributor so I wanted to brush up on PLC programming. When I sell a stop button, I always sell a NC block with it so when I see NO being used in Logix it always confuses me because outside of a PLC, stops are hardwired with NC contacts. More to learn I suppose!!

  • @hockeydude039
    @hockeydude039 Год назад +1

    the fact that ST has no Indicators really sucks, what were they thinking

    • @TimWilborne
      @TimWilborne  Год назад +1

      Early on Studio 5000 didn't either, I expect it will be added to CCW as well.

  • @kootzie
    @kootzie 2 года назад +1

    Shouldn't the STOP button be shown as NC - rather than implicitly hiding the sense of the switch "off screen" ?
    I'm just getting my AB legs on right now... the last hour
    //Using direct hardware addresses in a program is a baaad habit
    //I was surprised that aliases are not equivalent to variables
    START := _IO_EM_DI_00;
    STOP := _IO_EM_DI_01;
    _IO_EM_DO_00 := RUNNING;
    RUNNING := (START OR RUNNING) AND NOT STOP; //Simulator tested

    • @TimWilborne
      @TimWilborne  2 года назад +1

      No, in this lesson the trainer is still wired per the getting started guide which has a normally open red button. The symbol on the screen is a go look for a 0. twcontrols.com/lessons/basic-bit-instructions-in-connected-components-workbench-direct-contact-reverse-contact-coil

    • @GuyFromJupiter
      @GuyFromJupiter Год назад

      Agreed about using directly referenced hardware tags. Personally, I don't even like using aliases (Studio 5000 aliases that is) for mapping and prefer to map them manually.

  • @mikes6449
    @mikes6449 2 года назад +1

    Couldn't your entire ST program be
    _IO_EM_DO_02 := (_IO_EM_DI_00 or _IO_EM_DO_02) and _IO_EM_DI_01;

    • @TimWilborne
      @TimWilborne  2 года назад +1

      Yes, that should work also and is probably clearer.

    • @mikes6449
      @mikes6449 2 года назад +1

      @@TimWilborne Thanks. The way you did it is probably how folks should learn, as it's easier to follow.
      I wonder how the controller actually codes either version into its internal code, as to if there's really a difference under the hood.
      For my next trick, I'm working on getting an 850 to talk modbus out the serial port to a couple SE drives (ATV212 and 320). That should be fun.

    • @TimWilborne
      @TimWilborne  2 года назад

      @@mikes6449 These two are probably interpreted very similar to what you type. Yours has the advantage leaner code. My initial thought is the IF THEN will allow for more flexibility but the more I think about it, I'm not sure. I might post this and see if I can get some discussion going.

    • @GuyFromJupiter
      @GuyFromJupiter Год назад

      I was going to comment this, because I believe doing this without an IF statement could technically be a lot more efficient (depends on if the compiler is smart and compiles the IF statement efficiently), as it won't cause branching as opposed to using IF.