Patent Description:
Robots that are required to manipulate objects, which may for example be industrial or surgical robots, frequently have an arm composed of rigid elements which are linked together in series by a number of flexible joints. The joints could be of any type but are typically revolute joints, or a combination of revolute and prismatic joints. The arm extends from a base, whose location might be fixed or moveable, and terminates in a tool or an attachment for a tool. The tool could, for example be a gripping, cutting, illuminating, irradiating or imaging tool. The final joint in the arm may be termed the wrist. The wrist may permit motion about only a single axis, or it may be a complex or compound articulation, which permits rotation about multiple axes. As disclosed in our co-pending patent application <CIT>, published as <CIT>, the wrist may provide two roll joints whose axes are generally longitudinal to the arm, separated by two pitch/yaw joints, whose axes are generally transverse to the arm.

In the case of a surgical robot there are a number of important criteria that influence the design of the distal joint(s) of the arm.

The number of important criteria makes it difficult to design an arm that best balances all the requirements.

One particular problem is how to fit the motors and gearing into the wrist of a robot arm. The arrangement should be compact but also allow for high stiffness and torque transfer. Many existing designs compromise one of these criteria.

There is a need for an improved drive arrangement for a joint of a robot arm.

<CIT> describes an end effector for use and connection to a robot arm of a robotic surgical system, wherein the end effector is controlled and/or articulated by at least one cable extending from a respective motor of a control device of the robot surgical system. The end effector includes at least one gear train that transmits forces from the at least one motor of the control device to at least one of the proximal bracket of the wrist assembly, the distal bracket of the wrist assembly and the jaw assembly. The gear train enables at least one of a pivoting of the distal hub assembly relative to the proximal hub; a rotation of the distal bracket relative to the proximal bracket; and an opening/closing of the jaw assembly.

According to the present invention there is provided a robot arm comprising a joint mechanism for articulating one limb of the arm relative to another limb of the arm about two non-parallel rotation axes, the mechanism comprising: an intermediate carrier attached to a first one of the limbs by a first revolute joint having a first rotation axis and to a second one of the limbs by a second revolute joint having a second rotation axis; a first drive gear disposed about the first rotation axis, the first drive gear being fast with the carrier; a second drive gear disposed about the second rotation axis, the second drive gear being fast with the second one of the limbs; a first drive shaft for driving the first drive gear to rotate about the first rotation axis, the first drive shaft extending along the first one of the limbs and having a first shaft gear thereon, the first shaft gear being arranged to engage the first drive gear; a second drive shaft for driving the second drive gear to rotate about the second rotation axis, the second drive shaft extending along the first one of the limbs and having a second shaft gear thereon; an intermediate gear train borne by the carrier and coupling the second shaft gear to the second drive gear, the intermediate gear train comprising a first intermediate gear disposed about the first rotation axis, the first intermediate gear being arranged to engage the second shaft gear; and a control unit arranged to respond to command signals commanding motion of the robot arm by driving the first and second drive shafts to rotate. The control unit may be configured to, when the robot arm is commanded to articulate about the first axis without articulating about the second axis, drive the first shaft to rotate to cause articulation about the first axis and also drive the second shaft to rotate in such a way as to negate parasitic articulation about the second axis.

The intermediate gear train may comprise a plurality of interlinked gears arranged to rotate about axes parallel with the first rotation axis.

The intermediate gear train may comprise an intermediate shaft arranged to rotate about an axis parallel with the first rotation axis. The intermediate shaft may have a third shaft gear thereon, the third shaft gear being arranged to engage the second drive gear.

The interlinked gears may be on one side of a plane perpendicular to the first axis and containing the teeth of the first drive gear, and at least part of the third shaft gear is on the other side of that plane.

The third shaft gear may be a worm gear: i.e. a gear whose tooth/teeth follow a helical path. One or both of the first and second shaft gears may be worm gears.

One or both of the first and second drive gears may be bevel gear(s): i.e. gears whose pitch surface is a straight-sided or curved cone and/or whose teeth are arranged on such a cone. The tooth lines may be straight or curved. One or both of the first and second drive gears may be skew axis gear(s).

The first drive gear may be a part-circular gear. At least part of the second drive gear may intersect a circle about the first axis that is coincident with the radially outermost part of the first drive gear. At least part of the intermediate shaft may intersect a circle about the first axis that is coincident with the radially outermost part of the first drive gear.

The first and second axes may be orthogonal. The first and second axes may intersect each other.

The wrist mechanisms to be described below have been found to provide compact and mechanically advantageous arrangements for at least some of the joints of a robot wrist, or for other applications.

<FIG> shows a surgical robot having an arm <NUM> which extends from a base <NUM>. The arm comprises a number of rigid limbs <NUM>. The limbs are coupled by revolute joints <NUM>. The most proximal limb 3a is coupled to the base by joint 4a. It and the other limbs are coupled in series by further ones of the joints <NUM>. A wrist <NUM> is made up of four individual revolute joints. The wrist <NUM> couples one limb (3b) to the most distal limb (3c) of the arm. The most distal limb 3c carries an attachment <NUM> for a surgical instrument or tool <NUM>. Each joint <NUM> of the arm has one or more motors <NUM> which can be operated to cause rotational motion at the respective joint, and one or more position and/or torque sensors <NUM> which provide information regarding the current configuration and/or load at that joint. For clarity, only some of the motors and sensors are shown in <FIG>. The arm may be generally as described in our co-pending patent application <CIT>, published as <CIT>.

The attachment point <NUM> for a tool can suitably comprise any one or more of: (i) a formation permitting a tool to be mechanically attached to the arm, (ii) an interface for communicating electrical and/or optical power and/or data to and/or from the tool, and (iii) a mechanical drive for driving motion of a part of a tool. In general it is preferred that the motors are arranged proximally of the joints whose motion they drive, so as to improve weight distribution. As discussed below, controllers for the motors, torque sensors and encoders are distributed with the arm. The controllers are connected via a communication bus to control unit <NUM>.

A control unit <NUM> comprises a processor <NUM> and a memory <NUM>. Memory <NUM> stores in a non-transient way software that is executable by the processor to control the operation of the motors <NUM> to cause the arm <NUM> to operate in the manner described herein. In particular, the software can control the processor <NUM> to cause the motors (for example via distributed controllers) to drive in dependence on inputs from the sensors <NUM> and from a surgeon command interface <NUM>. The control unit <NUM> is coupled to the motors <NUM> for driving them in accordance with outputs generated by execution of the software. The control unit <NUM> is coupled to the sensors <NUM> for receiving sensed input from the sensors, and to the command interface <NUM> for receiving input from it. The respective couplings may, for example, each be electrical or optical cables, or may be provided by a wireless connection. The command interface <NUM> comprises one or more input devices whereby a user can request motion of the arm in a desired way. The input devices could, for example, be manually operable mechanical input devices such as control handles or joysticks, or contactless input devices such as optical gesture sensors. The software stored in memory <NUM> is configured to respond to those inputs and cause the joints of the arm to move accordingly, in compliance with a predetermined control strategy. The control strategy may include safety features which moderate the motion of the arm in response to command inputs. Thus, in summary, a surgeon at the command interface <NUM> can control the robot arm <NUM> to move in such a way as to perform a desired surgical procedure. The control unit <NUM> and/or the command interface <NUM> may be remote from the arm <NUM>.

