18
Animatronic Robotic Hand

ELG project presentation final

Embed Size (px)

Citation preview

Page 1: ELG project presentation final

Animatronic Robotic Hand

Page 2: ELG project presentation final

Project Block Diagram

Page 3: ELG project presentation final
Page 4: ELG project presentation final
Page 5: ELG project presentation final
Page 6: ELG project presentation final
Page 7: ELG project presentation final
Page 8: ELG project presentation final
Page 9: ELG project presentation final
Page 10: ELG project presentation final
Page 11: ELG project presentation final
Page 12: ELG project presentation final

6 Volts Battery Pack

Toggle Switch

Servo Motor

470 Ohm Resistor

100 µF Electrolyte Capacitor(Decoupling Capacitors)

Red LED

Servo Motors Circuit Diagram

Page 13: ELG project presentation final

Flex Sensor

10KOhm Resistor

Flex Sensor Circuit Diagram

Page 14: ELG project presentation final

Operating Voltage Range : 4.8V TO 6.0VWeight: 45.5g (1.6oz)Dimensions: 40.6 x 19.8 x 36.6mm (1.59 x 0.77 x 1.44in)Stall Torque: 3.3 kg.cm (45.82 oz.in)Operating Speed : 0.21sec/60 deg AT NO LOADOperating Angle : 180 degControl System: Pulse width control

HSS-422 Servo Motor Specifications

Page 15: ELG project presentation final

Life Cycle: >1 million

Thickness: 0.43mm (0.017")

Flat Resistance: 10K Ohms ±30%Bend Resistance: minimum 2 times greater than the flat resistance at 180° pinch bendPower Rating : 0.5 Watts continuous; 1 WattPeak

Temperature Range: -35°C to +80°C

Flex Sensor Specifications

Page 16: ELG project presentation final

#include <Servo.h>

Servo Servo_1;Servo Servo_2;Servo Servo_3;Servo Servo_4;Servo Servo_5;

int Voltmeter= 13;int flexPin1= 1;int flexPin2= 2;int flexPin3= 3;int flexPin4= 4;int flexPin5= 5;

int flexVal1;int flexVal2;int flexVal3;int flexVal4;int flexVal5;

int angle1;int angle2;int angle3;int angle4;int angle5;int voltReading;

void setup(){ Servo_1.attach(5); Servo_2.attach(6); Servo_3.attach(9); Servo_4.attach(10); Servo_5.attach(11);

pinMode(Voltmeter, OUTPUT); Serial.begin(9600);}

Import servo library

Variable declaration

Associating the servos to specific Arduino PMW pins

Initializing digital pin 13 as an Output

Initializing the serial port

Arduino Code Explained

Page 17: ELG project presentation final

Serial.print(", angle: "); Serial.print(angle1);

Servo_1.write(angle1); Servo_2.write(angle2); Servo_3.write(angle3); Servo_4.write(angle4); Servo_5.write(angle5); if(voltReading >650) { digitalWrite(Voltmeter, HIGH); } else if (voltReading < 650) { digitalWrite(Voltmeter, LOW); } }

void loop()

{ voltReading=analogRead(0); flexVal1=analogRead(flexPin1); flexVal2=analogRead(flexPin2); flexVal3=analogRead(flexPin3); flexVal4=analogRead(flexPin4); flexVal5=analogRead(flexPin5); Serial.print("\nFLEX_Val: "); Serial.print(flexVal1);

angle1 = map(flexVal1, 390,455, 180, 0); angle2 = map(flexVal2, 113,130, 180, 0); angle3 = map(flexVal3, 300,340, 180, 0); angle4 = map(flexVal4, 350,415, 180, 0); angle5 = map(flexVal5, 325,390, 180, 0);

Arduino Code Explained

Apply Analog input values to variables

Displays the analog voltage of flexVal1 on the serial monitor

Mapping flex sensorvalues to angle Variables (10 bit values)

Displays angle of rotation forservo 1 on the serial monitor

Rotates servo motors according to the given value of each “angle” variables

If the voltage reading isabove 3.2V the LED is turned on

If the voltage reading isbelow 3.2V the LED is turned off

Page 18: ELG project presentation final

Thank You!