Systems, Man & Cybernetics - January 2016 - 18

case will be discussed in more
Our aim is to provide backward
detail in the "Application Examcompatibility to various existOur aim is to provide
ples" section.
ing MPHs, as well as extendibilbackward compatc) For systems combining multiity to the design and production
ple off-the-shelf SPHs as an MPH,
of future MPHs. To the best of
ibility to various existwe provide a driver wrapping
our knowledge, the proposed
ing MPHs, as well as
routine to combine multiple HIPs
abstract MPH model is a superas a single MPH and add in logiset of all possible haptic device
extendibility to the
cal and physical constraints into
configurations. Function condesign and producthe corresponding function call
versions among devices are
templates. If the drivers to be
gu aranteed to work as the
tion of future MPHs.
combined are heterogeneous,
standardized function call temadditional function conversion
plates will always cover the
routines are provided for mapfunctions available from deviceping different off-the-shelf haptic SDKs into the
specific or controller-specific SDKs. A more detailed
standardized function call templates in the
explanation on the conversion routine between conabstract MPH.
troller-specific function calls and the standardized
function call templates in the abstract MPH model is
Framework Implementation
provided in Part I of "Supplementary."
To validate the abstract MPH model discussed in the
3) Is fully compatible with the ISO standard proposed in
"Framework Design Principles" section, we have imple[32]. We discuss a series of interfacing approaches for
mented a proof-of-concept framework on top of the widely
existing and future MPHs to address compatibility
accepted kinesthetic SPH SDK, CHAI3D. A large portion
issues and make sure they communicate and collaborate
of the source code has been modified to support the
uniformly under the proposed framework.
underlying abstract MPH model and the standardized
a) For brand-new MPHs built from scratch or existing
function call templates in the proposed framework.
MPHs based on customised controllers, we provide
Existing CHAI3D demos have also been modified to
standardized conversion routines to interface
work with the framework. To validate the compatibility
between controller-specific functions and the stanbetween various off-the-shelf and customized SPHs and
dardized function call templates in the abstract MPH
MPHs and haptic drivers/SDKs, a few demonstration
model. The conversion will only need to be done
cases have been studied.
once for each specific controller to reduce any overThe original CHAI3D is designed as a collection of modhead that may occur from within the framework.
ules, where the "Devices" module consists of a set of classb) For systems extending an off-the-shelf SPH into an
es enumerating each haptic device it supports. These
MPH through customized controllers, we provide a
classes are also responsible for the conversions between
combined driver interfacing routine to handle the
the device-specific function calls and the function call
physical constraint of HIPs and ensure both the origitemplates used in CHAI3D. Such design works well for
nal SPH driver and the customized controller driver
existing devices but fails to deliver with existing and
understand each other and work seamlessly as a sinfuture MPHs. A comparison of the supported SPH and
gle entity to other devices as a standalone MPH. This
MPH configurations for CHAI3D and the proposed framework is shown in Figure 2.
We implemented our framework based on Figure 1 with
Proposed
three
different levels of abstraction. The primitive compoCHAI3D Framework
nents
and operations in the proposed framework are
Off-the-Shelf SPH
√
√
Customized SPH
as follows.
√
√
Multiple SPHs
√
√
1) Manual-level components, which focus on intermanMultifinger MPH
x
√
ual communications. The instances of these comMultimanual, Multifinger MPH
x
√
ponents represent hand-like MPHs controlled by
Tactile Sensory Array
x
√
separate people or by different limbs of one person.
Holistic SPH
x
√
They are implemented based on the "shared memory"
Multifinger Holistic MPH
x
√
approach, as part of the standard interprocess comMultimanual, Multifinger
x
√
munications (IPC) available in most operating sysHolistic MPH
tems. Access of a manual-level component, such as a
proximity and collision status, will be performed
Figure 2. a comparison of the supported SPH and
through high-level queries to ensure compatibility
mPH configurations for CHaI3D and the proposed
among heterogeneous hardware implementations.
framework.
18

IEEE SyStEmS, man, & CybErnEtICS magazInE Janu ar y 2016



Table of Contents for the Digital Edition of Systems, Man & Cybernetics - January 2016