<FIG> shows the wrist <NUM> of the robot in more detail. The wrist comprises four revolute joints <NUM>, <NUM>, <NUM>, <NUM>. The joints are arranged in series, with a rigid part of the arm extending from each joint to the next. The most proximal joint <NUM> of the wrist joins arm part 4b to arm part <NUM>. Joint <NUM> has a "roll" rotation axis <NUM>, which is directed generally along the extent of the limb 4b of the arm that is immediately proximal of the articulations of the wrist. The next most distal joint <NUM> of the wrist joins arm part <NUM> to arm part <NUM>. Joint <NUM> has a "pitch" rotation axis <NUM> which is perpendicular to axis <NUM> in all configurations of joints <NUM> and <NUM>. The next most distal joint <NUM> of the wrist joins arm part <NUM> to arm part <NUM>. Joint <NUM> has a "yaw" rotation axis <NUM> which is perpendicular to axis <NUM> in all configurations of joints <NUM> and <NUM>. In some configurations of the wrist, axis <NUM> is also perpendicular to axis <NUM>. The next most distal joint of the wrist <NUM> joins arm part <NUM> to arm part 4c. Joint <NUM> has a "roll" rotation axis <NUM> which is perpendicular to axis <NUM> in all configurations of joints <NUM> and <NUM>. In some configurations of the wrist, axis <NUM> is also perpendicular to axis <NUM> and parallel with (and preferably collinear with) axis <NUM>. It is preferable for axes <NUM> and <NUM> to intersect each other, since this gives a particularly compact configuration. Joints <NUM> and <NUM> may be positioned so that axes <NUM> and <NUM> can pass through the intersection of axes <NUM>, <NUM> for some configurations of the wrist.

This design of wrist is advantageous in that it allows a wide range of movement from a tool attached to the attachment point <NUM> at the distal end of arm part 4c, but with the wrist being capable of being assembled in a relatively compact form and without there being singularities at certain parts of the range of motion that could demand excessively high rates of motion at individual joints.

<FIG> and <FIG> show one example of a mechanism suitable for implementing part of the wrist <NUM> of the arm <NUM> of <FIG>. <FIG> and <FIG> concentrate (as to <FIG>) on the mechanism associated with the joints designated <NUM> and <NUM> in <FIG>.

In the region of the wrist <NUM> the rigid arm parts <NUM>, <NUM> have hollow outer shells or casings <NUM>', <NUM>", <NUM>'. The shells define the majority of the exterior surface of the arm, and include a void which is partly or fully encircled by the exterior wall of the respective shell and within which the motors, sensors, cables and other components of the arm can be housed. The shells could be formed of a metal, for example an aluminium alloy or steel, or from a composite, for example a fibre-reinforced resin composite such as carbon fibre reinforced resin. The shells constitute part of the rigid structure of the arm parts that attaches between the respective joints. The shells may contain a structural framework as shown later in relation to the embodiment of <FIG>.

In <FIG> and <FIG>, for clarity the shell of arm part <NUM> is shown in two parts: <NUM>' and <NUM>", both of which are drawn in outline and exploded from each other. The shells of arm parts 4b and 4c are omitted, as is the mechanism associated with joints <NUM> and <NUM>. The shell of arm part <NUM> is shown in part, the majority extending from spur <NUM>'.

The shell of arm part <NUM> (constituted by shell parts <NUM>' and <NUM>") and the shell of arm part <NUM> (which extends from spur <NUM>') are movable with respect to each other about two rotation axes, shown at <NUM> and <NUM>. These correspond to axes <NUM>, <NUM> of <FIG>. Axes <NUM> and <NUM> are orthogonal. Axes <NUM> and <NUM> intersect. A central coupler <NUM> is mounted to arm part <NUM> by bearings <NUM>, <NUM>. The coupler extends between the bearings <NUM>, <NUM>. The bearings <NUM>, <NUM> hold the coupler fast with arm part <NUM> except that they permit relative rotation of the coupler and that arm part about axis <NUM>, thus defining a revolute joint corresponding to joint <NUM> of <FIG>. A further bearing <NUM> attaches the distal shell connector spur <NUM>' to the coupler <NUM>. Bearing <NUM> holds the distal shell connector spur <NUM>' fast with the coupler <NUM> except for permitting relative motion of the spur and the coupler about axis <NUM>, thus defining a revolute joint corresponding to joint <NUM> of <FIG>.

Thus coupler <NUM> is fast with the arm part <NUM> about axis <NUM>. Coupler <NUM> is also fast with the arm part <NUM> about axis <NUM>. That is, the mechanism is arranged so that coupler <NUM> and arm part <NUM> cannot undergo relative rotation or motion about axis <NUM>; and coupler <NUM> and arm part <NUM> cannot undergo relative rotation or motion about axis <NUM>.

Two electric motors <NUM>, <NUM> (see <FIG>) are mounted in arm part <NUM>. The motors drive respective drive shafts <NUM>, <NUM> which extend into the midst of the wrist mechanism.

Shaft <NUM> drives rotation about axis <NUM>. Shaft <NUM> drives rotation about axis <NUM>. Drive shaft <NUM> terminates at its distal end in a worm gear <NUM>. The worm gear <NUM> engages a bevel gear <NUM> which is fast with the coupler <NUM>. Drive shaft <NUM> terminates at its distal end in a worm gear <NUM>. The worm gear <NUM> engages a gear train shown generally at <NUM> which terminates in a further worm gear <NUM>. Worm-form pinion gear <NUM> engages a hypoid-toothed bevel gear <NUM> which is fast with the distal shell connector <NUM>'.

In this example, the gear <NUM> is directly attached to the coupler <NUM>. That is, the coupler <NUM> abuts the gear <NUM>. Gear <NUM> is therefore mounted to the coupler <NUM>. The distal shell connector spur <NUM>' is also directly attached to the gear <NUM>. Thus the gear <NUM> may abut the connector spur <NUM>'.

Shafts <NUM> and <NUM> are parallel. They both extend along the arm part <NUM>. In particular, shafts <NUM> and <NUM> extend in a direction substantially parallel to the longitudinal direction of the arm part <NUM>. The shafts could be parallel to the longitudinal direction of the arm part <NUM>, or they could be mounted at an angle to the general longitudinal direction of the arm part <NUM>. For example, the arm part <NUM> may taper in the direction from the proximal end towards the distal end, and the shafts <NUM> and <NUM> may extend in a direction that is parallel to the taper angle of the arm part.

Worms <NUM> and <NUM> are attached to the drive shafts <NUM> and <NUM> respectively and so may be referred to as shaft gears. Rotation of gear <NUM> drives rotation of arm part <NUM> relative to arm part <NUM> about axis <NUM>, and thus gear <NUM> may be referred to as a drive gear. Similarly, rotation of gear <NUM> drives rotation of arm part <NUM> relative to arm part <NUM> about axis <NUM>, and thus gear <NUM> may also be referred to as a drive gear.

Gear <NUM> is formed as a sector gear: that is its operative arc (defined in the example of <FIG> and <FIG> by the arc of its teeth) is less than <NUM>°.

The gear train <NUM> is borne by the coupler <NUM>. The gear train comprises an input gear <NUM> which engages the worm <NUM>. Input gear <NUM> is located with its rotation axis relative to the coupler <NUM> being coincident with axis <NUM>. That means that the input gear can continue to engage the worm <NUM> irrespective of the configuration of the coupler <NUM> relative to arm part <NUM> about axis <NUM>. A series of further gears whose axes are parallel with axis <NUM> transfer drive from the input gear <NUM> to an output gear <NUM> on a shaft <NUM> whose rotation axis relative to the carrier <NUM> is parallel with but offset from axis <NUM>. Shaft <NUM> terminates in the worm <NUM>. Shaft <NUM> extends parallel to axis <NUM>. The gears of gear train <NUM>, together with shaft <NUM>, are borne by the coupler <NUM>.

