Introduction: SIRA Robotics Sign Language Translating Arm

This build is part of a senior design project by the SIRA Robotics Team at The Citadel. The project was to design and construct a robotic arm that can translate American Sign Language (ASL) in real time through code and a voice recognition module. The team created parts in SOLIDWORKS and 3D printed those parts. With the 3D printed parts and parts ordered from online (servo motors, voice recognition module, wires, and tilt kits), the team was able to construct a full prototype for the robotic arm. The project is aimed towards education applications and the goal is to be used as a teaching aid for in class purposes for hearing impaired students and also for students wanting to learn the ASL language. This build incorporates previous instructable builds produced by SIRA Robotics for the DDT 500 tilt kit and the SPT 200 pan and tilt kit.

*Note: This arm design is only for certain sign language actions. It can not perform the letters such as "R" and "V."

Supplies

  • 3D printed files
  • 3D printer (Lulzbot TAZ 6)
  • 3D printer filament
  • SOLIDWORKS program
  • 3D printed parts
  • Arduino Program
  • Knife or box-cutter
  • Pliers
  • Dremel kit
  • Solder
  • Soldering iron
  • Label maker
  • Voice Recognition module
  • 12 servo motors (1.7g)
  • 1 servo motor (9g)
  • 3 gear servo motors (25kg)
  • DDT 500 tilt kit
  • SPT 200 pan and tilt kit
  • 5V power supply
  • Power terminal adapter
  • Connection cable wires
  • Arduino microcontroller
  • Motor shield
  • Jumper Wires
  • USB cable for arduino unit
  • Plastic Sheet (18"x12") for presentation mount
  • Plastic Sheet (4"x6") for presentation mount
  • Hot glue gun
  • Power drill
  • Countersink drill bit
  • 0.25" drill bit
  • 0.5" drill bit
  • (4) 2.5"L x 0.25"D countersink screws
  • (4) 0.25"D nuts

Step 1: Voice Recognition Module Setup

For this step, you will need (4) jumper wires to connect the Voice Recognition Module to the motor-shield. Connect each output to the corresponding output on the motor-shield, ie ground to ground and power to power, etc. Plug in the microphone into the port provided on the opposite side of the pin outputs.

Step 2: Printing 3D Parts

Using the original SOLIDWORKS files and a 3D printing program, load the files onto the program and print using a Lulzbot TAZ 6 3D printer. Print the following:

  • 4 of SIRA_Finger_tip
  • 4 of SIRA_Mid_finger
  • 4 of SIRA_Low_finger
  • 1 of SIRA_Palm
  • 1 of SIRA_Palm_other_half
  • 1 of SIRA_Thumb
  • 1 of SIRA_Thumb_rod
  • 1 of SIRA_Forearm
  • 1 of SIRA_Forearm_other_half

Once printed, the support material will need to be taken off of the parts by a various assortment of tools such as a knife, box-cutter, dremel kit, and a pair of pliers.

Step 3: Servo Motor Wire Connection

Due to the short length of the servo motor wires, an extension must be made using connection wires. Both wires must be spliced and soldered together. To do this the wire end of the servo motor must but cut off so the wires can be spliced. Using a knife or box cutter, cut each wire off to expose the copper that will be soldered to the connection wire. Repeat this procedure for all the connection wires. Once both wires have the copper inside exposed, tie the copper wires together and prepare for soldering. To do this, heat the copper wires using a soldering iron. Once ready, hold a section of solder over top of the copper wires and touch the solder to the tip of the soldering iron to drip the solder on the copper wires to secure this connection. Repeat this process for all twelve servo motors inside the fingers. The thumb only has one 9g servo motor at the base of the thumb. The process described will be repeated for the thumb servo motor. Be sure to label which motor is where on the hand for coding purposes. This can be achieved using a label maker.

Step 4: Assembling the Fingers and Thumb

Each finger includes three degrees of freedom. Each digit has a 1.7g servo motor implanted. Attach the white arm to the servo motor and place hot glue inside the 3D printed digits and place the 1.7g servo motor inside. Place hot glue into the arm of the digit and place the white arm that is on the servo into the hole. For the base digits, place hot glue on the slot and place the longer white arm on. Attach to the servo.

For the thumb you will need to attach a white bigger arm to the 9g servo motor. Slide the arm into the cut-out slot in the thumb and slide the rod on the other side as seen the thumb pictures. (Pictures 8-11)

