GreenICE - May 2004 Survey

University of Bergen (UoB)
Dept. of Earth Science
Allé gt. 41, N-5007 Bergen, Norway
Tel: (+47) 5558 3600
Fax: (+47) 5558 3660
http://www2.geo.uib.no


26 May 2004: Latest news

  • Survey is finished. In all, 1800 shotpoints. This amounts to 50 - 60 km data. It's more then expected.
  • Lessons learned:
    • Do not set equipment in POWER ON position when power generator is switched on.  It's the other way - power generator first, then the equpment, one unit after another. Main computer & LCD ruined during this lesson.
    • Check loose boards etc. in equipment. We spent several hours before a fault of this kind was corrected.
    • Quality of gasoline for power generator: Check for unwanted substances, bring suitable filtering equipment.
    • Do not postpone testing of key components. The software was developed on desktop PCs - no problem with the A/D unit here. On our two laptops - both Fujitsu-Siemens Amilos - the A/D units could not be detected. So we had to use two (small) Dell desktop PCs with separate LCD - this equiment is not very well suited for field use ....

Some pictures - click to open new window:




 CONTENTS

  1. Introduction
  2. Survey Area
  3. Instrumentation
  4. Data acquisition operation
  5. Software

1. Introduction

"Greenland Arctic Shelf Ice and Climate Experiment. A proposal for a research project to Environment and Sustainable Development Subprogramme, Energy, Environment and Development Programme, European Commmission", PDF document, 410 kB.

Links:

Visit www.greenice.organd take a look at the web log.

Fig. 1: www.greenice.orgweb site

 


2. Survey Area

Fig. 2: GreenICE survey May 2004 target area. Ellesmere Island left, Greenland to the right

So you want to travel there. It's easy to get to Kangerlussuaq (formerly Sondestrom Air Base). If you're into science you'll stay at KISS. In case you didn't know, the Danes and Americans
have been very busy drilling into the icecap covering Greenland (and producing important results - look here, here, here, here or here), so the science infrastructure is pretty good.
Then you fly to Thule with a Hercules C-130. Now you're on your own, but do not despair, just contact Air Greenland and rent a Twin Otter, ask for OY-POF and its crew that simply
love rough landings on ice. Then you call the Canadians at Alert (pictures), perhaps they'll let you use their air strip ... and then it's only the last leg to the camp at 85 North, 65 West (295 on map).


3. Seismic Instrumentation

Several science programs are conducted in parallell. Univ. of Bergen, Dept. of Earth Science, is responsible for the seismic survey part.  The seismic system setup is shown in fig. 3:

GreenICE 2004 survey seismic instrumentation

Fig. 3: Instrumentation diagram. Power supply components omitted for clarity.

 

 

Item Description Spare unit(s) Comments / Links
1-A
1-B
Sonobuoy, 2 ea
Mod: SSQ-57A
2 ea  http://www2.geo.uib.no/sonobuoy/
2 Compressor -  
3 Airgun Controller (GUNCO)
Mfr: UiB, Dept. of Earth Science

Two guns can be fired independently. Control is from PC serial port -
using DTR and RTS control signals, these are opto-isolated from the gunco.

Each gun has a separate card. Adjust current pulse duration (between
20 and 100 ms, normally 35 ms) with pot. meter on front. A front mounted LED is lit when firing.

On the power supply unit the gun solenoid voltage can be adjusted between 20 and 80 Vdc.


Drawing of GUNCO power supply module. Click to enlarge.


Drawing of GUNCO fire unit. Click to enlarge.

(To-do list: Make proper drawings & part lists ...)
Read  Gunco
Mini-rack Front view
Power supply unit
Gun unit
4 Airgun, Bolt 20 cu in    
5 Airgun, Sodera 70 cu in    http://www2.geo.uib.no/equipment/seismic/airguns/sodera/test-index.html
6 GPS receiver, Mfr: Garmin, Mod: GPS35-HVS
Setup to output $PGRMF sentence, 1 Hz rate
1 ea  http://www2.geo.uib.no/equipment/misc/gps/garmin_gps35/garmin_gps_35.htm
7 PC, OS = Linux Fedora
Running GreenACQ data acquisition program.
Data stored in Seismic Unix format (modified SEG-Y). Filename is based on julian day + time stamp
to make it unique. Trace headers hold info on:
  • Julian day, year, time (UTC)
  • Shot coordinates, in decimal degrees (with 6 digits to the right of the decimal point) multiplied by 1,000,000.
    E.g: 60.384440 deg is stored as 60384440.
  • dt, ns, fldr, tracf, tracr, tracl (refer to this web page)
  • ep holds information on gun number (if shooting flip-flop)