The operation of the wrist mechanism will now be described. For motion about axis <NUM>, motor <NUM> is operated to drive shaft <NUM> to rotate relative to arm part <NUM>. This drives the bevel gear <NUM> and hence coupler <NUM> and distal shell spur <NUM>' to rotate about axis <NUM> relative to arm part <NUM>. For motion about axis <NUM>, motor <NUM> is operated to drive shaft <NUM> to rotate relative to arm part <NUM>. This drives the bevel gear <NUM> and hence distal shell connector <NUM>' to rotate about axis <NUM> relative to arm part <NUM>. It will be observed that if drive shaft <NUM> is rotated, driving the coupler <NUM> to rotate, whilst drive shaft <NUM> remains stationary then gear <NUM> will also rotate relative to the coupler <NUM>, causing parasitic motion of the distal shell connector spur <NUM>' about axis <NUM>. To prevent this, the control system <NUM> of the arm is configured so that when required there is compensatory motion of drive shaft <NUM> in tandem with motion of drive shaft <NUM> so as to isolate motion about axis <NUM> from motion about axis <NUM>. For example, if it is required to cause relative motion of shells <NUM>, <NUM> about only axis <NUM> then motor <NUM> is operated to cause that motion whilst motor <NUM> is simultaneously operated in such a way as to prevent input gear <NUM> from rotating relative to carrier <NUM>.

Various aspects of the mechanism shown in <FIG> and <FIG> are advantageous in helping to make the mechanism particularly compact.

<FIG> and <FIG> show a second form of wrist mechanism, which is not part of the present invention, suitable for providing joints <NUM>, <NUM> in a wrist of the type shown in <FIG>.

As shown in <FIG> the wrist comprises a pair of rigid external shells <NUM>', <NUM>' which define the exterior surfaces of arm parts <NUM>, <NUM> respectively of <FIG>. <NUM>' is the more proximal of the shells. The arm parts formed of the shells <NUM>', <NUM>' can pivot relative to each other about axes <NUM>, <NUM>, which correspond respectively to axes <NUM>, <NUM> of <FIG>. Axes <NUM>, <NUM> are orthogonal. Axes <NUM>, <NUM> intersect. The shells <NUM>', <NUM>' define the exterior of the arm in the region of the wrist and are hollow, to accommodate a rotation mechanism and space for passing cables etc., as will be described in more detail below. The shells could be formed of a metal, for example an aluminium alloy or steel, or from a composite, for example a fibre-reinforced resin composite such as carbon fibre. The shells constitute the principal rigid structure of the arm parts that attaches between the respective joints.

<FIG> shows the same mechanism from distally and one side, with the shell <NUM>' removed for clarity.

Shell <NUM>' is coupled to shell <NUM>' by a cruciform coupler <NUM>. The coupler has a central tube <NUM> which defines a duct through its centre, running generally along the length of the arm. Extending from the tube are first arms <NUM>, <NUM> and second arms <NUM>, <NUM>. Each of the shells <NUM>', <NUM>' is attached to the coupler <NUM> by a revolute joint: i.e. in such a way that it is confined to be able to move relative to the coupler only by rotation about a single axis. The first arms <NUM>, <NUM> attach to shell <NUM>' by bearings <NUM>, <NUM> which permit rotation between those first arms and the shell <NUM>' about axis <NUM>. The second arms <NUM>, <NUM> attach to shell <NUM>' by bearings <NUM>, <NUM> which permit rotation between those second arms and the shell <NUM>' about axis <NUM>. A first bevel gear <NUM> is concentric with the first arms <NUM>, <NUM>. The first bevel gear is fast with the coupler <NUM> and rotationally free with respect to the proximal one of the two shells <NUM>'. A second bevel gear <NUM> is concentric with the second arms <NUM>, <NUM>. The second bevel gear is fast with the distal one of the two shells <NUM>' and rotationally free with respect to the coupler <NUM>.

The pair of arms <NUM>, <NUM> of the coupler are perpendicular to the pair of arms <NUM>, <NUM>. Arms <NUM> and <NUM> lie on the rotation axis <NUM>; and arms <NUM> and <NUM> lie on the rotation axis <NUM>. The coupler <NUM> is directly attached to the gear <NUM>. Thus the coupler <NUM> abuts gear <NUM>. Coupler <NUM> (and hence gear <NUM>) can rotate relative to the arm part <NUM> about axis <NUM>. However, the coupler <NUM> and gear <NUM> are fast with the arm part <NUM> about the axis <NUM> such that there can be no relative motion or rotation between the coupler <NUM> and arm part <NUM> about axis <NUM>.

The bevel gear <NUM> may be mounted directly to the arm part <NUM>. The bevel gear <NUM> can rotate with respect to the coupler <NUM> (and hence arm part <NUM>) about axis <NUM>. However, the gear <NUM> is fast with the coupler <NUM> about axis <NUM>. That is, there can be no relative rotation or motion between coupler <NUM> and gear <NUM> about axis <NUM>.

Two shafts <NUM>, <NUM> operate the motion of the compound joint. The shafts extend into the central region of the joint from within the proximal one of the shells <NUM>'. Each shaft is attached at its proximal end to the shaft of a respective electric motor (not shown), the housings of the motors being fixed to the interior of the proximal shell <NUM>'. In this way the shafts <NUM>, <NUM> can be driven by the motors to rotate with respect to the proximal shell <NUM>'.

Shaft <NUM> and its associated motor operate motion about axis <NUM>. Shaft <NUM> terminates at its distal end in a worm gear <NUM> which engages bevel gear <NUM>. Rotation of shaft <NUM> causes rotation of the bevel gear <NUM> relative to shell <NUM>' about axis <NUM>. Bevel gear <NUM> is fast with the coupler <NUM>, which in turn carries the distal shell <NUM>'. Thus rotation of shaft <NUM> causes relative rotation of the shells <NUM>', <NUM>' about axis <NUM>.

Shaft <NUM> and its associated motor operate motion about axis <NUM>. In order to do that it has ultimately to drive bevel gear <NUM> by means of a worm gear <NUM> carried by the coupler <NUM>. Rotation of that worm gear can cause relative rotation of the coupler and the distal shell <NUM>'. To achieve this, drive is transmitted from the shaft <NUM> through a pair of gears <NUM>, <NUM> borne by the carrier <NUM> to a shaft bearing the worm gear <NUM>. Shaft <NUM> approaches the carrier <NUM> from the proximal side. The gears <NUM>, <NUM> are located on the distal side of the coupler. Gears <NUM>, <NUM> and <NUM> are thus fast with the coupler <NUM> about axes <NUM> and <NUM>. The shaft <NUM> passes through the duct defined by tube <NUM> in the centre of the coupler. To accommodate motion of the coupler <NUM> relative to the first shell <NUM>' the shaft <NUM> has a universal or Hooke's joint <NUM> along its length. The universal joint <NUM> lies on axis <NUM>. Instead of a Hooke's joint the shaft could have another form of flexible coupling, for example an elastic coupling (which could be integral with the shaft) or a form of constant velocity joint.

Worm <NUM> is attached to drive shaft <NUM> and so may be referred to as a shaft gear. Rotation of gear <NUM> drives rotation of the arm part <NUM> relative to the arm part <NUM> about axis <NUM>, and thus gear <NUM> may be referred to as a drive gear. Similarly, rotation of gear <NUM> drives rotation of arm part <NUM> relative to arm part <NUM> about axis <NUM>, and so gear <NUM> may also be referred to as a drive gear.

