Collision Sensing Using Force/Torque Sensor

. Collision sensing including collision position, collision direction, and force size could make robots smoothly interact with environment, so that the robots can strongly adapt to the outside world. Skin sensor imitates principles of human skin using special material and physical structure to obtain collision information, but this method has some disadvantages, such as complex design, lowsamplingrate,andpoorgenerality.Inthispaper,anewmethodusingforce/torquesensortocalculatecollisionposition,collision direction,andforcesizeisproposed.Detailedalgorithmiselaboratedbasedonphysicalprincipleandunifiedmodelingmethodfor basicgeometricsurface.Gravitycompensationanddynamiccompensationarealsointroducedforworkingmanipulators/robots ingravityanddynamicenvironment.Inaddition,consideringalgorithmsolvabilityanduniqueness,fourconstraintsareproposed, whichareforceconstraint,geometricconstraint,normalvectorconstraint,andcurrentmutationconstraint.Inordertosolve conflictsolutionofalgorithminredundantconstraints,compatibilitysolutionanalysisisproposed.Finally,asimulationexperiment showsthattheproposedmethodcanachievecollisioninformationefficientlyandaccurately.


Introduction
In recent years, more and more sensors are installed on robots to realize sensing and interacting with environment.These sensors help robots achieve a large amount of information about the environment, which contributes robots to make correct decision and planning.For example, vision sensor assists robots in obtaining appearance information of environment, which is used to realize target tracking and object capture, and so forth.
Collision sensing is also an important environment sensing method, through which robots sense collision point and collision direction to avoid collision again, and makes compliment control come true [1,2].In the environment containing human and robots, collision sensing is extremely significant to avoid serious collision.In addition, in [3], collision sensing is also used for compliance assembly.Since that collision sensing has so many applications, realization of whole robotic body sensing is gradually carried out [4,5].
Skin force sensor like human skin system, which is pasted on the whole surface of robots, could sense force action point, force direction and size [2,5].In the research filed, MIT has developed a special compound material called QTC (Quantum Tunneling Composite), which is pressed by metal and nonmetal [2,6].This sensor measures force information by resistance change when it is pressed.Similar researches also include organic thin film composed of pentacene molecular (U-Tokyo, Japan) and E-skin (Philips Company), and so forth [1].The skin force sensor looks like an ideal solution for robot force sensing, but there are many disadvantages that make it hard to be used in real world, such as being easy to damage during collision, expensive price, complex design and high environment requirements, low sampling rate, and poor generality [4,7].Moreover, sensitivity of skin sensor system could not achieve information of collision direction and could be influenced by many factors, such as temperature and humidity [1].
Skin force sensor is the direct method to measure force information; on the other way, it also could be checked out through indirect techniques [8,9].In [10] Mason and Salisbury have proposed the theory of calculating force information using force/torque sensor and in [11] Bicchi et al. have developed experiments to verify it.Zhou and Han use the theory to realize skin force sense on the one freedom finger [12][13][14].In this paper, theories of manipulator with multiple degrees of freedom are applied and method of compatibility solution analysis to solve contradiction of solutions is proposed.
The rest of this paper is organized as follows.Section 2 describes detection principle, when point collision happens, unified equation for collision sensing considering gravity and manipulator dynamics, and unified modeling method for basic geometric surface.In the gravity environment, force analysis is proposed in Section 3. In Section 4, force analysis is shown when manipulator is in a working condition.Solvability analysis is provided in Section 5, which includes force constraint, geometric constraint, normal vector constraint, current mutation constraint, and compatibility solution analysis.In Section 6, the simulation experiment and results are shown to prove effectiveness of the algorithm.Finally, the concluding remarks follow in Section 7.

Detection Principle
In this section, physical principle about point collision on manipulator is introduced.On the one hand, the whole process of force effect needs meets force analysis principle, and on the other hand, the result of calculation should suit physical laws, such as point  which is on the manipulator surface and the angle of force direction and normal vector is less than /2.

