Software

This project contains over 2'000'0000 lines of self written code

TMOR SOFTWARE INTRODUCTION

TMOR software is modularly built. A MySQL database builds the foundation. This database stores the captured values and provides data access to the single modules. Some of the modules can be distributed across different runtime environments - as described in JEE standard. Now lets take a closer look at each of the modules

SERIAL MODULE

The serial modules recives its commands (such as read sensor xyz, switch output port on/off) via the file system. It translates those file commands into a serial data stream and transmits it to thhe serial port. This serial module also listens to the serial port and registers events that are sent from the bricks network. Such events can be triggered from IO ports. It is the bottleneck for all physically caputred/transmitted data as these data need to pass though the serial receiver.

VERSION: 8

RUNS FOR: BASE STATION

RUNTIME: JAVA

Rating:

BATCH MODULE

Data needs to be captured on a regular basis. This module is responsible for the timely data collection from the sensor network. It reads the timing schedule from the data base and queries the network by communicating its requests via files to the serial module. The batch module itself receives its data from the serial module via the file system. Data is then validated, ruled upon (sometimes an alram needs to be trigged) and stored in the data base.

VERSION: 8

RUNS FOR: BASE STATION

RUNTIME: TOMCAT

DEPENDENCIES: SERIAL MODULE

DEPENDENCIES: SQL DATA BASE

Rating:

PRESENTATION MODULE

This module permits the user to interact with the TMOR system. The user can configure the following via the web interface:
- data collection (how frequently a sensor needs to be read)
- rules parametrization (what shall happen when this event /value is registered)
- notification features (how e.g. email, twitter, output port, is the user informed )
Next to that, the user can run a basic set of data analysis and can export data for further exploration in Excel. The presentation module can be deployed anywhere, as long as a connection to the SQL DATA BASE can be established. This fact might come in handy when performance is a key issue. The presentation module uses lots of CPU power and can certain requests be very slow.

VERSION: 8

RUNS FOR: BASE STATION

RUNTIME: TOMCAT

DEPENDENCIES: SQL DATA BASE

Rating:

ACCESS THE DATA STORE VIA ODBC / JDBC

The database running on the Base station can be accessed in numerous ways. Connecting your Microsoft Excel to the data store is done via ODBC and Data connections. More information on how to do it can be found here#, here# and here#.
You can add your own program logic by connecting your code to TMOR via JDBC. This fact also permits you to distribute parts of the Base station on several physical machines. This way the restircted Raspberry Pi processing power can be overcome by tranferring some tasks to other hardware. An example is shown and here#, and here#.

VERSION: 8

RUNS FOR: BASE STATION

RUNTIME: TOMCAT

DEPENDENCIES: SQL DATA BASE

Rating:

VERSION MIX OF COMPONENTS

TMOR is a complex software relying on other, 3rd party components and system. The following list shows which system with which version works for sure.
- Operating System Base station: Debian GNU/Linux 7.8 (wheezy)
- Java Version: java version "1.8.0_33" (build 1.8.0_33-b05) Java HotSpot(TM) Client VM (build 25.33-b05, mixed mode)
- DBMS MySQL: debian-linux-gnu (Debian)- compiled for debian-linux-gnu (arm7l)
- Tomcat Servlet Container: Apache Tomcat/7.0.62
- TMOR Presentation Module :8
- TMOR Batch Module: 8
- TMOR Serial Module: 8