Shaft <NUM> traverses a plane that contains rotation axis <NUM>. The plane additionally contains rotation axis <NUM>. Thus the shaft <NUM> comprises a proximal portion that is proximal of that plane, and a distal portion that is distal of that plane. The proximal portion of the shaft <NUM> is attached or otherwise coupled to the motor. The distal portion of the shaft attaches to the gear <NUM>. Gear <NUM> is therefore located on the distal side of that plane. Gear <NUM> may also be referred to as a shaft gear. The proximal and distal portions of the shaft <NUM> may be separated by the Hooke's joint <NUM>. The Hooke's joint permits the proximal and distal portions of the shaft <NUM> to rotate with each other such that rotation of the proximal portion is coupled to the distal portion. Since the distal portion of shaft <NUM> is attached to gear <NUM>, it follows that gear <NUM> is rotationally fast with shaft <NUM>.

Gear <NUM> engages, or meshes with, gear <NUM>. In this example gears <NUM> and <NUM> are spur gears. Gears <NUM> and <NUM> have parallel but offset rotation axes. The rotation axis of gear <NUM> is collinear with the rotation axis of the distal portion of shaft <NUM>. Worm <NUM> is arranged to rotate in response to a rotation of gear <NUM>. Worm <NUM> may be rotationally fast with gear <NUM> such that a rotation of gear <NUM> causes a corresponding rotation of worm <NUM>. Worm <NUM> may have a rotation axis that is collinear with the rotation axis of gear <NUM>. Thus gears <NUM> and <NUM> operate to couple rotation of shaft <NUM> to rotation of gear <NUM> about a rotation axis parallel to the rotation axis of the distal portion of shaft <NUM>.

The rotation axis of worm <NUM> is not parallel and does not intersect the rotation axis of gear <NUM> (axis <NUM>). Gear <NUM> is therefore a skew-axis gear. Similarly, the rotation axes of worm <NUM> and gear <NUM> are non-parallel and non-intersecting. Thus gear <NUM> is also a skew-axis gear.

It is observed that rotation of the shaft <NUM>, which causes the coupler <NUM> to rotate about axis <NUM>, may cause gears <NUM> and <NUM> (and thus worm gear <NUM>) to rotate when the shaft <NUM> is held stationary, causing parasitic motion of the distal shell <NUM>' relative to the shell <NUM>' about the rotation axis <NUM>. This is because the rotation of the coupler <NUM> about axis <NUM> driven by the rotation of the shaft <NUM> needs to be accommodated by the Hooke's joint <NUM>, and that rotation of the coupler <NUM> may cause a parasitic rotation of the Hooke's joint about the longitudinal axis of the shaft <NUM>. Any such parasitic rotation of the Hooke's joint may cause a consequent rotation of gears <NUM> and <NUM>, and thus rotation of the bevel gear <NUM>. Such parasitic motion may be prevalent if the hinge axes of the Hooke's joint are not perpendicular to each other, and/or if one of the hinge axes is not parallel and coincident with the rotation axis <NUM>.

To prevent this parasitic motion, the control system <NUM> may be configured to drive compensatory motion of the shaft <NUM> in tandem with motion of the shaft <NUM> so as to isolate motion about axis <NUM> from motion about axis <NUM>. Thus the control system <NUM> may be arranged to operate the motor to drive rotation of shaft <NUM> to cause rotation of arm part <NUM>' relative to arm part <NUM>' about axis <NUM> whilst simultaneously operating the motor to drive shaft <NUM> to rotate in such a way as to prevent parasitic rotation about axis <NUM>. The control system <NUM> may be configured to operate in this manner when the robot arm is commanded to articulate about axis <NUM> without articulating about axis <NUM>.

The control system <NUM> may also be configured to drive rotation of shafts <NUM> and/or <NUM> in such a way as to reduce irregularities (i.e. increase smoothness) in the rotation of the Hooke's joint <NUM>. The Hooke's joint may experience irregularities in its rotation when it is off axis, i.e. when arm part <NUM>' is pitched relative to arm part <NUM>' about axis <NUM>. Thus when the arm part <NUM>' is commanded to articulate relative to arm part <NUM>' about axis <NUM> when arm part <NUM>' is pitched relative to arm part <NUM>' about axis <NUM>, the control system may operate to drive the rotation of shaft <NUM> in such a way as to maintain a smooth or consistent rotation speed of the Hooke's joint <NUM>. This may help to provide a smooth and/or consistent rotation about axis <NUM>.

This mechanism has been found to be capable of providing a particularly compact, light and rigid drive arrangement for rotation about axes <NUM> and <NUM> without the components of the mechanism unduly restricting motion of the shells. It permits both motors to be housed in the proximal shell which reduces distal weight.

<FIG> illustrate another form of wrist mechanism, which is not part of the present invention. In these figures the shells of arm parts <NUM>, <NUM> are omitted, exposing the structure within the arm parts. Proximal arm part <NUM> has a structural framework <NUM>, which is shown in outline in some of the figures. Distal arm part <NUM> has a structural framework <NUM>. Arm parts <NUM> and <NUM> are rotatable relative to each other about axes <NUM>, <NUM>, which correspond to axes <NUM>, <NUM> respectively of <FIG>. A carrier <NUM> couples the arm parts <NUM>, <NUM> together. Carrier <NUM> is attached by bearings <NUM>, <NUM> to arm part <NUM>. Those bearings define a revolute joint about axis <NUM> between arm part <NUM> and the carrier <NUM>. Carrier <NUM> is attached by bearing <NUM> to arm part <NUM>. Those bearings define a revolute joint about axis <NUM> between arm part <NUM> and the carrier <NUM>. A first bevel gear <NUM> about axis <NUM> is fast with the carrier <NUM>. A second bevel gear <NUM> about axis <NUM> is fast with arm part <NUM>.

The carrier <NUM> can therefore rotate relative to the arm part <NUM> about axis <NUM>. However, the carrier <NUM> is otherwise fast with the arm part <NUM> and in particular is fast about axis <NUM>. Thus the carrier <NUM> is not permitted to undergo relative rotation with respect to arm part <NUM> about axis <NUM>. The second bevel gear <NUM> can rotate relative to the carrier <NUM> about axis <NUM>. The second bevel gear <NUM> (and hence the arm part <NUM>) may be fast with the carrier about axis <NUM>. Thus the second bevel gear <NUM> is permitted to undergo relative rotation with respect to the carrier <NUM> about axis <NUM> but is not permitted to undergo relative rotation with respect to the carrier about axis <NUM>.

Axes <NUM> and <NUM> are in this example perpendicular, but in general are two non-parallel axes. They may be substantially orthogonal to each other. The axes are substantially transverse to the longitudinal direction of the arm part <NUM> in at least one configuration of the joints <NUM> and <NUM>. In the arrangement shown, one such configuration is when arm part <NUM> is not articulated with respect to arm part <NUM>. In the context of a Cartesian coordinate system, axis <NUM> may be considered as a "pitch" rotation axis and axis <NUM> as a "yaw" rotation axis.

As with the other mechanisms described herein, the carrier <NUM> is located inboard of the limbs <NUM>, <NUM>.