Force Analysis.
Assume that no gravity and manipulator are static; force analysis is shown in Figure 1.In order to apperceive whole system, force/torque sensor is assembled on the base and close to the first joint.The force/torque sensor could measure force in three directions and torque rotated of three coordinate axes.
In Figure 1, point  means collision point, which is assumed on th joint.The center of force/torque sensor is expressed as , which is set as origin of  coordinate system.Every joint of manipulator is built coordinate system as   according to DH parameter method.  represents coordinate system of th joint, and p, f, and , respectively, mean collision force, measured force, and measured torque.n  represents normal vector of point .  could be achieved by translating coordinate system   and no rotation.Then coordinate of point  in   is obtained by coordinate transformation, as shown in the following: where When collision occurs, the outside force is p = (  ,   ,   )  , and data of force/torque sensor are f = (  ,   ,   )  and  = (  ,   ,   )  .According to force analysis, data of outside force in   should be equal to measured data in ideal condition, as shown in the following: where In ( 4), p = (  ,   ,   , 1) and (⋅) 3,1 means extraction of elements of the first three rows and the first column.In (5), Considering factor of gravity and manipulator dynamics in real world, general equation could be shown as follows: In (8), f  and   , respectively, express force and torque caused by collision mapping in basic coordinate system ; f  and   , respectively, mean force and torque caused by gravity mapping in basic coordinate system , which will be analyzed in Section 3; f  and   , respectively, express force and torque caused by manipulator dynamics mapping in basic coordinate system , which will be shown in Section 4.
In (8), f  ,   , f  , and   could be calculated based on states of manipulator and joint physical properties, such as joint angle, joint velocity, joint acceleration, and joint quality.Collision information is just contented in f  and   , that is, the parameters of   ,   ,   ,   ,   , and   .

Physical Constraint.
Normal geometrical surface contains ellipsoid, sphere, cylindrical surface, and plane.They are able to construct all simple surfaces including outline of manipulators.Mathematical description mode of all manipulator surface is achieved through coordinate transformation.From the role of geometrical change, the core of four types of surface is ellipsoid, which is able to change to other three types by changing parameters, as shown in Figure 2.
Assume three axis lengths of ellipsoid are 2, 2, and 2, setting center as origin of coordinate system.When  =  = , sphere will be formed; when  → +∞, cylindrical surface is achieved; and when  → +∞,  → 0, and  → ∞, plane surface is displayed.In summary, it just needs to build ellipsoid mode to describe all surface, as shown in the following: where Normal vector of point  is set as n  and could be calculated with equation as follows: where c = (, , ) means coordinate values and ∇ represents gradient.

Gravity Compensation
In the above section, gravity element is sampled as f  and   .In this section, gravity influence on sensor will be analyzed, which relates to joint length, joint angle gravity center of joint, and quality.All joints cause force and torque on sensor, so each of them needs to be calculated.Force analysis is shown in Figure 3 in gravity.
In Figure 3, D  = (  ,   ,   )  is gravity center position in   coordinate; then r  means coordinate of gravity center of th joint and is expressed as where Assuming variety of sensors is f  ∈  3 ,   ∈  3 , then ( 14) and ( 15) are achieved: In (14), G  = (0, 0,   )  ( ≤ ) and  is the total number of joints.In (15), in order to easily calculate with matrix, vector

