Optimal Control for Electromagnetic Haptic Guidance Systems

Thomas Langerak, Juan José Zárate, Velko Vechev, David Lindlbauer, Daniele Panozzo, Otmar Hilliges.
Published at UIST 2020
Teaser image


We introduce an optimal control method for electromagnetic haptic guidance systems. Our real-time approach assists users in pen-based tasks such as drawing, sketching or designing. The key to our control method is that it guides users, yet does not take away agency. Existing approaches force the stylus to a continuously advancing setpoint on a target trajectory, leading to undesirable behavior such as loss of haptic guidance or unintended snapping. Our control approach, in contrast, gently pulls users towards the target trajectory, allowing them to always easily override the system to adapt their input spontaneously and draw at their own speed. To achieve this flexible guidance, our optimization iteratively predicts the motion of an input device such as a pen, and adjusts the position and strength of an underlying dynamic electromagnetic actuator accordingly. To enable real-time computation, we additionally introduce a novel and fast approximate model of an electromagnet. We demonstrate the applicability of our approach by implementing it on a prototypical hardware platform based on an electromagnet moving on a bi-axial linear stage, as well as a set of applications. Experimental results show that our approach is more accurate and preferred by users compared to open-loop and time-dependent closed-loop approaches.



 author = {Langerak, Thomas and Zarate, Juan Jose and Vechev, Velko and Lindlbauer, David and Panozzo, Daniele and Hilliges, Otmar}, 
 title = {Optimal Control for Electromagnetic Haptic Guidance Systems}, 
 year = {2020}, 
 isbn = {9781450375146}, 
 publisher = {Association for Computing Machinery}, 
 address = {New York, NY, USA}, 
 url = {https://doi.org/10.1145/3379337.3415593}, doi = {10.1145/3379337.3415593}, 
 pages = {951–965}, 
 numpages = {15}, 
 keywords = {haptic devices, optimal control, computational interaction}, 
 location = {Virtual Event, USA}, 
 series = {UIST '20}