Two motors <NUM>, <NUM> are fixed to the framework <NUM> of arm part <NUM>. Motor <NUM> drives a shaft <NUM>. Shaft <NUM> is rigid and terminates in a worm <NUM> which engages bevel gear <NUM>. When motor <NUM> is operated, shaft <NUM> rotates relative to the proximal arm part <NUM>, driving bevel gear <NUM> and hence coupler <NUM> and arm part <NUM> to rotate relative to arm part <NUM> about axis <NUM>. Motor <NUM> drives a shaft <NUM>. Shaft <NUM> has a worm <NUM> near its distal end which engages bevel gear <NUM>. To accommodate motion of bevel gear <NUM> relative to motor <NUM> when the coupler <NUM> moves about axis <NUM> shaft <NUM> includes a pair of universal joints <NUM>, <NUM> and a splined coupler <NUM> which accommodates axial extension and retraction of shaft <NUM>. The final part of shaft <NUM> is mounted to the coupler <NUM> by bearing <NUM>.

The splined coupler <NUM> is an example of a prismatic joint.

The distal part of the shaft <NUM> that is mounted to the carrier <NUM> by bearing <NUM> is fast with the worm <NUM> (shown most clearly in <FIG>). The bearing <NUM> defines a revolute joint located on the opposite side of the universal joint <NUM> to the coupler <NUM>. This revolute joint permits the distal part of the shaft <NUM> to rotate relative to the carrier <NUM>. The distal part of the shaft <NUM> extends in a direction perpendicular to the axis <NUM> in all rotational positions of the carrier, and is rotatable with respect to the carrier <NUM> about an axis perpendicular to axis <NUM>. It can be seen with reference to <FIG> that the shaft <NUM> traverses a plane containing axis <NUM> that is transverse to the longitudinal direction of the arm part <NUM>. In this example the distal part of the shaft <NUM> is directly attached to the worm <NUM> and so extends between the worm and the carrier <NUM>. The distal part of the shaft <NUM> is mounted to the carrier <NUM> so as to securely engage the worm <NUM> with the bevel gear <NUM> when the carrier <NUM> is articulated about the axis <NUM>.

The universal joints <NUM> and <NUM> of shaft <NUM> are located on opposing sides of the coupler <NUM>. Both universal joints are located proximally of the rotation axes <NUM> and <NUM>. The universal joints <NUM>, <NUM> and the coupler <NUM> are arranged to permit the carrier <NUM> to rotate relative to arm part <NUM> about axis <NUM>.

Bevel gear <NUM> is disposed about axis <NUM>. That is, gear <NUM> has as its rotation axis the axis <NUM>. The rotation of gear <NUM> about axis <NUM> drives rotation of the arm part <NUM> relative to the arm part <NUM>. Gear <NUM> may therefore be referred to as a drive gear.

Bevel gear <NUM> is disposed about axis <NUM>. Thus bevel gear <NUM> has as its rotation axis the axis <NUM>. The rotation of gear <NUM> about axis <NUM> drives rotation of the arm part <NUM> relative to the arm part <NUM> about axis <NUM>. Gear <NUM> may therefore also be referred to as a drive gear.

Shaft <NUM> extends along the longitudinal direction of the arm part <NUM>. The longitudinal axis of shaft <NUM> may be perpendicular to axis <NUM> in all rotational positions of the carrier <NUM> about axes <NUM> and <NUM>. The shaft <NUM> (and the affixed worm <NUM>) rotate about the longitudinal axis of the shaft <NUM>. This rotation axis is non-parallel and non-intersecting with the rotational axis <NUM> of the gear <NUM>. Gear <NUM> is therefore a skew axis gear.

Both worms <NUM> and <NUM> may be located on a single side of a plane containing axis <NUM> that is transverse to the longitudinal direction of the arm part <NUM> when that arm part is aligned with arm part <NUM> about axis <NUM>, in other words when arm part <NUM> is not in yaw relative to arm part <NUM>. In particular, both worms may be located on the proximal side of that plane. However, the worms <NUM> and <NUM> may be located on opposing sides of a plane containing axis <NUM> that is parallel to the longitudinal direction of the arm part <NUM>.

Due to the operation of the universal joints <NUM> and <NUM> and the coupler <NUM>, the worm gears <NUM> and <NUM> undergo rotation with respect to each other about axis <NUM> when the carrier <NUM> is articulated about axis <NUM>. When arm part <NUM> is aligned with arm part <NUM> about axis <NUM> (i.e., when arm part <NUM> is not in pitch relative to arm part <NUM>), then worm gear <NUM> and the distal part of shaft <NUM> are parallel to worm gear <NUM> and shaft <NUM>. In all other configurations of the arm parts about axis <NUM>, worm gear <NUM> and the distal part of shaft <NUM> are non-parallel to worm gear <NUM> and shaft <NUM>.

Worms <NUM> and <NUM> are each attached to respective drive shafts <NUM> and <NUM> and so may be referred to as shaft gears.

Operation of the joint mechanism will now be described.

To drive articulations about axis <NUM>, motor <NUM> is operated to rotate the drive shaft <NUM> about its longitudinal axis. Because the shaft gear <NUM> is attached to the shaft <NUM>, rotation of shaft <NUM> causes gear <NUM> to also rotate about the longitudinal axis of the shaft <NUM>. Shaft gear <NUM> engages the drive gear <NUM>, causing it to rotate about axis <NUM> relative to the arm part <NUM>. Carrier <NUM> is fast with the drive gear <NUM>, and thus rotation of drive gear <NUM> causes carrier <NUM> to rotate about axis <NUM> relative to arm part <NUM>. The rotation of carrier <NUM> about axis <NUM> drives the articulation of arm part <NUM> relative to arm part <NUM> about axis <NUM>. Rotation of the carrier <NUM> about axis <NUM> causes articulations of universal joints <NUM> and <NUM> and the prismatic joint <NUM> to accommodate the rotation of shaft gear <NUM> relative to shaft gear <NUM> about axis <NUM>.

To drive articulations about axis <NUM>, motor <NUM> is operated to rotate the drive shaft <NUM>. Rotation of the proximal end of drive shaft <NUM> is coupled to the rotation of the shaft gear <NUM> via the universal joints <NUM> and <NUM> (and the coupler <NUM>). Shaft gear <NUM> engages the bevel gear <NUM>. Thus rotation of shaft gear <NUM> drives rotation of gear <NUM> about axis <NUM> relative to the carrier <NUM>. Bevel gear <NUM> is fast with the arm part <NUM>, and thus rotation of gear <NUM> causes arm part <NUM> to be articulated with respect to arm part <NUM> about axis <NUM>.

Rotation of drive shaft <NUM> whilst shaft <NUM> is kept stationary may cause parasitic motion of arm part <NUM> about axis <NUM>. This is because the rotation of the carrier <NUM> about axis <NUM> may cause a rotation of the universal joints <NUM> and <NUM> which drives rotation of worm <NUM> and thus bevel <NUM>. To prevent this parasitic motion, control system <NUM> may be arranged to operate the motor <NUM> to drive rotation of shaft <NUM> to cause the rotation of arm part <NUM> relative to arm part <NUM> about axis <NUM> whilst simultaneously operating the motor <NUM> to drive rotation of shaft <NUM> in such a way as to prevent parasitic rotation about axis <NUM>. The control system <NUM> may be configured to operate in this manner when the robot arm is commanded to articulate about axis <NUM> without articulating about axis <NUM>.

Control system <NUM> may also be configured to drive rotation of shaft <NUM> in such a way as to reduce irregularities in the rotation of universal joints <NUM> and <NUM>. The Hooke's joints may experience irregular or inconsistent rotation when they are off-axis. , i.e. when arm part <NUM> is in pitch relative to arm part <NUM>. Thus when the arm part <NUM> is commanded to articulate relative to arm part <NUM> about axis <NUM> when arm part <NUM> is in pitch relative to arm part <NUM>, the control system <NUM> may operate to drive the rotation of shaft <NUM> in such a way as to maintain a smooth or consistent rotation speed of the Hooke's joints <NUM> and <NUM>. This may help to provide a smooth and/or consistent rotation about axis <NUM>.

