A solution to the Elevator challenge is continuing to move
forward at a reasonable pace. Here are some ideas that are
firming up:
1) Embedlets live inside of the Embedlet Container and
internally they contain no connections to entities outside
of the container aside from the JAPL peripherals that they
have references to.
2) All communication with external peripherals/devices/I/O
circuits/services/backend system/ etc. is done through an
independent library of Abstract Peripherals whose
interfaces are defined in a JAPL (Java Abstract Peripheral
Library). 'Peripheral' is being used in its most general
sense here. JAPL is to peripherals as JDBC is to databases
for any given peripheral type. For example, one JAPL
Abstract UART peripheral can be implemented using any
physical UART, a software 'bit banger' or any other
technology.
3) Embedlets communicate with each other using Embedlet
Events. Embedlets communicate with JAPL peripherals
primarily using direct references. If a JAPL peripheral
needs to send an event notification then this can be done
using a JAPL Interrupt Event (just like normal peripherals,
like a UART, would do).
Here is a diagram that shows a simple Embedlet application
based upon these principles:
http://embedlets.sourceforge.net/devdocs/diagrams/embedlets_v.05.jpg
This applications monitors how often a door is opened.
Each time the door is opened a buzzer sounds and after the
door has been opened 50 times these 50 samples are sent as
a group to a backend server for logging into a database.
The graphic solution that is being developed for the
elevator challenge is much more sophisticated than this but
the diagram does illustrate some of the Embedlet
technologies that are being evolved.
Comments on this diagram would be greatly appreciated.
Ted
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
|