Posts by HawkME

    Need more information. What kind of actuator? How do you control it? Are you using any kind of controller or is this all relay logic? What kind of components are you using?

    I'd be happy to have a free beer :beerchug:


    Yes you are right that all UFs are defined from world. So there are 2 ways to do this.


    Option 1. Use the world frame as your offset frame in the vision process. Then store the found position into a PR. Use that PR to set a different UF. Note, do not use the vision offset, only the actual found position in this case so it will be in world.


    Option 2. Use a taught frame as the offset frame in vision process. Then set a new frame that is the result of matrix multiplying the taught frame and found position.


    One more note. I assume your 2DL process gives you x,y,z and r, but no W or P. So you either leave W and P as 0 or set it to a fixed value if needed.


    All positions in your cad to path must be relative to a UF that has an origin equal to the output of your vision process found position.


    I have done this before and it does work just fine if you set everything up correctly.

    I would have thought Wjnt would solve your issue. What error do you get when using it?


    Other potential solutions:

    1. Use a joint move

    2. Add an approach point that is a joint move

    3. Set the axis limits so that it cannot go past 50 or -310, then add both Wjnt and MROT to the Linear motion. It is critical when using MROT that the axis limit is set so it cannot possible damage the cable. Then this will automatically detect the axis limit and always move the shortest direction that does not violate the limit.

    Quote

    I would like to know how to read / isolate a character in a sr on the teach pendant. And then be able to call a program via this character.


    To call a program via SR programmatically is simple:


    : CALL SR[1];


    You can concatenate using +:


    : SR[1] = SR[1] + SR[2]


    And I believe there is a substring command in the instruction menu.

    Glad you found the issue. Now just have to make sure someone isn't accidentally changing the program.



    As for your user frame, I would have taught a single frame for the table itself. If the table ever gets bumped out of position you will have to reteach everything.

    Most common issue is that something has physically moved. Check for loose bolts on robot base, end effector, and fixture. Check if the end effector is bent. Do you have everything anchored properly to the floor?


    Also, this is why you should teach a user frame and not use UF 0.


    People always claim the robot somehow changed position, but in my experience that has never proven to be true and the issue always ended up being mechanical.

    UI[18] is still the correct way to start no matter what the selection method.


    That being said, you don't need to assign DIs directly in order, you can skip around and only assign the ones needed. For example there is No point in assigning the pns bits when using Other method.


    So just go into the DI config screen and set the start point and ranges for only what you need and skip the others.

    Depth of field is just ability to focus and have a sharp image within a range. It is a physical setting on the camera lens and can't be changed dynamically, you set it once and never change it. It is controlled by the f stop or aperture size of the lens.


    Usually 8 works well for most applications. Going higher gives more depth but darkens the image.