Various aspects of the mechanism shown in <FIG> are advantageous in helping to make the mechanism particularly compact. For example:
It is convenient for bevel gear <NUM> to be of part-circular form: i.e. its teeth do not encompass a full circle. For example, gear <NUM> may encompass less than <NUM>° or less than <NUM>° or less than <NUM>°. This allows at least part of the other bevel gear <NUM> to be located in such a way that it intersects a circle coincident with gear <NUM>, about the axis of gear <NUM> and having the same radius as the outermost part of gear <NUM>. Whilst this feature can be of assistance in reducing the size of a range of compound joints, it is of particular significance in a wrist of the type shown in <FIG>, comprising a pair of roll joints with a pair of pitch/yaw joints between them, since in a joint of that type there is a degree of redundancy among the pitch/yaw joints and hence a wide range of positions of the distal end of the arm can be reached even if motion about axis <NUM> is restricted.

It is convenient if the worms <NUM> and <NUM> are located on opposite sides of the bevel gear <NUM>. In other words, bevel gear <NUM> may be interposed between the worms <NUM> and <NUM>. This may help to provide a compact packaging arrangement. The gears <NUM> and/or <NUM> are conveniently provided as bevel gears since that permits them to be driven from worms located within the plan of their respective external radii. However, they could be externally toothed gears engaged on their outer surfaces by the worms attached to shafts <NUM>, <NUM>, or by externally toothed gears.

The bevel gears and the worm gears that mate with them can conveniently be of skew axis, e.g. Spiroid®, form. These allow for relatively high torque capacity in a relatively compact form.

Various changes can be made to the mechanisms described above. For example, and without limitation:.

As discussed above with reference to <FIG>, each joint is provided with a torque sensor which senses the torque applied about the axis of that joint. Data from the torque sensors is provided to the control unit <NUM> for use in controlling the operation of the arm.

<FIG> and <FIG> shows one of the torque sensors and its mounting arrangement in cross-section. Torque sensor <NUM> measures the torque applied about axis <NUM>: that is from carrier <NUM> to distal arm frame <NUM>. As described above, bevel gear <NUM> is fast with frame <NUM> and rotatable about axis <NUM> with respect to the carrier <NUM>. Bevel gear <NUM> comprises a radially extending gear portion <NUM>, from which its gear teeth <NUM> extend in an axial direction, and an axially extending neck <NUM>. The neck, the radially extending gear portion and the teeth are integral with each other. The interior and exterior walls of the neck <NUM> are of circularly cylindrical profile. A pair of roller or ball bearing races <NUM>, <NUM> fit snugly around the exterior of the neck. The bearings sit in cups in the carrier <NUM> and hold the neck <NUM> in position relative to the carrier whilst permitting rotation of the bevel gear <NUM> relative to the carrier about axis <NUM>.

The torque sensor <NUM> has a radially extending top flange <NUM>, an axially elongate torsion tube <NUM> which extends from the top flange, and an internally threaded base <NUM> at the end of the torsion tube opposite the flange. The top flange <NUM> abuts the gear portion <NUM> of the bevel gear <NUM>. The top flange is held fast with the gear portion by bolts <NUM>. The torsion tube <NUM> extends inside the neck <NUM> of the bevel gear <NUM>. The exterior wall of the torsion tube is of circularly cylindrical profile. The exterior of the base <NUM> is configured with a splined structure which makes positive engagement with a corresponding structure in the frame <NUM> so as to hold the two in fixed relationship about axis <NUM>. A bolt <NUM> extends through the frame <NUM> and into the base <NUM> to clamp them together. Thus, it is the torque sensor <NUM> that attaches the bevel gear <NUM> to the arm frame <NUM>, and the torque applied about axis <NUM> is applied through the torque sensor. The torsion tube has a hollow interior and a relatively thin wall to its torsion tube <NUM>. When torque is applied through the torque sensor there is slight torsional distortion of the torsion tube. The deflection of the torsion tube is measured by strain gauges <NUM> fixed to the interior wall of the torsion tube. The strain gauges form an electrical output indicative of the torsion, which provides a representation of the torque about axis <NUM>. The strain gauges could be of another form: for example optical interference strain gauges which provide an optical output.

In order to get the most accurate output from the torque sensor, torque transfer from the bevel gear <NUM> to the frame <NUM> in a way that bypasses the torsion tube <NUM> should be avoided. For that reason, it is preferred to reduce friction between the neck <NUM> of the bevel gear <NUM> and the base <NUM> of the torque sensor. One possibility is to provide a gap between the neck of the bevel gear and both the base of the torque sensor and the torsion tube. However, that could permit shear forces to be applied to the torsion tube in a direction transverse to axis <NUM>, which would itself reduce the accuracy of the torque sensor by exposing the strain gauges <NUM> to other than torsional forces. Another option is to introduce a bearing race between the interior of the neck of bevel gear <NUM> and the exterior of the base <NUM> of the torque sensor. However, that would substantially increase the volume occupied by the mechanism. Instead, the arrangement shown in <FIG> has been shown to give good results. A sleeve or bushing <NUM> is provided around the torsion tube <NUM> and within the neck <NUM> of the bevel gear <NUM>. The sleeve is sized so that it makes continuous contact with the interior wall of the neck <NUM> and with the exterior wall of the torsion tube <NUM>, which is also of circularly cylindrical profile. The whole of the interior surface of the sleeve makes contact with the exterior of the torsion tube <NUM>. The whole of the exterior surface of the sleeve makes contact with the interior surface of the neck <NUM>. The sleeve is constructed so that it applies relatively little friction between the neck and the torsion tube: for instance the sleeve may be formed of or coated with a low-friction or self-lubricating material. The sleeve is formed of a substantially incompressible material so that it can prevent deformation of the torque sensor under shear forces transverse to the axis <NUM>. For example, the sleeve may be formed of or coated with a plastics material such as nylon, polytetrafluoroethylene (PTFE), polyethylene (PE) or acetal (e.g. Delrin®), or of graphite or a metal impregnated with lubricant.

For easy assembly of the mechanism, and to hold the sleeve <NUM> in place, the interior wall of the neck <NUM> of the bevel gear <NUM> is stepped inwards at <NUM>, near its end remote from the radially extending gear portion <NUM>. When the sleeve <NUM> is located between the neck <NUM> and the torsion tube <NUM>, and the head <NUM> of the torque sensor is bolted to the gear portion <NUM> the sleeve is held captive both radially (between the torsion tube and the neck) and axially (between the head <NUM> of the torque sensor and the step <NUM> of the interior surface of the neck <NUM> of the bevel gear). It is preferred that the internal radius of the neck <NUM> in the region <NUM> beyond the step <NUM> is such that the internal surface of the neck in that region is spaced from the torque sensor <NUM>, preventing frictional torque transfer between the two.

Similar arrangements can be used for the torque sensor about the other axis <NUM> of the embodiment of <FIG>, and for the torque sensors of the embodiments of the other figures.

Hall effect sensors are used to sense the rotational position of the joints. Each position sensor comprises a ring of material arranged around one of the rotation axes. The ring has a series of regularly spaced alternating north and south magnetic poles. Adjacent to the ring is a sensor chip with a sensor array comprising multiple Hall effect devices which can detect the magnetic field and measure the position of the magnetic poles on the ring relative to the sensor array so as to provide a multi-bit output indicative of that relative position. The rings of magnetic poles are arranged such that each position of the respective joint within a <NUM>° range is associated with a unique set of outputs from the pair of magnetic sensors. This may be achieved by providing different numbers of poles on each ring and making the numbers of poles the rings co-prime to each other. Hall effect position sensors employing this general principle are known for use in robotics and for other applications.