Systems, Man & Cybernetics - January 2016 - Cover1
Systems, Man & Cybernetics - January 2016 - Cover2
Systems, Man & Cybernetics - January 2016 - 1
Systems, Man & Cybernetics - January 2016 - 2
Systems, Man & Cybernetics - January 2016 - 3
Systems, Man & Cybernetics - January 2016 - 4
Systems, Man & Cybernetics - January 2016 - 5
Systems, Man & Cybernetics - January 2016 - 6
Systems, Man & Cybernetics - January 2016 - 7
Systems, Man & Cybernetics - January 2016 - 8
Systems, Man & Cybernetics - January 2016 - 9
Systems, Man & Cybernetics - January 2016 - 10
Systems, Man & Cybernetics - January 2016 - 11
Systems, Man & Cybernetics - January 2016 - 12
Systems, Man & Cybernetics - January 2016 - 13
Systems, Man & Cybernetics - January 2016 - 14
Systems, Man & Cybernetics - January 2016 - 15
Systems, Man & Cybernetics - January 2016 - 16
Systems, Man & Cybernetics - January 2016 - 17
Systems, Man & Cybernetics - January 2016 - 18
Systems, Man & Cybernetics - January 2016 - 19
Systems, Man & Cybernetics - January 2016 - 20
Systems, Man & Cybernetics - January 2016 - 21
Systems, Man & Cybernetics - January 2016 - 22
Systems, Man & Cybernetics - January 2016 - 23
Systems, Man & Cybernetics - January 2016 - 24
Systems, Man & Cybernetics - January 2016 - 25
Systems, Man & Cybernetics - January 2016 - 26
Systems, Man & Cybernetics - January 2016 - 27
Systems, Man & Cybernetics - January 2016 - 28
Systems, Man & Cybernetics - January 2016 - 29
Systems, Man & Cybernetics - January 2016 - 30
Systems, Man & Cybernetics - January 2016 - 31
Systems, Man & Cybernetics - January 2016 - 32
Systems, Man & Cybernetics - January 2016 - 33
Systems, Man & Cybernetics - January 2016 - 34
Systems, Man & Cybernetics - January 2016 - 35
Systems, Man & Cybernetics - January 2016 - 36
Systems, Man & Cybernetics - January 2016 - 37
Systems, Man & Cybernetics - January 2016 - 38
Systems, Man & Cybernetics - January 2016 - 39
Systems, Man & Cybernetics - January 2016 - 40
Systems, Man & Cybernetics - January 2016 - 41
Systems, Man & Cybernetics - January 2016 - 42
Systems, Man & Cybernetics - January 2016 - 43
Systems, Man & Cybernetics - January 2016 - 44
Systems, Man & Cybernetics - January 2016 - Cover3
Systems, Man & Cybernetics - January 2016 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/smc_202310
https://www.nxtbook.com/nxtbooks/ieee/smc_202307
https://www.nxtbook.com/nxtbooks/ieee/smc_202304
https://www.nxtbook.com/nxtbooks/ieee/smc_202301
https://www.nxtbook.com/nxtbooks/ieee/smc_202210
https://www.nxtbook.com/nxtbooks/ieee/smc_202207
https://www.nxtbook.com/nxtbooks/ieee/smc_202204
https://www.nxtbook.com/nxtbooks/ieee/smc_202201
https://www.nxtbook.com/nxtbooks/ieee/smc_202110
https://www.nxtbook.com/nxtbooks/ieee/smc_202107
https://www.nxtbook.com/nxtbooks/ieee/smc_202104
https://www.nxtbook.com/nxtbooks/ieee/smc_202101
https://www.nxtbook.com/nxtbooks/ieee/smc_202010
https://www.nxtbook.com/nxtbooks/ieee/smc_202007
https://www.nxtbook.com/nxtbooks/ieee/smc_202004
https://www.nxtbook.com/nxtbooks/ieee/smc_202001
https://www.nxtbook.com/nxtbooks/ieee/smc_201910
https://www.nxtbook.com/nxtbooks/ieee/smc_201907
https://www.nxtbook.com/nxtbooks/ieee/smc_201904
https://www.nxtbook.com/nxtbooks/ieee/smc_201901
https://www.nxtbook.com/nxtbooks/ieee/smc_201810
https://www.nxtbook.com/nxtbooks/ieee/smc_201807
https://www.nxtbook.com/nxtbooks/ieee/smc_201804
https://www.nxtbook.com/nxtbooks/ieee/smc_201801
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_1017
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0717
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0417
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0117
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_1016
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0716
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0416
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0116
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_1015
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0715
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0415
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0115
https://www.nxtbookmedia.com