AD-AlGA 205 WEAPONS SYSTEMS RESEARCH LAS ADELAIDE A … · 2014-09-27 · ad-alga 205 weapons...
Transcript of AD-AlGA 205 WEAPONS SYSTEMS RESEARCH LAS ADELAIDE A … · 2014-09-27 · ad-alga 205 weapons...
AD-AlGA 205 WEAPONS SYSTEMS RESEARCH LAS ADELAIDE (AUSTRALIA) F/S 19/4A DATA ACQUISIT ION AND PROCESSING SYSTEM FOR GUN INTERIOR BALLI--ETC(U)MAY 81 A R R YE
UNCLAE SL FIED209-TR9 T L
1111112 .
Mk( o I ll , z(III I )N I I 2
WSRL-0209-TR AR 002 W
DEPARTMENT OF DEFENCEDEFENCE SCIENCE AND TECHNOLOGY ORGANISATION
WEAPONS SYSTEMS RESEARCH LABORATORY
DEFENCE RESEARCH CENTRE SALISBURYSOUTH AUSTRALIA
TECHNICAL REPORT
WSRL-0209-TR i
A DATA ACQUISITION AND PROCESSING SYSTEM FOR
GUN INTERIOR BALLISTIC STUDIES
(PART I)
A.R. RYE
<c
Approved for Public Release. A
COPY No. L j APRIL 1981
81 1208 3 0
UNCLASSIFIED
DEPARTMENT OF DEFENCE A-0-8
DEFENCE SCIENCE AND TECHNOLOGY ORGANISATION
WEAPONS SYSTEMS RESEARCH LABORATORY
TECHNICAL REPORT
WSRL-0209 -TR
A DATA ACQUISITION AND PROCESSING SYSTEM
FOR GUN INTERIOR BALLISTIC STUDIES
(Part 1)
A.R. Rye)
A data acquisition and processing system for use in the gunballistic ranges of Propulsion Division, WSRL, isdescribed. Adaptability and economy are achieved by the useof digital transient recorders interfaced to a Hewlett-Packard9825A Desktop Computer. In one case, minor hardware changeswere required. Flexible software has been developed, encodedin Hewlett-Packard's 1HPL"k programming language. Fullsoftware details are given for reference by system userswishing to make modifications.
POSTAL ADDRESS: Chief Superintendent, Weapons Systems Research Laboratory,Box 2151, GPO, Adelaide, South Australia, 5001.
UNCLASSIFIED
WSRI.-O29q-TR
TABLE OF CONTENTS
I. I NTRODUCTI ON
2. SYSTEM CONFIGURATION 2
2.1 System Control and Data Processing 2
2.2 Graphic Display 2
2.3 Data Storage for Future Reterence 3
2.4 Printed Output 3
2.5 Data Acquisition Devices 32.5.1 Biomation 1015 32.5.2 Datalab DL2800 3
2.6 Interfaces 3
2.7 Program Security and Protection 4
3. SYSTEM OPERATION 4
3.1 System Connections 4
3.2 Data Acquisition 4
3.3 Data Processing 4
3.4 Software Limitations 8
4. PROGRAM STRUCTURE S
4.1 Driver Section 8
4.2 Direct-execution Routines 10
4.3 Service Routines 10
4.4 Program Counters 10
4.5 Program Flags 10
5. CONCLUSIONS .. 1
5.1 General Comments -- "1
5.2 Program Status 11
5.3 Future Development 11
6. ACKNOWLEDGEMENTS 11
REFERENCES 12
• at ..... " A
WSRl-O209-TR
LIST OF APPENDICES
I THE HPL COMPUTING LANGUAGE 13
II PROGRAM LISTING AND USER NOTESFOR PROGRAM "9)82.B51" 15
III IPROGRAM I.ISTING AND USER NOTESFOR PROGRAM "9825DL" 21
IV PROGRAM LISTING AND USER NOTESFOR PROGRAM "9825PO" 26
LIST OF FIGURES
1. Typical Instruction Listing
2. Typical Firing and Pressure History Summaries
3. Typical Pressure-Time Plot
4. Representative Program Flow Chart
- I -WSRIL-0209-TR
This report includes details of a system developed to enable the
acquisition and processing of gun interior ballistic data. Thissystem uses a Hewlett-Packard 9825A Desktop Computer to controlarange of peripheral devices. An alternative system controller,the Hewlett-Packard 8SF Desktop Computer, is also available. Thesoftware used with the latter computer is quite dissimilar, andwill be documented at a later date as Part 2 of this series.
The use of manufacturers' or trade names in this report does notconstitute endorsement of any commercial product.
7WSRI,-0209-TR -2-
I. INTRODUCTION
Gun Propulsion Research Group of Propulsion Division, WSRL has evaluatedseveral approaches to the task of acquisition and processing of data from gunballistic ranges. Overseas laboratories visited by the author in recent yearsuse systems based on data transferral (in either analog or digital form) tomagnetic media, with subsequent processing by a large central laboratorycomputer or by a dedicated minicomputer. However, recent advances in dataacquisition and processing equipment mean that such a system is notnecessarily the most efficient or economic. It was decided that the task ofdata handling at the two ranges operated by the Group at DRCS, and theportability required for operation at other sites, could best be met by asystem containing flexible self-contained data acquisition units under thecontrol of a programmable desktop computer. Such a system has successfullybeen put into operation at WSRL. Additional output capability has beenachieved by the addition of a plotter and a small line-printer. Data storageand software access will be improved in the near future by incorporation of adiskette drive and a cartridge tape unit.
2. SYSTEM CONFIGURATION
2.1 System Control and Data Processing
These functions are fulfilled by a Hewlett-Packard HP9825A DesktopComputer, equipped with 23K bytes of user memory. This computer hascertain features which suit it to the particular problems associated withthe management of ballistic range data. In general, the task does notdemand sophisticated software. The control and processing sequence isbasically linear in operation, but large quantities of digital data have tobe acquired from several sources and processed efficiently and flexibly.The HP9825A is a fast compact computer, and the availability of severaltypes of compatible interface means that it may be readily incorporatedinto systems with different digital I/0 requirements. Software for theHP9825A is written in Hewlett-Packard's programming language called HPL,(ref.1). This language has strong similarities with ANSI BASIC and anyprogrammer familiar with BASIC will rapidly learn HPL. The execution of theprograms described in this report requires the installation of certainread-only memories (ROMs). These are for Advanced Programming, General 1/OProgramming, Extended I/O Programming, String Variable Programming, andHP9872 Plotter Programming. Programs used by the HP9825A are normallystored on tape cartridges, for which the HP9825A has its own internal tapedrive. This drive is also used to access and store data. In addition, thecomputer includes a small internal thermal printer for written output. Auseful feature of the HP9825A is that it has a number of programmer-definable keys (Special Function or "soft" keys) which are of value whenthe system is to be operated by personnel with limited knowledge ofprogramuing in HPL.
2.2 Graphic Display
Hard-copy graphics are obtained using a Hewlett-Packard 9872A Plotter.This plotter will accept paper up to A3 size and writes using any one offour user-selectable pens. This is a flexible device, which iscontrollable by many host computers as it has its own internal high-levellanguage. It also responds to HPL commands from the HP9825A. It isconnected to the host computer using its own IEEE-488 interface (ref.2).
- 3 - WSRL-0209-TR
2.3 Data Storage for Future Reference
This is accomplished using the internal cartridge tape unit of the 11P9825Aand designated data tapes. This method has certain programming limitationsbut has proved adequate. A Hewlett-Packard 9885M Diskette drive andHP9875A Cartridge Tape Unit will be incorporated into the system at a laterdate. These items will greatly enhance system flexibility.
2.4 Printed Output
The small thermal printer of the HP9825A computer is adequate for outputduring normal operation at the ballistic ranges, but is too small torgeneral use or for listing of programs. An Epson MX-80 printer isconnected to the computer when such usage is required, using its ownIEEE-488 interface.
2.5 Data Acquisition Devices
Two types of digital transient recorder are available at DRCS for use withthe system:
2.5.1 Biomation 1015
This device (ref.3) is a four-channel unit with 1024 10-bit wordsavailable per channel. The minimum acquisition interval is 0.01millisecond which is marginal, but acceptable, for the extremely rapidevents monitored during gun firings. It uses a non-standard digitalinterface which is described in section 2.6. The Biomation 1015 has asmall range of remotely controllable functions. This means that the
operator has to use panel switches to initiate actions which can hesoftware-controlled in some recorders of more recent design.
2.5.2 Datalab DL2800
This multichannel unit (ref.4) consists of a functional controller,which sets parameters such as acquisition rates, trigger levels andoperating mode, and up to eight memory modules which are effectivelyseparate channels. Each memory has 4096 10-bit words and the miimumIacquisition interval is 0.5 microsecond. This device is connected t,the system controller by means of a digital interface which implementsalmost all of the transfer and control capabilities of the IEEE-488interface standard (ref.2).
2.6 Interfaces
The HP9825A computer is connected to the Datalab DL2800, the plotter, theprinter, and the diskette drive using the Hewlett-Packard 98034A HP-1Binterface (ref.5), which is that company's implementation of the IEEE-488standard. Up to fourteen peripheral devices can be controlled using thisinterface. The Biomation 1015 transient recorder is linked to the computerusing a Hewlett-Packard 98032A 16-bit interface (ref.6). The connectorterminating the cable from the HP98032A interface has been specificallyconfigured to suit the format of the digital output terminal of theBiomation 1015 and a prototype projectile velocity counter. The specificdetails of this non-standard termination are included in reference 7.
WSRL-0209-TR -4-
2.7 Program Security and Protection
HPL has a facility to secure programs and prevent a user displaying them oilthe internal printer of the computer or its front-panel display area. Thiscapability is not used tor these programs. They are secured only againstera sure by thle phys icalI lock inrg of a t ape-p rot ect ioii device oil the tapeca r tr idge. lIn the event ot' accidental erastirt or damage to the tapes inroutine use , master tapes are- available fo r (duplicat ion as reqired.
3. SYSTEM OPERATION
This section is included to given an overview of the way the system functionsas a whole. It is not intended to furnish detailed operating instructions.
3.1 System Connections
The current format of the system requires that phenomena monitored at thegun, such as the pressure and strain histories, projectile exit, and firingimpulse, are recorded on one of the transient recorders. Transducers anddetectors for events at the gun are connected to the recorder usingspecified signal conditioners and amplifiers. The transient recorder isconnected to the computer using the appropriate interface. Externalevents, such as bullet velocity downrange, are read from displays by theoperator, and entered when requested using the computer keyboard.
3.2 Data Acquisition
The transient recorder controls, and those of ancillary equipment, are setto suitable values. The firing is executed, and the digital information isnow available from the recorder's data store. The operator notes anyvelocity information required for keyboard entry to the computer.
3.3 Data Processing
The operator loads the appropriate tape cartridge into the HP9825A computerand turns the power on. All operations to load programs, set constants anddefine the functions of the "soft" keys are performed automatically. Anoperator instruction list is produced on the internal printer whichoutlines program operation and lists the actions performed by the "soft"keys. Such an instruction list is illustrated in figure 1. The operatorenters information when prompted by the computer. The computer then inputsthe digital data from the transient recorder under program control andperforms certain calculations to adjust baselines and to convert the datainto the required units. A Firing Susmmary is printed. The operator isthen requested to use the "soft" keys to designate his output requirements.Typical output options include a printed pressure summnary, or perhaps aplotted representation of the data. Examples of a firing summnary andprinted pressure summnary, and a plotted pressure history, are included infigures 2 and 3 respectively. Figure 2 illustrates the "default" pressuresummuary, which is intentionally brief. This initial summary allows theuser to determine the chronological location of the specific data herequires. lie may then make simple software modifications to print or plotthis information with higher resolution.
- S - WSRI,-020q-TR
Ihis program is MULII-CHANNEL
intended to draw OPTII Nbdata from aBIOMATION lO15. +8 - Bather ne:'tchannel.
It is designed +9 - Ignore nex'tfor convenient c hanliel.repetitive oper-at ion.
Data entries are MUL I-CHANNELonly required INPUTonce, but canbe entered or This program canchanged at will. draw data from
up to 4 channelsOn successive of the BI0MATIONruns, data keyed 1015 recorder.ir earlier isretained by use An extra outputof "CONTINUE" option startsk y without data acquisition o+
entry. data from thenext channel.
Use of this key This is done by
in this manner pressing e','fL )
when the Firing The next channelSerial Number is can be rejectedrequested will by using kev(f9)aL(tO(Ifati::al 1 y1irlC:rement that Print and plotnumber by I. output of multi-
channel data iseyboard data is done in terms of
limited to lb pressure units,characters per, using the first
input line. timebase.
Key(fl) may beused with all
NORMAL channels toOUTPUT OPI IONS: prodluce a print
summar y.+0 -o No more O/P
- start anew. If you have usedtl - Frint short any o+ the plot
pressure options. tile newsummary, data will al so
+2 - Single PIot be plotted.(A4 paper) The plot tormat
+::_. - Dou e Plot last used will(A4,paper) apply, and the
f4 - Single plot new data will be(A.- paper) overlaid on the
+5 - Four, plots first plot 111 a(A3 paper) diiferert (:ol our
+6 -- Reset plotcounter. In mU]ti-channel
+/ - Store data Usage. once youon tape. record data on
tape, you willbe c autioned ifyou omit torecord laterdata from otherchannel s.
FPicture 1. T,'pical 1 i tr-,cli c Iii ti i
r WSl-0209-R -6-
MEF Lot 16/2/73 MEF Lot 16/2/73
FIRING NUMBER FIRING NUMBER
154 154
Channel No. 1 Channel No. I
Kistler Ser.*430 TIME PRESSURE
January 8, 1981 (usec) (MPa)
0 0.0
$$*S$$$$$$ 8555 500 0.01000 28.3
1500 314.4
Max. Pressure... 2000 68.7
416.1 MPa 2500 24.83000 10.6
Muzzle Velocity. 3500 5.1
883.1 m/s 4000 2.04500 0.55000 0.0
SS5**$$858S$S** 5500 0.06000 0.06500 0.0
7000 0.07500 0.08000 0.08500 0.09000 0.09500 0.010000 0.0
Fig£ure 2. Tvpicl Firing and ressure :isterv:
- 7- WSRI,-02O9-TR
LO s
(0
4) ) 4C* 0 -r_l0 '-',, ,T)•i a.o > 0 r-
w I
p........ ....I . . ...........I .. ..
ts caU ) tm Lf 9 m mf ts t9"t VM M N N .- -4 U)
Cc j 3 !A E a ! BC1B i
WSRL-029-TR -8-
3.4 Software Limitations
It is highly unlikely that normal usage of this system will include boththe Biomation and Datalab Transient recorders. It is expected that theusual operating procedure will see the HP9825A associated with either onerecorder or the other for considerable periods of time. Although it wouldbe feasible to develop general software which would optionally controleither transient recorder, significant advantage is gained by using twoseparate programs. The first program, designated "9825131", is used whenthe HP9825A is connected to the Biomation 1015 transient recorder, whilethe second program "9825DL", is used with the Datalab instrument. Theprograms are essentially identical except for areas where consideration hasto be given to the different absolute size of the menories of the tworecorders, and their very different means of transmitting digital data.The existence of two programs poses no practical problem because of thenormal association of the computer with only one of the recorders. Theseparation of the software into two programs leads to improved utilisationiof data storage on magnetic tape. However, this means that Biomat ion andDatalab-sourced data should not be recorded on the same data tape. A thirdprogram, "9825P0", has also been developed which'is used to access andanalyse data obtained by either of the two previous programs and recordedon a tape cartridge. This program can only draw data from this source andthus has no formal data acquisition capability - it is for data processingonly. This program is normally used in the laboratory or officeenvironment to enable detailed examination of data previously obtained.
Listings of these three programs and associated explanatory notes areincluded in Appendices I1, 111, and IV respectively.
4. PROGRAM STRUCTURE
The structure of the three programs described in this paper is essentially thesame and is quite straightforward. The programs are divided into threeprincipal sections - a "driver" section, a group of "direct-execution"routines, and a group of "service" routines. A representative Flow Chart isillustrated in figure 4.
4.1 Driver Section
The driver section of each program is responsible for the setting up ofinitial conditions and for controlling the overall flow of the acquisitionand processing sequence. Initial actions include the assignment of keyvariables and counters and the setting of program flags. The operator isprompted to enter any external data requirements, such as instrumentsettings and titling information. The program then initiates dataacquisition, either from a transient recorder or from a tape cartridge.The operator is then prompted to use one of the output options actuated bythe Special Function Keys (N-f0). The functions of these keys have beensummarised in the print-out illustrated in figure 1.
- 9 -WSRI.-0209-TIk
MA IN PLOTI
GET VEL LT
GETDAT
PLOT3SUMMARY
O7PTIONS - r PLOT4
PRINTSET -LIMITS
SIORE
COMPLOT
Figure 4. Representative Flow Diagram
W RL-0209-TR - 10-
4.2 Direct-execution Routines
Trhese routines perform the major part of the acquisition, processing andtoutput functions of the program in use. Specifically, routines areincluded which:
(a) Acquire projectile muzzle velocity. (GETVEL)(b) Acquire data from recorder or tape. (GETDAT)(c) Print data summary. (SUMMARY)(d) Execute plot framework. (COMPLOT)(e) Record firing data on tape cartridge. (STORE)(f) Skip unwanted channels or data. (ABORT)
4.3 Service Routines
The service routines are responsible for the establishment of boundaryconditions for the direct-execution routines and for the execution ofcertain administrative functions within the program. The tasks of theseroutines include:
(a) Initialising the plotting areas specified. (PLOTn routines)(b) Establishment of upper limits for the plot axes. (SET LIMITS)(c) Issuing warnings for error conditions. (WARNING)(d) Control of print formats.
Routines (c) and (d) are administrative routines which are not included inthe Flow Diagram (figure 4).
4.4 Program Counters
Certain counters and temporary stores are used within the programs whosefunctions are not immediately obvious. These variables include:
(a) D$ - This variable acts as a general storage for alphanumeric input.Its value is normally transferred to another location aftercertain checks on its magnitude have been satisfied.
Cb) N - The number of the recorder channel currently being processed.This number also designates the plotter pen station associatedwith that channel.
Cc) Q - The total number of firings recorded on a data tape.(d) S - The total number of data files recorded on a data tape. One
firing can generate as many as six files, depending on thenumber of channels in use.
Ce) T - The number of the data tape track in current use.(f) Y - Indicates which of two plot areas on a double plot page is to be
used.(g) Z - Indicates which plot area on a four-plot page is to be used.
4.5 Program Flags
Program flags I throu,? h 6 are used to alert the program logic to certainoperating conditions. The flags have the following meanings when set:
(a) Flag I - Multichannel mode in effect.(b) Flag 2 - Data has been plotted.(c) Flag 3 - Data has been recorded.(d) Flag 4 - Current channel has been plotted.(e) Flag 5 - Current channel has been recorded.(f) Flag 6 - Indicates Biomation-sourced data (Program 9825P0 only).
- 11 - WSRI.-0201 -TR
The setting of flags 2 to 4 is conditional on flag 1. 'The operating modedetermines the function of Flag 5. In single channel use, flag 5 i- oflyencountered in the "set" condition if the user attempts to store firingdata a second time. The computer issues a suitable warning to limit tapewastage. In the multichannel mode, flag 3 "set" and flag 5 "cleared" is icondition which indicates that an earlier channel was recorded, but thatthe current channel has yet to be stored. An appropriate warning Isgenerated to prevent data loss.
5. CONCLUS I ONS
5. I ieiil i I Conieii t s
Three sets of software have been developed which at', calpable of cot,l l irn.the acquisit ion of certain interior ballistic data Iron gun ti r ings,.Subsequent data processing establishes several output opt ions Il 1( ti rigstorage on magnetic tape, printing a data summary, and plotting in any (,Ifour output formats. These software packages have proved to be reliableand flexible in routine use, and represent a tested hasis from wli ichindividual users can develop their own special-purpose programs.
5.2 Program Status
All three software packages have been extensively used, and all feasit)lcmodes of normal operation have been satisfactorily executted. The programscan be designated as "error-free" in all areas except:(a) external errors resulting from tape-drive malfunction;(b ) sequential user errors such as attempts to execute multichannel
options in the single channel mode"(c) errors resulting from user-alteration of variables and flag
settings during program execution.
5.3 Future Development
The software will undergo development in two prilncipai l ireas as .inti I I.i\Vequipment becomes avai lable:(a) Electronic acquisition of projecti le velocity.(b) Allowance for more detailed input of pisstut-transliutcer
calibration figures.(c) Incorporation of modi fications to accept iuputs relat ing to
the timing of firing pin impact and bul let exit
6. ACKNOWLEDGEMEN I'S
l)uring the development of the software described in this report, (onstruzk t iv,comment was received from several current and potent tal uisers. [Fiie ant hoiwishes to specifically acknowledge the contributions of )r P..I. Ca rson, 'IIK.If. Adams, Mr R.T. Hammond, all of' GPR Group, and Mr C. Phi II ups, of AHIWorkshops Group.
WSRL-0209-TR - 12 -
REFERENCES
No. Author Title
I Hewlett-Packard "Hewlett-Packard 9825A Desktop ComputerDesktop Computer Operating and Programming", ManualDivision 09825-90000, July 1979.
2 Institute of "Instrumentation Bus - IEEE-488-1978",Electrical and 1978.ElectronicsEngineers
3 Biomation "Model 1015 Waveform Recorder Operatingand Service Manual", Manual 0115-0100,February 1975.
4 Data Laboratories "DL2000 Series Transient RecorderOperating Manual", Doc. No. OM 0003,1978.
5 Hewlett-Packard "Hewlett-Packard 98034A HP-IB InterfaceDesktop Computer Installation and Service Manual", ManualDivision 98034-90000, May 1979.
6 Hewlett-Packard "Hewlett-Packard 98032A 16-Bit InterfaceDesktop Computer Installation and Service Manual", ManualDivision 98032-90000, May 1979.
7 Weapons Systems "Hewlett-Packard 98032A 16-Bit InterfaceResearch Laboratory Cable Allocations", Drawing PD8709,
January 1981.
8 Kemeny, J.G. and "Basic Programming", Wiley, New York,Kurtz, T.E. 1971.
13 - WSRI-O20 T R-1l
Append i x I
APPENDIX I
THE HPL COMPUTING LANGUAGE
The Hewlett-Packard Language (HPL) is a non-standard programming languagewhich has wide currency in the field of desktop computers because of threpopularity of calculators manufactured by that company. HPL has mdnysimilarities to ANSI BASIC (ref.8). Many of the instructions are shortenedversions of the BASIC equivalent and the execution of programs in HPl. andBASIC is very similar. However, it is appropriate at this stage to emphasist,the unique or unusual features of HPL.
1. The Assignment Operator (-v)
HPL uses the horizontal arrow (-*) to indicate the assignment operation.For example, the statement (A-B) means "store the value of the variablecalled A in a location assigned to the variable B". While this operat ionis performed in similar fashion by most computers, it is normalily writtenin the reverse order. For example, BASIC or FORTRAN would use t i-statement (B=A) for this purpose. Multiple assignment statements of theform A-B>C are permitted in HPL.
2. Multiple Statement Lines
HPL allows the use of several statements per line of program coding. Suchstatements are separated by a semi-colon and, with one or two exceptions,are executed strictly left-to-right.
3. Conditional Statements
The "IF" statement takes a similar form to that used by other languages:
If (expression A) (conditional relationship) (expression B) .....
However, in HPL, if the relationship is satisfied, the rest of the currentline, including any multiple statements, is executed. For example:
if A=B ; C d) ; 7r,.-D P
In the absence of instructions to continue elsewhere, the lolloi rig lin,will then be executed. If the relationship is not satisfied, execution ofthe next line occurs.
4. String Variables
HPL handles string variables (alphanumeric data) in a very similar fashionto BASIC. A string variable is denoted by the inclusion of the "$" signin its assignment (for example, AS), and must be appropriately allok.aLedby a prior dimension statement. Similar operations are permitted -ithstring variables under HPL as with BASIC.
WSRL-0209-TR -14-
Appendix 1
5. Program Execution
HPL is similar to BASIC and other simple computing languages, in that thecomputer's processing unit handles execution one line at a time. Programlines are interpreted (translated into internal machine-languageinstructions) and executed sequentially. There is little similarity tothe overall program compilation required, for example, by FORTRAN. Thismeans that execution can be stopped either from the keyboard, or routinelyduring the program, and changes to the coding or to the values of"variables made. This can be a very useful feature during the analysis ofresults, or to adjust incorrectly entered or acquired data.
-IS~ WSRI,-l209'-- FNAppend1 i xII
APPENDIX 11
PROGRAM LISTING AND USER NOTESFOR PROGRAM "9825131"
0:1: "DRIVER for BIOMATION 1015 Program (9825BI)":2:3: deg; 1 -*Z-)Y; 0->T4: dim M,T$[161 ,S$[16J,V,G$[2,16J,P$[2048J ,R[315: dim L[31,M[3] ,N$[l1,9] ,D$f301 ,E$[161 ,Q,S6: "RUN":if flg3 and flgS=O;cll 'WARNING'(])7: ""-*DS;fxd 0;cfg 1,2,3,4,5;1-*N;wti 0,2
8: enL "FIRING PROGRAM TITLE?",D$9: if Ien(D$)>16;clI 'WARNING'(3);jmp -110: if ten(D$)110;D$-*T$;""lt-*D$11: ent "FIRING SERIAL NUMBER?",D$12: if len(D$)>16;cll 'WARNING' (3);jmp -113: if len(D$)=0;str(val(S$)+)-.S$14: if len(D$)#0;D$-*,S$;""if-*D$15: "MULTI?":ent "No. of BIO.1015 Channels?",M16: "RUN2":if flg3 and flg5=0;cll 'WARNING'(1)17: cfg 5;if flg1;1+N4N;if flg2;sfg 418: ent "GAUGE TYPE (or COMNIENTIII)?",D$19: if len(D$)>16;cll 'WARNING'(3);jmp -1
20: if len(D$)II0;D$4G$[1];""-D$ 121: ent "GAUGE SERIAL NO. (or COMMENTII2)?",D$22: if len(D$)>16;cll 'WARNING'(3);jmp -123: if len(D$)#0;D$-*G$[21;""4>D$24: ent "CHARGE AMP. SETTING (MPa/V)?",rl25: ent "VOLTS FULL SCALE (BIO.1015)',F26: F~r1*10/1023+>r4;if flgI;jmp 327: ('nt "TIMEBASE SETTING (msvec)?",r228: cli 'GFTVFL'29): ('it 'GETDAT' ;i[ M>l;sf'g I310: "SUMMARY": fmt I ,2/,16"*" ,2/31: wrt 16.132: T$-*D$;cll 'CENTRE'(1)33: clI 'CENTRE'(2);spc34: prt " FIRING NUMBER"35: S$-*D$;cll 'CENTRE'(1);spc36: if flgl;fxd 0;"Channel No."&str(N)*I)$;ctl 'CENTRE'(1);spc
38: G$[21-*D$;cll 'CENTRE'(1)39: wrt 16.140: prt "Max. Pressure...41: fmt 2,f9.1," MPa",/42: wrt 16.2,r3/1043: prt "Muzzle Velocity."44: fmt 3,f9.1," m/s"
46: "OPTIONS":if flg4;clL 'COMPLOT'47: dsp "PRESS f-KEY FOR REQUIRED OUTPUT";stp ;jmp 048:49: "DIRECT EXECUTION ROUTINES":50:51: "GETVEL":ent "NUZZLE VELOCITY (m/s)?",V52: ret
WSRI-0209-TR 16-Append i x 11
53: "GETDAT":0-+r3-*R;wti 4,226;for 1=1 to 2554: (band(1O23,rdb(2))-+r5)+R4R55: fti (r5*r4)i-P$f2I-1,2IJ;next I56: R/25-PR;for 1=26 to 102457: Cband(1023,rdb(2))-R)*r4+r558: if r5>r3;r54r359: fti (r5)-4P$[2I-1,2I];next I;if N=M;wti 4,22860: ret61: "PRINT":fmt 1,2/,16"1*",2/;wrt 16.162: T$-*D$;cll 'CENTRE'(1);cll 'CENTRE'(2)63: spc ;prt " FIRING NUMBER"64: S$-'D$;cll 'CENTRE'(1);spc65: if flgl;fxd 0;prt " Channel No."&str(N);spc66: prt " TIME PRESSURE"67: wrt 16,"(",char(12),"sec) (MPa)68: prt -------------
69: fmt 4,16.O,f9.170: for J=1 to 1024 by K71: wrt 16.4,J*r2*1oO0,itf(P$I2J-1 ,2J]110;niext J72: wrt 16.173: ""-*D$;gto "OPTIONS"74: "COlIPLOT":if flg2=0;cll 'SET LIMITS'75: pen# N;if flg2;gto "GRAPH"76: scl 0,Mfl],O,L[1l;wrt 705,"TL2"77: xax -L[II/100,M[21,0,M(11,078: line 0;wrt 705,"TL1.2"79: xax -L[lI/100,M[31,O,M[1I,o80: line ;wrt 705,"TLI.2"81: yax o,L[2],0,L[1I,082: line 0;wrt 705,"TL.5"83: yax 0,L[3],0,L[l],084: line ;csiz 3,2,1,085: for I=L[2] to Lfl] by L[2)86: plt -M1/10,,1;cplt 0,-.2587: IbI str(I);next I88: pit -Mflj/(7+6p1),L[1J/10,189): csiz 3,1,1,90;lbl "PRESSURE (ffa)"90: csiz 3,2,1,091: for 1=M[1 to M[1] by Mf2j92: pit 1,-L[II/15,1;cplt -1.25,093: if I>=10;cplt -.5,0;if 1>=100;cplt - .5,094: lbi str(I);next I95: pit M[II/4,-L[1]/(7+2p1),l96: csiz 4,1,1;lbl "TIME"97: csiz 4,1.5,1;Ibi " (msec)"98: "GRAPH":for I=1 to 100099: if I*r2>r7;jmp 2100: pit I*r2,itfCP$[2I-1,2IJ)/10,-2;next I;pen101: pen;cfg 4;if flg2;ret102: csiz 3-pl,l.5,l103: pit .6*MI1J]4r4,(1.15p/4)*Lfl]>r5,1
105: ibI "Serial No. ",S$;fxd I106: plt r4,r5-.16*L[]],1;csiz 2.5,2,1107: Ibi "Max. Pressure ",r0/10," MPa"108: plt r4,r5-.24*L[1],1109: ibi "tluz. Velocity ",V," m/s";if figI;sfg 2110: ret
-17- WSRI.- 020'? -TI~Append ix II
111 : ,STORE": ""-*D$ ; trk T; if fIgS; cl 1 'WARNING' (2)112: if flg3;gto "DATASTORE"113: dsp "LOAD ",D$,"DATA TAPE; press 'CONT';"",*fl$;Stp114: "CHECK#FILES":ldf 0,Q,S;if S-2*Q+M<=60;.jmp 4115: if T=0;1+T;jmp -1116: wrL 16.1;prt "NOT ENOUGH SPACEFOR ALL1 CIIANNELS";wrt 16.1117: "NEW "- -D$;0-VrT;jmp -4118: "MARK TAPE":Q+1-Q;fdf S+1->S;mrk 1,2;nirk 1,100119: S+1*S;M+1000-M;rcf S,M,T$,S$,V;M-1000*N;if flgl-sfg :3120: "DATASTORE":r2-*R[1I;r3-~R[2I;F*rl/1023-*R[3I121: S+1-+S;rcf O,Q,S;fdf S;mrk 1,2130122: rcf S,G$,P$,R[I];fdf S+l;mrk 1,2123: sfg 5;gto "OPTIONS"124: "ABORT":if flg3 in figS=0;c11 'WARNING' (])125: if figl;1+N4N126: wti 4,226;for 1=1 to 1024127: rdb(2)--*r5;nc-)L I;if N=M;wti 4,228128: gto "OPT10tVY;129:
131:132: "PLOT1":psc 705;pclr;fxd 0;penl 1133: wrt 705,"IJ 156,244,10173,7452"134: sci 0,25,0,18;pit 0,0,-2135: cii1 'BOX'(14,12.5,25,18)136: wrt 705,"IP 1758,1444,8973,6248"137: cl 'COMPLOT'(.1);gto "OPTIONS"138: "PLOT2":.psc 705;pclr;fxd 0;penl 1139: -Z4Z;if Z>0;wrt 705,"IP 1718,1153,6544,4353"140: if Z>'O;c11 'COMPLOT'(0);gto "OPTIONS"141: dsp "LOAD GRAPH PAPER; PRESS 'CONT'"t;stp142: wrt 705,"1P507,358,7738,10358"143: sci 0,18,0,25144: pit 0,0,-2;cil 'BOX'(10,8.8,18,12)145: pIt 0,13,-2;cil 'BOX'(10,8.8,18,12)146: wrt 705,"1P1718,6358,6544,9555"147: c1l 'COMPLOT'(O);gto "OPTIONS"148: "PLOT3":psc 705;pclr;fxd O;pen/l#I1149: wrt 705,"1P571,357,15787,10389"150: sci O,38,O,25;plt 0,0,-2151: cl 'BOX'(21,17.6,38,25)152: wrt 705,"1P2176,1550,14'187,9570"153: cl 'COMPLOT'(.5);gto "OPTIONS"154: "PLOT4":psc 705;pcir;fxd 0;pen# 1155: if Y=1;2-+Y;gto "lY=1"
156: if Y=2;34Y;gto "Y=2"
157: if Y=3;4-Y;gto VY=3"f
158: if Y=4;1-Y;gto 'Y=4"t
159: "Y=1":dsp "LOAD GRAPH PAPER; PRrSS 'CONT';stp160: wrt 705,"1P571,357,15787,10389"161: scl 0,38,0,25162: pit 0,0,1;cil 'BOX'(1O,8.8,18,12)163: pit O,13,1;cli 'BOX'(10,8.8,18,12)164: pit 20,0,1;cli 'BOX'(10,8.8,18,12)165: pit 20,12,1;cli 'BOX'(1O,8.8,18,12)166: wrt 705,"IP1779,6371,6580,9574"167: cli 'COMPLOT'(0);gto "OPTIONS"
WSRL-0209-I'R -18-
Appen~dix 11
168: "Y=2" :wrt 705,"1P1779,1I156,6590,4354";jmp -1169: "Y=3":wrt 705,"1P9791,6368,14600,9580";jmp -2170: "Y=4":wrt 705,"1P9795,1149,14600,4363";jmp -3171: "SET LIMlTS":l000*r2-*r7.172: "oO4O01o.1"-4N$[lI173: "0050010.1"-),N$[21174: "0100010.2"-)-N$[31175: "0200020.5"4N$ [4)176: "0400051. 0"-N$ [51177: "0500051.0"-)-N$[61178: "1000102.0"-N$[7]179: "2000205.0"->N$[8]180: "40005010."4*N$[9)181: "50005010."4*N$[10]182: "80010020."->N$[11]183: for 1=1 to 11;1-),J184: if val(N$[I,1,3]>=r3/10;jmp 2185: next 1186: if r2=.01;ent "PLOT BASELINE- 4,5,or 10 msec?",r7187: for 1=1 to 11;14K188: if val(N$[I,1,3])>=r7;jmp 2189: next I190: val(N$tJ,1,31)-*,LI1J;val(N$[J,4,6])+)L[2]191: val(N$[J,7,9])-*LI[31 ;val(N$[K,1,31)-*M[l]192: val(N$[K,4,61)-M[21 ;val(N$[K,7,9I>-M[31 ;ret193: "BOX":iplt 0,p4,2;iplt p3,0194: ipit 0,-p4;iplt -p3,0,-i195: ipit pl,p4,-2;iplt 0 ,p2-p4
196: iplt p3-pl,0,-1;ret197: "WARNING":beep;if p1=2;jmp 4198: if p1=3;jmp 4199: dsp "LAST CHANNEL NOT STORED !!";wait 3000200: dsp "Use (U7) to tape; or else 'CONT';stp ;ret201: beep;dsp "LAST CHANNEL ALREADY STOREI)";stp ;jmp 0202: ilsp "TOO) LARGE";wait 1500;ret201 : "CENTR." :i f p= 2 ; gto "U/ L"204: 8- intL(Ien (D$ )/2 )-*L; ""+E
20.': for 1=1 to L;" "+E$[I,11;next 1206: for 1=1 to len(D$)207: D$[I,II-4E$[I+L,I1-L];next 1208: gto "E$OUT"209: "U/L":for 1=L+1 to len(E$)210: "-"->E$I,II;next I211: "E$OUT":prt E$;ret
- 19 - WSR[L-020-T,Apjperid i x I I
USER NOTES FOR PROGRAM "9825B1"
Line Number Comment s
4 Allocates memory for number of channels, title, serialnumber, velocity, two comment I ihes, pressure andmiscellaneous constants.
6,7 Normal start point after initialisation, sets imitialvalues. Designates interface number 2 (11P98032A) -sdata source.
1- Increments Se rial Number with iuull dati ent iv.
2b Ratio (applied volts/fuill scale volts) Is expressed as a10-bit word with full scale volts = 1023. 10-toldmagnification is applied to make best use of integer-precision storage later.
51 "GETVEL" is written as a routi ne because it is plannedto acquire this data electronically at a later date.
53-60 R is average baseline di sp I acement of first 2'points. Because a 16-bit word is transferred from theinterface, and only the first 10-bits are valid, theleft-most 6 bits are "anded out". Data value 22t(decimal) starts the Biomation 1015 output sequence,,while 228 interrupts that sequence and returns therecorder to its normal state.
74 "COMPLOT" is the common plotting routine used by all theavailable plot formats. The internal l)aramefter (pl) isused to adjust the positions of labels to different pagtesizes and shapes.
111 "STORE" records data on magnetic tape cartridge.
119 1000 is added to M as a signal that the data isBiomat ion-sourced.
124 "ABORT" skips unwanted channels.
132 "PLOTI" sets up plot area for a single plot on A4 sizepaper.
138 "PLOT2" sets tip plot area for a double plot on A4 sizepaper.
148 "PLOT3" sets up plot area for a single plot on A3 sizepaper.
154 "PLOT4" sets up plot area for four plots on A3 sizepaper.
171 "SET LIMITS" determines upper bounds for pressure andtime scales for plotting purposes. Also determinesmajor and minor tick intervals for plot axes, andlabelling frequency.
WSRL-0209-TR 20 -
Appendix II
186 0.01 msec is the minimum acquisition interval of theBiomation 1015. The user is given the option, in thiscase, of examining the first 400 or 500 points in moredet a I .
193 "BOX" is a routine that frames the plot area and setsaside labelling areas.
197 "WARNING" issues cautions during certain errorconditions.
203 "CENTRE" places titles centrally on print tape andunderlines where necessary.
21 -WSRL-0209-TRk
Appendix III
APPENIX III
PROGRAM LISTING AND USER NOTESFOR PROGRAM "9825DI,"
0:1: "DRIVER for DATALAB DL2800 Program (9825DL)':2:3: deg;14Z*Y;0-4T4: dim M,T$[16] ,S$[161,V,G$[2,161,P$181921,R1315: dim L[31 ,M[3J,N$II1,91,D$1301,E$I 161,Q,S6: "RUN":if f~g:3 and flg5=0;cll 'WARNING'(])7: ""-D$;fxd 0;cfg 1,2,3,4,5;1*N;wti 0,28: ent "FIRING PROGRAM IiTLE?",D$9: if len(D$)>16;cll 'WARNING'(3);jmp -110: if len(D$)#0;D$+T$;""->D$11: ent "FIRING SERIAL NUMBER?",D$12: if len(D$)>16;cll 'WARNING' (3);jmp -113: if len(D$)0O;str(val(S$)+1)*S$14: if len(D$)#0;D$-S$;"-*D$15: "MULTI?":ent "No. of DL2800 Channels?",M16: "RUN2":if flg3 and flg5=0;cll 'WARNING'(1)17: cfg 5;if flgl;1+N-*N;if flg2;sfg 418: ent "GAUGE TYPE (or COMMENT#1)?",D$19: if Ien(D$)>16;cll 'WARNING'(3);jmp -120: if len(D$)#O;D$-*G$[1];""4*D$21: ent "GAUGE SERIAL NO. (or COMMENTII2)?",D$22: if len(D$)>16;cll 'WARNING'(3);jmp -123: if len(D$)#0;D$-3*G$[21;""-*D$24: ent "CHARGE AMP. SETTING (MPa/V)?",rl25: ent "VOLTS FULL SCALE (DL2800)?",F26: F--*rl*10/1023-+r4;if flgI;jmp 427: sfg 13;dsp "TIMEBASE SETTING ("&char(12)&"sec)?";ent ""r228: if flgl3=0;r2/1000*r229: cll 'GETVEL'30: cll 'GETDAT';if M>1;sfg 131: "SUlIMARY":fmt 1,2/,16"*",2/32: wrt 16.133: T$-D$;cl1 'CENTRE'(1)34: cli 'CENTRE'(2);spc35: prt " FIRING NUMBER"36: S$4D$;cil 'CENTRE'(l);spc37: if flgl;fxd O;"Channel No."&str(N)-*D$;cil 'CENTRE'(1);spc38: G$[114D$;cll 'CENTRE'(I)39: G$[21-+D$;cli 'CENTRE'(1)40: wrt 16.141: prt "Max. Pressure...42: fmt 2,f9.1," MPa",/43: wrt 16.2,r3/1044: prt "Muzzle Velocity."45: fmt 3,f9.1," m/s"46: wrt 16.3,V;wrt I6.1;""-*D$47: "OPTIONS":if flg4;cll 'COIIPLOT'48: dsp "PRESS f-KEY FOR REQUIRED OUTPLT";stp ;jnip 049:50: "DIRECT EXECUTION ROUTINES":51:52: "GETVEL":ent "MUZZLE VELOCITY (m/s)?",V53: ret
Append ix III
54: "GETDAT":O-3-r3->R;for 1=1 to 2555: rdb(702)-*r5;(rdb(702)- ,r5)+R-*R;fti (r5*r4)*P$g 21-1,21];next 156: R/254R;for 1=26 to 409657: (rdb(7O2)*256+rdb(702)-R)*r4*r558: if r5>r3;r5-*r359: fti (r5)-P$[21-1,2II;next I;if N=M;rdb(702)-*r560: ret61: "PRINT":fmt 1,2/,16"*",2/;wrt 16.162: T$-4D$;cll 'CENTRE'(1);cll 'CENTRE'(2)63: spc ;prt " FIRING NUMBER"64: S$-4D$;cll 'CENTRE'(1);spc65: if flgl;fxd 0;prt " Channel No."&str(N);spc66: prt " TIME PRESSURE"67: wrt 16,"(",char(12),"sec) (MPa)68: prt -------------
69: fmt 4,f6.0,f9.170: for J=1 to 4096 by K71: wrt 16.4,J,' r2*1000,itf(P$[2J-1,2JI/10;next J72: wrt 16.173: ""-),D$;gto "OPTIONS"74: "COMPLOT":if flg2=0;cll 'SET LIMITS'75: pen# N;if flg2;gto "GRAPH"76: sci O,M[1],0,L[lI;wrt 705,"TL2"77: xax -L[1j/100,M[21,0,M(1j,078: line 0;wrt 705,"TLI.2"79: xax -L[1j/100,M[3j,0,M(1J,080: line ;wrt 705,"TLI.2"81: yax 0,L[21,0,L[11,082: line 0;wrt 705,"TL.5"83: yax 0,L[31,0,LII1I,084: line ;csiz 3,2,1,085: for I=L[21 to Q[11 by L[2186: pit -M[I/10,I,i;c?lt 0,-.2587: ibI str(1);next I88: pit -M[1J/(7+6p)1),L[1J/10,l89: csiz 3,1,1,90;lbl "PRESSURE (MPa)"90: csiz 3,2,1,091: for I=M[21 to M(11 by M[2192: pit 1,-L[I]/15,1;cplt -1.25,093: if I>=10;cplt -.5,0;if I>=100;cplt - .5,094: IbI str(I);next I95: pit M(lJ/4,-L~ij/(7+2p1),196: csiz 4,1,i;lbl "1TIME"197: csiz 4,1.5,1;lbl " (msec)"98: "GRAPH":for 1=1 to 400099: pit I~r2,itf(P$[2I-1,2I])/10,-2;next I;pen100: pen;cfg 4;if flg2;ret101: csiz 3-pl,1.5,l102: pit .6*M[l]4+r4,(1.i5-pl/4)*L[1]4r5,1103: ibi T$;plt r4,r5-.08*Lf1I,1104: ibi "Serial No. ",S$;fxd 1105: pit r4,r5-.16*L[11,1;csiz 2.5,2,1106: ibi "Max. Pressure ",r3/10," MPa"107: pit r4,r5-.24*Lfl1,1108: ibi "Muz. Velocity ",V," ni/s";if flgl;sfg 2109: ret
23 -WSRL-0209-TR
Append ix I I I
110: "STORE": ""*D$;trk T;if flg5;cll 'WARNING'(2)III: it flg3;gto "DATASTORE"112 : dsp "'LOAD) ''D$ ''1)ATA TAPE; pres s ' C(NT- ' ''''1$ ;st p11.1: ''CHECK//FlLES'': Idt O,Q,S; if S-2"yt-QM, -I1; jfl2p 4114: it T1'O; 1*T-jmp -1115: wrL 16.1;prt "NOT ENOUGH SPACEFOR ALL CHANNELS";wrt 16.1116: "NEW "-D$;O-+T;jmp -4117: "MARK TAPE":Q+1-*Q;fdf S+1-*S;mrk 1,2;mrk 1,100118: rcf S+1-*S,M,T$,S$,V;if figl;sfg 3119: "DATASTORE":r2-*,R[1I;r3-*-R[2I;F*rl/1O23-R[3]120: S+1-*S;rcf O,Q,S;fdf S;mrk 1,8500121: rcf S,GS,P$,Rt*J;fdf S+1;mrk 1,2122: sfg 5;gto "OPTIONS"123: "ABORT":if fig3 and flg5O0;cil 'WARNING'(1)124: if figl;1+N*N125: for 1=1 to 4096126: rdb(702)+rdb(702)-*r5;next I;if N=M;rdb(702)--*r5127: gto "OPTIONS"128:129: "SERVICE ROUTINES":130:131: "PLOTI":psc 705;pclr;fxd O;pen# 1132: wrt 705,"IP 156,244,10173,7452"133: scl O,25,0,18;pit 0,0,-2134: cll 'BOX'(14,12.5,25,18)135: wrt 705,"IP 1758,1444,8973,6248"136: cii 'COM4PLOT'(.1);gto "OPTIONS"137: "PLOT2":psc 705;pclr;fxd O;pen# 1138: -Z->Z;if Z>'O;wrt 705,"IP 1718,1153,6544,4353"139: if Z>O;cll 'COMPLOT'(O);gto "OPTIONS"140: dsp "LOAD GRAPH PAPER; PRESS 'CONT'"l;stp141: wrt 705,"IP507,358,7738,10358"142: sci 0,18,0,25143: pit O,O,-2;cil 'BOX'(1O,8.8,18,12)144: pit O,13,-2;cil 'BOX'(1O,8.8,18,12)145: wrt 705,"1P1718,6358,6544,9555"146: cli 'COMPLOT'(0) ;gto "OPTIONS"147: "PLOT3":psc 705;pcir;fxd 0;pen/ 1148: wrt 705,"1P571,357,15787,10389"149: sci O,38,0,25;pit 0,0,-2150: cl 'BOX'(21,17.6,38,25)151: wrt 705,"IP2176,1550,14187,9570"152: cli 'COMPLOT'(.5);gto "OPTIONS"153: "PLOT4":psc 705;pclr;fxd 0;pen# 1154: if Y=1;24Y;gto "Y=111155: if Y=2;34Y;gto "Y=2"
156: if Y=3;44Y;gto "'Y=3"
157: if Y=4;14Y;gto "'Y=4"
158: "Y1I":dsp "LOAD GRAPH PAPER; PRESS 'CONT'";stp159: wrt 705,"1P571,357,15787,10389"160: sci 0,38,0,25161: pit 0,O,1;cll 'BOX'(1O,8.8,18,12)162: pit 0,13,1;cii 'BOX'(10,8.8,18,12)163: pit 20,0,1;cli 'BOX'(10,8.8,18,12)164: pit 20,12,1;cli 'BOX'(iO,8.8,18,12)165: wrt 705,"1P1779,6371,6580,9574"166: cll 'COMPLOT'(0);gto "OPTIONS"
WSRL-0209-TR - 24-Appendix III
167: "Y=2":wrt 705,"1P1779,1156,6590,4354";jmp -1168: "Y=3":wrt 705,"1P9791,6368,14600,9580";jmnp -2169: "Y=4":wrt 705,"1P9795,1149,14600,4363";jmp -3170: "SET LIMITS":171: "0040010.1"*N$[Ij172: "0050010.1"*NSI2I173: "0100010.2'"4N$[31174: "0200020.5"-*N$[4j175: "0400051 .O"4N$[51176: "0500051 .0"4~N$[61177: "1000102.0"4N$(71178: "2000205.0"->N$[8J179: "40005010."-*N$[9]180: "50005010."-),N$[101181: "80010020."-N$[111182: for 1=1 to 11;1-J183: if val(N$[I,1,3]>=r3/10;jmp 2184: next I185: for 1=1 to 11;1-K186: if valCN$[I,1,3J)>=4000*r2;jmp 2187: next 1188: val(N$[J,1,3)4L[1] ;val(N$[J,4,61)+L[21189: val(N$[J,7,9])-*L[3J ;val(N$[K,1,3I)4~M[lI190: val(N$[K,4,6J)-M[2J;val(N$[K,7,9])4M[3] ;ret191: "BOX":iplt 0,p4,2;iplt p3,0192: ipit 0,-p4;iplt -p3,0,-i193: ipit pl,p4,-2;iplt O,p2-p4
194: ipit p3-pl,0,-1;ret195: "WARNING":beep;if pl=2;jmp 4196: if pl=3;jmp 4197: dsp "LAST CHANNEL NOT STORED !!";wait 3000198: dsp "Use (f7) to tape; or else 'CONT'";stp ;ret199: beep;dsp "LAST CHANNEL ALREADY STORED";stp ;jmp 0200: dsp "TOO LARGE";wait 1500;ret201: "CENTRE":if p1=2;gto "U/L"202: 8-int(len(D$)/2)*L;M->E$203: for 1=1 to L;" "-. E$1,lj;next I204: for I=I to len(D$)205: D$[I,IJ-4E$[I+L,I+L];next 1206: gto "E$OUT"207: "U/L":for I=L+I to len(E$)208: "]-E$II;next I209:. "E$OUT":prt E$;ret
- 25 - WSRL-0209-TRAppendix III
USER NOTES FOR PROGRAM "9825DL"
This program is essentially similar to "9825B1". Areas in which imiportantiiftterences occur are' note(.
Line Numbei Comments
4 Pressure array has to accommodate 4096 points, ratherthan 1024.
27,28 The DL2800's timebase unit is microseconds, rather thanmilliseconds. These lines are designed to accommodatethis difference and to allow a common timebase -
milliseconds.
54 This subroutine reflects the use of a differentinterface (HP98034A). The data treatment is similar tothe previous program.
59 The reading of the end-of-data (EOD) sequence at the endof the acquisition cycle is essential to return theDL2800 to its quiescent state.
I I
WSRI.-0209-TH - 26-Appendi~Iix IV
APPENDIX IV
PROGRAMI LISTING AND USER NOTESFOR PROGRAM "9825PO"
0:1: "DRIVER for HP9825A Processing Only program (9825P0)":2:3: deg;14Z->Y;O-T3: dim M,T$[161 ,S$j 16] ,V,G$12,16] ,P$[8192] ,R[3J4: dim H$[2,16] ,Q$[2048] ,S[31 ,A$[3] ,Q,S5: dim D$[201 ,E$[16] ,N$[11,91 ,L[3] ,M1316: "START":deg;-)Y-4Z;dsp "DATA TAPE PROCESSING PROGRAM";wait 15007: dsp "LOAD DATA TAPE; press 'CONT';stp8: ent "CAN YOU SPECIFY YOUR TAPE FILE?",A$9: if cap(A$[l,1])"Y";-)N-r;gto "RUN"10: ent "TRACK No. FOR FILE SEARCH?", T11: if T>I or T<0;jmp -112: trk int(T)+T13: dsp "TAPE SEARCH UNDER WAY... .wait!"14: fmt l,2/,16"*",2/15: "START SEARCH":ldf 0,Q,S;wrt 16.116: fmt 2,3x,"Track ",f2.O,2/16"*",2/17: l-r1;wrt 16.2,T18: fmt 3,"File No. ",f3.0,/16c19: fmt 4,"Firing ",9c20: fmt 5,"Firing No.",/,16c21: fdf rI;idf r2,r2,r2,r322: if r2=0 and r3=0;dsp "END-OF-FILE THIS TRACK";wait 3000;jmp 823: if r2=0 and r3=2;rl+l-rl;jmp 224: rl+lrl;jmp -325: ldf rl,M,T$,S$,V26: spc ;wrt 16.3,rl,T$27: if len(S$)<=9;wrt 16.4,S$28: if len(S$)>9;wrt 16.5,S$29: spc ;rl+1-rl;jmp -830: ent "SEARCH OTHER TRACK?" ,A$31: if cap(A$I1,I)#"Y";I N)-r1;gto "RUN"32: if T=O;1*T;jmp 233: if T=1;04-34: trk T;gto "START SEARCH"35: "RUN":if N<rl;cll 'WARNING'(I)36: ""+D$;fxd O;cfg 1,2,4,6;1-*N37: ent "ENTER TRACK No:",T,"FILE No.?",Q38: trk T;0-),rl39: fdf Q;ldf Q,M,T$,S$,V;if M>I00O;M-10OO4M;sfg 640: rl+l-rl;fdf Q+rl;idf r2,r2,r2,r341: if r2=0 and r3=2;r-I-*rl;jmp 242: jmp -243: "RUN2":if M>=1000 and flgI=O;cll 'WARNING'(3)44: Q+1-*Q;if flgl;I+N-4N;if flg2;sfg445: if N>rl;cll 'WARNING' (3)46: if MI);sfgl47: if flg6=0;ldf Q,G$,P$,R[*];4000*N;jmp 448: ldf Q,H$,Q$,S[*;O00->I149: H$I1I4G$[IJ;H$I2J-4G$I2I;Q$4P$50: for I=1 to 3;S[IIJR[I1;next I51: R[11+r2;R[2J4r3;RI3J4r4
27 -WR.0(9T
Append ix IV
52: "SUJMWAY":fmt 1,2/,16"*",2/53: wrt 16. 154: T$-4D$;cl1 'CENTRE'(1)55: cli 'CENTRE'(2);spc56; prt " FIRING NUMBER"57: S$-D$;d1I 'CENTRE'(I);spc
58: if flgl;txd 0;"Channel No.'&str(N)-D$;cll 'CENTRE'(1);spc
59: GSIII'D)$;clI 'CENTRE'(1)
60: $11I);II'CENTRE' (1)()I : wrt lb. Ib2: firt "Max. Pressure...63: hut. 2,1F9.1," MPa",/64: wrt 16.2,r3/1065: prt "Muzzle Velocity."66: fmt 3,f9.1," m/s"67: wrt 16.3,V;wrt 16.1;""-),D$68: "OPTIONS":if flg4;cll 'COMPLOT'
69: dsp "PRESS f-KEY FOR REQUIRED OUTPUT";stp ;jmp 0
70:71: "DIRECT EXECUTION ROUTINES":
72:73: "PRINT":fmt 1,2/,16"*"f,2/;wrt 16.1
74: T$-+-D$;cll 'CENTRE'(1);cll 'CENTRE' (2)
75: spc ;prt " FIRING NUMBER"
76: S$-D$;cll 'CENTRE'(1);spc77: if flgl;fxd O;prt " Channel No."&str(N);spc
78: prt " TIME PRESSURE"
79: wrt 16,"(",char(12),"sec) (MPa)80: prt "- - - - -- - - - -
81: fmt 4,f6.0,f9.182: for J=I to M by K83: wrt 16.4 ,J*r2*1000,itfCP$[2J-1,2J1/10;lext J84: wrt 16.185: ""'4D$;gto "OPTIONS"86: "COMPLOT":if flg20;cll 'SET LIMITS'87: pen# N;if flg2;gto "GRAPH"88: sci o,M111,O,LII1];wrt 705,"TL2"89: xax -L[1]/100,M[2],o,M[1I,090: line 0;wrt 705,"TLI.2"91: xax -L[1I/l00,M(31,o,M[11,092: line ;wrt 705,"TL1.2"93: yax 0,L(2],0,L[l],094: line 0;wrt 705,"TL.5"95: yax 0,Lf31,0,Ltll,096: line ;csiz 3,2,1,097: for 1=L[2] to L[11 by L[2198: pit -M[iJ/10,I,1;cplt 0,-.2599: ibi str(I);next I100: pit -M[11/(7+6p1),LIII/10,1101: csiz 3,1,1,90;lbl "PRESSURE (MPa)"102: csiz 3,2,1,0103: for I=fl12] to M[i] by M[2]104: pit 1,-L[11/15,1;cplt -1.25,0105: if 1>=10;cplt -.5,0;if I>=100;cplt -.5,0
106: ibi str(I);next I107: pit NIII/4,-LIII/(7+2pl),l108: csiz 4,1, 1;lbl "TIME"109: csiz 4,1.5,1;lbl " (msec)"
WSRL-0209-TR - 28 -
Appendix IV
110: "GRAPH":for I=1 to MIII: if 1*r2>r7;jmp 2112: pit 1~r2,itfCP$I21-1,2IJ)/10,-2;next I;pen113: pen;ctg 4;if flg2;ret114: csiz 3-pl,1.5,1115: pIt .6*M[1I-)r4,(1.15-pl/4)*L11-r5,1116: ibi T$;plt r4,r5-.08*LI1J,i117: ibi "Serial No. ",S$;fxd 1118: pit r4,r5-.16*L[l]I;csiz 2.5,2,1119: ibi "Max. Pressure ",r3/10," MPa"120: pit r4,r5-.24*1Lll,1121: IbI "Muz. Velocity ",V," m/s";if figl;sfg 2122: ret123: "ABORT":Q+1-Q;if fig1;1+N4N124: if N~rl;cli 'WARNING'(3)125: gto "OPTIONS"126:127: "SERVICE ROUTINES":128:129: "PLOTI":psc 705;pclr;fxd 0;pen# 1130: wrt 705,"IP 156,244,10173,7452"131: sci O,25,O,18;plt 0,0,-2132: ell 'BOX'(14,12.5,25,18)133: wrt 705,"IP 1758,1444,8973,6248"134: cll 'COMPLOT'(.1);gto "OPTIONS"135: "PLOT2":psc 705;pcir;fxd O;pen# 1136: -Z-*Z;if Z>0;wrt 705,"IP 1718,1153,6544,4353"137: if Z>0;cil 'COMPLOT'(O);gto "OPTIONS"138: dsp "LOAD) GRAPH PAPER; PRESS 'CONT'"1;stp139: wrt 705,"1P507,358,7738,10358"140: sci 0,18,0,25141: pit 0,O,-2;cll 'BOX'(10,8.8,18,12)142: pit 0,13,-2;cll 'BOX'(10,8.8,18,12)143: wrt 705,"1P1718,6358,6544,9555"144: cll 'COMPLOT'CO);gto "OPTIONS"145: "PLOT3":psc 705;1pclr;fxd 0;pen# 1146: wrt 705,"1P571,357,15787,10389"147: sci 0,38,O,25;plt 0,0,-2148: cll 'BOX'(21,17.6,38,25)149: wrt 705,"1P2176,1550,14,87,9570"150: cll 'COMPLOT'C.5);gto 'OPTIONS"151: "PLOT4":psc 705;pclr;fxd 0;penl 1152: if Y=1;24Y;gto "vY=1"153: if Y=2;3-i-Y;gto "fY=2"
154: if Y=3;4-4Y;gto "'Y=3"
155: if Y=4;1-3Y;gto IIY=4"t
156: "Y1I":dsp "LOAD GRAPH PAPER; PRESS 'CONT';stp157: vrt 705,"1P571 ,357,157B7,10389"158: sci 0,38,0,25159: pit O,0,1;cll 'BOX'(10,8.8,18,12)160: pit 0,13,1;cli 'BOX'(10,8.8,18,12)161: pit 20,0,1;cli 'BOX'(10,8.8,18,12)162: pit 20,12,1;cli 'BOX'(10,8.8,18,12)163: wrt 705,"1P1779,6371,6580,9574"164: ell 'COMPWOT'(0);gto "OPTIONS"165: "Y=2":wrt 705,"IP1779,1156,6590,4354";jmp -1166: "Y=3":wrt 705,"1P9791,6368,14600,9580";Jmp -2167: "Y=4":wrt 705,"1P9795,1149,14600,4363";jmp -3
29 -WSHL-0209-TR
Appendix IV
168: "SET LIMITS": I000*r2-r7169: "0040010. I"-)N$flJ170: "0050010.1"4N$[21171: "0100010.2"4N$[3]172: "0200020.5"4~N$[4]173: "0400051.0"-4N$[5]174: "0500051. 0"4N$[61175: "1000102.0"4N$1[7]176: "200205.0"4N$[8]177: "40005010."4*N$[91178: "50005010."-N$[101179: "80010020."4+N$[111180: for 1=1 to 11;14*J181: if va](N$[1,1,3j>=r3/I0;jmp 2182: next I183: if' r2=.Ol;enit "PLOT BASELINE- 4,5,or 10 msec?",r7184: for 1=1 to 11;1->K185: if val(N$II,1,3j)>=r7;jmp 2186: next 1187: val(N$[J,1,31)-L[1I ;val(N$[J,4,6])*L[2]188: val(N$[J,7,9I)-L[31;val(N$[K,1,31)4M[1I189: val(N$[K,4,6])-*l1[2J;va1(N$[K,7,9])-4M[3);ret190: "BOX":iplt 0,p4,2;iplt p3,0191: ipit 0,-p4;iplt -p3,0,-i192: ipit pl,p4,-2;iplt O,p2-p4
193: ipit p3-pl,0,-1;ret194: "WARNING":beep;if pl=2;jmp 4195: if p1=3;jmp 4196: dsp "LAST CHANNEL NOT STORED !!";wait 3000197: dsp "Use Mf) to tape; or else 'CONT';stp ;ret198: beep;dsp "LAST CHANNEL ALREADY STORED";stp ;jmp 0199: dsp "TOO LARGE";wait 1500;ret200: "CENTRE":if p1=2;gto "U/L"201: 8-int(len(D$)/2)-*L;""-*E$202: for 1=1 to L;" "-E$I1,I1;next 1203: for 1=1 to len(D$)204: D$[1,1J4E$[I+L,J+L];next I205: gto "E$OUT"206: "lJ/L":for I=L+1 to len(E$)207: "-"-)E$[I1,I1);next 1208:- "E$OUT":prt E$;ret
WSRI-020)-TR - 30 -
Appenidix IV
USER NOTES FOR PROGRAN "9825PO"
This program is broadly similar to the previously listed programs. Itsfundamental difference is that it draws its numerical data from a magnetictape cartridge, not a transient recorder. Areas of significant differenceare:
Line Number Comments
3,4 Set up different storage areas for Biomation andDatalab-sourced data.
7-34 Enable the user to examine a data tape to ascertain itscontents.
39 Check to see if data is Biomation-sourced.
48-51 Transfer Biomation data into common data storagelocation as required.
184 Allows examination of Biomation data acquired at maximumrate.
... .. .. ... ...I ... i I I l [ ..... I .- ,, , .i ..... . ... ....
WSRL-0209-TR
DISTRIBUTION
Copy No.
EXTERNAL
In United States of America
Counsellor, Defence Science, Washington Title page only
National Technical Information Service I
In United Kingdom
Defence Science & Technology Representative, London Title page only
British Library Lending Division 2
In Australia
Chief Defence Scientist 3
Deputy Chief Defence Scientist 4
Superintendent, Science & Technology Programmes 5
Director, Joint Intelligence Organisation (DDSTI)
Army Scientific Adviser 7
Navy Scientific Adviser 8
Air Force Scientific Adviser 9
Defence Information Services Branch (for microfilming) 10
Defence Information Services Branch for:
Australian National Library 11
United Kingdom, Ministry of Defence,Defence Research Information Centre (DRIC) 12
United States, Department of Defense,Defense Documentation Center 13-24
Canada, Department of National Defence,Defence Science Information Service 25
New Zealand, Ministry of Defence 26
ABCA National Standardisation Office (DGAD),
for ABCA Representatives - United States 27
United Kingdom 28
Canada 29
New Zealand 30IL
WSRL-0209-TR
President, Australian Ordnance Council 31
Director, Armaments and Electronic Material (Army Office) 32
First Assistant Secretary, Computing Services 33
Army Quality Assurance Division 34-35
Defence Library, Campbell Park 36
Library, Engineering Development Establishment 37
Library, Aeronautical Research Laboratories 38
Library, Materials Research Laboratories 39
Department of Industry & Commerce
Deputy Controller, Munitions Supply Divison 40
Manager, Explosives Factory Mulwala 41
Manager, Explosives Factory Maribyrnong 42
Manager, Explosives Factory Albion 43
Manager, Ammunition Factory Footscray 44
Manager, Munitions Filling Factory St. Mary's 45
Director Industry Development, Regional Office, Adelaide 46
WITHIN DRCS
Chief Superintendent, Weapons Systems Research Laboratory 47
Superintendent, Propulsion Division 48
Research Director Gun Propulsion 49
Principal Officer, Gun Propulsion Research Group 50
Principal Officer, Rocket Propulsion Research Group 51
Principal Officer, Propulsion Systems Group 52
Principal Officer, Nitrocellulose Propellants Group 53
Principal Officer, Composite Propellants & Explosives Group 54
Dr P.J. Carson, Gun Propulsion Research Group 55
Mr K.H.J. Adams, Gun Propulsion Research Group 56
Mr M.R. Grivell, Gun Propulsion Research Group 57
Mr J.H. Holcroft, Gun Propulsion Research Group 58
Mr R.T. Hammond, Gun Propulsion Research Group 59
WSRL-O2O -TR
Mr 1.R. Johnston, Gun Propulsion Research Group 60
Dr R.M. Lough, Propulsion Systems Group 61
Mr I.L. Thompson, Propulsion Systems Group 62
Dr C.W. Fong, Nitrocellulose Propellants Group 03
Mr N.V. Ayres, Nitrocellulose Propellants Group 64
Mr D.R. Kirk, Nitrocellulose Propellants Group 65
Propulsion Division Library 66
DRCS Library 67-68
Author 69
Spares 70-80
DOCUMENT CONTROL. DAI A SHEET
SecuLrity claissiticaiE on ol this page UNCLASSIF lED---
I DCUMENT NUMBERS 2 SEUIY CLASSIF-ICATION
AR a. CompleteNumber: AR-002-580 Document Unclassified
Series h. Title inNumber: IISRL-0209-TR Isolation: Unclassified
Ohr 011 . Summa~ry InNumbers: Isolation: Unclassified
A DATA ACQUISITION AND PROCESSING SYSTEMI FOR GUN INTERIOR BALLISTIC STUDIES I
4 PERSONAL AUTHOR(S): 5 D)OCUTMENT D)ATE-
A.R. ye May 1981
6 6.1 TOTAL NUMBERO[ PAGES 30
6.2 NIINIBER OFRI-RENCES. 8 -__
7 F7.! CORPORATE AUTHOR(S): 8FRIT-ERF\NCE NUMBERS
a. Taisk: 76/128Weapons Systems Research Laboratory -
Agen. : Defence7.2 DOCUMENT SERIES
AND NUMBER 9 F(OST CODlWeapons Systems Research Laboratory0209 -TR
10 -IMPRINT (Publishing organisation) I I COMPUTER PROGRAM(S)
2 (Title(s) and language(s))
Defence Research Centre Salisbury
12F- RELEASE UMITATIONS (of the document):
Approved for Public Release.
Security classification of this page: [7 UNCLASSIFIED
Necllll, das."lli.callol, (It fill% I1ge [IJN('IASS I 1. I1 ).
13 f NOUNC-MFN, I-IMITATIONS - othe infor.ation on these p .ges) _...
No limitation.
14 DF.S('RIPTORS: Interior ballistics 1 (OSATI CO)ES.a EJ(" Thesaurus Data acquisitionTerms Data processing 1004
Ranges (facilities) 0902Guns (ordnance)Control equipment
b. Non-ThesaurusTerms HP9825A computer
HtP85F computer
I SUMMARY OR ABSTRACT:(if this is security classified, the announcement of this report will be similarly classified l
A data acquisition and processing system for use in the gun ballisticranges of Propulsion Division, WSRL, is described. Adaptability andeconomy are achieved by the use of digital transient recorders interfacedto a Hewlett-Packard 9825A Desktop Computer. In one case, minor hardwarechanges were required. Flexible software has been developed, encoded inHewlett-Packard's "HPL" programming language. Full software details aregiven for reference by system users wishing to make modifications.
Security classification of this page: UNCLASSIFIED
The official documents produced by the Laboratories of the Defence Research Centre Salisbury
are issued in one of five categories: Reports, Technical Reports, Technical Memoranda, Manuals andSpecifications. The purpose of the latter two categories is self-evident, with the other three categoriesbeing used for the following purposes:
Reports documents prepared for managerial purposes.
Technical records of scientific and technical work of a permanent value intended for otherReports scientists and technologists working in the field.
Technical intended primarily for disseminating information within the DSTO. They areMemoranda usually tentative in nature and reflect the peisonal views of the author.
AI_
*4