More specifically, associated with each joint is a pair of alternatingly magnetised rings, and associated sensors. Each ring is arranged concentrically about the axis of its respective joint. The rings are fast with an element on one side of the joint and the sensors are fast with an element on the other side of the joint, with the result that there is relative rotational motion of each ring and its respective sensor when there is rotation of the robot arm about the respective joint. Each individual sensor measures where between a pair of poles the associated ring is positioned relative to the sensor. It cannot be determined from the output of an individual sensor which of the pole pairs on the ring is above the sensor. Thus the individual sensors can only be used in a relative fashion and would require calibration at power up to know the absolute position of the joint. However by using a pair of rings designed so that the numbers of pole pairs in each ring has no common factors it is possible to combine the inter-pole pair measurement from both sensors and work out the absolute position of the joint without calibration.

The magnetic rings and sensors are shown in <FIG>. For the joint that provides rotation about axis <NUM> position is sensed by means of magnetic rings <NUM> and <NUM> and sensors <NUM> and <NUM>. For the joint that provides rotation about axis <NUM> position is sensed by means of magnetic rings <NUM>, <NUM>, sensor <NUM> and a further sensor that is not shown. Magnetic ring <NUM> is fast with carrier <NUM> and mounted on one side of the carrier. Magnetic ring <NUM> is fast with carrier <NUM> and mounted on the other side of the carrier to magnetic ring <NUM>. The magnetic rings <NUM>, <NUM> are planar, and arranged perpendicular to and centred on axis <NUM>. Sensors <NUM> and <NUM> are fast with the frame <NUM> of the arm part <NUM>. Sensor <NUM> is mounted so as to be adjacent to a side of ring <NUM>. Sensor <NUM> is mounted so as to be adjacent to a side of ring <NUM>. Cables <NUM>, <NUM> carry the signals from the sensors <NUM>, <NUM>. Magnetic ring <NUM> is fast with carrier <NUM> and mounted on one side of a flange <NUM> of the carrier. Magnetic ring <NUM> is fast with carrier <NUM> and mounted on the other side of the flange <NUM> to magnetic ring <NUM>. The magnetic rings <NUM>, <NUM> are planar, and arranged perpendicular to and centred on axis <NUM>. Sensor <NUM> and the other sensor for rotation about axis <NUM> are fast with the frame <NUM> of the arm part <NUM>. Sensor <NUM> is mounted so as to be adjacent to a side of ring <NUM>. The other sensor is mounted so as to be adjacent to a side of ring <NUM>.

Thus, in the arrangement of <FIG>, rotation about each of the axes <NUM>, <NUM> is sensed by means of two multipole magnetic rings, each with a respective associated sensor. Each sensor generates a multi-bit signal representing the relative position of the nearest poles on the respective ring to the sensor. By arranging for the numbers of poles on the two rings to be co-prime the outputs of the sensors are in combination indicative of the configuration of the joint within a <NUM>° range. This permits the rotation position of the joint to be detected within that range. Furthermore, in the arrangement of <FIG> the two rings associated with each joint (i.e. rings <NUM>, <NUM> on the one hand and rings <NUM>, <NUM> on the other hand) are located so as to be substantially offset from each other along the axis of the respective joint. Ring <NUM> is located near the bearing <NUM> on one side of the body of carrier <NUM> whereas ring <NUM> is located near bearing <NUM> on the opposite side of the carrier <NUM>. Ring <NUM> is located on one side of the flange <NUM> whereas ring <NUM> is located on the other side of the flange <NUM>. Each ring is made of a sheet of material which is flat in a plane perpendicular to the axis about which the ring is disposed. The magnetic rings of each pair (i.e. rings <NUM>, <NUM> on the one hand and rings <NUM>, <NUM> on the other hand) are spaced from each other in the direction along their respective axes by a distance greater than <NUM> and more preferably greater than <NUM> or greater than <NUM> times the thickness of the rings of the pair. Conveniently, the rings of a pair can be on opposite sides of the respective joint, as with rings <NUM>, <NUM>. Conveniently the carrier <NUM> to which the both rings of a pair are attached extends radially outwardly so as to lie at a radial location that is between the rings when viewed in a plane containing the respective rotation axis. Thus, for example, flange <NUM> lies radially between rings <NUM> and <NUM>. Conveniently the respective joint can be supported or defined by two bearings, one on either side of the joint along the respective axis, and at extreme locations on the joint, and the or each ring for that joint can overlap a respective one of the bearings in a plane perpendicular to the axis. Conveniently the sensors for the rings can be mounted on an arm part that is articulated by the joint. The sensors can be mounted on opposite sides of the arm part.

By spacing the rings apart the packaging of the joint and/or of the arm part where the associated sensors are mounted can be greatly improved. Spacing the rings apart allows for more opportunities to locate the rings at a convenient location, and allows the sensors to be spaced apart, which can itself provide packaging advantages. It is preferred that the joint is sufficiently stiff in comparison to the number of magnetic poles on the rings that torsion of the joint under load will not adversely affect measurement. For example it is preferred that the joint is sufficiently stiff that under its maximum rated operating load the elements of the joint cannot twist so much that it can cause a change in the order of magnetic transitions at the sensors, even though they are spaced apart. That permits direction to be detected, in addition to motion, for all load conditions.

Arm part <NUM> is distal of arm part <NUM>. Arm part <NUM> is proximal of the joint about axes <NUM> and <NUM> shown in <FIG>. As discussed with reference to <FIG>, data from the torque sensors and the position sensors to be fed back to the control unit <NUM>. It is desirable for that data to be passed by wired connections that run through the arm itself.

Each arm part comprises a circuit board. <FIG> show a circuit board <NUM> carried by arm part <NUM>. Each circuit board includes a data encoder/decoder (e.g. integrated circuit <NUM>). The encoder/decoder converts signals between formats used locally to the respective arm part and a format used for data transmission along the arm. For example: (a) locally to the arm part the position sensors may return position readings as they are passed by magnetic pole transitions, the torque sensor may return an analogue or digital signal indicative of the currently sensed torque and the drive motors may require a pulse width modulated drive signal; whereas (b) for data transmission along the arm a generic data transmission protocol, which may be a packet data protocol such as Ethernet, can be used. Thus the encoders/decoders can receive data packets conveyed along the arm from the control unit <NUM> and interpret their data to form control signals for any local motor, and can receive locally sensed data and convert it into packetised form for transmission to the control unit. The circuit boards along the arm can be chained together by communication cables, so that communications from a relatively distal board go via the more proximal boards.

In general it is desirable not to feed data from one component of the arm to a more distal component of the arm. Doing so would involve cables running unnecessarily distally in the arm, increasing distally distributed weight; and since the circuit boards are chained together once data has been sent to a relatively distal board the next most proximal board will handle the data anyway in order to forward it.

The compound joint about axes <NUM>, <NUM> has rotary position sensors <NUM>, <NUM> (for rotation about axis <NUM>) and <NUM> (for rotation about axis <NUM>). Sensors <NUM>, <NUM> are mounted on the frame <NUM> of the arm part <NUM> that is proximal of the joint whose motion is measured by the sensor. Data from position sensors <NUM>, <NUM> is fed along cables <NUM>, <NUM> which lead along arm part <NUM> proximally of the sensors. Sensor <NUM> is mounted on the frame <NUM> of the arm part <NUM>. Data from position sensor <NUM> is fed along a cable to circuit board <NUM> on the same arm part. In each case the data is not passed to a more distal element of the arm than the one where the data was collected.

