The ICON is a small, reliable, low cost "Web Appliance"
style product designed for general purpose data acquisition
and process control systems. It is unique because all
programming, configuration and operation takes place
from a Java enabled web browser or separate Java application
The ICON is connected with a 10baseT ethernet port to
a Local Area Network (LAN) and becomes a "Web server"
which is accessed from a Java enabled web browser. Therefore
it is compatible with Windows, Unix (Linux) and Macintosh
machines. This allows many users to be connected to
the ICON simultaneously.
For small networks a DSL, cable or dial modem router
may be used to connect the ICON and other local PCs
on the ICON LAN to the Internet. In this configuration
the ICON can be accessed by the local PCs or remote
PCs located anywhere on the Internet.
You may also connect an ICON's serial port to an external
auto answer modem. The ICON acts as a server, answering
the call and allowing the user to log on with a user
name and password just as if an ISP had been called.
This is ideal for remote applications such as ambient
air monitoring stations, pumping stations or hydroelectric
plants where only a phone line is available.
Because the ICON uses standard Internet protocols and
10BaseT ethernet it can become part of any modern LAN/WAN
and take advantage of all the products designed to transport
and handle TCP/IP including DSL, cable and dial modems,
routers, firewalls, all types of ethernet interconnects
including Home Phone Line Networking, Power Line Carrier
Networking , fiber optic and RF (802.11, Bluetooth)
Operation of the ICON is encrypted password protected
and includes a different authentication key for each
password. One password enables programming and HMI configuration.
Other passwords select different Human Machine Interface
(HMI) operation capabilities. Some users may be allowed
to view data only. Other users can view data and make
The only access to the ICON is through the proprietary
ICON software. There is no other software such as Telnet
or FTP that could allow a "Cracker" to gain access to
the ICON. As long as the passwords and authentication
keys are kept secret, it is virtually impossible for
unauthorized people to gain access to the ICON.
Of course standard Internet techniques of firewalls
and "Virtual Private Networks" can be added to increase
The ICON is designed to access the
following types of I/O:
- For very low cost, slower speed,
highly distributed I/O, our 1-wire
sensors and actuators can be used.
These devices have reasonable accuracy
for many applications including home,
greenhouse and commercial building
monitoring and control. Devices include
temperature, relative humidity and
light sensors, weather station, A-D/digital
inputs, counter/frequency inputs,
digital outputs (including mechanical
and solid state relay) and D-A outputs.
These are interfaced through our Modbus
to 1-wire gateway board called ICONIO.
- For higher speed or accuracy I/O,
third party serial Modbus RTU slave
units can be connected over RS232
or 2-wire RS485. There are many manufacturers
of such devices but we recommend www.automationdirect.com.
The following models will work: Terminator
field I/O with TK1-MODBUS interface,
DL05, DL06, DL205 with D2-250 CPU,
DL305 with D3-350 CPU and DL405 with
- X-10 power line carrier I/O. Can
be used to control 110V AC wall sockets
to turn devices on and off. Can also
receive X-10 signals from remote controllers.
- ICON is contained on a two-board
set that includes one ICON Controller
board and one ICONIO board.
- The top ICONIO board contains the
power supply, option switches, RS232
to RS485 converter and four Dallas
- The bottom processor board contains
the 133Mhz 586 processor with hardware
floating point, RAM memory, compact
flash disk, battery-backed real time
clock with watchdog reset, two RS232
serial ports and one 10BaseT ethernet
- The compact flash disk holds the
ICON software execution engine (loaded
to RAM at boot time), user written
data acquisition and control program
with HMI, historical data, html pages
(including standard and user written
help) and jpeg and gif pictures.
- The first serial port can be configured
for modem dial-in, Modbus or can control
a PowerLinc model 1132 RS232 to X10
interface unit to connect the ICON
to the power line for X10 control.
The second serial port is used to
connect the processor board to the
I/O board to read the option switches,
control the 1-wire busses and then
continue on to up to 31 additional
Modbus I/O devices from the RS485
- Structured with four program execution
loops. The scan timing for each loop
can be set in 1 mS increments. (Currently
the fastest feedback control is on
a 100 mS time base.)
- Each loop is further partitioned
into modules. Within each module are
inserted the necessary data acquisition
and control instructions to program
the desired task.
- Program variables are described
- Program instructions are described
Machine Interface (HMI) Capabilities
- The HMI is made up of many display
screens. There can be one HMI display
screen for each program module.
- The user can navigate from one
display screen to the next with screen
selection buttons located on the screens
or by right clicking the mouse and
selecting a screen name.
- A master alarm screen can be configured
to pop up when the master alarm trips.
This screen can also display sub alarms
or contain screen selection buttons
to display other alarm screens.
- An HMI screen consists of a colored
window with title. On this screen
can be located display objects to
display the values of variables, input
objects to set the values of variables,
colored frames with optional text,
screen selection buttons, help buttons
which bring up user created HTML pages
and jpeg or gif pictures.
- A screen may also contain a button
to bring up the historical data reporting
facilities. This allows the user to
view any data from the historical
periodic or event files in tabular
form, send the report to the printer
or save in a local PC file to be imported
into a spreadsheet such as Excel.
The periodic data may also be displayed
in strip chart graphical form.
- A screen may also contain a button
to allow the configuration of certain
selected parameters of an instruction
(such as alarm limits for the Limit
- The HMI text can be in any language.
- Variable values may be displayed
in text boxes as values (or values
mapped to text or pictures called
selection sets), meters, bar graphs,
LEDs and trend charts.
- Variable values may be set from
text boxes, slide switches (2 or 3
position), toggle switches (2 or 3
position), knobs (continuous or 2
to 7 discrete), sliders (continuous
only), buttons (2 position) or radio
buttons (2 to 32 discrete).
- Ability to create a data acquisition
and control program.
- The program is always executing,
even during program development, thus
preventing control loops from stopping
in critical situations.
- Full editing capability to insert,
delete, copy, move and configure instructions
and complete modules.
- Ability to insert modules from
other ICON programs saved on flash
disk. This allows a library of modules
to be developed. Then a new program
can be created by inserting the appropriate
modules from the library program on
- Ability to locate any instruction
by caption (instruction comment),
instruction type, Module or variables
- Save and load programs using the
local flash memory. Backups may also
be made to the host PC computer.
- General configuration parameters
may be set. These include loop execution
timing, logon passwords with priority
levels, TCP/IP connection information,
email addresses and periodic and event
historical data file configuration.
- Set program instruction breakpoints.
- Single step through instructions.
- View and modify variable values.
- The debug mode is the only place
where the program can be stopped.
The program will automatically start
execution when leaving debug mode
or if the web browser connection is
creation and configuration mode
- For each module the programmer may
create an HMI window. The window title,
size, position and background color
can be set.
- A drag and drop interface is used
to position and size HMI objects.
A snap grid size can be set to help
line up objects and create objects
of the same size.
- Each object contains a box size,
border type, box color, caption, font
size and font color.
- Complex objects can be created
by layering simple objects (full Z
order is maintained).
- Objects may be copied, deleted
or Z order changed.
- The frame object allows other objects
to be grouped together (for instance
to create the look of an instrument
panel). Once a frame with other objects
is created it can be moved, copied
or deleted as a single block.
- Each object can be assigned a priority
so that when users access HMI screens,
only objects within the proper priority
range, as defined for their password,
will be displayed on their HMI screens.
Historical Data Files
on Flash Disk
Each ICON can have four separate periodic data files.
Each periodic file can record from 1 to 128 different
items (bins) per record on a periodic time base. Each
file can have a different time base. The time base can
range from once per second to once per day in one second
steps. It is common to record instantaneous data once
per minute and average data once per hour.
The file is circular. You may specify the length of
the periodic file in records. At the end of the first
recording interval, data is written to record 0. At
the end of the second recording interval, data is written
to record 1. This continues until all periodic file
records have been written to. Now at the end of the
next recording interval, the data in record 0 is overwritten.
Each record also contains the date and time the record
was written. If the data is of long term importance,
it must be transferred from the ICONís periodic file
to another file located on your main computer.
Each ICON can have four separate event (alarm) data
files. Each event file can record from 1 to 128 different
events. An event is recorded when the low bit of the
Status variable is a 1 (odd values). Each event record
contains the date and time of the recording, the data
value, the status value and the event number.
The file is circular. You may specify the length of
the event file in records. The first time an event record
is to be written, it is written to record 0. The next
to record 1. This continues until all event records
have been written to. Now at the end of the next recording
interval, the data in record 0 is overwritten. If the
data is of long term importance, it must be transferred
from the ICONís event file to another file located on
your main computer.
Up to 128 different email recipients may be configured.
Each periodic and event file may be configured to send
data to all or a subset of these recipients. Data is
emailed when recorded to flash disk.
If the ICON is connected to the Internet such that
its IP address can change (dialup or DHCP DSL or cable
modems) you may also specify a block of recipients to
receive this new IP address each time it changes. This
way users can access the ICON even though it's Internet
IP address has changed.
The ICON has a file maintenance mode. This allows any
data, program, HTML or picture file to be either uploaded
from your PC to the ICON (for restoration) or downloaded
form the ICON to your PC (for backup). You may use these
functions to update the firmware of the ICON and save
and restore your application programs. You may also
delete, rename or copy files on your flash disk. Finally
you may select any file and determine its size in bytes
and date of creation or last access.
Group Production Software
A special version of the ICON software is available
at no charge. This software may be loaded on a general
purpose Linux PC (with a 2.2 or higher kernel). This
version does not allow you to set the date/time, use
the serial I/O, perform watchdog functions, use the
ICON configuration switches or allow you to reconfigure
networking since this would interfere with the normal
use of your Linux PC, but it does allow you to write
and debug ICON programs and HMI screens. You can simulate
your external I/O inputs by changing these values in
the debug mode under "Inspect variables" or with variable
objects you add to your HMI screens. A single Linux
PC can run many copies of iconexe simultaneously allowing
many developers to develop ICON programs simultaneously.