Skip navigation

ME 327: Design and Control of Haptic Systems


Welcome to ME 327: Design and Control of Haptic Systems. In this class, we will study the design and control of haptic systems, which provide touch feedback to human users interacting with virtual environments and teleoperated robots. This class is aimed toward graduate students and advanced undergraduates in engineering and computer science. This class requires a background in dynamic systems and programming. Experience with feedback control and mechanical prototyping is also useful. Attendance is required if you are taking the class; guests/auditors are welcome. Course information and policies are contained in the syllabus. (Note that the final lecture schedule, assignment due dates, etc. are given on this web page; dates and topics listed in the syllabus are tentative.) This course covers device modeling (kinematics and dynamics), synthesis and analysis of control systems, design and implementation of mechatronic devices, and human-machine interaction. For a course focused more on 3D haptic rendering and integration with graphics, CS 277 Experimental Haptics is also taught occasionally (although no offering us currently planned).

The primary instructor for ME 327 is Allison Okamura, Professor in Mechanical Engineering at Stanford University. The course assistants are Nathan Usevitch and Jake Suchoski, both Ph.D. students in Mechanical Engineering.

LecturesTuTh 10:30-11:50 am in 530-127
Lab and Project SpaceAs needed in 520-145 (D'Arbeloff Teaching Lab)
Jake's Office HoursMondays 10-11 am in 520-145
Allison's Office HoursMondays 11 am-12 pm in 520-145
Nathan's Office HoursWednesdays 3-5 pm in 520-145
520-145 (D'Arbeloff Teaching Lab) schedule

For announcements and questions/answers, please use piazza at Grades will be posted at


PDFs of lecture slides will be posted before lecture when possible.
1/9Lecture 1: Introduction to haptics and kinesthetic devices
1/11Lecture 2: Kinesthetic haptic devices: design, kinematics and dynamics
1/12Robotics Seminar: Tactile sensing (with Mark Cutkosky)
1/16Lecture 3: Kinesthetic haptic devices: sensors and actuators
1/18Lecture 4: Hapkit distribution and assembly
1/23Lecture 5: Kinesthetic haptic devices: rendering
1/25Lecture 6: Kinesthetic haptic devices: control
1/30Lecture 7: Human haptics (experiment)
2/1Lecture 8: Tactile devices
2/6Lecture 9: Teleoperation: implementation and transparency
2/8Lecture 10: Teleoperation: stability and setup (plus graphics and admittance control)
2/13Lecture 11: Project/Presentation discussion
2/15Lecture 12: Psychophysics and user studies
2/20No lecture; project team advising meetings
2/22No lecture; project team advising meetings
2/27Lecture 13: Statistics for user studies
3/1Lecture 14: Kinesthetic haptic devices: Higher degrees of freedom & Paper Presentation
3/6Paper Presentations
3/8Paper Presentations
3/13Paper Presentations
3/15Project demonstrations


The dates below show when the assignment is distributed. Assignments will usually be due one week after distribution (the due date will be written on the assignment), and can be submitted in class or to the ME 327 box outside the door to the area where Allison's office is. (Access to solutions is restricted to students in the class; if you are not in the class and wish to see the solutions, email Allison and please explain who you are and what you will use the solutions for.)

1/9Background survey
1/11Assignment 1: Introduction to Haptics and Kinesthetic Haptic Devices (Matlab template for problem 4, Hapkit Solidworks files, Solutions)
1/18Assignment 2: Assembly and Testing of a Kinesthetic Haptic Device (Hapkit parts list, Hapkit assembly instructions, Hapkit Arduino code template, Solutions)
1/25Assignment 3: Haptic Rendering (Updated Hapkit Arduino code template, Solutions)
2/1Assignment 4: Haptic Controls and Vibration Feedback (Solutions)
2/8Assignment 5: Teleoperation and Graphics(Example Processing code, Solutions)

Students in the class will create and use their own versions of Hapkit, a haptic device created specifically for haptics education. Note: For this class, use only Hapkit information posted on the ME 327 website, because it is different from that on the Hapkit website.


Any required readings will be identified in the assignments. Links to PDFs of readings are posted here, listed by posting date.

1/11K. E. MacLean. Haptic interaction design for everyday interfaces. Reviews of Human Factors and Ergonomics, 4:149-194, 2008. {pdf}
1/11B. Hannaford and A. M. Okamura. Chapter 42: Haptics. In B. Siciliano and O. Khatib, Eds., Handbook of Robotics. Springer, pp. 1063-1083, 2016. {pdf}
1/11V. Hayward and K. E. MacLean. Do It Yourself Haptics, Part I. IEEE Robotics and Automation Magazine, 14(4):88-104, 2007. {pdf}
1/18D. W. Weir and J. E. Colgate. Stability of haptic displays. In M. C. Lin and M. Otaduy, Eds., Haptic Rendering: Foundations, Algorithms, and Applications. AK Peters, 2008. {pdf}
1/18R. B. Gillespie and M. R. Cutkosky. Stable user-specific rendering of the virtual wall. Proceedings of the ASME International Mechanical Engineering Conference and Exposition, DSC-Vol. 58, pp. 397-406, 1996. {pdf}
2/1K. Hashtrudi-Zaad and S. E. Salcudean, Analysis of Control Architectures for Teleoperation Systems with Impedance/Admittance Master and Slave Manipulators. International Journal of Robotics Research, 20(6):419-445, 2001. {pdf}
2/1B. Hannaford, Design framework for teleoperators with kinesthetic feedback. IEEE Transactions on Robotics and Automation, 5(4):426-434, 1989. {pdf}
2/1J. J. Abbott and A. M. Okamura, Stable Forbidden-Region Virtual Fixtures for Bilateral Telemanipulation. ASME Journal of Dynamic Systems, Measurement, and Control, Vol. 128, pp. 53-64, 2006. {pdf}
2/8 L. A. Jones. Peripheral Mechanisms of Touch and Proprioception. Canadian Journal of Physiology and Pharmacology, 1994, 72(5): 484-487. {pdf}
2/8A. B. Vallbo and R. S. Johansson. Properties of cutaneous mechanoreceptors in the human hand related to touch sensation. Human Neurobiology, 3:3-14, 1984. {pdf}
2/8 T. E. Murphy, R. J. Webster and A. M. Okamura, "Design and Performance of a Two-Dimensional Tactile Slip Display," Eurohaptics, pp. 130-137, 2004. {pdf}
2/8R. J. Webster III, T. E. Murphy, L. N. Verner, and A. M. Okamura, "A Novel Two-Dimensional Tactile Slip Display: Design, Kinematics and Perceptual Experiment," ACM Transactions on Applied Perception, 2(2):150-165, 2005. {pdf}


Paper comprehension and presentation are important skills for research and development, and paper presentations will introduce the class to a wide variety of haptic systems. Each team will give one 25-minute paper presentation/activity (10-minute talk, 5-minute Q&A, 10-minute activity) to the class.

Paper presentation assignment
Presentation evaluation form


The project is to develop a novel haptic system. The project must include bidirectional haptic interaction between a person or a robot/agent and an augmented, remote, or virtual environment, and a corresponding experiment to characterize human/system capabilities.

Project description
Project resources
Writing advice