SE367 HW 2
Group 2
Agrim, Hemangini & Vidur
Group report
Instruct a robot to write with a pencil
Overview

Most actions performed by human beings are composed of extermely intricate combinations of moves which involve the best of human intelligence, motor control, and cognitive abilities. Seemingly simple movements like grasping an object, lifting a hand, recogninsing a face, are such easily performed by our brain that we completely overlook the underlying complexity of the task in terms of discrete, concrete mathematical thoughts.

To instruct a robot to perform a human-like task is perhaps more difficult than escaping Azkaban. To begin with, we are endowed with an array of millions and billions of sensors all over our body which help us acknowledge the touch and feel of objects, identify specific smells, understand distinctive sounds and most important of all - percieve each of these as a specific entity in our mind.

Complexities Involved

Since most human tasks rely on the various sensors mentioned above, we need to use their electronic equivalents and try to recognise, acknowledge and perform the task at hand

Algorithm
  1. Identify coordinates of pencil in XY plane
  2. Hold pencil at p = 2cm , with M and T affectors
  3. Rotate pencil (about Z-axis, passing through p = 0), till (x=0,y=0) coordinate lies on P-axis
  4. Move pencil along Z-axis by 20cm
  5. Source point- = defined as centre of trough between I and T affectors
  6. Move pencil (keeping orientation of P-axis constant), 1cm closer to ‘source point’.
  7. Hook I-affector at p = 5cm, with ‘source point’.
  8. Rotate point of contact between I-affector and object, about axis defined by line passing through points of contact of M and T affectors (with object), by an angle such that P-axis lies at perpendicular distance of ‘r’ from ‘source point’.
  9. Release I affector
  10. Move# I affector, to touch pencil surface at p=1.75cm, such that contact point makes an equilateral triangle with M and T contact points (with pencil)
  11. Identify coordinates of Paper
  12. Move pencil to contact plane of Paper(with p=0 point of pencil), 10cm away from closest (to origin), adjacent edges of paper.
  13. Move base of wrist to contact plane of Paper, while not changing point of intersection of pencil tip with paper. (Ensure no relative movement within hand from finger to wrist)
  14. Applying pressure of 2psi, along -ve Z-axis - trace locus defined by image/characters to be written on the plane of the paper, using Move function for each image/character.
A Video Demonstration

Initializations

NOTE - contact of affectors is always made from TIP of frontal phalange of affector.

X,Y,Z axes with XY-plane = horizontal plane, on which the pencil is lying. Origin of robot is (x=0,y=0,z=0).

I = index finger affector, M = middle finger affector, T = thumb affector.
Hold = contacting surface of specified affectors of robot, with specified object. Placing affectors opposite to each other such that line joining contact points of affectors is perpendicular to object surface at respective contact points. Application of pressure along line perpendicular to surface of object = 5-10psi.

Parameters = coordinates of affectors, of pencil and pressure sensor output from affectors.

Hinge = maintaining contact as specified in “Hold” function, ensure that pressure is dynamically adjusted to ensure no slipping along P-axis, and allow rotation around axis defined by line joining contact points of affectors.

Parameters = coordinates of affectors, of pencil and pressure sensor output from affectors.

Hook = contacting object by affector, such that the frontal phalange of affector is bent at 150-120degrees from central phalange of affector (and similarly for angle between central and basal phalange). Contact with object made only by points of the frontal - on object surface facing away from “source” parameter.

Parameters = coordinates of affectors, of pencil and pressure sensor output from affector.

Move = movement of affectors (keeping their relative coordinates fixed within the hand - from tip of affector, uptill the wrist) from Initial coordinates, to Final coordinates, or tracing a locus.

Parameters = coorindates of affectors, Intial and Final coordinates. OR Locus of path to be traced.

Move# = movement of tip of affector from Initial to Final coordinates, or tracing a locus, given constraints for movement from Initial to Final Coordinate.

Parameter = coordinates of affector, coordinates of Intial and Final points, OR Locus of path to be traced

Rotate = utilization of Move function, to perform rotation of specified points/objects, in a certain direction. It generates a locus to be traced for the affector to facilitate the rotation.

Parameters = coordinates of point to be rotated, axis of rotation.

Release = remove contact of affectors with object.