Hybrid control of haptic feedback for host computer and interface device
First Claim
1. A haptic feedback interface device in communication with a host computer, said host computer running and displaying a graphical environment, said haptic feedback interface device comprising:
- a user manipulatable object physically contacted by a user and moveable in at least one degree of freedom;
at least one actuator outputting forces, said forces felt by said user;
at least one sensor detecting motion of said user manipulatable object in said at least one degree of freedom and outputting a sensor signal indicative of said motion; and
a device microcontroller coupled to said at least one actuator and to said at least one sensor and local to said haptic feedback interface device, said microcontroller outputting force values to said actuator to control said forces and receiving said sensor signal from said at least one sensor, wherein said microcontroller determines a closed loop force value based at least in part on said sensor signal and outputs said closed loop force value to said at least one actuator, and wherein said microcontroller does not compute open loop force values but instead receives open loop force values from said host computer and directs said open loop force values to said at least one actuator, wherein said forces output by said actuator are based on said closed loop and open loop force values.
1 Assignment
0 Petitions
Accused Products
Abstract
A hybrid haptic feedback system in which a host computer and haptic feedback device share processing loads to various degrees in the output of haptic sensations, and features for efficient output of haptic sensations in such a system. A haptic feedback interface device in communication with a host computer includes a device microcontroller outputting force values to the actuator to control output forces. In various embodiments, the microcontroller can determine force values for one type of force effect while receiving force values computed by the host computer for a different type of force effect. For example, the microcontroller can determine closed loop effect values and receive computed open loop effect values from the host; or the microcontroller can determine high frequency open loop effect values and receive low frequency open loop effect values from the host. Various features allow the host to efficiently stream computed force values to the device.
53 Citations
57 Claims
-
1. A haptic feedback interface device in communication with a host computer, said host computer running and displaying a graphical environment, said haptic feedback interface device comprising:
-
a user manipulatable object physically contacted by a user and moveable in at least one degree of freedom;
at least one actuator outputting forces, said forces felt by said user;
at least one sensor detecting motion of said user manipulatable object in said at least one degree of freedom and outputting a sensor signal indicative of said motion; and
a device microcontroller coupled to said at least one actuator and to said at least one sensor and local to said haptic feedback interface device, said microcontroller outputting force values to said actuator to control said forces and receiving said sensor signal from said at least one sensor, wherein said microcontroller determines a closed loop force value based at least in part on said sensor signal and outputs said closed loop force value to said at least one actuator, and wherein said microcontroller does not compute open loop force values but instead receives open loop force values from said host computer and directs said open loop force values to said at least one actuator, wherein said forces output by said actuator are based on said closed loop and open loop force values. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for providing haptic feedback functionality on a host computer in a hybrid system including said host computer and a haptic feedback interface device, the method comprising:
-
receiving on a driver of said host computer a command to provide a force effect, said command provided by an application program running on said host computer;
determining whether said commanded force effect is an open loop effect or a closed loop effect;
if said commanded force effect is a closed loop effect, directing force information based on said command to said haptic feedback device to allow said haptic feedback device to compute force values for said closed loop effect; and
if said commanded force effect is an open loop effect, storing information included with said command in memory of said host computer;
computing a force value of said open loop force effect by said driver using said information included with said command; and
providing said force value to said haptic feedback device to allow said haptic feedback device to output said force value as a force to a user of said haptic feedback device. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
28. A method for providing haptic feedback functionality on a host computer in a hybrid system including said host computer and a haptic feedback interface device in communication with said host computer, the method comprising:
-
receiving on a driver of said host computer a command to provide a force effect, said command provided by an application program running on said host computer, said force effect having a type; and
based on said type of force effect, either directing information derived from said command to said haptic feedback device to allow said haptic feedback device to compute a force value from said information, or storing information derived from said command in memory of said host computer and computing a force value using said driver, wherein said driver provides said computed force value to said haptic feedback device, wherein said force value is output as a force by said haptic feedback device to a user of said haptic feedback device.
-
-
42. A force feedback interface device, said device coupled to a host computer, said host computer running and displaying a graphical environment, said force feedback interface device comprising:
-
a user manipulatable object physically contacted by a user and moveable in at least one degree of freedom;
at least one actuator for outputting forces felt by said user;
at least one sensor for detecting motion of said user manipulatable object in said at least one degree of freedom and outputting a sensor signal indicative of said motion; and
a device microcontroller coupled to said at least one actuator and to said at least one sensor and local to said force feedback interface device, said microcontroller outputting signals to said actuator to control said forces and receiving said sensor signal from said at least one sensor, wherein said microcontroller determines a force value for a high frequency open loop effect based at least in part on a command received from said host computer, and wherein said microcontroller does not determine force values for low frequency open loop effects and receives force values for low frequency open loop effects from said host computer, said microcontroller directing said force values for said high frequency open loop effects and low frequency open loop effects to said at least one actuator. - View Dependent Claims (43, 44, 45, 46, 47, 49, 50, 51, 52, 53)
-
-
48. A force feedback interface device, said device coupled to a host computer, said host computer running and displaying a graphical environment, said force feedback interface device comprising:
-
a user manipulatable object physically contacted by a user and moveable in at least one degree of freedom;
at least one actuator for outputting forces, said forces felt by said user;
at least one sensor for detecting motion of said user manipulatable object in said at least one degree of freedom and outputting a sensor signal indicative of said motion; and
a device microcontroller coupled to said at least one actuator and to said at least one sensor and local to said force feedback interface device, said microcontroller outputting signals to said actuator to control said forces and receiving said sensor signal from said at least one sensor, wherein said microcontroller determines a closed loop force value based at least in part on said sensor signal and outputs said closed loop force value, and wherein said microcontroller does not compute any low frequency open loop force values and receives low frequency open loop force values from said host computer and directs said open loop force values to said at least one actuator.
-
-
54. A method for providing force feedback functionality on a host computer in a hybrid system including said host computer and a force feedback interface device, the method comprising:
-
receiving on a driver program of said host computer a command to provide a force effect, said command provided by an application program running on said host computer;
determining whether said commanded force effect is a high frequency open loop effect or a low frequency open loop effect;
if said commanded force effect is a high frequency open loop effect, directing force information based on said command to said force feedback device to allow said force feedback device to compute force values for said high frequency open-loop effect and output said force values as forces to said user; and
if said commanded force effect is a low frequency open loop effect, storing information included with said command in memory of said host computer;
computing a force value of said low frequency open loop force effect by said driver using said information included with said command; and
providing said force value to said force feedback device to allow said force feedback device to output said force value as a force to a user of said force feedback device. - View Dependent Claims (55, 57)
-
-
56. A method for providing force feedback functionality on a host computer in a hybrid system including said host computer and a force feedback interface device, the method comprising:
-
receiving on a driver program of said host computer a command to provide a force effect, said command provided by an application program running on said host computer;
determining whether said commanded force effect is an open loop effect or a closed loop effect;
if said commanded force effect is a closed loop effect or a high frequency open-loop effect, directing force information based on said command to said force feedback device to allow said force feedback device to compute force values for said closed loop effect or said high frequency open-loop effect; and
if said commanded force effect is a low frequency open loop effect, storing information included with said command in memory of said host computer;
computing a force value of said low frequency open loop force effect by said driver using said information included with said command; and
providing said force value to said force feedback device to allow said force feedback device to output said force value as a force to a user of said force feedback device.
-
Specification