Announcement

Collapse
No announcement yet.

Feature: User Defineable Function Blocks When??????

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts


  • Feature: User Defineable Function Blocks When??????

    When are we going to see user-definable function blocks?





  • #2
    Do you mean UDT, aka User Data Types? This has been asked about over 4-years ago. Still no word from AD other than #6 of THIS POST.

    Your only AD option is DoMore.
    Why worry? If you've done the best you can, worrying won't make it any better

    - Walt Disney

    Comment



    • #3
      No as in an IEC_61131-3 Function Block (https://en.wikipedia.org/wiki/IEC_61131-3) (For the Allen Bradley Only People an "AOI")

      An Allen Bradley "UDT" Translated into non-AB speak is a Struct. Which is also needed.


      Comment



      • #4
        I doubt we will ever see the same sort of feature implemented in Productivity, their development is just too slow. I would bet the Do-More people could make the same type of rudimentary custom "add-on instructions" like Allen-Bradeley has, but I doubt that would be anytime soon as I dont believe I have heard anyone even talking about it before. The sad thing is that Productivity could actually implement true custom instructions and function blocks like Beckhoff (where you program entirely custom things in C#) due to Productivity running on different coding scheme and programming language, but I highly doubt it will ever happen.


        edit:
        Honestly the way it works in AB it is very similar to what Do-More already has. You would just make a subroutine with your code and call that sub on the rung you want in your main program. Very similar to AB add-on instructions with ladder logic, you just dont have different areas of "passed tags" and "hidden tags". And while im thinking of it, Productivity can do the same type of thing with a called task. So they are very similar to the way AB does it (just organized differently) as far as ladder logic "custom" stuff would go. Though neither platform has real user defined coding like Beckhoff has where you code up stuff to work like you want in C#

        Click image for larger version  Name:	TwinCAT%20PLC__web_small2_languages.jpg Views:	0 Size:	39.1 KB ID:	126565
        Last edited by MikeN; 11-13-2019, 11:21 AM.

        Comment



        • #5
          Originally posted by MikeN View Post
          I would bet the Do-More people could make the same type of rudimentary custom "add-on instructions" like Allen-Bradeley has, but I doubt that would be anytime soon as I dont believe I have heard anyone even talking about it before.
          The Do-more engine already has support for true user functions (AOIs) with parameter passing, which could be called from within a MATH box, but the DmD side effort was more than we had resources for. Our subroutines are also capable of parameter passing, but we chose to implement it parameterless and just use simple copies, again due to resources.

          Comment



          • #6
            I'm copying and pasting the comment I made on a similar thread, at the risk of being (way) too reiterative and expelled from this forum.
            I have 2 theories:
            1) Either this feature is too hard to implement, and AutomationDirect has been struggling with it for the past few years.
            2) Or, AutomationDirect is not aware of the impact this feature would make to the Productivity series, making a big number of CompactLogix users move to Productivity2000 or 3000.

            My vote is to option #1.
            Last edited by Elcan; 11-13-2019, 11:50 AM.

            Comment



            • #7
              Originally posted by Elcan View Post
              I'm copying and pasting the comment I made on a similar thread, with the risk of being (way) too reiterative and expelled from this forum.
              I have 2 theories:
              1) Either this feature is too hard to implement, and AutomationDirect has been struggling with it for the past few years.
              2) Or, AutomationDirect is not aware of the impact this feature would make to the Productivity series, making a big number of CompactLogix users move to Productivity2000 or 3000.

              My vote is to option #1.
              I think they're aware of it as I seem to recall a survey from a few years ago asking about several different programming structures and whether those were something they should look into implementing into P-suite. But I agree it's likely #1 as we're at 4-years+ waiting for UDTs.
              Why worry? If you've done the best you can, worrying won't make it any better

              - Walt Disney

              Comment



              • #8
                Originally posted by MikeN View Post
                edit:
                Honestly the way it works in AB it is very similar to what Do-More already has. You would just make a subroutine with your code and call that sub on the rung you want in your main program. Very similar to AB add-on instructions with ladder logic, you just dont have different areas of "passed tags" and "hidden tags". And while im thinking of it, Productivity can do the same type of thing with a called task. So they are very similar to the way AB does it (just organized differently) as far as ladder logic "custom" stuff would go. Though neither platform has real user defined coding like Beckhoff has where you code up stuff to work like you want in C#
                My familiarity with AB is from the panel-sized mini (MIniPLC/MAC??) to the Micrologix line (with very small contact with some CLX). Obviously, I am not familiar with the 'passed' and 'hidden' tags concept, is this anywhere similar to local/global in PC/codesys-type programming?
                Is the 'passed' tag similar to a variable (i or j - below) passed to a function in higher-level pc programming?
                Code:
                .
                . Sub foo ( i As Integer )
                . Function bar ( j As Integer ) As Boolean
                .
                Last edited by kewakl; 11-14-2019, 09:44 AM.

                Comment



                • #9
                  kewakl The hidden tags in AB add-on instructions would just be tags you use within your instruction that are internal to it. They arent seen or used by the main program. Passed tags are data tags that are used by your add-on instruction, but are also made visible to the main program when you place your AOI in the program and you would have something in the main program acting upon those exposed tags.

                  Click image for larger version  Name:	passed_tags.png Views:	0 Size:	475.5 KB ID:	126599

                  Click image for larger version

Name:	Hidden_tags.png
Views:	88
Size:	479.8 KB
ID:	126600

                  I guess the proper AB terms would be parameters and local tags, not passed and hidden
                  Last edited by MikeN; 11-14-2019, 10:35 AM.

                  Comment



                  • #10
                    MikeN Thanks for that description.
                    One of those things that I have wanted to know, but didn't want to start the conversation - because I have no 'new' AB platforms.

                    Comment

                    Working...
                    X