Haptic accelerator for force feedback computer peripherals
First Claim
1. A control system for a force feedback interface device used in providing force sensations to a user interfacing with an application program and with visual images displayed by a display device in accordance with said application program and in accordance with manipulations of said force feedback interface device by said user, the control system comprising:
- a force feedback processor for determining output force commands for commanding forces to be applied on a user manipulatable object grasped by a user, said forces being applied by at least one actuator coupled to said force feedback processor and to said user manipulatable object, wherein said force feedback processor determines time-based forces, said time-based forces being output to said actuator; and
a haptic accelerator coupled to at least one sensor of said force feedback interface device and separate from said force feedback processor, said haptic accelerator receiving raw sensor data from said at least one sensor and providing processed data from said raw sensor data, said haptic accelerator performing fast processing of said raw sensor data into said processed data, said processed data including position data representing a current position of said user object in at least one degree of freedom and velocity data representing a current velocity of said user object in at least one degree of freedom, said processed data being sent to said force feedback processor to be used in said determination of output forces on said user manipulatable object, and wherein said haptic accelerator includes a haptic processing unit for determining motion-based forces, said motion-based forces being output from said haptic processing unit to said actuator.
3 Assignments
0 Petitions
Accused Products
Abstract
A force feedback interface including a haptic accelerator that relieves the computational burden associated with force feedback generation from a force feedback processor. The force feedback processor is preferably a device microprocessor included in the interface device and separate from a controlling host computer for determining forces to be output. The haptic accelerator quickly determines velocity and/or acceleration information describing motion of a user manipulatable object from raw position data received from sensors of the interface device and representing the position of the user object. The velocity and/or acceleration data is used by the force feedback processor in the determination of forces to be output on the user object. The haptic accelerator can in some embodiments also quickly and reliably determine condition forces which depend on the motion of the user object, thus relieving additional computation burden from the force feedback processor and permitting the force feedback processor to focus on determining other types of forces and overseeing the operation of the force feedback interface device.
-
Citations
63 Claims
-
1. A control system for a force feedback interface device used in providing force sensations to a user interfacing with an application program and with visual images displayed by a display device in accordance with said application program and in accordance with manipulations of said force feedback interface device by said user, the control system comprising:
-
a force feedback processor for determining output force commands for commanding forces to be applied on a user manipulatable object grasped by a user, said forces being applied by at least one actuator coupled to said force feedback processor and to said user manipulatable object, wherein said force feedback processor determines time-based forces, said time-based forces being output to said actuator; and a haptic accelerator coupled to at least one sensor of said force feedback interface device and separate from said force feedback processor, said haptic accelerator receiving raw sensor data from said at least one sensor and providing processed data from said raw sensor data, said haptic accelerator performing fast processing of said raw sensor data into said processed data, said processed data including position data representing a current position of said user object in at least one degree of freedom and velocity data representing a current velocity of said user object in at least one degree of freedom, said processed data being sent to said force feedback processor to be used in said determination of output forces on said user manipulatable object, and wherein said haptic accelerator includes a haptic processing unit for determining motion-based forces, said motion-based forces being output from said haptic processing unit to said actuator. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A force feedback interface device for use with a host computer displaying a graphical simulation on a display device, said host computer displaying and updating said graphical simulation in response to user manipulation of said interface device and commanding force feedback sensations in response to said user manipulation and in coordination with events within said graphical simulation, the interface device comprising:
-
a user manipulatable object graspable by said user and movable in a degree of freedom; an actuator for outputting a force on said user manipulatable object; a sensor for outputting a raw sensor signal indicative of a position of said user manipulatable object in said degree of freedom; a device microprocessor separate from said host computer and coupled to said host computer and to said actuator, said device microprocessor receiving high-level host commands from said host computer and determining forces in response to said high-level commands, said microprocessor causing said determined forces to be output by said actuator; and a haptic accelerator separate from said device microprocessor that receives said raw sensor signals and outputs processed signals derived from said raw sensor signals, said processed signals being sent to and used, at least in part, by said device microprocessor for determining said forces. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 54)
-
-
37. A haptic accelerator used in a force feedback interface device coupled to a host computer system, said haptic accelerator being separate from a force feedback processor and offloading computational burden from said force feedback processor, said haptic accelerator comprising:
-
a position module that receives raw sensor signals from a sensor, said position module utilizing a counter to provide position signals from said raw sensor signals, said position signals representing a position of a user manipulatable object in at least one degree of freedom a velocity processing module that receives said raw sensor signals from said sensor, said velocity processing module utilizing a timer to count the time that has elapsed between pulses in said raw sensor signals and to generate velocity representative signals based on said time, said velocity representative signals being provided to said force feedback processor to be used in a determination of forces by said force feedback processor; and a haptic processing unit coupled to said position module and said velocity processing module, said haptic processing unit receiving said position signals and said velocity representative signals and determining force values using at least one of said position signals and said velocity representative signals, said force values being output from said haptic processing unit to cause an actuator of said force feedback interface device to apply forces to said user manipulatable object. - View Dependent Claims (38, 39, 40, 41, 42, 55, 56)
-
-
43. A method for providing fast computation of forces for a force feedback interface device, the method comprising:
-
receiving raw sensor signals from a sensor, said raw sensor signals being provided in response to motion of a user manipulatable object in a degree of freedom; determining a position and a velocity of said user manipulatable object using said raw sensor signals, said determining being implemented by a haptic accelerator; determining effect force values describing forces to be applied to said user manipulatable object, said effect force values being determined by a force feedback microprocessor separate from said haptic accelerator and based on a timing signal; determining condition force values using said haptic accelerator, said condition force values being based on at least one of said position and said velocity; and outputting said effect force values and said condition force values to an actuator, said actuator outputting forces on said user manipulable object in response to and based on said effect force values and said condition force values. - View Dependent Claims (44, 45, 46)
-
-
47. A method for providing smooth force sensations to a user manipulatable object used in a force feedback interface device, said user manipulatable object being grasped by a user, said force feedback interface device being coupled to a host computer executing a program with which said user interacts by manipulating said user manipulatable object, said method comprising:
-
receiving sensor signals from a sensor included in said force feedback interface device; determining force values to be output to a brushless motor included in said force feedback interface device, wherein said sensor signals are used, at least in part, in said determination of force values, and wherein said force values are determined by a device microprocessor local to said force feedback interface device and separate from said host computer, said device microprocessor communicating with a brushless processing unit; and using said brushless processing unit local to said force feedback interface device and separate from said host computer to output force signals equivalent to said force values to said brushless motor using sinusoidal commutation such that said force values are converted into forces applied to said user manipulatable object by said brushless motor operating at stall, said forces being coordinated with events displayed within said program by said host computer coupled to said force feedback interface device. - View Dependent Claims (48, 49, 50)
-
-
51. A force feedback interface device for use with a host computer displaying a graphical simulation on a display device, said host computer displaying and updating said graphical simulation in response to user manipulation of said interface device and commanding force feedback sensations in response to said user manipulation and in coordination with events within said graphical simulation, the interface device comprising:
-
a user manipulatable object graspable by said user and movable in a degree of freedom; an actuator for outputting a force on said user manipulatable object; an analog position sensor for outputting an analog sensor signal representing an analog position of said user manipulatable object in said degree of freedom; an analog circuit separate from said host computer and operative to receive said analog sensor signal, to compute an analog velocity of said user manipulatable object from said analog position, and to output processed signals derived from said analog sensor signal, said processed signals including representations of said computed velocity; and a device microprocessor separate from said host computer and said analog circuit, said microprocessor coupled to said host computer and to said actuator, said device microprocessor receiving high-level host commands from said host computer and computing forces in response to said high-level commands, said microprocessor outputting said forces to said actuator, said device microprocessor also receiving said analog sensor signal from said analog position sensor and said processed signals from said analog circuit and using said analog position and said analog velocity, at least in part, to determine said forces. - View Dependent Claims (52)
-
-
53. A force feedback interface device for use with a host computer displaying a graphical simulation on a display device, said host computer displaying and updating said graphical simulation in response to user manipulation of said interface device and commanding force feedback sensations in response to said user manipulation and in coordination with events within said graphical simulation, the interface device comprising:
-
object means graspable by said user and movable in a degree of freedom; force means for outputting a force on said object means; sensing means for outputting a raw sensor signal indicative of a position of said object means in said degree of freedom; microprocessor means separate from said host computer and coupled to said host computer and to said force means, said microprocessor means receiving high-level host commands from said host computer and determining forces in response to said high-level commands, said microprocessor means causing said determined forces to be output by said force means; and means separate from said microprocessor means for receiving said raw sensor signals and outputting processed signals derived from said raw sensor signals, said processed signals being sent to and used, at least in part, by said microprocessor means for determining said forces.
-
-
57. A haptic accelerator included in a force feedback interface device coupled to a host computer system, said haptic accelerator being separate from a force feedback processor and said force feedback processor being separate from said host computer, said haptic accelerator offloading computational burden from said force feedback processor, said haptic accelerator comprising:
-
a position module that receives raw sensor signals from a sensor, said position module utilizing a counter to provide position signals from said raw sensor signals, said position signals representing a position of a user manipulatable object in at least one degree of freedom, wherein said position signals are provided to said host computer system; and a velocity processing module that receives said raw sensor signals from said sensor, said velocity processing module utilizing a timer to generate velocity representative signals, said velocity representative signals being provided to said force feedback processor to be used in a determination of forces by said force feedback processor; and a haptic processing circuit coupled to said position module and said velocity processing module, said haptic processing circuit receiving said position signals and said velocity representative signals and determining force values using said position signals and said velocity representative signals, said force values being output from said haptic processing circuit to an actuator of said force feedback interface device to cause said actuator to apply forces to said user manipulatable object. - View Dependent Claims (58, 59, 60)
-
-
61. A device for use in a system which includes a host computer displaying a graphical environment on a display device, said host computer displaying and updating said graphical environment in response to information derived from a sensor and representative of the manipulation of a manipulatable object graspable by a user, and commanding forces which are applied to said user manipulatable object by an actuator in response to said manipulation and in coordination with events within said graphical environment, the device comprising:
-
a device microprocessor separate from said host computer and receiving high-level host commands and determining said forces in response to said high-level commands, said microprocessor causing said determined forces to be output on said user manipulatable object in communication with said device microprocessor; and a haptic accelerator separate from and coupled to said device microprocessor, said haptic accelerator receiving data indicative of a position of said user manipulatable object in a degree of freedom, wherein said haptic accelerator outputs a processed signal derived from said data, said processed signal being sent to and used, at least in part, by said device microprocessor for determining said forces. - View Dependent Claims (62, 63)
-
Specification