Introduction
Target audience
The target audience of this document includes
anyone with a basic knowledge of how the Internet
functions and who has a general knowledge of how
computers store, retrieve, and process information.
The following block diagrams should be of great help
in understanging the process flow:
Background
The Internet was designed by
the United States Government to transmit information
across large distances. In essence the Internet
transmits data stored on a server across a network to
a user on a client machine. This data has advanced
from just text data to data containing pictures,
animation's, and even embedded programs as Figure 1
depicts. The internet has grown since industry has
become involved with advancing the technology which
drives the internet.
The technology which has been driving the Internet
has become so advanced that it is now economically
feasible to create web based controllers. A web based
device is a device which can be controlled through a
web page. These devices may range from water
sprinkling systems and environmental controllers to
any device which requires little bandwidth to monitor
and manipulate. Netscape
and SUN Microsystems
are pioneering web development. SUN Microsystems
created Java. Java
was derived from OAK, a programming language used to
program micro devices and PDA's
The web based controller concept
The web based
controller concept is only slightly different from
referencing on line documentation that most people
are familiar with. In fact if you look at the server
client relationship, a web based controller has been
already been implemented. For example let's say a
person is browsing the Internet on a client machine.
When this person clicks on a hyperlink this action is
translated by the browser on the client machine into
a server request. This request is sent over the
Internet to the server. The server then receives the
request and searches the harddrives on that machine
for the requested document. The document is then sent
and displayed on the client machine via the Internet.
Consider for a moment the harddrive of the server.
The harddrive is in essence a web based device. When
a document is requested, the harddrive spins and the
head moves across the disk to retrieve information
stored on the magnetic disk. It is not that much of a
leap to have the server access an external device.
The server can communicate with this device and take
the incomming data and display it in a format which
can be viewed as a Hyper Text Markup Language HTML
document. Figure 2 depicts this process. Java can
also be used to enhance the functionality and user
interface of the web page.
Function and appearance
Explanation by example
An example will be used to describe the
functionality and appearance of a web based
controller. This example will be a robot that has
four movements and two sensor readings. The sensors
can monitor humidity and temperature. The four
movements are forward, back, left, and right.
The web page
This web based controller consists of a series of
components. The first component which the user sees
is the web page which is loaded from the server. This
is described in great detail since this is the only
component that the user will see.
An imbedded Java applet begins to run when the
page is downloaded. This Java applet is event driven.
An event driven applet waits for an action to occur.
In this case when a arrow button is pressed the
program on the client sends a command to the server.
This command tells the server to talk to the device
and move it forward. Also contained on this web page
is sensor reading output. The sensor readings are
sent by the robot to the server which relays the data
to the web page. These sensor readings appear next to
the control graphic. Humidity and temperature
readings will be displayed in boxes which up date as
new data is sent by the robot. These data boxes will
take a small portion of the screen. The text inside
the boxes will be around 12 point font so as to be
legible but not take up to much of the screen. Also
contained on this web page will be an picture which
shows the current position of the robot. JPEG
encryption is used for this picture due to Internet
standards and the transmission speed which can be
achieved. This picture takes up little area because
the size of the file transmitted to display the
picture grows geometrically with size. This picture
is in 8 bit color. Eight bit color allows for 28
or 256 colors.
The Server
The second component is a server which relays
information from client to robot and from robot to
client. The server can be of a type capable of
launching HTML documents with imbedded Java applets.
Such servers include Netscape, Microsoft, and SUN
Microsystems servers. This server must also be
capable of communication through some external port
such as a RS232. This port will be used as a
communications channel between the server and the
robot.
The Robot
The robot is the last component needed for this
example. The important feature of the robot is a
micro controller which is the brain of the robot.
This micro controller should be capable of RS232
communication. This allows the robot to send data and
receive instructions to and from the server. The
micro controller is interfaced to external motors and
servomechanisms which allow the robot to move. This
processor should at least have an 8 bit bus for
communication with external devices.
Summary
The web based controller example uses a HTML
document loaded on a client computer to send
instructions to a server via the Internet. The server
is needed to relay information to the robot. The
communication link between the robot and the server
is an RS232 link. This allows two way communication
between the robot and the Server.
|