Announcement

Collapse
No announcement yet.

BRX team, we need 1 more motion instruction, PLEASE!!

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


  • #16
    Originally posted by jonesjeremya View Post

    So, there is hope the described basic functionality will find it's way to a new instruction in the future, so folks like me can add salt and pepper to taste?
    We are always looking for more features. We need to do our due diligence and make sure that what we offer is as useful as possible. At this point we are still discussing what could be done if anything.

    Also, I see the 36 i/0 unit is maxed out to 10 of the on board inputs being designated as high speed. Are high speed option cards part of the future hardware expansion? If so, can you elude to the number of channels per card?
    We do plan on having a High Speed card. It isn't in development yet, so we cannot comment on what it may or may not have. I would not expect this card to launch this year however.


    If you have an urgent issue, please contact AutomationDirect's Technical Support team.

    AutomationDirect.com Technical Support: 1(800) 633-0405 or (770) 844-4200 Email Tech Support

    Comment



    • #17
      The answer is yes, we are putting the onboard functions into an expansion card. We expect it to be 8 inputs and 4 outputs, with 4 high speed counter/timer functions, 2 axis functions, 4 PWMs, and 4 TDOs.

      It is not in development yet, but it is a derivative design from existing boards.
      Last edited by Do-more PE; 03-23-2017, 01:25 PM.

      Comment



      • #18
        I have a need to position a single axis using a standard servo drive with +/- analog input and quad encoder feedback. I thought it would be a simple project for a BRX 18 I-O but I'm having trouble deciphering the programming. I intend to use the axis 0 lowingError to dive the analog output WY0. To do that I am making the assumption that the axis deviation used to create following error will use the accel/decel rates. Then my question is how do I load the following error value into RY0. The manual says it's available, but I can't figure out the name format to insert it into my ladder.

        Comment



        • #19
          Originally posted by ahsmachine View Post
          ...I intend to use the axis 0 lowingError to dive the analog output WY0. To do that I am making the assumption that the axis deviation used to create following error will use the accel/decel rates. Then my question is how do I load the following error value into RY0. The manual says it's available, but I can't figure out the name format to insert it into my ladder.
          If you are using Axis 0, then you could use a MOVE instruction with the Source set to $Axis0.FollowingError and the Destination set to RY0. Is that what you mean?
          Greg Kiser
          Hos Engineering, Inc.
          support@hosteng.com
          http://forum.hosteng.com
          This isn't all true.

          Comment



          • #20
            Originally posted by ahsmachine View Post
            I have a need to position a single axis using a standard servo drive with +/- analog input and quad encoder feedback. I thought it would be a simple project for a BRX 18 I-O but I'm having trouble deciphering the programming. I intend to use the axis 0 lowingError to dive the analog output WY0. To do that I am making the assumption that the axis deviation used to create following error will use the accel/decel rates. Then my question is how do I load the following error value into RY0. The manual says it's available, but I can't figure out the name format to insert it into my ladder.
            It's not really designed to do what you are wanting to do, but it shouldn't be that hard to implement.

            I would probably use a BRX axis for profile generation, and then do a simple velocity loop to the servo. For the servo output loop I would start with something easy like:

            Error = TargetPosition - CurrentPosition
            Output = SQRT(ABS(Error)) * Gain * IF(Error>0, 1.0, -1.0)

            Tune Gain to be responsive without ringing.

            Let me further state that while being very experienced at developing PLC systems, I don't actually use them...so...other folks on this forum might heartily mock my approach. I did use this exact approach in the system in the video. One BRX system generated the profiles for all 20 louvers, published via PEERLINK, then the simple velocity loop I described drove the 20 axes on 7 other BRX PLCs. Wasn't a particularly efficient use of automation, but was fun and for a good cause!

            Comment



            • #21
              Greg, Yes that's exactly what I was looking for. Does the $Axis0.FollowingError signal use the accel/decel rates to generate the deviation, or just the difference between target and current positions??

              Comment



              • #22
                Originally posted by ahsmachine View Post
                Greg, Yes that's exactly what I was looking for. Does the $Axis0.FollowingError signal use the accel/decel rates to generate the deviation, or just the difference between target and current positions??
                .FollowingError is just the difference between target position and actual position as indicated by the encoder. The only accel/decel is in the profile generation itself. I'm concerned that you are not going to get the result you need by pushing the raw error into the servo. The approach I suggested should work.

                Comment



                • #23
                  BobO, your answer implies that the signal is not a true Following Error signal (current command output - current encoder feedback) but just a Distance-to-go counter. If so, I understand why my approach won't work. My next question was going to be about an axis process block, e.g. AXHOME. Once the block is initiated does the program stay at that rung until the process is completed? If so I would never be able to pass the FollowingError to the analog output. Either problem would make your solution the only workable one. Thank you.

                  Comment



                  • #24
                    Originally posted by ahsmachine View Post
                    BobO, your answer implies that the signal is not a true Following Error signal (current command output - current encoder feedback) but just a Distance-to-go counter. If so, I understand why my approach won't work. My next question was going to be about an axis process block, e.g. AXHOME. Once the block is initiated does the program stay at that rung until the process is completed? If so I would never be able to pass the FollowingError to the analog output. Either problem would make your solution the only workable one. Thank you.
                    It is definitely just the difference of where the encoder says you are and where the axis wants you to be. In my limited experience, feeding the linear error into the servo may not give you the desired result, but there is no harm in trying. Most of my experience has been steppers though, so the servo may be more forgiving.

                    Do-more motion instructions don't block. Only one instruction at a time can be active in a single axis, but the PLC continues scanning. What you are proposing should work fine.

                    Comment



                    • #25
                      Originally posted by ahsmachine View Post
                      I have a need to position a single axis using a standard servo drive with +/- analog input and quad encoder feedback. I thought it would be a simple project for a BRX 18 I-O but I'm having trouble deciphering the programming. I intend to use the axis 0 lowingError to dive the analog output WY0. To do that I am making the assumption that the axis deviation used to create following error will use the accel/decel rates. Then my question is how do I load the following error value into RY0. The manual says it's available, but I can't figure out the name format to insert it into my ladder.
                      How about just using a drive that has pulse following? You could follow at a 1:1 ratio and accomplish the same thing. Let the drives position loop handle the rest. (unless there's a reason to use a drive with only analog capability).

                      Comment



                      • #26
                        Adisharr, Thanks for input, but I am not building a new machine, but trying to keep an older one running. The machine has a perfectly good servo motor and drive, but they were built at a time when +/- 10v analog signals were the standard. Changing the drive now would only increase the project cost without adding any operational benefit.

                        Comment



                        • #27
                          Originally posted by ahsmachine View Post
                          Adisharr, Thanks for input, but I am not building a new machine, but trying to keep an older one running. The machine has a perfectly good servo motor and drive, but they were built at a time when +/- 10v analog signals were the standard. Changing the drive now would only increase the project cost without adding any operational benefit.
                          Makes perfect sense, I still use analog drives with one of the motion controllers I use. It's still a valid way of doing things. Hope it works out!

                          Comment

                          Working...
                          X