In this example of remote sensor monitoring, the AG's
shared
application mechanism is used to distribute live sensor data to the
shared application participants. The sensor data consists of
temperature outputs from four thermocouples attached to a Weeder Technologies WTTCI-M
thermocouple input module, which is connected to a computer via its
RS-232 port.The software on the machine hosting the WTTCI-M board consists of two parts:
- a python module, Weeder.py, to communicate with the WTTCI-M board via the machine's RS-232 port
- a python program, VenueThermoServer.py,
which
- creates a shared application in an AG venue (nominated as a
startup option)
- periodically retrieves temperature data from the WTTCI-M board and makes the data available to any participant in the shared application session.

The temperature data is now accessible by joining the shared application session in the nominated venue. Note that entry to a venue may be restricted (by Globus or SSL certificates for AG2 and AG3 respectively), providing a secure means of making the sensor or instrument data available to a restricted audience.
To join the shared application session as a "client", the VenueThermoClient shared application must first be installed. The shared application is then joined by either double-clicking the session's entry in the VenueClient's "Application Sessions" section, or right-clicking on it and selecting "Open" from the resulting drop down menu. The name of the session is set when the VenueThermoServer is started; if no name is given as a startup parameter, the default name "Remote THERMO" will be used.
A few seconds later, all being well, the VenueThermoClient interface should appear.

The VenueThermoClient interface consists of a display of the temperature data from each of the four thermocouples attached to the Weeder WTTCI-M board. In the instance shown here, the window frame identifies the thermocouple data as being generated at a machine named seivers.vislab.uq.edu.au. The user is able to select a display of the data in either Celsius or Fahrenheit units. In the status bar at the bottom of the window frame, the thermocouple types are shown on the left. On the right of the status bar, the date and time of the last received data is shown.
Of course we are only monitoring trivial data in this project. However the general methodology used here could apply to almost any instrument or sensor data imaginable. Combined with the AG's video and audio streams, we have a powerful platform for remote instrument and sensor monitoring.
Downloads
| for AG
Toolkit 2.4 |
for
AG Toolkit 3.0.2 (or later) |
|---|---|
| VenueThermoClient: | VenueThermoClient: |
| VenueThermoServer: |
VenueThermoServer source code: |
| VenueThermoServer binary
packages: |
VenueThermoServer binary
packages: |
Please note that to run the VenueThermoServer, you will need to have installed the pyserial package. This is available via the pyserial website. The pyserial package is not required to monitor the data output using the VenueThermoClient in an AG shared application session.
Acknowledgements
The VenueThermo project was developed at The University of Queensland Vislab, with assistance from the Queensland Cyber Infrastructure Foundation (QCiF) and the Australian Partnership for Advanced Computing (APAC)Any comments or suggestions to c.willing (at) uq.edu.au
