- Virtual fixture
A virtual fixture is an overlay of abstract sensory information on a workspace in order to improve the
telepresence in a telemanipulation task.Virtual Fixtures
The concept of virtual fixtures was first introduced in (Rosenberg, 1993) as an overlay ofabstract sensory information on a workspace in order to improve the
telepresence in a telemanipulation task. The concept of abstractsensory overlays is difficult to visualize and talk about, as aconsequence the virtual fixture metaphor was introduced. To understandwhat a virtual fixture is an analogy with a real physical fixture suchas a ruler is often used. A simple task such as drawing a straightline on a piece of paper on free-hand is a task that most humans areunable to perform with good accuracy and high speed. However, the useof a simple device such as a ruler allows the task to be carried outfast and with good accuracy. The use of a ruler helps the user byguiding the pen along the ruler reducing the tremor and mental load ofthe user, thus increasing the quality of the task.The definition of virtual fixtures in(Rosenberg, 1993) is much broader than simply providingguidance of the end-effector. For example, auditory virtual fixturesare used to increase the user awareness by providing audio clues thathelps the user by providing multi modal cues for localization of theend-effector. Rosenberg argues that the success of virtual fixtures isnot only because the user is guided by the fixture, butthat the user experiences a greater presence and better localizationin the remote workspace. However, in the context of
human-machine collaborative system s, the termvirtual fixtures is most often used to refer to a task dependent aidthat guides the user's motion along desired directions whilepreventing motion in undesired directions or regions of theworkspace. This is the type of virtual fixtures that is described in this article.Virtual fixtures can be either "guiding virtual fixtures" or "forbidden regions virtual fixtures". A forbidden regions virtual fixture could be used, forexample, in a teleoperated setting where the operator has to drive avehicle at a remote site to accomplish an objective. If there are pitsat the remote site which would be harmful for the vehicle to fall intoforbidden regions could be defined at the various pits locations, thuspreventing the operator from issuing commands that would result in thevehicle ending up in such a pit.
Such illegal command could easily be sent by an operator because of,for instance, delays in the
teleoperation loop, badtelepresence ora number of other reasons.An example of a guiding virtual fixture could be when the vehicle mustfollow a certain trajectory,
The operator is then able to control the progress along the "preferred direction" while motion along the "non-preferred direction" is constrained.
With both forbidden regions and guiding virtual fixtures the"stiffness", or its inverse the "compliance", of the fixture can be adjusted. If thecompliance is high (low stiffness) the fixture is "soft". On the other handwhen the compliance is zero (maximum stiffness) the fixture is"hard".
frame|center|The stiffness of a virtual fixture can besoft or hard. A hard fixture completely constrains the motion to thefixture while a softer fixture allows some deviations from the fixture.Virtual Fixture Control Law
This section describes how a control law that implements virtualfixtures can be derived. It is assumed that the robot is a purelykinematic device with end-effector position and end-effector orientation expressed in the robot's base frame . The input control signal to the robot is assumed to be a desired end-effector velocity .In a tele-operated system it is often useful toscale the input velocity from the operator, beforefeeding it to the robot controller. If the input from the user is ofanother form such as a force or position it must first be transformedto an input velocity, by for example scaling or differentiating.
Thus the control signal would be computed from theoperator's input velocity as: If there exists a one-to-one mapping between the operator and the slave robot.
If the constant is replaced by a diagonal matrix it ispossible to adjust the compliance independently for differentdimensions of . For example, setting the first threeelements on the diagonal of to and all other elements to zerowould result in a system that only permits translational motion and notrotation. This would be an example of a hard virtual fixture thatconstrains the motion from to . If the rest of the elements on thediagonal were set to a small value, instead of zero, the fixturewould be soft, allowing some motion in the rotational directions.
To express more general constraints assume a time-varying matrix which represents the preferred direction at time . Thus if thepreferred direction is along a curve in . Likewise, would give preferred directions that span a surface. From twoprojection operators can be defined (Marayong "et al.", 2003), thespan and kernel of the column space:
If does not have full column rank the span can not be computed,consequently it is better to compute the span by using thepseudo-inverse (Marayong "et al.", 2003), thus in practice the span is computed as: where denotes the pseudo-inverse of .
If the input velocity is split into two components as: it is possible to rewrite the control law as:
Next introduce a new compliance that effects only the non-preferredcomponent of the velocity input and write the final control law as:
References
L. B. Rosenberg. "Virtual fixtures: Perceptual tools for telerobotic manipulation"In Proc. of the IEEE Annual Int. Symposium on Virtual Reality, pages76–82, 1993.
P. Marayong, M. Li, A. M. Okamura, and G. D. Hager. "Spatial Motion Constraints: Theory and Demonstrations for Robot Guidance Using Virtual Fixtures"In Proc. of the IEEE Int. Conf. on Robotics and Automation, pages 1270– 1275, 2003.
Wikimedia Foundation. 2010.