AR logo.png

ANNIN ROBOTICS

0
  • HOME

  • TUTORIALS

  • DOWNLOADS

  • THIRD-PARTY SOFTWARE

  • ROBOT KITS

  • FORUM

  • BLOG

  • CONTACT

  • More

    Use tab to navigate through the menu items.
    To see this working, head to your live site.
    • Categories
    • All Posts
    • My Posts
    Kevin DeMarco
    Jan 31, 2021

    MoveIt2 / ROS2 repository for AR3

    in General Discussion

    Hello Everyone, I am pretty new to the AR3 arm, but I believe that it has a lot of promise due to its quality and relatively low-cost compared to other robot arms on the market. My background is mostly in robotics software, algorithms, and simulation, so I started organizing the Robot Operating System (ROS) 2 and MoveIt2 git repositories for the AR3. For those that are unfamiliar with ROS, ROS is a framework for robotics software and MoveIt2 is a ROS software package for controlling fairly arbitrary multi-DOF robot arms. Last week, I started configuring MoveIt2 for the AR3 using the URDF and mesh files that Chris Annin initially created. Here is a video of the current state of my progress:


    In the video, I dragged the AR3's end-effector into a desired state (position and orientation) and then I requested a plan from MoveIt2 to achieve the desired state. The plan is then sent to the ros2_control software, which sends joint commands to the robot arm, while measuring the positions of the joints for feedback. I still need to optimize the collision detection settings that are used during planning and I need to enforce velocity/acceleration constraints on the joints. The ROS2/MoveIt2 packages are open source and published under my consulting company's GitHub organization:


    github.com
    RIF-Robotics/ar3_ros
    ROS packages for AR3. Contribute to RIF-Robotics/ar3_ros development by creating an account on GitHub.

    I'll be doing a lot of work in simulation, but I will be looking through everyone else's posts to figure out the best way to build the AR3 to test with a physical robot.


    I haven't written about the AR3 robot arm yet, but I will be writing some blog posts about the ROS2/MoveIt2 integration with the AR3 on my website soon: https://www.kevindemarco.com/

    5 comments
    0
    Kstan Simit
    Jan 31, 2021

    I feel your intention match be iw, you may help there:

    https://www.anninrobotics.com/forum/general-discussion/joint-position-encoders

    0
    Kevin DeMarco
    Jan 31, 2021

    Thanks for pointing me at the other developer's ROS packages. I'll take a look.

    0
    raykimber
    Feb 01, 2021

    Kevin, I'll be interested in your ROS/Moveit effort as you develop it. I just built an AR3 and would like to control it ultimately from a Raspberry Pi 4B using ROS. Right now I'm just testing it and otherwise getting to know its limitations and accuracy.


    I can share a few tips about construction when you start.


    By the way, the two links above ("soon" and your website link) are both flagged by Norton Antivirus as "dangerous websites" and blocked. I thought I'd let you know.

    0
    Kevin DeMarco
    Feb 01, 2021

    Thanks for letting me know about my website being blocked. I submitted a request to Norton to reclassify the website, so hopefully, that's fixed a couple of days.

    How did you build the AR3 arm? Did you purchase any of the kits?

    0
    raykimber
    Feb 01, 2021

    I purchased all the kits that Chris Annin offered: aluminum structural parts, hardware, screws and bolts, etc. I also ordered everything he specified in the electrical components (most from Amazon), and the full AR3 stepper motor/driver kit from Stepperonline. I would suggest ordering an extra bag of bolts and screws (roughly $20) in case your first bag is missing something or you lose something.


    A couple of suggestions for constructing the AR3:

    1. there are several steps where you have to fit bearings or bearing races into housings, and because of the close machine tolerances, the fit can be very tight. Inserting one piece slightly crooked can result in the pieces locking, so be very careful. Chris suggested placing one piece in the freezer to shrink it slightly and the other in an oven to expand so the fit is less tight. You need maybe a half hour or so. This really works. Also, I believe holes shrink or expand as the rest of the piece does, which may not seem intuitive.

    2. Related to this there's a step on page 183 of the assembly manual - inserting J6 motor into the J6 housing side post - that I think should be done before installing the J6 housing side post (page 166) onto the rest of the arm. In my case in trying to fit the J6 motor into its hole in the housing it got stuck, real bad. Since the housing was assembled, I couldn't heat one and freeze the other. Let's just say that in trying to get the motor unstuck I had to order a new J6 motor. So I put this one into the housing before installing the housing.

    3. Joint 3 is prone to a lot of play, which can affect the AR3's accuracy, partially due to gear backlash. But if you're using an un-broached pulley sprocket on the J3 motor shaft, the set screws can only grab so much, so there's slippage. Best to broach the sprockets if you can (I don't have that capability). Chris said he will offer a better redesign of the J3 drive system at some point in the future.

    4. For mounting the limit switches I would suggest only using the socket head screws, which use an allen wrench, not the pan head screws, which require a screw driver, unless you have a set of right angle screw drivers to use in tight spaces. You will more than likely need to replace a few limit switches, and you might find that difficult when the AR3 is assembled. I'm not sure if there is a sufficient number of socket head screws to use on all the limit switches, which is all the more reason to buy a second bag of screws.

    5. In wiring up the Teensy controller and the +5V wiring read this post for some clarifications: https://www.anninrobotics.com/forum/questions/properly-wiring-the-teensy-the-5vdc-connector-mystery.

    6. If you're planning to use a servo gripper rather than a pneumatic one, read this post: https://www.anninrobotics.com/forum/questions/tips-for-using-a-servo-gripper-instead-of-a-pneumatic-one?appSectionParams=%7B%22origin%22%3A%22member_posts_page%22%7D.

    7. The +5V power supply doesn't seem to easily mount to the floor of the Enclosure (page 225), so I 3D-printed a substrate for mounting it. If you want the file, let me know.


    Good luck in your construction. Chris Annin provides very good support along the way.

    0
    5 comments