Dynamic Compensation
In Section 3, manipulator dynamic is sampled as f  and   .In this section, dynamic factor is analyzed.When manipulator works, it also causes reaction force to sensor, so calculation is also needed.Dynamic force is very complex, which relates to joint length, joint angle, joint angular velocity, joint angular acceleration, and so on.In Figure 4, dynamic force is analyzed.
In Figure 4, assume   is joint angular acceleration and D  = (  ,   ,   )  is gravity center position in   coordinate.Then, acceleration of gravity center is expressed as In   coordinate, in order to keep moving as in Figure 4, the force and torque are calculated as shown in the following: In (18),   and I  , respectively, express quality and inertia of th joint, and Due to the fact that   is a motional coordinate, Coriolis force emerges in the whole system, which is expressed as In (20),   and k  , respectively, mean velocity vector and angular velocity vector of   coordinate relative to basic coordinate.
Based on the principle of equivalence, the above forces and torque of  joint are transfered to , which could be expressed as In the above equation, f  and f  , respectively, mean acceleration force and Coriolis force in the basic coordinate;   and   express torque of force transformation; torque could transfer with no other changes, so   =   .
Manipulator contains many joints, so all effect of force of joints on the basic coordinate is shown as

Solvability Analysis
At present, problem will be analyzed under the following limits in this subsection: (a) Material of manipulator is rigid, which means no deformation produce.
(b) Collision is caused by manipulator and point of object.
(c) All sensor is ideal.
(d) Gravity is ignored in this subsection, because it has to be calculated in Section 5.3.
(e) Manipulator dynamic is discussed in Section 5.4, so assume manipulator is static and motion of outside object causes collision.
In order to ensure solvability and uniqueness, four constraints are provided and compatibility principle is proposed.

Force Constraint.
From Section 2, combine (8) and ( 9); seven equations are achieved with six variables.Moreover, f  ,   , f  , and   are zero under the above assumption.
In order to easily calculate with matrix, vector p is transformed into matrix p: Then, part of ( 8) could be changed to Combining ( 1), (8), and (24), the following equation is achieved: where M is relation matrix and it is singular matrix in ideal condition, that is, rank(M) = 5.A series of solutions about (24) are obtained.There are many states that make rank(M) = 6, such as noise of sensor, precision of sensor, and deformation.This problem will be solved in Section 5.5.

Geometric Constraint.
Force act on the surface of manipulator, so mathematical direction of whole outline is necessary to constraint solution, that is, (⋅) means mathematical direction of manipulator surface.

Normal Vector Constraint.
Because that force can only apply to manipulator from outside, the angle of force direction and normal vector is less than /2.Based on this constraint, equation could be shown as p  n < 0. (28)

Current Mutation Constraint.
Strange geometries of manipulator surface and multiple degrees of freedom of manipulator may cause different force action with the same data of force/torque sensor.In this condition, uniqueness solution could not be calculated, so current mutation constraint is drawn in.Assuming collision point is on the th joint, then the current of this joint will change suddenly.In addition, the current of th ( −  < 0) joint also produces mutation, but  the current of th ( −  > 0) joint will not change suddenly.In this law, collision point will be judged on the th joint.On the one hand, this constraint avoids multiple solutions, and on the other hand, it could ensure the range of collision point and accelerate the speed of calculation.

Compatibility Solution Analysis.
In Section 5.1, if rank(M) = 5, then uniqueness solution will be achieved combining with (9) which means compatibility is the best.But many elements cause rank(M) = 6, such as noise of sensor, precision of sensor, and deformation.There is no solution through combining ( 8) and ( 9), so compatibility solution analysis is proposed to ensure an approximate solution.In Figure 5, process of method is shown.
From Figure 5, when rank(M) = 6, five equations will be chosen from matrix equation (25) and combining with (9); then one group of solution is obtained.Other five groups of solutions will be also achieved by the same way.Every solution includes the information about position and force size in three coordinate axes.Six normal vectors about solution position are achieved through (25).Then singular solutions should be removed by deviation of positions and normal vectors.At this moment, average values of the rest of solutions are calculated, and choose the closest point in outline of manipulator as approximate solution.At last, force size in three coordinate axes will be achieved by (25).This method avoids no solution condition and achieves an approximate solution.

