|
Active Badge next generation (ABng) is a system which allows to
locate people and equipment within a building. ABng is a new,
CORBA-compliant implementation of the Active Badge System developed at
Olivetti & Oracle Research Laboratory
(ORL) in Cambridge, UK. Both ABng and ORL's Active Badge System
use the same hardware infrastructure whose key components are
infra-red sensors,
installed in fixed positions within offices of the building, and
infra-red emitters, called Active Badges, which
are small devices worn by personnel or attached to equipment. Sensors
are connected by a wired network which provides a communication path
to the controlling device, called poller, and distributes low-voltage
power. The poller is implemented as a PC or a workstation with a
sensor control software active on it. An Active Badge
periodically transmits an infra-red message containing a globally
unique code (a badge identifier) using the defined data link layer
protocol. Messages are received and queued by sensors. A poller
periodically polls sensors and retrieves badge messages from sensor
queues. Each badge message as well as an identifier of the sensor
which received the message is forwarded to the software layer of the
system. The software layer maintains a database that maps sensors to
places in which sensors are installed and badges to users wearing
these badges and to pieces of equipment which badges are attached
to. Using these data the system can infer where users or pieces of
equipment are currently located. The information about the current
location of personnel and equipment can be provided to various
applications, such as presentation tools which display location data
or applications which use location data to control users' environment.
The software part of the original Active Badge System developed at ORL
uses ANSAWare distributed
programming environment. The ABng project aims at development
of a new software layer that fulfils the following assumptions:
- is flexible and reconfigurable;
- separates the details of gathering of location data from the application layer;
- provides location data filtering;
- ensures privacy of location data and security;
- enables to build systems making a user's environment location-aware.
To satisfy the first requirement, ABng uses a
modern component and object-oriented technology. The system is
developed in object-oriented distributed programming environments:
Orbix and OrbixWeb from Iona
Technologies which are compliant with the widely accepted CORBA (Common Object Request Broker
Architecture) standard for distributed systems. ABng is based on the
object model in which all abstract and physical system elements
(users, locations, sensors, badges, etc.) are represented as CORBA
objects. Hence, for a typical installation consisting of about 100
badges and 100 sensors installed in 50 rooms, the ABng system consists
of over 600 distributed CORBA objects. This makes ABng a good case
study system for research on scalability of
CORBA-based applications.
The system has a layered architecture which hides details of location
data gathering. This makes it possible to replace a localisation
method based on infra-red sensors and emitters by another one. In ABng
location data are presented using abstract notions of location
and locatable objects rather than in terms of sensors and
badges. A location is a part of an environment obtained as a result of
partition of the space according to an arbitrary, user-defined
rule. Typically, an office space can be divided into buildings,
floors, rooms, etc. A locatable is an object which can be observed by
the system and whose location changes within the environment space can
be monitored. A locatable can be a person or a piece of equipment,
such as a computer, a printer or a book.
The basic ABng concept is View which is a collection of some
location and locatable objects, i.e. it represents a part of the
environment space and a subset of objects that can be localised within
this part. The precision of localisation of view's locatables is equal
to the size of locations belonging to the view. Within a system a
number of view objects can exist, each of which can hold information
concerning current locations of users of equipment belonging to
different groups and provided at different levels of abstraction with
different precision.
The concepts of locations, locatables and views are crucial for data
filtering and protection of privacy of location data. Every
application can individually decide which view and which locations or
locatables contained in the view it is willing to observe. It can
subscribe to interesting objects and, as a consequence, receive the
required data related to these objects. With every view existing in
the system a list of users who can access this view is
associated. Thus only those users have access to location data as well
to other attributes of locations and locatables contained in the view.
The ABng incorporates development of the Wonder Room - a
location-aware users' environment. This environment consists of a
number of applications which control various elements of the users'
equipment. Examples of such applications are redirection of phone
calls to the currently nearest phone or setting parameters of various
home appliances, such as air-conditioning, TV sets, VCR-s, light,
according to the preferences of users located in the neighbourhood of
these appliances, period of time, etc. Such applications may be used
for personalisation of user's equipment. Systems of this type
are examples of, so called, ubiquitous computing.
|