SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets...

20
SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim, Department of Geoscience University of Bergen Norway

Transcript of SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets...

Page 1: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISLOG Linux

presented at the

WORKSHOP

High Quality Seismic Stations and Networks for Small Budgets

Volcan, Panama 8-13. March, 2004

by

Terje Utheim, Department of Geoscience

University of Bergen

Norway

Page 2: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISLOG LinuxSEISLOG Linux

DesignDesign

PthreadsPthreads

Data input from serial ports and InternetData input from serial ports and Internet

SocketsSockets

Java parameter programJava parameter program

Desktop and Laptop versionDesktop and Laptop version

Embedded versionEmbedded version

No licensesNo licenses

Page 3: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

DesignDesign

The main program reads the parameter-fileThe main program reads the parameter-file

Initializes data-structuresInitializes data-structures

Creates directory structuresCreates directory structures

Starts threadsStarts threads

Data structure contains parametersData structure contains parameters

Data areasData areas

Pointers to memory ring-buffersPointers to memory ring-buffers

POSIX threads, or pthreads, allow multiple POSIX threads, or pthreads, allow multiple tasks to execute concurrently within the same tasks to execute concurrently within the same program.program.

Main program

thread

data-structure

thread

thread

thread

thread

thread

thread

Page 4: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

ThreadsThreads

POSIX threads, or pthreads, allow multiple tasks to execute POSIX threads, or pthreads, allow multiple tasks to execute concurrently within the same program.concurrently within the same program.

Threads share same address spaceThreads share same address space

All in one programAll in one program

SEISLOG threads: digitizer drivers, filters and detection, writing to SEISLOG threads: digitizer drivers, filters and detection, writing to memory ring-buffer, writing to disk ring-buffer, socket threads for memory ring-buffer, writing to disk ring-buffer, socket threads for communicationcommunication

Page 5: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Data Input from serial ports and InternetData Input from serial ports and Internet

Some threads are drivers Some threads are drivers reading digitized data from reading digitized data from different digitizers.different digitizers.

Data is normally read from Data is normally read from serial ports.serial ports.

Data can in some cases be Data can in some cases be read from Internet.read from Internet.

Several digitizers can be Several digitizers can be connected to different serial connected to different serial ports.ports.

Digitizers connected to Internet Digitizers connected to Internet depend on stable and fast line.depend on stable and fast line.

Main program

driver SADC

C data-structure

thread

driver RD3

driver GBV

thread

thread

thread

Serial port

Internet

Serial port

Page 6: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SocketsSockets

Form of communication between Form of communication between main process and other main process and other processes on same CPU processes on same CPU (localhost) or processes on (localhost) or processes on remote CPU.remote CPU.

Communication through IP Communication through IP number and socket port number.number and socket port number.

Main program

thread

C data-structure

thread

Plotting socket thread

Parameter socket thread

DPL.java

Monitor socket thread

MON.java

DPL.javaMON.java

Internet orLocal net

Internet orLocal net

Page 7: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Threads and Data-flowThreads and Data-flow

Digitizer thread

wrt_mem thread

Digitizer thread Digitizer thread

10 second buffer 10 second buffer 10 second buffer

wrt_mem threadwrt_mem thread

20 minute buffer 20 minute buffer20 minute buffer

wrt_rng thread

disk ringbuffer

wrt_rng thread

disk ringbuffer

wrt_rng thread

disk ringbuffer

detection thread

wrt_evt thread

S-files + waveform

server socketmon_sei thread

server socket

mon_sei thread

server socket

mon_sei thread

server socket

plt_sei thread

server socket

plt_sei thread

server socket

plt_sei thread

server socket

detection thread

detection thread

Socket utillities to monitor SEISLOG remotely or locally, radio or Ethernet

Page 8: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

MONITORMONITOR

Page 9: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Desktop/Laptop versionDesktop/Laptop version

All SEISLOG core routines written in C and identical for all platformsAll SEISLOG core routines written in C and identical for all platforms

Utilities for monitoring, graphics and parameters written as client Utilities for monitoring, graphics and parameters written as client sockets communicating with SEISLOG server sockets.sockets communicating with SEISLOG server sockets.

Utilities written in JavaUtilities written in Java

Disk ringbuffer files, event files and S-files written in SEISAN format Disk ringbuffer files, event files and S-files written in SEISAN format in SEISAN database structurein SEISAN database structure

Page 10: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Embedded systemEmbedded system

What is an ”embedded system” ?What is an ”embedded system” ?

Hardware and software which forms a component of some larger Hardware and software which forms a component of some larger system and which is expected to function without human system and which is expected to function without human interventionintervention

