Skip to content

fendouai/RobotArm

 
 

Repository files navigation

RobotArm ($315 to $500 + Tax + S&H)

Estimated Avg Cost: $215 (Most People Have Some Of The Components Already)

In this project, you want to proceed slowly (I cannot emphasize this enough). Add one motor, and see how it behaves. Add a second motor, and see how they both behave, and so on. Make sure you study the documentation (links provided below) and familiarize yourself with how the technology works. It took me about 5 weeks of working full-time to get to this point. I had to learn electricity (current, amps, voltage, capacitors, resistors, etc.), python, Linux, UART, and on and on and on. You can benefit from my hard work in this project.


CONTROLLER ($35)


   • Raspberry Pi 3B (https://www.adafruit.com/product/3055?src=raspberrypi).


MOTORS ($180)


   • Dynamixel AX-12A (Four) When you purchase the Dynamixel AX-12A motors, they come with a whole bunch of tiny bolts, nuts, plastic washer, etc (https://www.trossenrobotics.com/dynamixel-ax-12-robot-actuator.aspx).


NUTS AND BOLTS ($8)


You will also need some longer bolts to connect the Bioloid Frame F10 to Bioloid Frame F8 and Bioloid Frame F3 to Bioloid Frame F4. I went to my hardware store and purchased the following:

  • (qty 14): 1-72 x 1/2 Flat Head Phillips ($0.25)
  • (qty 14): 1-72 Finished Hex Nut ($0.28)

You can order these online if you can purchase in small quantities. Please note that the 1-72 nut is slightly smaller than the nuts that come with the AX-12A (not a big deal at all). Here's an example of a vendor which I have never used but seems to sell in small quantities (let me know if you find a good online vendor, and I can update these links):


COUPLERS ($10 to $18)


Take a look at the video I made and you can pretty easily see how each one of the following fits into the arm.

  • Bioloid Frame F1 (qty: 1)
  • Bioloid Frame F2 (qty: 1) Note: one of these comes with each motor
  • Bioloid Frame F3 (qty: 5) Note: each motor comes with one of these
  • Bioloid Frame F4 (qty: 1)
  • Bioloid Frame F8 (qty: 2)
  • Bioloid Frame F10 (qty: 2)
  • Source: https://www.trossenrobotics.com/robot-parts.aspx

I perused this video like the Dead Sea Scrolls in order to find out exactly how everything fit together: https://www.youtube.com/watch?v=M-LKlea_6Vs


ARM STAND ($10 to $30)


You are going to need something to hold the arm down with. I happened to have a spare knife block, but you can use anything you like as long as it’s relatively heavy. You can also purchase a block of wood at your lumber store. I nailed my Bioloid Frame F3 to the knife block but you may want to purchase small wood screws (tiny) instead. By using nails, it's a nightmare to take off. I also like the setup Corgitronics has on YouTube (https://www.youtube.com/watch?v=M20P-k8dF4g&t=314s). He purchased the following:

He also talks about “corner connector blocks” but I’m not sure here. You can certainly ask him on his video (he answers quickly). Video also shows some kind of metal coupler between the 1st motor and the base.


BREADBOARD SETUP ($30 to $50)



POWER SUPPLY ($40)


I purchased a cheapo used power supply from eBay. I’ve had it for a couple of months now and works just fine. I like the power supply better than batteries because batteries drain too quickly.

If you purchase it from eBay, make sure you call them (Cogwe11 are in the Bay Area of California) and ask them to include the test-lead-set (the red and black wires you connect to the posts). Wires are not included in the eBay purchase. Be careful with the power supply as you can easily kill yourself with anything over 1 amp.


OTHER ($142)


This is my inspiration video for this project: https://www.youtube.com/watch?v=M-LKlea_6Vs


SOFTWARE


Files (Code) Included In This Repository:

  • How to change motor IDs (dynamixel_write_ID.py). I'm using 1, 2, 3, 4 (4 is the hand motor, 1 is the shoulder motor)
  • Slow motor movement (arm_project_slow_movement.py). Use this when you are starting out and be ready to kill power if the motors are not behaving as expected.
  • Fast motor movement (arm_project_fast_movement.py). You can use this on the final project to speed things up a bit.

USEFUL REFERENCE MATERIAL



STEP-BY-STEP SETUP INSTRUCTIONS


  • Step 01: Purchase controller, motors, nuts and bolts, couplers, arm stand, breadboard, power supply, monitor, keyboard, mouse, helping hands, etc.
  • Step 02: Connect KVM to Pi (KVM = keyboard, video, mouse). Place the Pi on a non-conductive surface (ceramic, wood, plastic).
  • Step 03: Format SD card, install Raspbian on Pi, connect to the net, update software to latest. Many videos on YouTube cover this. Enable serial port and disable serial console in Pi config utility.
  • Step 04: Wire up breadboard with 74LS241 IC (see wiring diagram link above). Be sure to use same color wires if possible. I also purchased a set (22AWG 6-Color Tinned-Copper Wire Assortment) from Jameco (see links above) and have been very happy with the quality. The 22AWG wire is very nice and "thick" (not the flimsy thin-wire kind). Just make sure you have wire strippers in order to cut the length you want. BTW, I'm not pushing Jameco at all. You can purchase from anywhere on the web. The reason I like Jameco is because it's local to me and they sell in small quantities.
  • Step 05: Connect your breadboard to power supply using the alligator clips on the helping hands (see video). Turn the knobs of the power supply way down before you start. Increase the voltage knob up to 9.5 volts (you don't have to touch amp knob, just make sure it's way down).
  • Step 06: Connect each motor one-by-one and change the motor's ID (1, 2, 3, 4). Check the wiring diagram before connecting anything. Basically, CABLE-20 (250mm 3-pin) that came with your motor (a.k.a., servo, actuator, etc.) connects to the left-hand-side (looking at the motor from the back) so that the GND (ground) pin is facing the middle part of the motor. There are a ton of diagrams on the web showing you this.
  • Step 07: Once the IDs are set, begin assembling the arm. Start with motor 1 (shoulder) and play with the code. Add motor 2 and play with the code some more, repeat for the remaining motors testing and observing along the way. Once you have a fully assembled arm, bring power up to 11.1 VDC (volts direct current).
  • Step 08: Now film your working arm and upload it to YouTube.

Check it out on Instructables.com: https://www.instructables.com/id/RobotArm-2/

Check it out on YouTube: https://www.youtube.com/channel/UCY6rwa3NrBVojsvjdOysjrA?view_as=subscriber

eof

About

Dynamixel AX-12A Robotic Arm

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%