Popis: |
Computer haptics integrates the sense of touch into visual, computer-generated virtual environments (VEs). A user is able to feel virtual objects while manipulating them on a computer display with a haptic device. The tactile sense introduced by haptics is important for Virtual Reality (VR) applications such as surgical simulators. Integrating haptics into VR applications greatly increases the complexities of their real-time requirements and thus the software development process. It is critical to validate that the real-time requirements of a haptic application are met in order to avoid instabilities such as software errors or device vibrations during haptic interactions. A loss in reality may also occur due to synchronization issues between graphic and haptic updates since what the user sees and feels becomes disconnected. Current haptic application development methods require the use of a programming language to develop haptic applications. Thus, considerable programming efforts are typically required in order to create, test, and modify applications to optimize their performance and validate their real-time stability. Beyond the ability to query the rendering update rates, existing tools do not provide methods to assist developers with optimization and stability validation tasks. This dissertation describes a software development platform that eliminates the programming requirements for developing stable and optimized haptic applications. An empirical software methodology is used to design, establish, and extend the platform to address the requirements of different haptic applications. The software development platform encompasses: 1) a set of reusable, extensible and validated software modules for developing haptic applications, and 2) application building tools that are interfaced to the software modules to develop haptic applications without programming. The building tools allow tested stable haptic applications to be created using a visual software development process. Tested applications, previously developed with the tools, can be imported and reused to assist with the development process. An integrated test environment assists with validating the real-time stability requirements and optimizing the performance of an application. Optimizing the performance of an application enables it to use the largest possible stable haptic VEs. Currently, surface-based haptic VEs are supported by the platform. Volumetric VEs are made haptic using volume-to-surface conversion capabilities provided by the platform. The required software modules must also exist in order to create applications via the haptic application building tools. However, the availability of the required modules increases as the platform is extended while developing different applications. Programming is required to develop any additional software modules. The building tools also need to be updated in order to support the new modules. The platform is validated with the development of surgical simulators. Using surgical simulation as an application domain enables a rich spectrum of functionality to be addressed for developing stable haptic applications. The application building tools allow a surgeon to create customized surgery and patient-specific laparoscopic surgical simulators based on the reusable software modules developed for a skills-based laparoscopic simulator. The customized simulators are created by dynamically integrating the anatomical VE, surgical tasks, virtual instruments, and evaluation metrics without programming. The surgeon can choose to address an entire surgery, or a sequence of basic manipulations and tasks within a surgical procedure, with different levels of difficulty. |