Step 5: Assembling the Hand

Place the assembled fingers in the palm as seen in the pictures above. Take the assembled thumb and place into the palm. Place the other side of the palm in order for all the base servo motors to stay inside the palm.

Step 6: Wrist Assembly (SPT 200 Pan and Tilt Kit)

The SPT 200 pan and tilt kit is used as the wrist. This pan and tilt kit has two degrees of rotation which is optimal for the hand to perform difficult letters such as "J" and "Z". These letter require wrist movement to perform the correct action. Please refer to SIRA Robotics build of the SPT 200 pan and tilt kit for assembly directions for this part. Once assembled, insert the kit inside the forearm on the top side as seen in the picture. The kit will be secured once the other cross-section of the forearm is attached.

Step 7: Attaching the Palm to the Wrist

Place bolts into the base plate of the SPT 200 Pan & Tilt kit. Place the Assembled palm on top of the plate and align the bolts into the holes of the base of the palm plates. Fasten the bolts with the nuts on both sides.

Step 8: Attaching the Wrist to the Forearm

Place the assembled hand and wrist inside the top of the forearm as seen in the pictures above. Feed all the wires through the back slit of the forearm.

Step 9: Motor Controller

Place the motor shield on top of the Arduino Uno board. Attach the power supply. Place the assembled part inside the forearm. Connect the wires to these pins as shown in the schematic drawing. Below each component is listed with the corresponding pin port (see second image).

Index Finger

  • Tip: 0
  • Middle: 1
  • Bottom: 2

Middle Finger

  • Tip: 3
  • Middle: 4
  • Bottom: 5

Ring Finger

  • Tip: 6
  • Middle: 7
  • Bottom: 8

Pinky Finger

  • Tip: 9
  • Middle: 10
  • Bottom: 11

Thumb

  • Joint: 12

Wrist

  • Bending: 13
  • Rotation: 14

Elbow

  • Joint: 15

The following list is the connection pins from the voice recognition module.

GND

  • GND

VCC

  • Vin

RXD

  • Pin 7

TXD

  • Pin 2

Step 10: Wiring the Motor Shield

The team is using a 5V power supply. This is achieved from the wall plug-in power source. Using a power terminal adapter, configure the wire as seen in the third picture. Next, attach all motor wires to the motor shield. Connect corresponding wires to pins, ie ground to ground and power to power etc. Be sure to identify what pin number each motor is attached to so that in the code, all connections are accurate.

Step 11: The Elbow

For this step, you will need to have assembled the DDT 500 Tilt Kit. For directions on this assembly, refer to SIRA Robotics instructable build of the DDT 500 Tilt Kit. Place the assembled DDT 500 Tilt kit into the slots at the bottom of the forearm shown. Feed the wires of the Tilt kit into the back of the forearm and connect it to the pins shown. Place the opposite side of the forearm and it should snap into place in connection with the DDT 500 Tilt kit and the part of the forearm with the motor controller.

Step 12: Presentation Mount

Drill (4) holes using a counter sink attachment on the bottom base sheet of plastic (18"x12"). Next drill (4) holes of 0.25" diameter into the top sheet of plastic (4"x6"), then drill (1) 0.5" hole into the middle of the top sheet. These holes should be equally spaced with proper alignment in reference to the other sheet. Next, insert the screws through the bottom sheet and use a screwdriver to screw the screws into the top sheet and secure the top side with nuts as seen in the picture above. Now insert the bolt through the hole in the center of the top plate and secure using a nut as seen in the picture. Finally attach the arm onto the tilt kit mounted on the top sheet through the holes on the bottom of the arm. Refer to the picture for assistance. The arm is now fully assembled and mounted ready for use.

Step 13: Coding

1) Follow the steps in the manual for setting up the Voice Recognition Module and downloading the SimpleVR software and Library from the Elechouse website (link below):

https://www.elechouse.com/elechouse/index.php?main...

2) Once the SimpleVR software is downloaded, create a new group in the voice folder with the commands in the asrgrp3.txt file provided here. Open the ELECHOUSE_eng.exe application, as directed in the manual, and upload the created group onto the SimpleVR module.

3) Download the Adafruit Library following the steps provided at the Adafruit website (link below):

https://learn.adafruit.com/adafruit-16-channel-pwm...

4) Then download and open alphabet_code.ino, upload the code to the Arduino and test functionality.