There is also a nav data file with the same name but different extension.

On-line seismic QC provided by script executing Seismic Unix processing flows.
On-line shot point map possible by scripting Generic Mapping Tools (GMT).

1 ea  
8 A/D converter, 4 ch, 24 bit.
Mfr: Symmetric Research
Model: PAR4CH
1 ea
PAR8CH
 
9 Amplifier / Filter
More docs later
   
10 Sonobuoy receiver rack
Two active receiver units, two spares
More docs later
Two spare receiver units
Front view
Rear view
11 Hydrophone, with pre-amp
Mfr: Naxys, Bergen
P/N: 01103-001-P
Sensitivity: -156 dB rel V/µP
Bandwitdh: 5 Hz - 10 kHz
1 ea  

Table 1: Seismic instrumentation system components.


4. Operation

4.1 Install driver for A/D card

  1. Open X-terminal window and become superuser (type su.
  2. cd /usr/local/sr/parxch/driver
    Here is the A/D card driver. Both the 4- and 8-ch version of the data acquisition card use the same driver - distinguished by a command line parameter.
  3. ./rmlp
    This script kills other drivers that would like to occupy the paralell port.
  4. ./indriver SrParXch378 PAR8CH
    Lots of text output from this command - look for 'SUCCESS'. Use 'PAR4CH' if you're using the 4-ch card. By typing lsmod you can confirm that the driver is running.
  5. exit
    Leave superuser mode by typing exit.

4.2 Start data collection

In the following it's assumed there is a user 'yngve' on the Linux PC, and that the software is installed in this directory: /home/yngve/greenacq .

  1. With the X-server running, place X-terminal window on top of screen. Give it a size approx. equal to the GUI screenshot
    shown below. You don't need to be root to run the acquisition. If the X-server is not running the whole terminal window
    will be used; use ALT+FUNCTION KEY to open a new session.
  2. cd /home/yngve/greenacq
  3. First check the GPS data stream. Open serial terminal program by writing minicom. It should be
    configured for 9600 bit/s, 8N1 (8 data bits, no parity, 1 stop bit) - open help meny by typing CTRL+A and then Z,
    then P to enter 'Comm parameter' menu. Also ensure minicom reads from the correct comm port; CTRL+A, Z, O opens the
    'Configure Minicom' menu, then select 'Serial port setup' to verify. And remember; COM1 = /dev/ttyS0, COM2 = /dev/ttyS1;
    also the user 'yngve' must be given access to these port by a prior chmod command. Also set 'Hardware/Software
    Flow Control' to 'No'.
    If there are no data check with a RS-232 line tester with LED indicators - the RX LED should flash every second.

  4. The data acquisition program - called greenacq - takes several command line parameters. Get a listing of these
    parameters by invoking the program without any parameters: ./greenacq . Note that in the card type field you
    have to write PAR4CH if you're using the 4-channel A/D card instead of the 8-ch version.
  5. After accepting correct parameters the program starts searching for a valid GPS sentence (starting with '$'
    and terminated by CR). After receiving this GPS sentence the main GUI is drawn, and the airgun controller will
    be activated after 10 s.

4.3 Start QC program

  1. Open a new, small X-terminal window. Enter the command greenacq-qc. This program will listen for UDP network telegrams
    from the acquisition program, and print all telegrams received. It will invoke the qc.sh script every time a valid telegram
    is received. You can edit qc.sh while the acquisition and greenacq-qc program is running. Any changes you make in the
    qc.sh source will take affect when the next telegram arrives.
  2. Do not terminate greenacq-qc by CTRL+C. Instead terminate the acquisition program by typing ESC; this program will
    then put greenacq-qc to rest. If you use CTRL+C you might have to reset the PC - due to a network socket bug in the c code.
  3. The qc.sh script file makes use of the powerful Seismic Unix program package. There are two shell script variables that
    refers to data from the last shot, and data from the accumulated data file. Use of these variables is self-explanatory. When
    using Seismic Unix graphic-output commands you must determine window size and -position, to keep order in the overall GUI.

4.4 Recompilation

If it's necessary to recompile greenacq.c and greenacq-qc.c follow these steps:

  1. Backup last version.
  2. Use any editor; kate or kwrite will do, pico or mc (MidnightCommander in edit mode, press F4)
    in a non X-server environment.
  3. Recompile greenacq.c by typing
    make clean
    make all
  4. Recompile greenacq-qc.c by typing
    cc -o greenacq-qc greenacq-qc.c


5. Software

5.1 Overview

A diagram of software components is shown in Fig. 4.

Fig. 4: Software components of data acquisition system. Download OpenOffice original version.

The main program is greenacq.c. It collects serial data from the GPS and activates the airguns and A/D converter at regular intervals.
Recording parameters are given on the command line. It is terminal based and uses the curses library to position text on the screen.
The program writes three files:

  • last-shot.su =  As the name indicates, this is data from the last shot, in Seismic Unix format. The on-line qc program called qc.sh will
    (when activated) look for this file.
  • Accumulated seismic data, also in Seismic unix format. File is named automatically when program is started; a filename example:
    123-151259.su where 123 = Julian day and 151259 = UTC time of creation (hh:mm:ss).
  • Nav data file, each line providing these fields: Shot counter, time, date, Julian day, latitude, longitude.
    NOTE: Nav data file lat/long values have a better resolution then corresponding lat/long values in the Seismic Unix trace header fields.
    In the nav log file these numbers originate from double type (8 byte) floating point variables, whereas the Seismic Unix
    trace header lat/long values originate from float type (4 byte) variables. There is a small round-off error when the lat/long
    double variables are casted to float type variables. The reason is that Seismic Unix lat/long trace headers fields are specified
    as 4 byte integers. If you know c programming this is familiar stuff.
    It should, however, be possible to avoid this round-off error. The range of a 4 byte integer is from -2,147,483,648 to
    +2,147,483,647, so one should at least be able to have 6 digits available for the fractional part of the lat/long value
    (e.g. raw longitude data from GPS is in dddmm.mmmm format, where ddd=degrees and mm.mmmm is minutes with four digit fraction).
    We'll probably re-write Seismic Unix lat/long trace header values using the more accurate values in the nav data file.

We have tried to follow the Unix idea of linking smaller pieces together instead of creating a single 'monster' application.
The on-line QC program called linacq-qc.c is very loosely coupled to the greenacq.c program - a UDP telegram is the only method
of communication. The sole task of the greenacq-qc.c program is to pick up the telegram, parse it and start the qc.sh bash script,
providing the name of the accumulated seismic data file as input parameter.

The data collecting program greenacq.c will issue a UDP telegram after each recording. UDP is a connectionless protocol,
which means that the sender doesn't know if anybody listens for the telegram at all. There is a risk of loosing data since
there is no receipt or retransmission in case of failure. However, UDP between computers on the same network very rarely fails,
and UDP between two programs on the same computer should never fail.
The UDP telegram has this structure:

  • Name of log Seismic Unix datafile
  • Shot counter
  • hh:mm:ss --> hh=hour, mm=minutes, ss=seconds
  • dd/mm/yy --> dd=day, mm=month, yy=year
  • Julian day
  • Latitude (decimal degrees)
  • Longitude (decimal degrees)
The qc.sh bash script is really a playground for all kinds of Seismic Unix, GMT or gnuplot commands. It is started from greenacq-qc.c
each time a UDP telegram is received. Input parameter is the name of the file holding accumulated seismic data. By convention,
the data from the last shot is stored in a file called last-shot.su. Thus, both accumulated and most recent data can be processed.
It can be edited while the system is operating, and any changes will be visible from the next shot.


5.2 Overall structure of core program greenacq.c

The greeanacq.c program consists of a main loop and three threads. The overall structure is illustrated in figure 5.




Fig. 5. greenacq.c overall program structure. Download OpenOffice original version.



5.3 GUI - graphical user interface

A screenshot of greenacq.c user interface is shown in fig. 6.

Fig. 6. Screenshot user interface greenacq.c program.

There are some status fields and a scrolling text area where shotnumber, time/date (222 is Julian day) and latitude/longitude are recorded. If there are problems with the X-server
the program can run in terminal mode; ok, it's unconveniant because you'll miss the QC display, but at least data collection continues.



5.4 Software download and listings

You know how it is - the tendency to underestimate the work that's needed. It was pretty hectic here in the last days before departure. If you spot any errors in the software
we would be grateful for being notified, please drop a mail to ole.meyer at geo.uib.no.

Use this software at your own peril.

  • greenacq.c
  • segy.h
  • datemath.h
  • greenacq-qc.c
  • qc.sh

Download tar file of greenacq software. Get drivers for PARxCH card from www.symres.com.

5.4.1 Listing of greenacq.c

Listing of software/greenacq.c. Download file by clicking here.

	

5.4.2 Listing of segy.h

Listing of software/segy.h. Download file by clicking here.

	
	

5.4.3 Listing of datamath.h

Listing of software/datemath.h. Download file by clicking here.


	

5.4.4 Listing of greenacq-qc.c

Listing of software/greenacq-qc.c. Download file by clicking here.

	
	

5.4.5 Listing of qc.sh

Listing of software/qc.sh. Download file by clicking here.

	
	
	

Download from CVS server.