ABSTRACT

Let Rk (t), k = 1,2, ..., N denote the positions of moving point objects which have to be picked up by a robot. More generally, instead of point objects, we can assume extended rigid bodies moving on the ground or in space which have to be picked up by the robot. We have a camera in synchronization with the robot at the location R(t) (ie the position of its centre of mass). Now the camera takes pictures of the point objects and also of the robot and a digital computer calculates the distances and bearings of the images of the objects with that of the robot and accordingly generates control torques that are used to manipulate the robot so that it moves closer to one of the objects, say the mth one in succession, ie, the robot uses the error in the images of the position of the mth object and that of the robot to generate a control torque signal that eventually enables the robot to track this object and finally reduce the error in its position relative to the robot to zero and finally pick the object up. This series of jobs is performed successively on the different objects so that finally all the objects are picked up. The mathematical details of formulating an algorithm are based on the gradient descent algorithm and could be described as follows: Let I( R k (t), x, y) denote the image field on the camera screen generated by the kth object at time t and let I ( R (t), q(t), x, y) be the image field on the camera screen generated by the robot at time t whose centre of mass is located at R(t) and whose link angles relative to a given direction are denoted by q(t). The computer calculates the error energy https://www.w3.org/1998/Math/MathML"> E k ( t , R ( t ) , q ( t ) ) = ∫   ( I ( R k ( t ) ,   x ,   y ) − I ( R ( t ) , q ( t ) ,   x ,   y ) ) 2 d x d y https://s3-euw1-ap-pe-df-pch-content-public-p.s3.eu-west-1.amazonaws.com/9781003353430/7c6b2267-357d-43f3-8407-94415ee056ee/content/math4_99_1_B.tif" xmlns:xlink="https://www.w3.org/1999/xlink"/> and then the computer generates the following algorithm for moving the robot using a force and torque that causes the robot’s location and link angles respectively to change after a small time δt to https://www.w3.org/1998/Math/MathML"> R ( t ) + δ R ( t ) , q ( t ) + δ q ( t ) https://s3-euw1-ap-pe-df-pch-content-public-p.s3.eu-west-1.amazonaws.com/9781003353430/7c6b2267-357d-43f3-8407-94415ee056ee/content/math4_99_2_B.tif" xmlns:xlink="https://www.w3.org/1999/xlink"/> where https://www.w3.org/1998/Math/MathML"> δ R ( t ) = − µ . δ t ∇ R ( t ) E k ( t , R ( t ) , q ( t ) ) , δ q ( t ) = − µ . δ t ∇ q ( t ) E k ( t , R ( t ) , q ( t ) ) https://s3-euw1-ap-pe-df-pch-content-public-p.s3.eu-west-1.amazonaws.com/9781003353430/7c6b2267-357d-43f3-8407-94415ee056ee/content/math4_100_1_B.tif" xmlns:xlink="https://www.w3.org/1999/xlink"/>