Earth Monitor (EMON) Seismic Monitoring and Display Software for the PC Version 7.0a January, 1998 Ted Blank 954 Foxswallow Ct. San Jose, CA 95120 ted_blank@pobox.com Disclaimer The software in this package is provided free of charge for non-commercial purposes only. It may be copied and redistributed without restriction. Please report all bugs to the author. This documentation is distributed with version 7 of the software. Introduction The personal computer has been used productively in laboratories as a data collection device for many years. Now, amateur scientists can also take advantage of the power of the personal computer. If you have a PC and an interest in the Earth sciences, you might want to consider setting up a seismic monitoring station at home or in a classroom. Excellent results can be obtained with a home-made seismometer, constructed from readily available materials. Several Scientific American articles over the past 15 years (see the bibliography) give instructions for building various types of seismometers. Mercury tilt-meters, pendulum-based designs, and capacitance-based designs are just some of the approaches that have been tried with excellent results. All of the early amateur seismograph designs used some sort of chart or drum recorder to make a permanent record of an amplified earthquake signal. With the EMON software package, your PC can do the job of the chart recorder- and much more! Saving earthquake records to disk allows the power of the PC to be applied to the data analysis - a task at which the computer excels. What is the EMON package The EMON package is a suite of DOS-based programs which will let you turn your PC into an amateur seismic station. You will be able to collect, display, analyze and print seismic data from any home-made or professional seismometer using any one of several commercial digitizing boards costing in the neighborhood of $100-200. The EMON software package is distributed free of charge via the San Jose Public Seismic Network web site. The URL for the site is http://www.seismicnet.com. What are the differences between EMON and SDR? SDR (Seismic Data Recorder) is another free program to record seismic data. It saves data in the same format as EMON (plus some other formats) but requires Windows and only works with the the A/D board from Larry Cochrane. If your data collection PC is not capable of running Windows you should use EMON. If it is capable of running Windows, you have a choice of using SDR or EMON for your data collection. Where to find a seismometer While you might salvage a seismometer from a local college or research laboratory, don’t dismiss the homemade idea prematurely. Building one can be lots of fun and makes an excellent home or classroom project. It is decidedly low-tech in nature, and inspires rich possibilities for further exploration. Plans for building your own seismometer and amplifier can be found in articles listed in the Appendix as well as on the Public Seismic Network web site. The EMON Software Package The collection of programs in this package will let you view the signal from your seismometer in real time, save earthquake recordings to disk, display and analyze the earthquake records, and zoom in on interesting parts of the earthquake records. print part or all of an earthquake recording It is the PC of course that makes the last three capabilities possible. What kind of PC should I use? The same PC can be used for both data collection and analysis, or you can use two different PCs. The PC you use for data collection does not need to be particularly powerful. In fact, an old IBM PC/XT (the first PC to have a hard drive) or AT with an internal or external 3 ½” floppy drive installed is just about the perfect data collection machine. The hard drive allows lots of data to be collected, and the floppy drive allows you to archive the important files or share them with friends. When it is time to display and analyze the data though, a faster machine (minimum of 286 class, but the faster the better) makes this part much more enjoyable. If you want to display your data on a different PC than the one on which it was collected, just make sure the two machines have at least one size of floppy disk in common, or some sort of serial or parallel port connection which allows file transfer. Also, remember to keep good written records. From the day you start monitoring for earthquakes, keep a log or journal. Anytime you make any change to your system, write down what you’ve done in your log. This way you and others will know what has changed. You might want to start a folder for each significant earthquake you record. Keep a printout of the record in the folder, along with a disk containing a copy of the quake file. You might also want to put a map on the wall of your station with a pin in the location of earthquake you’ve recorded. Installing EMON To install the EMON software, follow the instructions below. You will need access to PKUNZIP to unpack the files. 1. Create the directory in which the software will reside. E.g. MKDIR C:\EMON 2. Place the floppy disk in the computer and copy the file EMON.ZIP to the directory you just created, e.g., COPY A:EMON.ZIP C:\EMON 3. Make the directory you just created the current directory, e.g. CD C:\EMON 4. Unzip the file with the command PKUNZIP EMON.ZIP. 5. Edit and customize the EMON.OPT and QUAKEVU.INI files as described below. Package Contents The EMON package consists of the following software. File Name Description EMON.EXE Monitors, displays and records the output of the seismometer EMON.OPT Options file for EMON; edit with any text editor which does not add TABs to files QUAKEVU.EXE Displays data files on CGA graphics screen; computes P-S interarrival time and distance; allows user to enter comments QUAKEVU.INI Initialization file for QUAKEVU EL.EXE (EmonList) Displays list of EMON quake data files in any directory; allows you to invoke QUAKEVU from a full screen menu MSPLICE.EXE Program to splice multiple EMON quake data files into a single file HOWFAR.EXE Program to compute distance between any two locations on the earth’s surface given their latitude and longitude. HOWFAR.LOC File containing your station’s latitude and longitude; saves typing this information in every time you use HOWFAR program. EMON7.DOC This file (MS Word 2.0 document) including screen captures of programs. EMON7.WRI This file saved as Windows WRI file EMON7.TXT This file (text format) READ.ME Instructions for printing, unzipping etc. Your Seismic Station: The Basic Components To assemble a basic seismic monitoring station you will need the following components. Each is discussed in more detail later. PC Software Seismometer Amplifier/filter Analog-to-Digital converter card Cables Someplace protected from weather to put the seismometer and PC Monitoring Seismic Activity with EMON Figure 1. Display of EMON main screen showing data trace and three saved files. The Earth Monitor (EMON) program is designed to run continuously in the PC. It periodically checks the input from the seismometer and amplifier for earthquake-like activity. An earthquake data file is saved to disk only when an earthquake signal is detected. An options file called EMON.OPT is read at startup. You can change the parameters that control saving data by changing entries in the OPT file. You can collect data from up to three seismometers simultaneously. A separate quake file will be written for each device. Figure 1 shows a sample of how the EMON screen appears when it is monitoring for earthquakes. Notice that three quake files have already been saved to disk, and their names appear in the space at the bottom of the screen. If your PC has graphics capability (as this one did), the box at the upper right displays a real-time trace of the output of the seismometer. However, EMON can collect data on a PC which does not have graphics capability. You will just need to use a different PC to display the data later. Customizing EMON: the OPT file Earthquake recording stations differ in more than just their location. For instance, a quiet location in the country could record small, distant events without worrying about interference from local noise, whereas a location in a large city might need to more carefully discriminate earthquake activity from earth movements due to trains, subways or the like. You customize EMON for the characteristics of your location through an options file called EMON.OPT. You can edit this file with any ascii text editor. Do not use word processors - they can insert tabs into the file making it unreadable. The EMON.OPT file is read from disk when the program starts. It should be in the same directory as the EMON program. In the OPT file you give EMON information like the local noise level (used to discriminate true seismic activity from local noise). Other information you supply includes the three character ID of your station (which becomes the file extension on all saved files) and the disk (or directory) to which you want the quake files to be saved. You can also change some of these same parameters on the screen after EMON has started. However, changing a parameter on the screen does not make the change permanent. You must edit the EMON file and make the same change if you wish it to be effective automatically every time the EMON program starts. Figure X on page explains each parameter in the options file. Displaying earthquake recordings with QUAKEVU Figure 2. QUAKEVU screen showing identification of P- and S-wave arrivals. The QUAKEVU program displays the data files created by EMON. Figure 2 shows a sample of the QUAKEVU screen. QUAKEVU allows you to identify the P and S wave arrivals on the screen by moving small pointers via either the mouse or the keyboard arrow keys. As you pick out the P and S wave arrival points, QUAKEVU then automatically calculates for you: the time the P wave arrived at the recording station the time the S wave arrived at the recording station the time the quake occurred (the Origin time) the distance from the recording station to the epicenter of the quake along a great-circle arc (in kilometers, miles and degrees) This information is updated every time you move either the P or S pointers. Notice that QUAKEVU does not calculate the location of the earthquake, just the distance from the recording station. You will need to obtain distance calculations from at least three stations in different parts of the globe, and use triangulation on a map or globe to figure out the actual location. This makes it fun to trade quake files with other people or groups who also monitor earthquakes. The easiest way to do this is to use the PSN web site. Instructions are available at the site. QUAKEVU will also allow you to save a subset of the data to a smaller file for easier transmission across telephone lines. During the process of saving the subset file you can also add a comment to the file being saved (up to 60 characters) as well as the true origin time, depth, location etc. if you know them. QUAKEVU will work only on a PC with a Color Graphics Adapter (CGA) and graphics display, or its equivalent. QUAKEVU uses the CGA in “hi-resolution” (640x200) mode,which is equivalent to “SCREEN 2” in BASIC. (In this mode only black and white areavailable.) Most computers with any type of graphics capability support this graphics mode, since it has been around almost since the PC was invented. You can display from one to three recordings of the same earthquake on the screen at the same time. Note: A Windows program called WinQuake is available from the PSN web site. It does require Windows but it has much more function than QUAKEVU, including high quality printing to laser printers. Many users who collect data with EMON display it on a different PC using WinQuake. Each earthquake data file contains reserved space for a 60 character comment describing the contents of the file. QUAKEVU will allow you to to insert text into this reserved area when you save a file. Once a comment area is filled in, QUAKEVU displays it on the screen when the file is displayed. This allows a limited form of self-documentation for the data files. For instance, you might want to add a comment like “ML6.6 Solomon Islands 11.0S 163.5E”. This would remind when you displayed the quake file of the magnitude (on the Richter scale), the location, and the latitude and longitude of the quake being displayed. Note that the recording station name (up to 15 characters) is already saved in the file in a different place, so there is no need to add that to the comment. You can get information on the true location of the earthquake from news reports, via a call to the U.S. National Earthquake Information Center (NEIC) computer bulletin board, or from the World Wide Web. Within a few hours of a major quake, the NEIC in Golden, Colorado, makes a preliminary determination of its location using data just like you will be collecting from stations all around the world that recorded the event. An example of one of their messages is shown below. It is sent out as soon as possible to assist disaster relief agencies around the world in responding quickly to major earthquakes. Location of smaller quakes are usually calculated and available within 1-2 weeks after the event. U.S. GEOLOGICAL SURVEY NATIONAL EARTHQUAKE INFORMATION CENTER World Data Center A for Seismology the following is from the united states geological survey, national earthquake information center: preliminary hypocenter for earthquake of 1993 jan 19, SEA OF JAPAN: latitude 38.7 degreesnorth longitude 133.5 degrees east origin time 14 39 27.4 utc depth 460, magnitude 6.0 mb. stations used: mat p 144044.0 smy p 144507.9 adk p 144552.9sdn p 144707.8 brw p 144719.7 tta p 144721.5 svw p 144724.9ima p 144727.3 ap 144845.3 bgl p 144736.2 crp p 144736.5ap 144907.5 cp2 p 144736.8 kdc p 144738.8 ap 144850.9...tuc p 145126.6 alq p 145130.1 ap 145312.8 wmok p 145148.8tbr p 145208.0 nav p 145214.4 bla p 145216.3 cvl p 145216.7ceh p 145223.6 prm p 145225.3 jsc p 145226.7 lhs p 145226.9 Customizing QUAKEVU startup: the INI file Different users found they used QUAKEVU in different ways. Some with slower PCs start in QuickDisplay mode, zoom in on a portion of the file, then display at full resolution. Others like to start immediately identifying the P and S waves to get an estimate of distance. Since there was no way to satisfy all these different requirements, QUAKEVU V6 now includes a file called QUAKEVU.INI which tells QUAKEVU how to start up. After starting the program you can continue to use the keyboard or mouse as before. You can edit the INI file with any ASCII text editor. The contents of the file are self- explanatory. Utility programs Several utility programs are included to assist in handling the files after they are collected. These programs and their associated files are described below. EL.EXE (EMONList) EL.EXE is the EMONList program. EL ? gets you help. Just supply a filemask in standard form, like *.* or 97*.* and EL will find all matching files in the current directory (or the directory you specify). It lists the peak sample, date and time sampling started, and the first 40 characters or so of the comment. Hit enter on any line to view that file with QUAKEVU. You can also use the UpArrow, DownArrow, PgUp, PgDn, Home and End keys to move around the list. Pressing the Del key will erase the file from disk (after giving you a chance to confirm). Deleting a file will remove it from the on-screen list as well. If you have several files for the same quake from different locations, you can view all of them on the same QUAKEVU screen. To do this, mark up to three files with the spacebar. An “X” will appear in front of the name of the file. When all files have been marked, press enter - QUAKEVU will then load all three and display them on the same time scale. HOWFAR.EXE The HOWFAR program computes the great circle distance between any two points on the earth given the latitude and longitude of each. You will be prompted for both sets of coordinates. However, if you create a file called HOWFAR.LOC containing the latitude and longitude of your station, the HOWFAR program will use that information as one of the locations and you only need to enter the second one. The HOWFAR.LOC file must be in the same directory as HOWFAR.EXE. The format of the HOWFAR.LOC file is: LINE 1 - Text describing the place that this set of coordinates refers to. For instance, you might put something like: XYZ School, Woonsocket, RI LINE 2 - latitude in degrees, e.g. 43.52. Use negative numbers if you are SOUTH of the equator, positive if you are NORTH of the equator. LINE 3 - longitude in degrees, e.g. 108.16. Use negative numbers if you are in the half of the world WEST of Greenwich. Example for Tokyo, Japan station at 35.65 N latitude and 139.72 E longitude: Tokyo, Japan 35.65 139.72 MSPLICE.EXE A past 7.8 quake in Bolivia released an enormous amount of energy. At one user’s station, 6 EMON files were saved from this one great quake. Rather than dealing with these files one at a time, the MSPLICE program allows you to splice together two or more data files which, back-to-back, span a long event. All sets of data are are combined into a new file spanning the entire event, although at a lower resolution. The new file contains 25000 samples like all EMON data files. Hardware Up to now we’ve talked only about the software side of running a seismic monitoring station. However it is important to have some familiarity with the hardware required to interface a PC to the “outside world”. The three pieces of hardware we will discuss are the PC clock, the analog-to-digital converter (ADC) card, and the signal amplifier/filter. PC Clock An accurate PC clock is a must for seismic data collection. Scientists have agreed that all monitoring stations will use Coordinated Universal Time (UTC, formerly known as Greenwich Mean Time). You should therefore keep your PC set to UTC time rather than local time. In the U.S.A., a call to 1-900-410- TIME will cost you 50 cents and will allow you to set your PC clock to the U.S. Naval Observatory Master Clock. If you have a short-wave radio, the British Broadcasting Company (BBC) accurately marks the time on the hour. Also, several packages are on the market to continuously synchronize your PC clock to the WWV time signal which can be received in most of the continental US.Beware of daylight savings time - it may affect the number of hours between your time and UTC. If you find that your PC clock does not maintain the correct time, there may be add-in clock boards available which keep excellent time. The factory clocks in some olderPCs may drift as much as a minute a week. You should try to keep your PC within one second of true UTC. Shareware programs like RighTime and AccuSet, available on Compuserve and other bulletin board systems, can also help your PC stay “on time”.Larry Cochrane’s A/D card included an option for accurate timekeeping. Analog-to-Digital Converter (ADC) Card The job of an ADC card is to convert an analog signal from the outside world, usually a voltage, into a digital signal - a range of numbers that a computer can manipulate. (This process is also known as “digitizing”). Low voltage = small number, high voltage = big number. (Sometimes the range is from a negative number to the same positive number.) Each card has a different “smallest” and “biggest” number. Here, as in most places, you get what you pay for. An inexpensive ADC card might convert a range of input voltages (say, 0 to 5 volts) into numbers from zero to 255. Zero would represent the lowest voltage and 255 would represent the highest voltage. A more sensitive (and expensive) ADC card might be able to divide the same 5-volt range into many more than just 255 separate steps. For seismographic work you should choose only an ADC card which can convert a voltage range into a range of at least 4096 different numbers. A card with this capability is called a “12-bit” card, since it’s output has 12 “bits” (binary digits) of data, which gives 4096 possible combinations of ones and zeros. “13-bit”, “14-bit” and “16-bit” cards are also available, but will probably only be worth the extra money in very quiet locations. The ADC card usually fits into an expansion slot on the PC main circuit board. Since there may be several cards installed, all cards are designed to have different addresses and to respond only to commands directed to that address. The EMON program uses this scheme to send commands to the ADC card. So how do you tell EMON the address of your ADC card? Addressing Each add-on card in a PC is designed to respond to commands to a specific address. However, different manufacturers don’t always know which addresses other manufacturers are using. Most companies now put switches on their cards so that the user (that’s you!) can choose another address for the card if the address set at the factory is already in use by another card in your PC. You will need the manual supplied with the ADC card to change the switches from their factory setting. However, most of the time you can use the address set at the factory. You will find this in the documentation that came with the card. ADC card designers are very creative. There are many different types of ADC cards on the market with many different features. EMON currently supports several different types of cards which are listed in the EMON.OPT file which came with your copy of EMON. For our use we can group them into the following categories: Single-address, single-channel Multi-address, multi-channel Single-address, multi-channel Each section below includes an example of how you might set up the EMON.OPT file for that type of card. Each example assumes you want to monitor more than one seismometer. If you have only one, just set the second and third seismometer addresses to zero and EMON will ignore them. In EMON version 6.1 and higher, use the FirstSeismometerActive (etc.) options in the EMON.OPT file to control how many channels EMON will sample from. Starting in version 6.1, only these parametersand not the zero address controls the devices which are monitored. This is because some cards can use three zero addresses and only change the channel being sampled. Single-address, single-channel Only the very cheapest and simplest cards are of this type. One card can monitor only one device. Each seismometer you wished to monitor would therefore require a separate card and thus an entire expansion slot. Here is an example of part of the OPT file for a single-address, single-channel card. FirstSeismometerActive = Yes ‘Active and being sampled (EMON v6.1+) FirstSeismometerOrientation = N ‘Orientation (N = North/South) FirstSeismometerAddress = 340 ‘Decimal Address of 1st seismometer FirstSeismometerChannel = 0 ‘Channel for 1st seismometer SecondSeismometerActive = Yes ‘Active and being sampled SecondSeismometerOrientation = E ‘Orientation (E = East/West) SecondSeismometerAddress = 341 ‘Decimal Address (0 if not installed) SecondSeismometerChannel = 0 ‘Channel for 2nd seismometer ThirdSeismometerActive = Yes ‘Active and being sampled ThirdSeismometerOrientation = Z ‘Orientation (Z = Vertical) ThirdSeismometerAddress = 342 ‘Decimal Address (0 if not installed) ThirdSeismometerChannel = 0 ‘Channel for 3rd seismometer Single-address, multi-channel This is the most common type of card. Several different input channels (signals) can be monitored by this type of card while taking up only one expansion slot. The OPT file for this type of card might look like this: FirstSeismometerActive = Yes ‘Active and being sampled (EMON v6.1+) FirstSeismometerOrientation = N ‘Orientation (N = North/South) FirstSeismometerAddress = 340 ‘Decimal Address of 1st seismometer FirstSeismometerChannel = 0 ‘Channel for 1st seismometer SecondSeismometerActive = Yes ‘Active and being sampled SecondSeismometerOrientation = E ‘Orientation (E = East/West) SecondSeismometerAddress = 340 ‘Decimal Address (0 if not installed) SecondSeismometerChannel = 1 ‘Channel for 2nd seismometer ThirdSeismometerActive = Yes ‘Active and being sampled ThirdSeismometerOrientation = Z ‘Orientation (Z = Vertical) ThirdSeismometerAddress = 340 ‘Decimal Address (0 if not installed) ThirdSeismometerChannel = 2 ‘Channel for 3rd seismometer Multi-address, multi-channel In this type of ADC, the same card responds to commands directed to any of several different addresses. One card can monitor several different channels, with each address corresponding to a different channel. The “base address” of the card monitors the first channel, the “base address plus 1” reads the second channel, etc. The OPT file entries would be identical to those for the “single-address, single channel” card described above. However, commands to any of the three addresses would actually be processed by the same card instead of being processed by three different cards. Table 1 on page 20 describes the types of A/D cards supported by EMON. If your card is not listed please contact me and I will try to add support if possible. Signal Amplifier and Filter ADC cards usually are able to sense voltages as low as 1 millivolt (1/1000 volt). However, the voltage output from a seismometer responding to the passage of an earthquake wave from a distant event might be only 1 microvolt (1/1,000,000 V). In this case no signal would be recorded. For this reason the voltage output of the seismometer is usually amplified by a factor of from several hundred to several thousand before it is sent to the ADC card. In addition, noise from electrical equipment is usually filtered out before the signal is amplified. Plans for building your own signal amplifier / filter are available at the PSN web site. There you will also find an excellent amplifier and filter card sold by Larry Cochrane. Amplification level (“gain”) If you use a higher amplification level (also called “gain”) you will be able to record more distant large events, and smaller local events. However if your local environment is noisy, turning up the gain will amplify local noise as well. This noise will usually be of two types: 60 cycle noise from home electrical devices, and low-frequency noise from traffic, wind, home appliances and (of course) children. Electronic filters can remove most 60 cycle noise. However, lower frequency noise can be difficult to distinguish from the seismic signals themselves. A general rule then is to turn the amplification level on your amplifier up until you begin to see too much noise in the signal (too much vertical jitter) or begin recording too many “false alarms”, and then turn it back down a bit. Now experiment with the EMON.OPT parameters “NoiseRangeToIgnore” and “SampleCountToSaveFile” to minimize the number of false alarms. Now let’s take a more detailed look at the programs. Software description The purpose of a trigger algorithm is to detect earthquake activity while screening out false alarms. The algorithm I chose uses the concept of a “noise zone” around the normal output value of the A/D converter. You specify the width of this “noise zone” (in percentage of full range of the ADC card) in the “NoiseRangeToIgnore” parameter in EMON.OPT. Signals outside (above or below) this noise zone are the important ones. The number of samples that fall above or below the noise zone are counted as the program runs. Periodically EMON checks to see if at least a certain number of samples (a number you choose via the OPT parameter “SampleCountToSaveFile”) has been observed both above and below this zone. Data collection The EMON program performs the monitoring and collection of the seismic data. The program saves data to disk only when it appears that a quake has been detected. For this purpose it includes a trigger algorithm - a kind of decision-making process which you can control. Trigger Algorithm The EMON trigger algorithm allows you to apply several different filters to your signal to insure you only save data from real quakes. You define a noise zone which you can think of as a range above and below the normal output of your seismometer. EMON counts samples above and below this noise zone and also counts the number of peaks above and below the noise zone. When both of these numbers are above values you specify for a certain time period, then EMON assumes a quake has occurred and begins the process of accumulating enough samples to save a complete file. A small amount of data from before the event started is also included. Otherwise, the counters are reset to zero and monitoring continues. If you set the width of this “noise zone” too narrow, many files with nothing but noise will be saved to disk and you will have to spend a lot of time going through them to determine if they contain anything of interest. On the other hand, if you set the “noise zone” too wide, only the very largest earthquakes will be recorded, and you may only see one or two files per year! The proper settings for the trigger algorithm parameters are different for every location, and can only be determined by trial and error. They may change with the seasons too. If you live near the ocean, for example, winter storm waves hitting the shore might generate enough local seismic noise to force you to temporarily raise the value of “NoiseRangeToIgnore”. EMON Options File The EMON options file (default name: EMON.OPT) allows you to customize the EMON program for your setup and local seismic environment. You can use any text editor to modify the file The parameters in the OPT file are described in more detail below. The name of the option is given in bold characters, and a description follows. Savefile = Yes / No YES is for normal operation. NO is for special installations where you never want to actually save a file, like in a museum installation. PeakCountFilter = n Minimum number of peaks (above or below noise zone) required before saving file. Default is 25. DisplayTimeCompression = n Compresses display horizontally. Higher numbers display only every nth sample, allowing display to run slower than sampling rate, leaving data on screen for longer time. FirstSeismometerActive = Yes / No SecondSeismometerActive = Yes / No ThirdSeismometerActive = Yes / No YES - device will be sampled and data saved. NO - device will not be sampled. Note: devices must be activated in order, from 1st to 3rd. Do not skip a device. FileNameDisplay = Short / Long SHORT - Display only name of file being saved (not extension). LONG - Display entire name plus extension of the file being saved. To make room for the additional characters, only the hour of the time the file was saved is displayed. In the previous version of EMON, only the name of the quake data file was displayed on the screen but not its extension. This was because the extension was a constant, the location ID. In EMON V6 you can now put variable data (like a sequence number) in the file extension. If you choose to put variable data in the file extension, you should choose the LONG option to display the entire file name. If you choose the LONG option, only the hour of the time at which the file was saved is displayed. If you choose the SHORT option, both the hour and the minute of the time the file was saved are displayed. PromptOnQuit = Yes / No YES - Prompt before leaving EMON NO - Leave immediately without prompting Note: If a quake is in progress, you will always be given the opportunity to save the current data before exiting. BeepOnFileSave = Yes / No / Alarm / Immediate NO - No beep YES - Beep once when a quake file is saved ALARM - Beep every 15 minutes until a key is pressed, once a file is saved IMMEDIATE - Same as ALARM but begin beeping immediately when a quake is detected, without waiting for a file to be saved. AlarmLevel = n A number between 0 and 100. Each time a file is saved to disk, a “relative strength” value is calculated. This is a percentage of the range of the A/D card that the input signal reached during that event. 100 means the A/D card reached its limit. If you only want EMON to beep or sound an alarm for larger quakes, set this value to a higher number. If you want EMON to beep or sound the alarm for all quakes saved to disk, set this value to zero. Note: AlarmLevel is activated only if BeepOnFileSave is set to YES or ALARM. If BeepOnFileSave is set to IMMEDIATE, *all* files will trigger the audible alarm and AlarmLevel will be ignored. FileFormat = Old / New NEW - Generate data files in new format Recommended. OLD - Generate data files in old format. EMON V6.00 and higher has the capability to write quake data files in an improved format. With the new format files, more information about your ADC card can be kept in the file, which will allow better display and analysis of the data files. Also, the new quake file format has room for you to insert more information about the quake (like depth and USGS magnitude) in new reserved locations in the file for improved estimates of distance. To display the new-format data files, you will need QUAKEVU v6.00 or higher. If your version of QUAKEVU is older than this, you can tell EMON to go back to creating old-format data files by setting FileFormat to OLD. However it is recommended that you allow EMON to create the new format files and use QUAKEVU v6.00 or higher, or WinQuake v1.6 or higher. Either of these new display programs will still work fine on all your old format data files. If you don’t specifically set the FileFormat parameter, it will default to NEW. However, an annoying Note screen will pop up every time you start EMON. To eliminate this screen, add a line setting FileFormat to NEW (or OLD) to your options file. ActivityLog = Yes / No YES - Write a record to a trace file for significant events NO - No tracing The EMON activity log can help you determine what went wrong if there is a problem saving data files or figuring out which files correspond to which event. A one line entry with date and time is appended to the log file each time EMON is started or stopped, or a data file is saved to disk. ActivityLogFile = filename If you specified YES to ActivityLog, enter the name of the file to use for the EMON activity log. The default value is EMON.LOG, and the default path is the current drive and directory. FirstSeismometerMagCorr = n SecondSeismometerMagCorr = n ThirdSeismometerMagCorr = n The WinQuake program by Larry Cochrane displays EMON data files in a Windows environment. It has significant advantages over QUAKEVU in usability, and includes some additional function (like Fourier transforms) as well. WinQuake allows you to define a correlation factor for your seismometer which relates the peak value in a data file with the magnitude of the quake. Once you empirically determine this value you can enter it here and it will be stored in all data files saved for that device. (However, this is only done if you specify FileFormat = NEW). FileNamePattern = string *=============================================================================* * File Name Pattern building blocks to choose from: * * * * YY = year Example: * * MM = month Quake at 3:03 am on 2 May 94 * * DD = day Vertical sensor, 1st quake of day * * JJJ = Julian date (001-366) * * HH = hour (00-23) Pattern below gives: File name * * H = hour (A-X) ------------------- ---------- * * TT = minute (00-59) MM-DD-YY-O-S.III 050294Z1.TBJ * * T = two minute interval (A-Z,0-3) (QK)+YY+MM+DD.II+S QK940502.GCS * * O = Orientation (N, E or Z) YY/MM/DD/O/S.III 940502Z1.RAC * * S = seq no. (A-Z,0-9) YY-MM-DD-II.O-SS 940502RC.N01 * * SS = seq no. (01-99) “ YY-JJJ-H-M-O.III 9412232Z.MSS * * SSS = seq no. (001-999) “ * * II = station ID (1st two chars) * Filename is maximum 8 characters * * III = station ID (three chars) * Extension is maximum 3 characters * * (cc) = any character string in () * You must use “O” somewhere in the * * . = . (separates name from ext) pattern if you have >1 seismometer * * * *=============================================================================* The FileNamePattern parameter allows you to choose how your data files are named. You assemble the pattern you like best from building blocks that represent items like the year, month, day, sequence number, time, location ID, etc. Separate the building blocks with either slash /, plus + or dash - characters. You can also place a character string in the file name by enclosing it in parentheses. Use the dot . to identify the start of the extension. Note: do not put separator characters around the dot. For example, specifying a pattern of MM-DD-YY-O-S.III would result in the file name being built of 2 characters each of month, day and year, one character for the orientation of the sensor (N, E or Z), one character of sequence (A-Z and 0-9), and a file extension of the station ID (three characters). OperatingMode = Normal / Random / File EMON can operate (obtain its data) in one of three ways, identified as Normal, Random and File. Normal This is the normal mode of operation in which data is read from the Analog to Digital Converter (ADC). The card must be installed and operational or unpredictable results may occur. Random If “random” is specified, no ADC card is necessary to run the program. A random signal will be generated internally by the program and displayed on the screen as if it were real data. In “random” mode the “trigger” algorithm is overridden. Every set of 25000 samples generated is saved on disk as if an earthquake had occurred. You can use this mode to test the program and adjust other parameters. File If “file” is specified, data is read from a previously-recorded quake file. You will be prompted during EMON initialization for the name of an existing data file. This file will be loaded during initialization, and EMON will get its input, sample by sample, from that set of data. This capability allows you to test new trigger settings on old recordings. When trying a radically new trigger setting, you might want to be sure that an event which was seen and saved at the old settings would not be missed at the new settings. AnalogToDigitalConverterType = n EMON supports A/D cards from several manufacturers and some home-made ones as well. Table 1 on page 20 describes the supported A/D cards. Table 1. Supported A/D Cards EMON ADC Type Mfg and Model Bits Channels Base Address (default) Min voltag e value Null voltag e value Max voltag e value Comment 0 Homemade 12 1 Ted’s first A/D card base on RTD PD-100 prototype board and B/B ADC674A 1 IBM Data Acquisition and Control Adapter 12 8 0 -2048 0 2047 Requires DACAT03.COM driver in CONFIG.SYS 2 Metrabyte DAS-4 8 3 Jan Froom’s modified parallel port adapter 12 3 Uses COLLECT interface (special code linked with EMON) 4 Alpha Products A-Bus AN/146 12 5 PC-LAB 714 Super Card 12 544 Input signal is echoed to D/A channel 1 6 Metrabyte DASH- 16 12 7 PC-LAB 711s 12 8 ACQUTEK PA- CP12 12 9 Real Time Devices Inc. DR112 13 10 BSOFT ANA-201 12 11 Computer Boards Inc. CIO- DAS08/Jr-AO 12 12 Larry Cochrane 12 8 544 -2048 0 2047 12 bit version of SDR card 12 Larry Cochrane 16 8 544 -32767 0 32768 16 bit version of SDR card 13 Computer Boards CIO-DAS08Jr/16- AO 16 8 768 -32767 0 32768 0 Homemade 1 IBM Data Acquisition and Control Adapter 2 Metrabyte DAS-4 3 Jan Froom’s modified parallel port adapter 4 Alpha Products A-Bus AN/146 5 PC-LAB 714 Super Card 6 Metrabyte DASH-16 7 PC-LAB 711s 8 ACQUTEK PA-CP12 9 Real Time Devices Inc. DR112 10 BSOFT ANA-201 11 Computer Boards Inc. CIO-DAS08/Jr-AO 12 Larry Cochrane 12 Larry Cochrane 13 Computer Boards CIO-DAS08Jr/16-AO Table 2 FirstSeismometerOrientation = N / E / Z N for a device whose axis is aligned in a North-South direction, E for a device whose axis is aligned in an East-West direction, and Z for a device which is sensitive to vertical motion. FirstSeismometerAddress = n This is the decimal I/O address of the card in the PC containing the analog-to-digital converter chip. Usually the card manufacturer provides switches on the card with which the user can choose one of several different addresses. FirstSeismometerChannel = n Some ADC cards have input connectors for several inputs. These separate inputs are called channels. Refer to your card’s documentation for information about choosing the correct channel. SecondSeismometerOrientation SecondSeismometerAddress SecondSeismometerChannel Same as for the first seismometer. ThirdSeismometerOrientation ThirdSeismometerAddress ThirdSeismometerChannel Same as for the first seismometer. SeismometerToMonitor = N / E / Z Acceptable values are N, E or Z. Choose which device you wish to use for the on-screen real time display. You can change this from the keyboard while the program is running. AdcValueAtMaxVolts = n AdcValueAtZeroVolts = n AdcValueAtMinVolts = n These three parameters tell EMON the range of numbers your ADC card generates at (1) its highest acceptable input voltage, (2) at zero volts input, and (3) at its lowest acceptable input voltage. Some cards convert voltages to values from 0 to 4096, with 2048 corresponding to 0V. Other cards generate values from -2048 to 2047 with 0 corresponding to 0V. Still other cards give you a choice by having switches on the card that you can set. It really doesn’t matter which kind of card you have. Just make sure you tell EMON the proper values for your card. NoiseRangeToIgnore = n This parameter is a percentage of the total ADC card range above and below the value of AdcValueAtZeroVolts. Signals within this zone will not be counted toward the decision to save a quake file. For example if your ADC returned values from 0 to 4095 with a zero value of 2048, specifying NoiseRangeToIgnore = 10 would result in EMON ignoring any points within a range of 10% (10 * 4096 / 100 = 409.6, rounded to 410) above or below 2048. So any data points within a range of (2048-410) to (2048+410) would be ignored, while data points outside this zone would contribute toward the decision to save a quake file. A typical value in a noisy environment might be 10-15. In a quiet area, 1-3 is possible. SampleCountToSaveFile = n This is the number of samples outside the noise zone that must be observed before a quake file will be saved. This prevents lots of junk files being saved when only one or two points above and below the noise zone are observed. Typical value might be 50 or 100. SamplesPerDataPoint = n Multiple ADC samples can be averaged to obtain one data point. This provides limited smoothing if you are in a noisy environment, but its biggest benefit is to give you a way to control how many samples are taken per second. EMON does not delay between obtaining samples, so the only way to slow down the sampling rate is to tell it to make each data point an average of several samples. The fastest sampling rate is achieved by setting this value to 1. If this is not fast enough you either need a faster PC, a faster ADC card or both. However, sampling at the maximum rate may have some of the following drawbacks (especially on a faster PC): Each file may then contain only 5-10 minutes worth of data, so you will have many more files to deal with. You may find that distant events span multiple files, which means you will have to use MSPLICE to combine the files later. Try to achieve a sampling rate of about 10-20 per second. On an XT-class machine you may have to tell EMON to average 5-8 samples for each data point to achieve this. If you are running EMON on a 286 or faster machine (AT-class) you may need to average as many as 40-50 samples for each data point to achieve a final sampling rate of 10-20 per second. The actual sampling rate is displayed on the EMON screen. StationName = string Specify up to 15 characters for your station name. Only single blanks are allowed in the name. This information is placed into each quake file as it is saved. StationID = string Specify a three character ID identifying your station. This will be used as the file name extension (“.xxx”) on all files saved. RecordingLatitude = n.n Enter the latitude of your station, with up to three decimal digits of accuracy (fewer is OK too). Use positive values if you are north of the Equator, negative values if you are south. If your map provides latitude only in degrees, minutes and seconds you will have to convert to degrees. For example, 16 degrees 30 minutes North latitude would be entered as 16.5, since 30 minutes is one half of a degree. RecordingLongititude = n.n Enter the longitude of your station, with up to three decimal digits of accuracy (fewer is OK too). Use positive values if you are east of Greenwich, negative values if you are west. DisplayLines = n Enter the number of lines of data to display on the screen if you wish a real-time display of data. Entering 0 disables the real-time display. Only odd numbers are acceptable. If you enter an even number, EMON rounds it up to the next higher odd number. DisplayCompression = n Enter a number to use as a vertical compression factor for the EMON real-time display. The higher this number, the more compressed each line of the display will be. Generally a value of 10-25 works well. The number you will need to get a good display will depend on the gain of your amplifier and the range of voltages generated by your seismometer. SavePath = path This is the DOS “path” that EMON will use to locate the disk and directory in which to save quake files. It can consist of just a drive letter (for example, C:) in which case the current directory for that disk is assumed, just a directory (in which case the named directory is assumed to be a sub-directory in the current directory on the current drive, or a fully qualified combination of drive and directory. The directory must exist. If it does not already exist at startup, EMON will issue a warning message and terminate. The following examples are all acceptable: SavePath Meaning C: Use current directory on C drive C:\ Use root directory on C drive QUAKES Use QUAKES (sub-)directory on current drive and directory C:\QUAKES Use QUAKES directory on C drive regardless of current dir C:\QUAKES\ Same as C:\QUAKES A: Use current directory on A drive B:\ Use root directory on B drive The following examples are not acceptable since they are not valid DOS paths: A C:: C\ TemporaryBufferSize = n If you look into the Appendix in which the program logic is described, you’ll see how the Temporary Buffers “A” and “B” are used. Unless you care how often EMON examines the counters related to quake signals, leave this at 4000. Acceptable values are 1000-8000. UserCommand1 = string UserCommand2 = string Here you specify two commands which can be executed against the currently marked file on the screen. Data collection is suspended during the execution of a UserCommand. Place the “/” character wherever you would like the name of the file to be substituted. For example, if the on-screen file marker were pointing at a file named 93066ACN.TBJ, the following substitutions would be made: UserCommand Actual command executed QUAKEVU / QUAKEVU 93066ACN.TBJ QUAKEVU / /Q QUAKEVU 93066ACN.TBJ /Q COPY / A: COPY 93066ACN.TBJ A: MYBAT / MYBAT 93066ACN.TBJ In the first example above, the QUAKEVU program will be invoked to view the file. Your PC must have enough “conventional memory” (i.e. memory below 640K) to allow several large programs to be active at one time, or you may get an “out of memory” message. “Memory maker” utilities which move portions of DOS above the 640K line may help you, but I have not tested them. Examples might be QEMM and MemMaker. In the second example above, QUAKEVU is invoked with the /Q or QuickDisplay option. This tells QUAKEVU to display only every 10th point in the file. On slower PCs this can give you a quick idea of whether the file contains anything interesting. In the third example above, the file is to be copied to the A: drive. In the last example above, the user has written a BAT file containing multiple DOS commands, and passes it the name of the marked file as its first parameter. ADCOffset = n This is a constant value to be added to each sample taken. Negative numbers are acceptable also. This can be handy if your amplifier does not have a “zero” or “level” adjustment and you want to center the signal on the screen. ADCProgrammableGain = n Certain ADC cards contain onboard amplifiers whose gain is controllable by the software. The Real Time Devices DR110 is one example. This card supports gain of 1, 10 and 100. This value is ignored if the ADC card you are using does not support programmable gain. EMON Main Screen The EMON main screen is shown in the example below (repeated from Figure 1 on page 7). Header area The first line shows the current date (in standard and Julian form) and time, the version of EMON you are running, and the address, channel and orientation of the seismometer currently being monitored. The second line shows your location and station id, latitude and longitude of your station, and which of the three internal buffers (“A”, “B” or “Q”) is being filled. The program alternates between filling the “A” and “B” buffers until a quake has been detected. At this time it switches to filling the “Q” buffer. The third line displays the sampling rate in samples per second. This line (along with the time of day) is updated only every few seconds to avoid slowing down the sampling rate. Seismometer output display area This area contains a trace of the output of the seismometer. You can specify how many lines of trace it is to show in the OPT file along with the vertical scale. The large tick mark on the left edge of the display box shows where the line sould be when there is no quake activity. The small tick marks above and below this represent the upper and lower boundaries of the “noise zone”. If you change the size of the noise zone with the F4 key (or editing the OPT file), these markers will be adjusted to the new size. Filename display area This area shows the files that have been saved since program was started. For each file the file name, date and time are shown. There is also a number between 1 and 100 which describes the relative intensity of the quake record contained in the file. (A value of 100 simply means that the ADC card recorded a signal which reached its maximum range. Lower numbers signify correspondingly lower peak signals.) This is to give you a rough idea of the size of the event in the file. A small marker is always in front of one of the file names. You can move this marker with the up and down arrow keys. The UserCommand keys always operate on the file with the marker in front of it. All of the actions you can take from the keyboard are described below. EMON Keyboard Actions Up Arrow / Down Arrow Use the up and down arrow keys to select the file you wish to operate on with the UserCommand keys. See the description of the EMON.OPT UserCommand1 and UserCommand2 parameters for further information. PgUp / PgDn Use the PgUp and PgDn keys to change the vertical display compression for this invocation of EMON. This does not change the value permanently - you must edit the OPT file to do this. F1 - Erase Current File Erases the file currently being pointed to on the screen. You would generally use this key only after first examining the file with QUAKEVU, and copying all or part of it to another disk. Copy the file first if you want to keep it! F2 - Turn On/Off Data Trace The data trace shows the digitized value of each sample taken. It is useful for debugging the A/D converter, or understanding noise levels. If trace is off, pressing this key turns it on, and vice versa. F3 - A/D Conversions Per Sample This value is the number of separate analog-to-digital samples to average to get one data point. In noisy environments, some control over noise can be obtained by averaging several samples, but at the cost of slowing down the sampling rate. On the other hand, if you wish to slow down the sampling rate, just specify a number larger than 1 for this parameter. Initial value specified in EMON.OPT. F4 - Noise Zone Width Percentage above and below the “zero volts” value of the A/D converter that defines the “noise zone”. Only samples outside this noise zone will count toward the decision to save data to disk. F5 - DOS command Single DOS commands can be entered, or you can just press ENTER to be placed at the DOS prompt. Typing EXIT returns you to EMON. F6 - Save path: Drive and path to be used when saving data files. A hard drive or 1.2Mb floppy disk are recommended. It is possible to save files to a 5 ¼” floppy, but only 7 files fit on a standard 360K disk. If the disk fills up, you will be prompted to insert a disk with more available space. Sampling will not resume until the data file just obtained has been successfully saved to disk. F7 - Display Next Device When more than one seismometer is being monitored, pressing this key will rotate the display among the devices. F8 - F9 - This key executes a command against the listed file. The command is specified in the UserCommand parameters in EMON.OPT. The string “” is replaced by the name of the file currently marked with the “>” character on the screen. F10 - Safe Quit Return to DOS. If a quake is in progress, you will be asked if it is acceptable to discard the data currently being collected. If you reply “n”, the current data will be saved in a “short” data file before exiting. Displaying quake files with QUAKEVU The QUAKEVU program displays the quake files captured by EMON. It uses the Color Graphics Adapter (CGA) in high resolution (640x200) mode. This is equivalent to SCREEN 2 in IBM BASIC. Note: If you are running QUAKEVU under DOS version 3.1 or higher, you must issue the DOS command “GRAPHICS” or “GRAFTABL” once each time you power-on or re-boot the machine. If you do not execute this command before running QUAKEVU, the screen will look very strange with lots of fuzzy square characters in the menus. DOS began to require this in version 3 as part of their support for languages other than English. If you find you have this problem, the simplest solution would be to add a line with the proper command to your PC’s AUTOEXEC.BAT file. QUAKEVU will remind you when it starts if you need to run the GRAFTABL command but have not done so. QUAKEVU features Functions supported by QUAKEVU are: Multiple files from the same event (from the same or different recording stations) can be displayed simultaneously Mouse support with pull-down menus Online help Variable scale, on both X (Time) and Y (Amplitude) axes Interactive P- and S-wave identification via graphic pointers Automatic epicenter distance and travel time calculations as the P and S pointers are moved Expanded view (“zoom”) on a subset of the data in a file Ability to create a new data file containing only a subset of data in the original file (and a comment if you wish) Connect data points with lines, or plot as points only Mouse Interface to QUAKEVU If your PC has a mouse, you can use it to do all of the above functions via pop-down menus. Several pop-down menu items list a keyboard function key (like F1 or F2) that does the same thing as the menu bar. You can use either one. Arrow keys while Zoom’ed If you are zoomed in on a small section of a file, you can use the left and right keyboard arrow keys to move left and right through the file. Each keypress moves one screen left or right. Further help is available in the program. Enter QUAKEVU ? for details or select HELP while running the program. Printing the screen from QUAKEVU Use the Shift-PRTSC key to print the screen if you want to save a hard copy. However, the DOS Print Screen function prints only in character mode and QUAKEVU runs in graphics mode. Luckily, DOS supplies a command called GRAPHICS which takes care of this problem. Execute the GRAPHICS command once each time you power-on your PC. Once you run this command, the Print Screen key will print your QUAKEVU screens properly. As with the GRAFTABL command the easiest solution may be to add the GRAPHICS command to the AUTOEXEC.BAT file of the PC where you usually run QUAKEVU. QUAKEVU example We will use QUAKEVU to examine a recording of a recent earthquake recorded in San Jose, California. We issue QUAKEVU with the filename 971204AE.FOX, and we see the following screen: We can now see for the first time the actual earthquake record. You can see at the left the baseline signal, then the arrival of the P waves and later the arrival of the S waves. (The L waves are off the recording and were recorded in the next file). Now let’s tell QUAKEVU where we think the P and S wave arrivals are. We click on Distance (or press F2) which brings up the next screen. We move the P pointer to the arrival of the first P wave (using the left and right arrow keys or the mouse). Notice that the time of arrival of the P wave is updated as we move the pointer. QUAKEVU cannot compute the distance to the quake until we provide it with an estimate of when the S wave arrives so let’s do that. Select Distance (or press F2) again and the S pointer appears. Move it to the arrival of the S wave. Now that the P and S wave arrival times are both identified, QUAKEVU can compute the estimated distance from the recording station to the quake location. Notice that as you move the P or S pointers, the estimate of distance changes. You can fine tune the placements of the P and S waves by selecting Distance again (or pressing F2). Saving a subset of the original file You can use File/Save (F8) to save a smaller size file containing only the portion of the original file currently being displayed. Select File/Save (or press F8) and you will be prompted to specify up to 7 characters of a file name. (The 8th character and the file extension are copied from the original file name).You can enter names like the following: a:* Saves file on a: drive with same name as large file b:myquake Saves file as b:myquake.lll (where lll is station ID) \quakes\* Saves file in QUAKES directory with same name myquake Saves file in current drive/directory as myquake.lll * Replaces input file (large) with subset file (small) Printing the screen contents You might want to print what is on the screen to have a hard copy for your files. To print the screen contents, you must have issued the DOS command “GRAPHICS” in the DOS session before entering QUAKEVU. This command tells DOS that all future PrintScreen key presses should assume the screen is in graphics mode (like QUAKEVU uses), rather than just as text. If you did not issue the GRAPHICS command before invoking QUAKEVU, you can do so now via the DOS Command key. Then just press the Shift-PrtSc key and DOS will print your screen image on the printer. Note - some laser printers will not properly print this type of screen. You may have to use an “old-fashioned” dot-matrix printer or some other type of screen-capture program. Data files Quake data files contain exactly 25,000 data points when first saved to disk by EMON. As mentioned in the QUAKEVU example, you can create a smaller file containing just the interesting portions of a recording. First, load the file into QUAKEVU. Next, use the Zoom function, and perhaps the right and left arrow keys (or CTRL-arrow keys), to show just the interesting part of the file on the screen. Finally, use the SAVE function to save just the part of the file showing on the screen. It is a good idea to do this if you are uploading the file to a BBS - it can save telephone charges if you upload smaller files, and saves other people money when they download your files to their PCs. During the save process you will be asked if you want to add descriptive information which you may have determined through other sources to reserved spaces in the file. These might be things like the true origin time, or a comment. For files saved by EMON V6 or later you will be asked if you want to add additional information like depth, latitude and longitude. Bibliography General Background Bolt, B. A.. Earthquakes. W. H. Freeman, 1988. Gere, J. M. and H. C. Shah. Terra Non Firma, Understanding and Preparing for Earthquakes. W. H. Freeman, 1984. “Earthquakes & Volcanoes”, published bimonthly by the U. S. Geological Survey. Available from: Sup’t. of Documents, U. S. Gov’t Printing Office, Washington, DC 20402. Seismic Monitoring Station Practices World Data Center A for Solid Earth Geophysics, September, 1979. Manual of Seismological Observatory Practice, Report SE-20. Available from: United States Dept. of Commerce, National Oceanographic and Atmospheric Administration, National Geophysical Data Center, 325 Broadway, Boulder, Co. 80303 Home Seismometer Construction and Design Various older Scientific American “Amateur Scientist” columns: June, 1953, July, 1957, May, 1961, and August, 1970. “The Amateur Scientist: A sensitive mercury tiltmeter that serves as a seismometer”, Scientific American, November, 1973, pp. 124-129 “The Amateur Scientist: Electronic stratagems are the key to making a sensitive seismometer”, Scientific American, September, 1975, pp. 182-187 “The Amateur Scientist: How to build a simple seismograph to record earthquake waves at home”. Amateur Scientist column, Scientific American, July, 1979, pp. 152-161 (Plus a correction to the amplifier schematic in the Amateur Scientist column, August, 1979) Earthquake Interpretation Simon, Ruth L. Earthquake Interpretations, A Manual For Reading Seismograms. Los Altos, Ca., William Kaufman, Inc., 1981. Jeffreys, H. and K. E. Bullen. Seismological Tables. Smith & Ritchie Ltd., Edinburgh, 1967. Personal Computer Data Acquisition Webster, E., 1986. How To Use Your BBC Computer As a Cheap Storage Oscilloscope. Phys. Educ. 21, pp. 119-122 Ciarcia, S. A., “Computers on the Brain: Clever signal amplifiers, noise rejection and A/D conversion are all part of the HAL EEG”, Byte, June, 1988. Seismic Software Design Allen, R., 1982. Automated Phase Pickers: Their Present Use and Future Prospects. Bull. Seis. Soc. Am. 72(6), pp.S225-S242 Goforth, T. and E. Herrin, 1981. An Automatic Seismic Signal Detection Algorithm Based On The Walsh Transform. Bull. Seis. Soc. Am. 71(4), pp.1351-1360 Seismometers in the Classroom Barker, G. “A Working Seismograph For The Classroom”. Michigan Earth Scientist, Michigan Earth Science Teachers Association, September, 1983. Barker, G. “Calculating the Size and Properties of the Earth’s Core”. Michigan Earth Scientist, Michigan Earth Science Teachers Association, June, 1984. Appendix 1 - EMON Program Logic When analyzing seismic recordings it is helpful to know what the local noise level looked like before the earthquake arrived. To insure that some pre-event data is available, two temporary data buffers, called A and B, are defined. Each holds 4000 samples (depending on the setting of the value TemporaryBufferSize), which is usually about 5-10 minutes worth of data, but this changes with the sampling rate. EMON fills each of them in turn. When each is full, a check is made to see if the “trigger” algorithm that monitors each buffer as it fills has detected enough earthquake-like signals in the data. The detection thresholds are defined by the user. If an event has been detected, the program then switches to filling a larger buffer (called the “Q” buffer) which holds about 20-30 minutes worth of additional data. When the large buffer is filled, the two temporary buffers are moved into the beginning of the “Q” buffer in the proper order. (Room was left for them when the “Q” buffer samping began). In this way the trace will always include a few minutes of data prior to the quake, plus as much of the actual quake data as will fit into the large data buffer. When the large buffer is full and the small buffers have been moved into their proper positions, the entire data array is saved to disk. Then monitoring resumes into the A and B buffers again. Integer array of size 25100 +-------+ +--------+ +----------+ | | | | | Control | Header V | | V | info. | 100 integers +----------+ | | +----------+ +----------+ | Small | | | | Small | | Reserved | | buffer | \ / | buffer | | space | | A | X | B | | for | 4000 integers | | / \ | | | small b. | (or other | | | | | | | #1 | value +----+-----+ | | +-----+----+ +----------+ spec. by | no | | no | | Reserved | user) | quake->| | <-quake | | space | ?--------+ +---------? | for | 4000 integers | | | small b. | (or same quake| |quake | #2 | value as | | continue sampling +----------+ buff #1) +--------------------+-----------------> | | | | | Large | | buffer | 17000 integers | ( "Q" | (if small | buffer) | buffer size | | is 4000) +----------+ Total file size: 25100 integers (50200 bytes) Appendix 2 - EMON Seismic Data File Internal Format The EMON seismic data files are saved in BASIC BSAVE format. The BASIC BSAVE statement creates an unencoded, binary file, which is an exact image of memory contents. Seven bytes of control information are written at the beginning of the file, and these bytes are followed by the data bytes copied from memory. The file length shown in the DOS directory entry will be the BSAVE-specified length plus 7, rounded up to a multiple of the BASIC buffer size. EMON files 50,200 bytes in size as written by EMON. This is based on each file being a copy of an array of size 25,100 where each element of the array requires two bytes of storage. The EMON seismic data files are saved in BASIC BSAVE format. The BASIC BSAVE statement creates an unencoded, binary file, which is an exact image of memory contents. Seven bytes of control information are written at the beginning of the file, and these bytes are followed by the data bytes copied from memory. The file length shown in the DOS directory entry will be the BSAVE-specified length plus 7, rounded up to a multiple of the BASIC buffer size. EMON files 50,200 bytes in size as written by EMON. This is based on each file being a copy of an array of size 25,100 where each element of the array requires two bytes of storage. Offset Length Contents 0 1 x'FD' (Constant BSAVE file format identifier) 1 2 BASIC DS segment value at BSAVE execution time 3 2 Offset in the DS segment specified in the BSAVE statement 5 2 Data length specifed in the BSAVE statement 7 * Memory image data The segment value, offset, length and data values are all stored in Intel(tm) low-high-order format. The BASIC BLOAD statement is used to load the file containing the array into memory. To load the array into memory, the following BASIC statements could be used: DIM ARRAY%(25100) 'Define space for array. Must be of type INTEGER REM LOAD DATA INTO STORAGE STARTING AT FIRST ELEMENT OF ARRAY% DEF SEG = VARSEG(ARRAY%(0)) 'This stmt required for MS QuickBASIC only BLOAD "d:\path\filename.ext",VARPTR(ARRAY%(0)) DEF SEG 'This stmt required for MS QuickBASIC only PRINT "EMON data file - first 16 elements in header" FOR I = 0 TO 15 PRINT "Header entry number ";i;" is ";array%(i) NEXT I PRINT "EMON data file - first 5 data points" FOR I = 100 TO 104 PRINT "Data point number ";i;" is ";array%(i) NEXT I If a BLOAD statement is executed with an offset term, then that offset value and the BASIC DS segment value in effect at BLOAD execution time will be used to place the loaded data; if a BLOAD statement is executed without an offset term, then the stored segment and offset values will be used. In both cases, the stored length value determines the amount of data loaded. The memory image data portion of the file is described below. These 2-byte integer fields are also stored in Intel low-high-order format. Offsets as listed should be used as shown to index into the array after it has been BLOAD'ed into memory, i.e. ARRAY%(1) contains the year of the start of data collection. This assumes you have not changed the BASIC default array origin of zero. The file format is shown below: REM ************************************************************************* REM * OFFSET NAME CONTENTS * REM * * REM * 0 Format Flag describing format of data * REM * A flag value of 2 means that the * REM * following file format is being used * REM * A flag value of 3 means COMMENT field * REM * starts 30 positions past where it used * REM * to (packed two per offset). Initial * REM * 30 positions now have more info about * REM * data collection equipment, and room to * REM * add info later (via QUAKEVU, WinQuake, * REM * etc.) about actual magnitude, location, * REM * depth etc.) REM * per position in first 30 of original 60. * REM * 1 SYEAR Year of start of data collection * REM * 2 SMON Start month of data collection * REM * 3 SDAY Day of start of data collection * REM * 4 SHOUR Hour of start of data collection * REM * 5 SMIN Minute of start of data collection * REM * 6 SSEC Second of start of data collection * REM * 7 STENTH Tenths of second at start * REM * 8 FHOUR Hour of finish of data collection * REM * 9 FMIN Minute of finish of data collection * REM * 10 FSEC Second of finish of data collection * REM * 11 FTENTH Tenths of seconds at finish * REM * 12 COUNT Count of valid elements in file * REM * including the 100-byte header * REM * 13 BASE ADC output value for zero V input * REM * 14 MIN Min. sampled value in this file * REM * 15 MAX Max. sampled value in this file * REM * 16 ORIENTATION N=N/S E=E/W Z=Vertical * REM * REM * The next 4 values are dependent on the location of the station, and REM * are supplied in the EMON.OPT file. REM * REM * 17 LATINT Station latitude N of equator (neg for S)* REM * Integer portion only REM * 18 LATDEC Decimal portion of latitude multiplied by REM * 1000 and rounded to nearest integer REM * Also negative if South Latitude REM * 19 LONGINT Longitude E of Greenwich (neg. for W) * REM * Integer portion only REM * 20 LONGDEC Decimal portion of longitude multiplied by REM * 1000 and rounded to nearest integer REM * Also negative if West Longitude REM * 21 N/A Nat. Earthquake Info. Center calculated REM * origin time of quake. This value is REM * set to -1 by this program, modified by the REM * user via the COMMENT program later after REM * checking with the NEIC REM * 22 N/A NEIC minute of quake origin REM * 23 N/A NEIC second of quake origin REM * 24 N/A NEIC tenths of second of origin REM * 25-39 LOCATION Name of recording location (15 chars) REM * from EMON.OPT. REM * REM *2 If FORMAT = 2 THEN the following is valid REM *2 40-99 COMMENT Description of quake. Added to quake file REM *2 with the COMMENT program at a later time. REM *2 END FORMAT = 2 description. REM * REM *3 If FORMAT = 3 THEN the following is valid. REM *3 REM *3 EMON will fill in the next section based on EMON.OPT input values REM *3 or values in effect at the time of saving data file. REM *3 REM *3 40 ADCTYPE Type of A/D converter. See EMON.OPT file. REM *3 41 ADCNULL Value returned by A/D at zero volts input. REM *3 42 ADCMIN Value returned by A/D at min volts input. REM *3 43 ADCMAX Value returned by A/D at max volts input. REM *3 44 NUMCONV Number of A/D conversions averaged per samp. REM *3 (from value in effect at end of interval) REM *3 45 Integer portion of MagCorr REM *3 46 Decimal portion of MagCorr * 10000 REM *3 47-49 Reserved for additional EMON data REM *3 REM *3 QUAKEVU, COMMENT or WinQuake will fill in the next section: REM *3 REM *3 50-51 Rsvd for 4 packed characters describing REM *3 method USGS used to calc magnitude (ML, etc.) REM *3 52 Rsvd for USGS Magnitude value * 10 (6.6 = 66) REM *3 53 Rsvd for USGS Depth (in kilometers * 10) REM *3 54 Rsvd for integer portion of quake latitude REM *3 55 Rsvd for 1000 * decimal portion of quake lat REM *3 56 Rsvd for integer portion of quake longitude REM *3 57 Rsvd for 1000 * decimal portion of quake long REM *3 58-69 Reserved for additional information REM *3 REM *3 70-99 COMMENT Description of quake. Added to quake file REM *3 with another program at a later time. REM *3 Characters are packed two per two-byte- REM *3 integer value, padded with blanks. REM *3 End FORMAT = 3 section. REM * REM * 100-25099 Two-byte-integer digitized seismometer * REM * output values. * REM ************************************************************************* 5