The compound joint about axes <NUM>, <NUM> has torque sensors <NUM> (for rotation about axis <NUM>) and <NUM> (for rotation about axis <NUM>). Data sensed by torque sensors <NUM>, <NUM> is carried in native form to circuit board <NUM> by flexible cables. At circuit board <NUM> the encoder/decoder <NUM> encodes the sensed data, e.g. to Ethernet packets, and transmits it to the control unit <NUM>. Thus, rather than being fed to the circuit board of the more proximal arm part <NUM> for encoding, the data from the torque sensors is passed to the circuit board of the more distal arm part for encoding, and then from that circuit board it is passed by cables in a distal direction along the arm.

This arrangement is illustrated in <FIG>. Arm part <NUM> comprises circuit board <NUM> which receives data from position sensor <NUM> and provides command data to motors <NUM>, <NUM>. Arm part <NUM> comprises circuit board <NUM> which receives data from position sensor <NUM> and torque sensors <NUM>, <NUM>. Circuit board <NUM> encodes that sensed data and passes it over a data bus <NUM> to circuit board <NUM>, which forwards it on towards control unit <NUM> via a link <NUM>. Position sensor <NUM> is connected directly by a cable to circuit board <NUM>. Position sensor <NUM> and torque sensors <NUM>, <NUM> are connected directly by cables to circuit board <NUM>.

As illustrated in <FIG>, arm part 4c is borne by arm part <NUM> and can be rotated relative to arm part 4c about axis <NUM>. <FIG> shows a cross-section through a module that comprises arm part 4c. The module has a base <NUM> and a side-wall <NUM> which is fast with the base. Base <NUM> attaches to the end face <NUM> of the distal end of arm part <NUM>. (See <FIG>). Arm part 4c is indicated generally at <NUM>. Arm part 4c is rotatable relative to the base about an axis <NUM> corresponding to axis <NUM> of <FIG>. To that end, arm part 4c is mounted to the side-wall <NUM> by bearings <NUM>, <NUM> which define a revolute joint between side wall <NUM> and arm part 4c about axis <NUM>.

Arm part 4c has a housing <NUM> which houses its internal components. Those components include a circuit board <NUM> and motors <NUM>, <NUM>. Motors <NUM>, <NUM> are fixed to the housing <NUM> so they cannot rotate relative to it. The housing <NUM> is free to rotate relative to the base <NUM> by means of the bearings <NUM>, <NUM>. A channel <NUM> runs through the interior of the module to accommodate a communication cable (not shown) passing from circuit board <NUM> to circuit board <NUM>. The communication cable carries signals which, when decoded by an encoder/decoder of circuit board <NUM>, cause it to issue control signals to control the operation of motors <NUM>, <NUM>.

Motor <NUM> drives rotation of arm part 4c relative to arm part <NUM>. Thus, motor <NUM> drives rotation of housing <NUM> relative to base <NUM>. Base <NUM> has a central boss <NUM>. A torque sensor generally of the type discussed in relation to <FIG> and <FIG> is attached to the boss <NUM>. The torque sensor has an integral member comprising a base <NUM>, a torsion tube <NUM> and a radially extending head <NUM>. The base <NUM> of the torque sensor is fast with the boss <NUM> of the base <NUM>. As with the torque sensor of <FIG> and <FIG>, a sleeve <NUM> extends around the torsion tube of the torque sensor to protect it from shear forces and to reduce friction between it and the surrounding component, which is the base <NUM>.

An internally toothed gear <NUM> is fast with the head <NUM> of the torque sensor. Motor <NUM> drives a shaft <NUM> which carries a pinion gear <NUM>. Pinion gear <NUM> engages the internal gear <NUM>. Thus, when the motor <NUM> is operated it drives the pinion gear <NUM> to rotate and this causes the arm part 4c, of which the motor <NUM> is part, to rotate about axis <NUM>. The resulting torque about axis <NUM> is transmitted to the base <NUM> through the torsion tube <NUM> of the torque sensor, allowing that torque to be measured by strain gauges attached to the torsion tube.

The interface <NUM> for attachment to an instrument is shown in <FIG>. The shaft <NUM> of motor <NUM> is exposed at the interface for providing drive to an instrument.

Torque data from the torque sensor <NUM>, <NUM>, <NUM> is passed to circuit board <NUM> on arm part <NUM> for encoding. The rotational position of arm part 4c can be sensed by a sensor <NUM> carried by arm part 4c and which detects transitions between magnetic poles on rings <NUM>, <NUM> mounted on the interior of housing <NUM>. Data from sensor <NUM> is passed to circuit board <NUM> of arm part 4c for encoding.

The motors that drive rotation about joints <NUM> and <NUM> are mounted proximally of those joints, in arm part <NUM>. As discussed above, this improves weight distribution by avoiding weight being placed nearer to the distal end of the arm. In contrast, the motor that drives rotation of arm part 4c is mounted in arm part 4c rather than in arm part <NUM>. Although this might be seen as disadvantageous due to it requiring motor <NUM> to be mounted more distally, it has been found that this allows for arm part <NUM> to be especially compact. Motor <NUM> can be packaged in arm part 4c in parallel with the motor(s) (e.g. <NUM>) which provide drive to the instrument: i.e. so that the motors intersect a common plane perpendicular to the axis <NUM>. That means that incorporation of motor <NUM> in arm part 4c need not make arm part 4c substantially longer.

Claim 1:
A robot arm comprising a joint mechanism for articulating one limb of the arm relative to another limb of the arm about two non-parallel rotation axes (<NUM>, <NUM>), the mechanism comprising:
an intermediate carrier (<NUM>) attached to a first one of the limbs by a first revolute joint having a first rotation axis (<NUM>) and to a second one of the limbs by a second revolute joint having a second rotation axis (<NUM>);
a first drive gear (<NUM>) disposed about the first rotation axis (<NUM>), the first drive gear (<NUM>) being fast with the carrier (<NUM>);
a second drive gear (<NUM>) disposed about the second rotation axis (<NUM>), the second drive gear (<NUM>) being fast with the second one of the limbs;
a first drive shaft (<NUM>) for driving the first drive gear (<NUM>) to rotate about the first rotation axis (<NUM>), the first drive shaft (<NUM>) extending along the first one of the limbs and having a first shaft gear (<NUM>) thereon, the first shaft gear (<NUM>) being arranged to engage the first drive gear (<NUM>);
a second drive shaft (<NUM>) for driving the second drive gear (<NUM>) to rotate about the second rotation axis (<NUM>), the second drive shaft (<NUM>) extending along the first one of the limbs and having a second shaft gear (<NUM>) thereon;
an intermediate gear train (<NUM>) borne by the carrier (<NUM>) and coupling the second shaft gear (<NUM>) to the second drive gear (<NUM>), the intermediate gear train (<NUM>) comprising a first intermediate gear (<NUM>) disposed about the first rotation axis (<NUM>), the first intermediate gear (<NUM>) being arranged to engage the second shaft gear (<NUM>); and
a control unit (<NUM>) arranged to respond to command signals commanding motion of the robot arm by driving the first and second drive shafts (<NUM>, <NUM>) to rotate, the control unit (<NUM>) being configured to, when the robot arm is commanded to articulate about the first axis (<NUM>) without articulating about the second axis (<NUM>), drive the first shaft (<NUM>) to rotate to cause articulation about the first axis (<NUM>) and also drive the second shaft (<NUM>) to rotate in such a way as to negate parasitic articulation about the second axis (<NUM>).