The Java Perception API Framework
This framework was built to experiment with different perception algorithms in a distributed ubiquitous computing environment (as envisaged in the Smart-Its project). It consists of a set of java classes which communicate using multicast and RMI technology and run autonomously on several computers. Sensor data is collected by using the Smart-Its sensor board connected via the serial port.It runs both on Linux and Windows platforms.
Download the sources:
java perception API: jpapi_rv1.01.jarserial line sensor board C-code: sensorboard_papi_rv1_20020604.zip
Documentation for the sensor board code: sensorboard_api_v01.pdf
Documentation for the java Perception API: javadoc.ps, javadoc1_01.zip, online version
Installing the Perception API:
The Java Perception API requires jdk 1.3 or newer available from Sun Microsystems .Further the Java Communications API is required to enable serial communication through java.
For the Java Communications API to work using Linux you need to install the RXTX engine .
- Unpack the zip files
- Program the sensor board with the hex file v0.hex
- Connect the sensor board to a seriel port (check that you have permissions to read from the port) (/dev/ttyS0, /dev/ttyS1 or COM1, COM2), Linux: you need to be in the UUCP Group to be able to write the serial lock file /var/lock. (For RedHad 7.2 and above group lock)
- run the demo programs
Linux:
cd installdirectory/
rmiregistry&
java org.smartits.simu.piboard.PICSmartItTest 2 /dev/ttyS0 & (2 is just an id for the SmartIt)
java org.smartits.simu.testing.SmartItLiteGui 7 (7 is also just an id)
Windows
start the rmiregistry
use COM1 or COM2 instead of /dev/ttyS0, don't forget to write COM1 in capital letters
- if you need to compile the sources don't forget to generate the stub/skeleton classes for the AbstractSmartIt.java : use rmic org.smartits.simu.api.AbstractSmartIt.
- the main functionality of a SmartIt is defined in the interface ICollectivePerceptionAPI.java
- the GUI only demonstrates a small set of the functionality
- for more details see the documentation above and the source code.
- The Tunnel program is used to connect two subnets. (eg. laptops
on wlan and pc's on ethernet)
How to build your own SmartIt program and further example programs:
todoThanks to:
Many thanks to Peter Amhof who implemented the java PAPI, Dirk Maier, Patrick Stuedi and David Banach for testing.For questions, comments and bug reports mail antifakos@inf.ethz.ch
| Last update: June 6, 2002 by Stavros Antifakos |
|