Background

The initial goal for this project was to create a simple remote control robotic arm, capable of lifting various object. After putting some thought into the design, it was decided to use the least amount of screws possible because it would make assembling the arm much easier. Only use the screws that were provided with the servo motors were used because anyone who followed this guide would likely have the exact same set of screws. In the final version, a total of 12 screws were used to piece together the entire build.

Getting Started

DSC_0056
All Pieces

To get started you will need the following:

Hardware:

Tools:

  • Phillips Screwdriver
  • Multimeter (optional)
  • Soldering Iron (optional)

Assembly

Assembly should be fairly straight forward. In general, these are the steps in which to follow.

  1. Position motor in the housing and secure it in place using at least 2 screws.
  2. Adjust the servo by using an attachment to turn the motor shaft counter-clockwise (facing the shaft) until it no longer rotates.
  3. Fit a 2-arm servo attachment into the piece to be controlled by the motor.
  4. Connect the correct piece onto the servo using a screw.

The steps for assembling each piece will be broken down individually as they differ slightly from one another.

Grabber

The steps required to assemble the Grabber are as follows:

  1. Slide the fixed-finger sleeve over the arm.
  2. Position and secure the motor into the housing.
  3. Using a motor attachment, rotate the motor shaft clockwise (facing the shaft) until it no longer rotates.
  4. Insert a 2-arm servo attachment into the part that will be the moving-finger.
  5. Secure the moving-finger assembly onto the motor shaft in a closed position.

Arms

DSC_0060
Arm

To assemble the arms:

  1. Position and secure the motor into the housing.
  2. Using a motor attachment, turn the motor shaft counter-clockwise (facing the shaft) until it no longer rotates.
  3. Insert a 2-arm servo attachment into the part that will be controlled by the motor.
  4. Position and secure the arm onto the motor so that it is in its down most position.

Base

DSC_0054
Base (upside-down)
  1. Position and secure the motor into the housing inside of the base.
  2. Using a motor attachment, turn the motor shaft counter-clockwise (facing the shaft) until it no longer rotates.
  3. Insert a 2-arm servo attachment into the rotating component that will be controlled by the motor.
  4. Secure the rotating component onto the base.

Rotating Component

DSC_0058
Rotating Component

To assemble the rotating component:

  1. Place a 2-arm servo attachment into the cutout on the base of the rotating component.
  2. Secure the rotating component to its controlling motor.
  3. Position and secure the motor into the housing on the rotating component.
  4. Position and secure the rotating component onto the base.

PCA9685

DSC_0063

The wiring between the PCA9685 and the Raspberry Pi should be as follows:

PCA9685   –    RPi

  • GND    –    GND
  • SCL    –    GPIO 3
  • SDA    –    GPIO 2
  • VCC    –    3.3V

Power

To power 4 MG 996R motors, 5V and anywhere from 2A – 10A will be required. It is reccommend to use a 5V 10A power supply so that the motors can operate at their peak torque.

With Female DC Adapter

  • Plug power supply into wall.
  • Connect power supply to female DC adapter.
  • With a multimeter, differentiate the ground from the live lead.
  • Solder wires onto the + and – leads of the female DC adapter so that they can reach the + and – inputs on the PCA9685 board.

Without Female DC Adapter

  • Cut the male adapter off of the power supply.
  • One wire should have a white line on it, that is your live wire.
  • Connect the power supply, using the + and – inputs on the PCA9685 board.

Something I Learned

Before the math was done to figure out how much current was needed to power this project, a small 5V 3A power supply was picked out. When testing the robot, it was noticed that the motors were not as strong as would hope. It was quickly realized that the motors were being under-powering. Because this project was a rapid prototype for a larger arm, wether or not a proper power supply is used, is of little concern.

Software

Adafruit Library

To ease the process of controlling the PCA9685, a library will be installed. A very well written guide to installing said library can be found at https://cdn-learn.adafruit.com…

Project Code

Git will be used to download the source code to control the arm, from Github. First, install git;

sudo apt-get install git

Download the source code from Github;

git clone https://github.com/Psuedohim/ARCArm.git

Change into the directory containing the source code;

cd ARCarm/

Run the program;

python3 Control.py

Controls

  • H – Home Position
  • W – Lower Arm Up
  • A – Rotate Left
  • S – LA Down
  • D – Rotate Right

Arrow Keys

  • Up – Upper Arm Up
  • Down – Upper Arm Down
  • Left – Open Claw
  • Right – Close Claw