Simulation Experiment
One manipulator with three degrees of freedom is established, as shown in Figure 6.In order to simplify  the outline of manipulator is composed of cylindrical surface and semisphere, and the size is set to   .In addition, the material of every joint is uniform and set as 1060 alloys ( = 2700 kg/m 3 ) and geometry of every joint is central symmetry; then gravity center of joint lies on central axis.
When collision occurs, data of force/torque sensor change with time.In engineering application, some signal processing methods will be adopted to achieve effective data.In this paper, our attention is focused on the method of collision sensing, so in order to simplify analysis, assume that manipulator is static.Parameters of links are listed in Table 1.
In Figure 6,  1 = 120 mm,  2 = 150 mm,  3 = 200 mm,  4 = 200 mm, and   = 40 mm.Due to the fact that joint connected surface is complex, assume collision point is only on link rod.Surface of each joint is described in coordinate of itself as follows: Link 1: Link 2: Link 3: Top of Link 3: (32) According to coordinate transformation matrix as shown in equations of links' outline in basic coordinate will be obtained as shown in the following: Link 1: Link 2: Link 3: Top of Link 3: where Considering gravity compensation, the manipulator is analyzed as shown in Figure 7, where  1 = 86.256mm and  2 = 106.906mm, Mode of manipulator is built in ADAMS, and two groups of data are tested to verify our algorithm.
In Tables 2 and 3, force size, force direction, and force position are known and set as input conditions; detected  force and detected torque express the data of force/torque sensor, which could be achieved by measurement; calculated position and calculated force could be obtained by (8) and coordinate transformation with a series of calculations; force size error, force direction error, and position error are put forward to judge accuracy and validity of the calculation.Equation of each error is shown as follows: Force size error:    In these three equations,   ,   , and   mean force size of calculated force and   ,   , and   mean calculated position mapping to three axes in basic coordination;   ,   , and   mean force size of force and   ,   , and   mean calculated position mapping to three axes in basic coordination.
From Tables 2 and 3, collision detection is effective and the relative error is extremely small in simulation environment.In order to intuitively express data relation, Figures 8  and 9 are drawn to show them.In Figure 8, relation between different collision positions and each error is established.In Figure 9, relation between different force sizes and each error is established.
In Figure 8, force size error, force direction error, and position error all become larger with farther distance.Different collision point produces different error and each error will be larger with farther distance.If we use this method to test collision information, it must ensure whether the biggest errors meet accuracy requirements at the farthest point of manipulator.
In Figure 9, force direction error and position error become smaller with bigger force, and force size error is fluctuating.Sensitivity of this method is almost certain at the same point, so force direction error and position error become smaller with bigger force.About fluctuating of force size error, (40) has given our explanation that numerator and denominator influence force size error at the same time and have the same trend.

Summary
Both animal's arm and person's arm are wrapped by skins, which help them protect their biological organization and apperceive environmental information, such as temperature change and object collision.Researchers except manipulators also have the same function with biological arm, but the method is expensive and easily damaged by distributing sensors on the whole manipulator's outline, so one indirect method to detect collision point and direction by using force/torque sensor is put forward.Compared to skin force sensor, the force/torque sensor is easy to be installed and maintained.In our method, constraint equations and compatibility solution analysis is used to ensure existence of solution.Moreover, gravity compensation and dynamic compensation are also described, which indicate this theory could be effective in gravity environment and when manipulators are exercising.At last, the simulation experiment is executed to verify our algorithm and the result is perfect.
But there exist a lot of engineering problems, if this method is used in real system, which could be as follows: (1) how to extract more accurate force and torque information, based on the fact that signal of sensor is fluctuant; (2) how to describe manipulator's outline accurately, because it has complex shape; (3) how to measure force and torque in an instant when manipulator collides; (4) how to realize realtime perception, on the condition that this theory contents a lot of calculations.In order to promote the theory in engineering application some experiments will be done on a real system, especially putting focus on the above problems.

Figure 2 :
Figure 2: Unified modeling method for basic geometric surface.
outline close to average solution Calculate force size in every axis

Figure 8 :
Figure 8: Relation between collision positions and errors.

Figure 9 :
Figure 9: Relation between force and errors.