|
From Standalone to Internet Appliance
by Edward Steinfeld
Start ę Internet
Appliance Options ę Web Technology
ę Cost and Options ę Web
Server Inside ę Use Common Components
ę Sources and PDF
WEB TECHNOLOGY
Can you hear the pathologist saying,
"I donęt want my instruments on the web" or the plant manager
stating, "With web access, anyone can shut down my production
lines."
The solution is web technology, not the
World Wide Web.
Web technology is probably the most widely
used computer technology. Nearly every potential user has used a web
browser either at work or at home. The user interface looks the same
whether it is running on a Unix workstation, iMAC, or PC. The web
client software used in the browsers can communicate with any server
using the HTTP server protocol. Similarly, the HTML pages displayed
can be generated on a variety of systems and still look alike.
As with all technologies, you have choices.
The Internet appliance can be a web client, a web server, or both.
WEB CLIENT
The most common web client is the ubiquitous
web browser. Embedded web browsers are available from a number of
vendors. One of the more popular embedded web browsers comes from
the originator of the commercial browser, Spyglass. The purpose of
the web browser is to provide a graphical user interface (GUI).
With a web client, the appliance can
send and receive data with web servers. The web client has a built-in
human interface, doesn't need one, or uses a web browser as the human
GUI. Web clients can transfer files using FTP protocol, but, more
likely, will use the HTTP protocol. Even within the file transfer
protocol, you have choices. The upcoming file format is XML. The Internet
appliance can have an XML parser or framer.
Most devices that are being converted
to Internet appliances already have human interfaces, the front panels.
Some of the more complex devices have an embedded kernel with its
own GUI. Also, only a few of these devices need to communicate with
AOL, CNET, or Yahoo. These devices have a limited and unique requirementęto
display specific data and control the device. Most embedded web browsers
have heavy memory requirements and processor loading. Some need GUI
compatibility, which would mandate the use of an embedded web browser.
This will be shown later.
The embedded web client, sans browser,
is an underused Internet application. It has a small memory footprint,
yet has most of the power of a web server. It communicates with web
servers by requesting or sending objects. The memory requirement of
an embedded web client is about 12 KB of ROM and RAM.
There are few companies currently offering
embedded web clients. Allegro Software Development began shipping
its web client software a few months ago. It is being used in a telecommunications
tester and a time-and-attendance terminal. Ebs, Inc. has had an embedded
web client on its list for a long time, with the price tag TBD.
The common way to make a device into
an Internet appliance is with the use of an embedded web server. The
embedded web server communicates with other web servers and user-provided
web browsers.
WEB SERVER
The embedded web server delivers HTML-formatted
graphic pages to web browsers and communicates with other web servers
on the local network or the Internet. These graphic pages can display
the data normally seen on the front panel of the instrument, and accept
user input to control or setup the device. Most of the embedded web
servers can be incorporated with their HTML pages in under 100 KB
of ROM and RAM.
What follows is the implementation of
an Internet appliance using an embedded web server. The costs and
memory sizes listed are based on the Allegro Software Development
RomPager products. There are competitive offerings from Treck, Prism,
Spyglass, and others. Many RTOS vendors have alliances with the vendors
of embedded web servers. Most embedded web servers, such as the Allegro
RomPager, are provided as C sources, without run-time royalties.
The key to using a web browser is the
ability to display dynamic or changing data on the remote browser.
This capability is provided by the embedded web servers. In order
to display this dynamic data and change pages on the fly, you need
a run-time HTML page parser, such as the Allegro SoftPages product.
Most embedded web servers can be incorporated
as an addition to the embedded application that is used to control
the instrument. A kernel or RTOS may be used but is not necessary.
The RomPager embedded web server engine is invoked with only a few
lines of code (see Listing 1).
Whether or not you need a RTOS is determined
by the implementation of your instrument. It isnęt required to run
an embedded web server. The Allegro toolkits come with make
files for all popular RTOSs. If you do not use an embedded kernel
or RTOS, the integration is simple. The code required for integration
is shown in Listing 1. Products, such as the Allegro Internet products,
come with make files for all popular embedded kernels, operating
systems, and TCP/IP software stacks. Moreover, they are processor
independent.
The end user can make the Internet appliance
proactive by adding embedded e-mail. The appliance can send an e-mail
message to the responsible person when the appliance needs service.
They can also use e-mail to download new software. And finally, each
end user needs a web browser (although most already have them).
Using web technology provides the Internet
appliance with a common network interface, user interface, and a connection
to any platform or user. It is inexpensive to develop, and the user
does not have to be an Internet guru to make it happen.
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ęCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |