ECSE600/397: Design and Control of Haptic Systems

Introduction

This course aims to introduce students to the key ideas in designing, modeling, and controlling haptic (touch) interfaces that mediate interaction with virtual or remote environments. Students will study these concepts through simulation- and hardware-based assignments focused around a CWRU-customized version of the “Hapkit” - a low-cost, 3D-printed, haptic paddle.

The broader vision of this course is that students will be able to use their understanding of the fundamentals to:

  1. Engineer simple haptic interfaces
  2. Critically evaluate the pros and cons of haptic interfaces for virtual and telerobotic applications
  3. Progress to academic or professional research and development in the control, modelling, and design of haptic devices and teleoperator systems.

Learning Goals

By the end of this course, students will be able to:

  • Know the different ways haptic feedback can be presented through kinesthetic devices and tactile devices
  • Understand how to program different types of force feedback haptic effects including: a virtual wall, a box, a sphere, spring-damper, friction, and simple textures
  • Understand and apply the mechatronic design approaches to engineering haptic devices by considering factors such as: mechanical leverage, sensor resolution, sampling rate, device and virtual friction and damping, time delay, to balance transparency and stability
  • Understand how to characterize and test haptic devices by quantify perceptual thresholds such as the just noticeable difference using experimental techniques such as the staircase method and two alternative force choice paradigms.
  • Model and analyze human-in-the-loop robotic control systems using computational simulation

Pre-requisites

Students should have taken introductory controls or signal processing (e.g. ECSE 246/304, EMAE 350/351, EBME 308/309). The mechanical principles of haptic devices are at the level of PHYS 121/123. Students should also possess foundational programming skills at the level of ENGR130/131 so that they can program simple if/else statements, for and while loops using Arduino and MATLAB. Embedded programming experience is useful but not required as it will be introduced (e.g. ECSE 303). If you have questions about whether your course background sets you up well to take the course, do reach out to Zonghe.

Since this class covers material at the interface of electrical and mechanical engineering, it is natural that some students will possess depth in mechanical aspects, while others will possess depth in programming and/or control aspects. Interdisciplinary collaboration is encouraged and beneficial to completing the lab assignments in a timely manner.

Course Structure

The course will consist of bi-weekly lecture/activity sections led by the main instructor. Students will be expected to attend these sessions and participate actively in class discussions and hands-on activities. In the first half of the course, assignments will help students apply and consolidate specific concepts presented in lectures. In the second half of the course, students will present on an advanced topic on haptics in their area of interest, and apply their knowledge to develop a hardware-based fin project.

Sample Course Schedule

WeekLecture Topics Assignment
1Course IntroductionHuman Tactile Perception and Haptic illusionsSurvey
2Kinesthetic Haptics 1: Design and KinematicsKinesthetic Haptics 2: Modeling and ControlAssignment 1: Device Kinematic Modeling
3Kinesthetic Haptic 3: Sensing and ActuationKinesthetic Haptics 4: RenderingAssignment 2: Haptic Device Dynamic Simulation
4Hapkit AssemblyKinesthetic Haptics 5: Multi-DOF devicesAssignment 3: Haptic Rendering
5Kinesthetic Haptics 6: Multi-DOF renderingTeleoperation: ControlAssignment 4: Control Analysis and Vibrotactile Haptics
6Teleoperation 1: Transparency and StabilityTeleoperation 2: Stability TechniquesAssignment 5: Teleoperation and VR Rendering
7Project Discussion, ExamplesTactile Haptic DevicesAssignment 6: Teleoperation Stability and Project Proposal
8Human Interface ValidationPerform Human Subject Study 
9SPRING BREAKSPRING BREAK 
10Experimental Statistics 1Experimental Statistics 2Assignment 7: Experimental Statistics
11Project Proposal Feedback 1Paper Presentation Session 1 
12Paper Presentation Session 2Paper Presentation Session 3 
13Paper Presentation Session 4Free Working Day 
14Project Check In Session 1Project Check In Session 2 
15Free Working DayProject Demo DayFinal project report due


Hapkit Assembly

Hapkit Assembly

Bilateral Hapkit Teleoperation Over Case WiFi (Assignment 6)


Haptic Display of a Virtual Mass Spring Damper Object using the Hapkit (Assignment 6)


Haptic Display of a Virtual Wall using the Hapkit (Assignment 6)



Project Demo Day


Demo Demo Demo Demo Demo