Visualization of sensor network applications in simulated environments - Kummary, Samuel Benny (Kansas State University, 2009)
Distributed applications that operate on networks of sensors to gather data are important in real world. TinyOS is an operating system designed to support wireless sensor networks. . It has interfaces and components, which provide functionalities for sensing parameters in the environment, packet communication and computation. These sensors have multiple purposes such as gathering different kinds of data and can be deployed in distributed networks to gather important information. NesC is a language which is used to write sensor applications for TinyOS which are deployment on the sensors. TinyViz is an application which simulates the NesC applications on a computer so that the applications can be tested first in the simulation environment and then can be tested on the sensors and deployed. However, TinyViz by default represents a static and closed environment where the conditions simulated may not be realistic. This project aims at providing real-world scenarios on the platform TinyViz, by communicating with TinyViz using Tython, a script language for this specific purpose. In terms of sensor network applications, events are classified into categories, which can be mapped to tangible parameters. This project takes as input the real-world parameters as input by the developer of the NesC applications in the form of a configuration file and converts them into implementable threads that run in parallel with TinyViz and keep sending instructions to the TinyViz which then simulates real-world environment. Thus, it helps simulate NesC applications in a realistic environment even before the real deployment. This is packaged as an Eclipse plug-in for portability and ease of implementation, using which developers of NesC applications can give as input configuration and obtain the files required for simulation. The implementation is done in java, using ‘Tython’.
Keywords: Simulation using Tython; Visualization; Communicating with tinyviz using tython; Tython; Computer Science (0984)