Section_2_Input_and_output_devices_17
Section_2_Input_and_output_devices_17
2.1.1 Keyboard
The keyboard is certainly one of the most frequently used and oldest input devices that exist for the computer;
it originates from the typewriter, and has the same purpose as its ancestor: to enter textual data, such as
characters, numbers and some special characters.
-17-
Section 2 - Input (and output) devices
Keyboards can be divided into fixed function and variable function keyboards. "Fixed function" means that
each key has a fixed mapping, whereas in variable function keyboards the mapping of the keys can change,
either by means of a mode change key or software control. Fixed function keyboards, where only one key is
pressed at a time, are employed when only a small set of frequently used functions is needed (e.g. the
calculator and the telephone). In variable function keyboards, generally used in conjunction with a computer,
more keys may have to be pressed, if e.g. mode change keys are used; this clearly renders the labeling of the
keys more difficult.
The arrangement of the keys is done according to importance, frequency of use and sequence of use. This has
led to different types of keyboards, just to mention the commonly used "QWERTY" (or "QWERTZ"), the
Dvorak and the "alphabetical layout" keyboard (discussed in section E.2.1). As these keyboards were all
developed for use with a computer, they generally contain specific sets of keys:
• Cursor control keys, which allow to control the cursor position on the monitor. The keys are arranged to
provide a directional mapping between the key’s location and the cursor movement, usually in the
directions left, right, up and down.
-18-
Section 2 - Input (and output) devices
• Most keyboards also contain the generally accepted keypad for numerical input (called "NumPad") ,
which consists of ten keys, one for each of the ten digits, arranged in a three by three matrix with the zero
at the bottom. It can be used to enter numbers, perform calculations (as operators are present on the
NumPad as well), possibly select elements or control a cursor (the keys labeled "2", "4", "6" and "8" have
arrows imprinted on them, similar to the cursor control keys).
2.1.2 Mouse
The mouse consists of a small hand-held chassis that is moved over a flat surface; a motion sensing
mechanism converts the movements into electric signals, which can e.g. be used by the computer to control a
cursor according to the mouse movements. Thus the mouse is best used as a pointing and selecting device, as
it allows to move the cursor across the computer’s screen in a rapid and intuitive way. Buttons are mounted on
the chassis of the mouse to trigger some events, like the selection of an icon or menu item the cursor is
positioned over.
• Mechanical mice: contain a small ball inside the chassis, which is spun as the mouse is moved over the
surface. The ball in turn rotates some small wheels whose motion is encoded by potentiometers or optical
encoders. These mice can work on every surface, but dirt is collected by the ball and often soils the
encoders.
• Optical mice don’t need a rotating ball; they contain optical sensors that emit signals as the mouse is
moved over a special grid containing reflecting lines in the X and Y direction; on every line that is crossed
a pulse is emitted. These mice have the advantage that there are no moving parts and no dirt is collected
from the surface, but they work only in combination with a special mousepad containing the grid.
The first mouse was developed in 1965 at Stanford Research Institute by Douglas Engelbart, and had wheels
on the bottom instead of a ball; the latter was introduced when the mouse was redesigned at the Xerox Palo
Alto Research Center. From then on the mouse has experienced the most rapid diffusion of any other input
device except the keyboard; its ascension started with the introduction of operating systems with graphical
interfaces containing icons, menus and windows, like known from Apple Computers.
-19-
Section 2 - Input (and output) devices
2.1.3 Trackball
The trackball is somehow the inverse of the mouse: it consists of a fixed chassis and a freely rotating ball that
can be moved in any direction with the fingers or the palm of the hand; small wheels, positioned 90 degrees
from each other, are connected to the ball and rotate as it is spun.
• In mechanical trackballs the spinning ball is connected to potentiometers whose output corresponds to
changes in the X and Y direction.
• In optical trackballs optical encoders are used to generate pulses according to the increments in rotation
around the X and Y axis.
Trackballs have the same purpose as the mouse, to move a cursor across the screen, but are preferable when
there is not enough space for a mouse or when the cursor has to be moved rapidly over a large area, because
the ball can be spun very fast and the cursor can be moved continuously without stopping. However, using
trackballs it is not possible to guess the cursor’s position from the status of the devices, as it can sometimes be
done with the mouse (the location of the mouse on the mousepad sometimes reflects the location of the cursor
on the screen).
A further advantage is that trackballs can be constructed in any scale; the balls can be as small as a marble
(for example, in thumb operated trackballs) or bigger than a football (e.g. the TerraVision trackball from 4th-
Art, which has a diameter of approximately 1 meter and represents a globe).
2.1.4 Joystick
The joystick is nearly as famous as the mouse. It consists of a stick mounted vertically on a fixed base that
can be rotated around two orthogonal axes. Usually springs force the stick into its center position when it is
not operated, although some joysticks store the lever’s position. There exist three basic types of joysticks
employing different technologies, called "digital", "displacement" and "force" joysticks.
• The so called digital joystick does not have resistors, but switches mounted around the base of the lever
(usually four), so that movement in any of the eight directions can be sensed. The output is "on" or "off" in
any of the eight directions, and not proportional to the stick’s displacement. So it cannot be used in
absolute positioning mode, but only to send directional information, for example to move the cursor
(usually with fixed speed) according to the switches’ contacts. This kind of joystick is extremely
successful in arcade games because of its robustness, simplicity and low cost.
• In displacement joysticks the stick is connected to resistors, typically potentiometers, whose resistance is
proportional to the stick’s position along the two axes. Increasing the force applied to the stick increases its
displacement; there is a direct relation between force and displacement. The joystick can be used as an
absolute positioning device where the vertical stick corresponds to a central position and the full
-20-
Section 2 - Input (and output) devices
deflection corresponds to corner positions ("absolute" mode), or the deflection may be used as a velocity
parameter indicating the direction and the speed of movement of a cursor ("relative parametric" mode).
The velocity or position must not be a linear function of the joystick’s deflection, but can also e.g. be
exponential.
• Force joysticks: the lever is rigid and cannot be moved noticeably, because not the motion, but the forces
applied to the stick are measured. The joystick's output is proportional to the direction and amount of force
applied. Force joysticks always return to their center position when released. Because of their extremely
limited movement, they are not suited for absolute positioning.
• 3D-Joysticks: some joysticks include a three-dimensional capability; the third dimension is controlled by
twisting the lever in clockwise or counterclockwise direction around it’s base, or shifting it
upwards/downwards [Fole92].
Joysticks have the advantage that they require only a small amount of desk space (some joysticks are even
small enough to be incorporated into keyboards) and that they can be employed over a large period of time
with little fatigue. Different configurations of buttons can be mounted on the joystick's chassis to provide
additional functionality.
2.1.5 SpaceBall
The space ball is very similar to a 3D-joystick: it is a 6 Degree-Of-Freedom device; the ball mounted on the
chassis can measure translation forces along three axes (X,Y,Z) and rotation torque. The translation forces
can e.g. be used to position an object, and the rotation torque to determine its orientation. As with most other
input devices, buttons can provide additional functionality.
-21-
Section 2 - Input (and output) devices
2.1.6 Tracker
Tracking devices, also called "trackers", are devices capable of determining the position and/or orientation of
objects, usually in three-dimensional space. Their main field of application is in virtual environments, where
they are employed to track the different parts the user’s body, for example the head to determine the user’s
direction of gaze. If a Head Mounted Display is used, this information allows the computer to render the
images according to where the user is looking in the virtual environment. Trackers are also employed in Data
Gloves, to track the position and orientation of the hand other than the bending of the fingers. According to
the technologies employed the trackers can be classified into:
• Magnetic trackers: they consist of a stationary part, called "emitter", and one or more small "receivers"
mounted on the objects to track. The emitter usually contains three orthogonal coils to produce
electromagnetic fields, which are picked up by three orthogonal coils in the receivers; from the current
induced the position and orientation of the receivers with respect to the emitter can be determined.
Drawbacks of this technology are sensitivity to magnetic interference, metallic objects and ferromagnetic
materials, as well as rapid deterioration of the tracking accuracy with increasing distance between emitter
and receivers. The advantages are a high update rate, low latency, good precision and no line of sight
restriction between emitter and receivers. Examples: Polhemus and Ascension trackers. This type of
trackers is supported by the Mapper.
• In acoustic trackers, generators that emit ultrasonic waves are mounted on the objects to track; these
ultrasonic pulses are picked up by receivers (usually three), and according to the time required by the
ultrasonic waves to travel, position and orientation can be determined. Acoustic trackers are cheap and
sensitive only to acoustic interference; while magnetic trackers need cables, wireless versions of acoustic
trackers are feasible. Their precision is moderate, they have a low update rate and they are susceptible to
line-of-sight occlusion (there must be a line of sight between the transmitter and the receivers). Examples:
Logitech.
-22-
Section 2 - Input (and output) devices
• Optical trackers use videocameras or photosensors to determine position and orientation of the tracked
objects from images; often LEDs are used to enhance the points to track and ease the construction of the
cameras. Usually the cameras are mounted on known locations and triangulation techniques are used to
determine the absolute position and orientation of the tracked objects (it is necessary to observe multiple
targets). These trackers usually have a small working volume, and are susceptible to line-of-sight
occlusion. Examples: OptoTrack3000, Selspot II.
A different approach is the optoelectric tracking system developed at UNC [Head92], where infrared light
emitting diodes are mounted at known positions in the ceiling of a room; these LEDs are detected by
imaging sensors mounted on the HMD worn by the user, being therefore able to calculate its position and
orientation directly. But this system can only be employed in specialized rooms (LEDs on the ceiling), and
is not suited to track e.g. the user’s hand.
• Inertial trackers: the core of inertial trackers are accelerometers or rate gyroscopes, which allow to
calculate the actual position and orientation by adding the relative movement measured from the
acceleration. Wireless operation would be feasible, and they can be employed in almost every environment
without range restriction; the disadvantages are that they have a quite high drift, and errors may arise due
to the continuous addition of relative values. Furthermore they are usually quite bulky and expensive.
• Mechanic trackers use rigid frameworks containing a set of joints whose angulation can be determined;
this allows to calculate the absolute position and orientation of the object to track with very small latency,
high update rate and excellent precision. The disadvantages are their bulkiness and very limited range of
operation; some exoskeletons have been developed as trackers in virtual environments, but they are
seldom employed in practice because of their sensibility and tedious mounting on the user’s body. A
famous representative of mechanic trackers is the "BOOM" from FakeSpace Labs (Figure 2.12), which
furthermore uses the framework to support the viewing device.
Figure 2.11: Optical tracker Figure 2.12: The BOOM (FakeSpace Labs)
• GPS: another quite recent tracking system is the Global Positioning System, called "GPS". It uses the
signals coming from a minimum of three (up to 24) satellites orbiting the earth to triangulate the absolute
position and orientation of the receiver. The newest generation of GPS-systems, the so called
"differential" GPS, uses an additional signal sent from a specific location in the vicinity of the receiver to
improve the precision. GPS is widely used in ship, aircraft and vehicle navigation.
-23-
Section 2 - Input (and output) devices
-24-
Section 2 - Input (and output) devices
• The domain range for each DOF (the number of different values for each DOF) .
The domain range is primarily determined by the "resolution" of the device. Furthermore, as the data from
analog input devices has to be converted into digital data (see Appendix E.1), the number of quantization
steps used to "digitize" the analog values affects the domain range.
• The "geometric meaning" (of the domain range) for each DOF - see Figure 2.15 and Figure 5.1.
The Degrees of Freedom determine the number of independent (or semi-dependent) values that can be
entered by the user when operating the device (we can also call it the number of dimensions, or
"dimensionality" of a device. For example, a slider has one DOF, the mouse two DOF, and a tracker (usually)
six Degrees of Freedom (3-D position and 3-D orientation).
For each DOF we can enter a set of different values, called the "domain range". When we operate an
input device (e.g. moving the mouse), we "select" one element out of the domain range for each DOF of the
device.
-25-
Section 2 - Input (and output) devices
For example, a single button (one DOF) allows us to enter 2 different values; a slider (one DOF) 256 values
(depending on its resolution), and an analog joystick (two DOF) has a domain range of e.g. 65536 values (for
each of the two "dimensions").
So the output can be seen as a tuple of N variables (if the device has N Degrees of Freedom), each
variable having its own domain range (depending on the resolution). In other words, we can theoretically
reduce the functionality of an input device to select an element out of a set for each of its Degrees of
Freedom.
If the input devices consist of more than one DOF (e.g. a mouse) we have to differentiate whether the
single Degrees of Freedom are semi-dependent or independent. Two Degrees of Freedom are called
independent if they are completely isolated from each other, without any restriction; semi-dependent
however means that both Degrees Of Freedom can be accessed separately, but with great difficulties. An
example is the mouse: although it has two DOF (in can be moved along the X and Y-axis), it is hardly
possible to move the mouse strictly along the X-axis alone. On the other hand, if we take two single buttons,
they can easily be pressed independently from each other. On a mouse with one button, having three Degrees
Of Freedom, two DOF are semi-dependent (moving the chassis, domain range e.g. from -127 to 127), the
third is independent (the button, domain range from 0 to 1).
The "geometric meaning" for each Degree of Freedom depends on how the elements of the domain range
are arranged geometrically; whether the user, when operating the device, perceives the values of the domain
range as arranged geometrically along or around an axis (or not); we differentiate between the X, Y, Z or
any "other" axis (note that we use a right-handed coordinate system with the Z-axis pointing upwards).
For example: the lever of a joystick has two Degrees of Freedom, one having the geometric meaning "along
the X-axis", the other "along the Y-axis". In order to access the values of the domain ranges, the user pushes
the stick to the left/right and forward/backward; the left/right movement is perceived as "along the X-axis",
while the forward/backward movement seems to lie on an Y-axis.
A knob mounted on the surface of a desk has one DOF "around the Z-axis"; if the knob cannot be
guaranteed to rotate around the Z-axis, its geometric meaning is simply "around an axis" (not necessarily the
X,Y or Z-axis; thus we say "around an ’other’ axis").
-26-
Section 2 - Input (and output) devices
A group of four buttons arranged on a row allows us to enter four values arranged along an axis
(combinations of the buttons excluded) - if the four buttons are sparse, the values have no geometric meaning.
Thus 256 buttons lying on a line could be combined to a "complex device" that does the same job as a slider
having 256 different positions (if "along the Y-axis" it is e.g. suited to enter a velocity value), while 256
arbitrary positioned buttons can be used only as 256 single buttons (in the best case to make a selection "1 out
of 256", or for 256 single confirmations).
1 DOF <n1>
1 DOF <n1> n1 ˛ [1,4]: 4 states (combinations excluded)
n1 ˛ [0,1]: 2 states Geometric meaning: along the X-axis
Geom. meaning: along the Z-axis
1 DOF <n1>
n1 ˛ [0,10]: 11 states
Geom. meaning: along the X-axis
1 DOF <n1>
1 DOF <n1> n1 ˛ [1,4]: 4 states (combinations excluded)
n1 ˛ [0,10]: 11 states State "0" (no key pressed) excluded
Geom. meaning: along "other" axis Geometric meaning: none (no axis)
) LJ X U H ( [ D P S OH V R IV LP S OH D Q G F R P E LQ H G G H Y LF H V Z LWK WK H LU ' 2 ) D Q G J H R P H WU LF P H D Q LQ J
Other than the "theoretical" attributes described above, the following attributes affect the users’ action and
commodity:
• How much space they need to be operated (e.g. mouse vs. trackball).
• Whether the device needs to be grasped (like a joystick) or not (e.g. Data Glove).
• If the user must see the device in order to operate it (important when wearing a HMD).
For a more detailed explanation of the input device properties which affect both user and application
(concerning the construction/hardware, the data they send, the operability, as well as their usage on the part of
the user) refer to Appendix G.
-27-
Section 2 - Input (and output) devices
• Whether they are absolute or relative devices (according to the data they deliver).
Absolute devices can detect static input, while relative devices need dynamic input. For example, a
tracker can detect the position of the user’s hand, even if the user does not move (absolute device); a
mouse only delivers data if it is operated (relative device). So the tracker has a direct relation between its
position/orientation and the output sent (for the same location it always has the same output); the mouse
however has no direct relation between its position on the mousepad and its output.
• Whether they can be operated in absolute mode, in relative mode or in both modes.
Absolute devices, such as the trackers or digitizing tablets, can only provide absolute data (e.g. absolute
position/orientation). If a relative position/orientation is needed, it must be calculated from the absolute
data (determining the differences between the single outputs).
Relative devices (such as the mouse) only provide relative data - it the mouse is moved, the change in
position is sent; otherwise no data (or "0" displacement) is output. Absolute data (e.g. an absolute
position) can only be obtained by summing the single displacements.
Some devices however can deliver both types of data, like the analog joystick. The output, reflecting the
stick’s deflection, can be used as absolute position (e.g. controlling a cursor by relating the borders of the
screen to the maximum deflection of the stick) or as relative data (the deflection can be used as relative
displacement). The analog joysticks belongs more to the relative devices than to the absolute ones (as
when it is released, the output is zeroed; it "jumps" to a null-state due to its spring-return property).
However, if the user does not mind, the analog joystick can efficiently be used as absolute device.
If absolute data is requested and the device can be operated in absolute mode, the Mapper can directly rout
the device output to the application; the same is valid for relative data requested and devices operated in
relative mode. Devices in absolute mode servicing relative data, and devices in relative mode servicing
absolute requests require additional computation by the Mapper (differentiating/integrating; see also
Appendix P); if the devices can be operated both in absolute and relative mode, the Mapper can decide which
mode to employ according to the user’s preferences.
-28-
Section 2 - Input (and output) devices
• Position devices are used to enter a positional information. According to their degrees of freedom, it can
be a one-, two- or three-dimensional position. The device can work in absolute, parametric or
incremental mode.
Absolute positional device allow to enter an absolute position directly, like e.g. a touch screen, a digitizing
or touch tablet, or a 3-D tracker. Devices which work in parametric or incremental mode are so called
"relative" devices, as the new position is determined from the actual (old) position. This has to be done by
software, which can be located in the firmware, the operating system or the application itself. Using
incremental devices, the displacement in unit steps along the axis of the coordinate system is given,
whereas parametric devices allow to enter a (numerical) value used to determine the new position. Mouse
and trackball for example are incremental devices, the (analog) joystick is a parametric device. The cursor
keys on a keyboard are used mostly as an incremental positional device, moving a cursor on the screen one
step on each keypress. The cursor keys are arranged in a way as to give a directional information; in other
words, the location of the cursor keys on the keyboard lets presume in which direction the cursor will go
(in traditional desktop applications: left, right, up, down). Some devices can be used both in parametric
and absolute mode, like the analog joystick or the graphic tablet.
• Orientation devices work the same way as position devices, except that not a positional, but an
orientation information is entered.
• Quantification devices are used to input an abstract integer value out of a determined interval. These
devices usually have one Degree of Freedom. Quantification devices are somehow a subset of positional
and orientation devices, as both can be used as quantification devices; however the latter have an implicit
directional information, whereas quantification devices don’t. A pedal e.g. has no directional information;
a continuous slider has a directional meaning if it is oriented along one of the axes of the display, although
it is used mostly to enter a numerical value without a geometric meaning. The question is whether we
categorize the devices according to the data they transmit or their usage. Doing the latter means to put
sliders in this category. The same is true for rotational knobs; they can be used as orientation devices, but
their main usage is the input of a non-geometric value. The numerical keypad on a keyboard falls within
-29-
Section 2 - Input (and output) devices
this category, as it is mainly used to input a numerical value. However, the Mapper employs the NumPad
also as selection and direction device (using the keys labeled "2", "4", "6" and "8", with arrows imprinted
on them).
• Selection devices are used to select one element out of a set. As selection of a visual object (icons, menus,
models) concerns the category "positioning of a cursor", selection devices are used to select items directly,
without positioning a cursor on the display (no "visual" selection). Groups of buttons are the most known
examples, but also the function- and other special keys of a keyboard are mostly used to select an object,
an action, a command. The alphanumeric part of a keyboard can also be used for selection, as every single
key can be said to select an associated character, but it is mainly used for inputting text. In this case it
would fall within the category "text-input-devices". When the keyboard is used to type in commands or
numerical values, valid categories would be "text-input" or quantification-devices. So this categorization
depends on the type of application.
• Confirmation devices are used to communicate a determined command to the application, to send an
impulse, to trigger an action. They allow to send a confirmation: if, e.g., the mouse is used to position a
pointer over an icon, a button has to be pressed to confirm the position and select the icon. The same holds
true for digitizing tablets using a puck. Some positioning devices need no special confirmation, as touch
screens, where the touch itself has an implicit confirmation.
Some keys of the keyboard are mainly used to confirm a position, an orientation, or a selection, like the
"Enter" key. If the cursor keys are used to position a cursor in various fields of a spreadsheet, the "Enter"
key is used to confirm a selection, and when a command or a value is entered using the keyboard, Enter
confirms and inputs the command or value.
-30-