A typical embedded system consists of a A typical embedded system consists of a single-board single-board microcomputermicrocomputer with with software in ROMsoftware in ROM, which starts running some , which starts running some special purpose application program as soon as it is turned on and special purpose application program as soon as it is turned on and will not stop until it is turned off (if ever).will not stop until it is turned off (if ever).

An embedded system may include An embedded system may include some kind of operating systemsome kind of operating system but often it will be simple enough to be written as a single program. but often it will be simple enough to be written as a single program. It will not usually hava any of the normal peripherals such as It will not usually hava any of the normal peripherals such as keyboard, monitor, serial connections, mass storage, etc. or any keyboard, monitor, serial connections, mass storage, etc. or any kind of user interface software unless these are required by the kind of user interface software unless these are required by the overall system of which it is a part. Often it must provide real-time overall system of which it is a part. Often it must provide real-time respons.respons.

Page 11: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISLOG embedded versionSEISLOG embedded version

Stripped Linux operating system (<10Mb)Stripped Linux operating system (<10Mb)

No disk to reduce power consumption and noiseNo disk to reduce power consumption and noise

No development tools, compilers, editors etc.No development tools, compilers, editors etc.

Single board computer, low powerSingle board computer, low power

SEISLOG program identical for all platformsSEISLOG program identical for all platforms

Operating system (Linux) and application software (SEISLOG) Operating system (Linux) and application software (SEISLOG) stored in bootable compact flash memorystored in bootable compact flash memory

Support for communication through Ethernet or WirelessSupport for communication through Ethernet or Wireless

Storage of recorded data in separate compact flash or USB stickStorage of recorded data in separate compact flash or USB stick

Page 12: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Example configuration SEISLOG EmbeddedExample configuration SEISLOG Embedded

PC/104 200MHz

Bootable Compact Flash root file system Linux SEISLOG

Wireless LAN

Digitizer USB stick

Optional

Ethernet

RS232 USB

Page 13: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Embedded SEISLOGEmbedded SEISLOG

Page 14: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

Embedded SEISLOG power consumptionEmbedded SEISLOG power consumption

Voltage supply: 5 VoltsVoltage supply: 5 Volts

PC/104 with compact flash for OS and SEISLOGPC/104 with compact flash for OS and SEISLOG 4.25 W4.25 W

PC/104 with compact flash for OS and SEISLOGPC/104 with compact flash for OS and SEISLOG

and Wireless LAN radio mounted but not transmittingand Wireless LAN radio mounted but not transmitting 4.46 W4.46 W

PC/104 with compact flash for OS and SEISLOGPC/104 with compact flash for OS and SEISLOG

and Wireless LAN radio mounted and transmittingand Wireless LAN radio mounted and transmitting

monitor and keyboard connectedmonitor and keyboard connected 5.75 W5.75 W

Digitizer on 12 Volt , SADC10 Digitizer on 12 Volt , SADC10

Page 15: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISINFOSEISINFO

Seismological Information System. Seismological Information System.

Configure option. Location of windows, refresh rate and which Configure option. Location of windows, refresh rate and which options can be stored in a configuration file for identical view at next options can be stored in a configuration file for identical view at next startup. startup.

USGS World map of recent seismic activity.USGS World map of recent seismic activity.

USGS Detailed map with location of last earthquake.USGS Detailed map with location of last earthquake.

Norwegian national network. Map with recent events.Norwegian national network. Map with recent events.

Norwegian national network. Detailed map with most recent event.Norwegian national network. Detailed map with most recent event.

Seismograms from world wide LP network.Seismograms from world wide LP network.

Slideshows.Slideshows.

Video clip.Video clip.

Page 16: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISINFOSEISINFO

Page 17: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISINFOSEISINFO

Page 18: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

SEISINFOSEISINFO

Page 19: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

NETLOGNETLOG

SEISNET creates logg file when accessing different stations.SEISNET creates logg file when accessing different stations.

NETLOG interprets logg file.NETLOG interprets logg file.

Status of each station is displayed with:Status of each station is displayed with:

NameName

Flag for number of connections, extracts and waveform transfersFlag for number of connections, extracts and waveform transfers

Flag for time-difference and GPS synchronizedFlag for time-difference and GPS synchronized

Flag for disk spaceFlag for disk space

Flag for station up-timeFlag for station up-time

The flags have colored indicators to indicate:The flags have colored indicators to indicate:

Error – redError – red

Warning – orangeWarning – orange

OK – greenOK – green

No information - gray No information - gray

Page 20: SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama 8-13. March, 2004 by Terje Utheim,

NETLOGNETLOG