Вы находитесь на странице: 1из 113

AVSCAN.

flight
Digital Flight Data Analysis Software

User’s Guide
Part Number
900-0004

avionica
inc.
14380 SW 139th Court, Miami, FL 33186 USA
(305) 559-9194 FAX (305) 254-5900
Internet: www.avionica.com

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 1 of 113
Copyright Avionica, Inc. 1997-2004. All Rights Reserved.
Printed in the United States of America

No part of this manual may be reproduced or transmitted in any form or by any means, electronic or
mechanical, including photocopying, recording, or information storage and retrieval systems, for any
purpose other than the purchaser's personal use without the prior written permission of Avionica, Inc.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 2 of 113
License Agreement
The software in this package is licensed to the user for use on a single computer controlled by the
user. The user acknowledges and agrees that this software is a proprietary product, of commercial
value to Avionica, and protected under U.S. copyright law and trade secret laws of general
applicability. This License Agreement does not convey to the user any interest in or to the
software, but only a limited right of use in accordance with this License Agreement and the below
stated Disclaimer. As such, any sale or lease of this software by the user to a third party is
prohibited. By loading and executing this software, the user agrees to all the terms of this License
Agreement and the below stated Disclaimer.

Disclaimer

Avionica makes no claims as to the fitness of this product for a particular task. It is the sole
responsibility of the user to determine the fitness of this product for the particular task at hand.
Avionica will not be liable for losses or damages resulting from use or misuse of this product.
Microsoft, Teledyne, L3, Allied Signal, Austin Digital, Penny & Giles, and any of their product names
mentioned herein are registered trademarks, property of their respective companies.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 3 of 113
Contents

1.0 Overview ...............................................................7


1.1 Packing List................................................................ 7
1.2 Software Installation ................................................. 7
1.2.1 Minimum System Requirements........................ 7
1.2.2 Install Software ................................................... 7
2.0 TSC files..................................................................9
2.1 Unformatted TSC files ............................................... 9
2.2 Formatted TSC files ................................................... 9
2.3 Opening a TSC file.................................................... 9
2.3.1 Parameter files.................................................. 10
2.3.2 Template files.................................................... 11
2.3.3 Text files ............................................................. 11
2.3.4 Other file types ................................................. 12
2.4 Renormalizing.......................................................... 13
2.5 Saving sections ....................................................... 14
2.6 Default directories .................................................. 14
2.7 Saving and closing ................................................. 14
2.8 Saving to CSV ......................................................... 15
2.9 TSC data in memory versus on disk ...................... 16
3.0 The AVSCAN.flight Tree ......................................18
3.1 The Description Section ......................................... 18
3.2 The Parameters Section ......................................... 18
3.3 The DataViews Section .......................................... 19
3.4 The EventDefs Section............................................ 19
3.5 The Events Section.................................................. 19
3.6 The Anomalies Section........................................... 20
3.7 The Tree Popup Menu ............................................ 20
3.8 Parameter Drag-and-Drop.................................... 21
3.9 Modifying item ordering ........................................ 21
4.0 Parameters ..........................................................22
4.1 Recorded parameters ........................................... 22
4.2 System parameters................................................. 23
4.3 Computed parameters ......................................... 27
4.4 Parameter descriptions.......................................... 29
5.0 DataViews ...........................................................31
5.1 Creating a new DataView .................................... 31
5.2 Working with DataViews ........................................ 32
5.2.1 Multiple Parameter Dragging ......................... 32
5.2.2 Color Correspondence ................................... 33
5.2.3 The DataView Cursor ....................................... 33
5.2.4 Zooming ............................................................ 33
5.2.5 The Sync Range ............................................... 35

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 4 of 113
5.2.6 The DataView scroll bar .................................. 35
5.2.7 Tabular display settings ................................... 35
5.2.8 Tabular print settings ........................................ 36
5.2.9 Graph settings .................................................. 36
5.2.10 Overlapping graphs ........................................ 38
5.2.11 Parameter Deletion ......................................... 39
5.2.12 Drag to Change Column Widths ................... 39
5.2.13 Moveable Columns ......................................... 39
5.2.14 Renaming ......................................................... 40
5.2.15 Import/Export.................................................... 40
5.2.16 Print settings ...................................................... 40
5.2.17 Manual event creation ................................... 40
5.2.18 The Event Cursor............................................... 40
6.0 EventDefs.............................................................41
6.1 Creating a new EventDef...................................... 41
6.2 Automatic EventDefs ............................................. 43
6.3 Running an EventDef ............................................. 44
6.4 Events....................................................................... 44
6.4.1 Master Events ................................................... 45
6.4.2 Events synced to DataViews .......................... 45
6.4.3 Manual events.................................................. 46
6.4.4 Event range deletion....................................... 47
6.4.5 Event strings ...................................................... 47
7.0 Anomaly Tags .....................................................51
7.1 Creating a new Anomaly Tag............................... 51
7.2 Editing anomaly types ........................................... 52
7.3 The Anomalies system parameter ........................ 53
8.0 Printing .................................................................54
8.1 Tabular printing ....................................................... 54
8.2 Graphical printing .................................................. 55
8.3 Default print settings............................................... 57
9.0 Importing and Exporting ....................................58
9.1 Exporting Events...................................................... 58
9.2 Import/Export of PRM Files ..................................... 58
10.0 Additional issues.................................................60
10.1 Errors ......................................................................... 60
10.2 Subsecond sampling.............................................. 60
10.3 Stored window sizes................................................ 60
11.0 Technical reference for built-in functions and operators 61
11.1 Statistical functions ................................................. 61
11.2 Grouped statistical functions ................................ 62
11.3 Differential functions............................................... 62
11.4 The Integral function .............................................. 63
11.5 Trigger functions...................................................... 63

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 5 of 113
11.6 The Duration function............................................. 66
11.7 The Index function .................................................. 66
11.8 The OscFilter function ............................................. 67
11.9 The Airport Lookup functions................................. 67
11.10 Utility functions ..................................................... 68
11.11 Mathematical functions ..................................... 68
11.12 Mathematical operators .................................... 70
11.13 Logical operators ................................................ 70
11.14 Comparison operators........................................ 71
11.15 Bitwise operators ................................................. 71
12.0 Parameter definitions .........................................72
12.1 Parameter construction concepts ....................... 72
12.1.1 Bit field extraction ............................................ 73
12.1.2 Conversion ranges ........................................... 74
12.1.3 Bit field conversion ........................................... 75
12.1.4 Subsecond sampling ....................................... 78
12.1.5 Rounding........................................................... 79
12.1.6 Additional parameter data ............................ 79
12.2 The PRM Editor ........................................................ 79
12.2.1 General parameter information..................... 80
12.2.2 Sample selection section ................................ 81
12.2.3 Sample definition section................................ 82
12.2.4 Comments ........................................................ 94
12.2.5 Utility buttons .................................................... 95
12.3 PRM file format...................................................... 101
12.3.1 Non-generic tokens ....................................... 107
13.0 Workspace Considerations .............................112

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 6 of 113
1.0 Overview

This document provides basic documentation on the use of the AVSCAN.flight product.
AVSCAN.flight is a fully Windows-compliant application for reading, viewing, and analyzing flight
data from Digital Flight Data Recorders. It allows users to read raw data files created by
Avionica’s GP-573 download procedures, with a comprehensive parameter library available to
convert the data in these files into meaningful values. The data can then be viewed in both a
tabular and graphical format, with the capability to zoom into specific areas of interest. In
addition, AVSCAN.flight allows the user to design and run event definitions which can
automatically locate and highlight specific points of interest within the data. The design of these
views and event definitions may be readily saved and applied to other data files.

1.1 Packing List

This package contains the software and instruction necessary to run AVSCAN.flight on a PC
computer. The following items are included in the package:

1. AVSCAN.flight Version 5.0 or later, on CD-ROM. Included on the CD-ROM is the setup utility
(Setup.exe), and, if you have made arrangements with Avionica to receive a set of templates
or parameter files, a folder called "Templates" which contains these files.
2. This document.

1.2 Software Installation

The following procedures assume that you are thoroughly familiar with the Microsoft Windows
95/98/Me/XP or NT/2000 operating system environment.

1.2.1 Minimum System Requirements

A Pentium-based PC (733 MHz or better)


256 MB RAM minimum
Graphics accelerator recommended
30 GB or larger hard disk
Microsoft Windows operating system (98/NT/2000/XP)
Hewlett-Packard or 100% compatible Laser printer

1.2.2 Install Software

To install the AVSCAN.flight software:

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 7 of 113
1. Place the CD-ROM into your CD-ROM or DVD-ROM drive.
2. Click the "Start" button in the lower left-hand corner of your screen, then select "Run…".
3. At the prompt, type "D:\SETUP". This will run the Setup utility. Follow the instructions on the
screen. (The most common drive letter for a CD-ROM or DVD-ROM drive is D:; if your computer
uses a different drive letter, then you will need to substitute that drive letter.)
4. When prompted for an organization name, type the name of your organization as it will
appear on all printouts made by the product. This name can never change without
invalidating your license.
5. By default, the product will install to "C:\AVSCAN." You may select a different directory.
6. When the Setup utility is complete, you may run AVSCAN.flight through the "Programs" menu
item on the Windows taskbar. You may want to set up a shortcut icon on your desktop.
7. The first time you run AVSCAN.flight, you will be prompted for a key code. Call Avionica Tech
Support at 305-559-9194 and read the engineer your lock code. They will in turn provide you
with a unique key code. If the software is ever re-installed, or moved from the directory in
which it was installed, you will require a new key code.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 8 of 113
2.0 TSC files

TSC files (files with a .TSC extension) are data files which are read by the AVSCAN.flight product.
They come in two flavors, unformatted and formatted.

2.1 Unformatted TSC files

Unformatted TSC files consist purely of raw data downloaded from a Digital Flight Data Recorder
(DFDR). The data is in a highly compressed format to minimize the file size, and may contain data
anomalies or errors resulting from dropouts during the recording process.

2.2 Formatted TSC files

Formatted TSC files contain information relevant to the AVSCAN.flight product, including a textual
description, the parameter table (used to convert raw data into meaningful values), and
information pertaining to views and event definitions designed by the user. In addition, formatted
TSC files are normalized, which means that all errors (dropouts of data) are isolated and their
locations in the data stream are stored for reference. See Section 10.1 for more on this topic.

The user is expected to have downloaded an unformatted TSC file from a DFDR. When such a file
is opened, AVSCAN.flight detects that it is unformatted, and automatically formats and normalizes
it. NOTE: If you are interfacing to a Fairchild (L3) solid state recorder, you must select one of the
FDT file types when opening your file. Please see Section 2.3.4 for details.

2.3 Opening a TSC file

Unformatted TSC files must be formatted and normalized to be used in AVSCAN.flight. The very
first time you open an unformatted TSC file, you will be prompted as to whether you wish to
overwrite the unformatted file with the formatted one, or whether you wish to have the formatted
file be saved to another location. If you wish to retain the unformatted file, then you will need to
save the formatted file to a different location. If you choose to save to a different location, you
will next be prompted to enter the file name of the file to save to.

The next step you will need to take to open an unformatted file in AVSCAN.flight will be to inform
the software how to determine the proper sync characteristics of the file you are opening. Files
downloaded from flight data recorders have numeric codes spaced evenly throughout the data
stream to enable data to be synchronized in the case of dropouts or corrupted data.
AVSCAN.flight must know how these "sync codes" are spaced in the file in order to properly read
the data. In addition, AVSCAN.flight must know the proper "subframe size" for the data to be read
in: the subframe size is the number of 12-bit data words per subframe, or second, of data, and

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 9 of 113
can vary from 32 to 512 in modern recorders. When opening a new TSC file, you must specify how
these two characteristics of the data are to be determined.

After informing AVSCAN.flight of where to save the formatted file, you will be prompted as to
whether you would like AVSCAN.flight to determine the sync characteristics of the file
automatically or whether you would like to specify the sync characteristics manually. In most
cases, AVSCAN.flight will properly determine the sync characteristics on its own, so choosing the
automatic option is sufficient. However, for files originating from archaic or unusual data
recorders, or for files with heavily corrupted data streams, AVSCAN.flight may not be able to
determine the proper sync characteristics. In this case, you should select the manual option.
Once this option is selected, you will be prompted to specify both the sync sequence and the
subframe size, based on all known possibilities.

Once you have directed AVSCAN.flight to automatically determine the sync characteristics, or
once you have selected the sync characteristics yourself, you will be prompted to enter a
template file (.TPL extension) or parameter file (.PRM extension) to use in formatting the file,
followed by an optional text file (.TXT extension). These options are described below.
Figure 2-1 Opening a TSC file

2.3.1 Parameter files

Parameter files contain information pertaining to how AVSCAN.flight should convert raw data in a
TSC file into meaningful engineering units. Parameter files have a PRM file extension, and are
based on the aircraft type and the type of DFDR used to record the data. The user must know
what type of aircraft the given TSC file came from, and must instruct AVSCAN.flight on which PRM
file is appropriate for converting the data. Use of the wrong PRM file will result in bad data.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 10 of 113
When opening an unformatted TSC file, the user may select a PRM file to use to convert the data.
That PRM file will then be stored with the formatted TSC file.

PRM files may be modified within AVSCAN.flight itself. The data always exists in its original format
so changes to the parameter formulas will be instantly reflected in AVSCAN.flight. Please see
Section 4.1 for more on editing parameter formulas.

Avionica maintains an extensive library of PRM files for a great variety of aircraft types and
configurations. In addition, we offer services for customizing existing PRM files or for creating new
ones from scratch. Please contact Avionica for quotes on your specific needs.

2.3.2 Template files

Template files are nothing more than formatted TSC files without data. When a user works with
data from a particular readout, they will undoubtedly design views and event definitions. These
views and event definitions will be stored with the particular TSC file, but many of these will be
applicable to other TSC files as well. AVSCAN.flight provides a quick way to transfer all such
information to other TSC files — by exporting the formatted TSC file as a template (.TPL extension).
To save a TSC file as a template, select the menu item, "File->Save as template…". You can also
create a new, blank template by selecting "File->New." You will be asked for a TPL file to save to.
The template created will contain no parameters, no DataViews, and no EventDefs.

When a new, unformatted TSC file is opened, the user may select and apply a template file to it.
The effect of this will be that all views and event definitions which were created for the template
will be copied into the newly-formatted file, thus allowing the user to apply those same views and
event definitions to the new data with minimal redundancy. In addition, the PRM file which was
embedded in the template file is applied to the new TSC file, so automatic data conversion can
take place.

Note that, instead of using a TPL file, the user may also use a formatted TSC file for the template.
In this case, all the information from the "template" TSC file will be copied over, except the actual
flight data, which will come from the unformatted file. AVSCAN.flight will, of course, not let you
apply an unformatted TSC file as a template to another unformatted TSC file.

As with PRM files, Avionica maintains an extensive library of template files for a great variety of
aircraft types and configurations. In addition, we offer services for customizing existing templates
or for creating new ones from scratch. Please contact Avionica for quotes on your specific needs.

2.3.3 Text files

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 11 of 113
After selecting a parameter or a template file for formatting, the user will also be prompted for a
.TXT file. This is simply a plain text file which will be read in and used for the "Description" section of
the TSC document (see Section 3.1). The Avionica GP-573 readout procedure produces a file
called "ACINFO.TXT", while RSU handhelds produce a .TXT file with the same serial number as the
.TSC file. This file contains information on the aircraft and DFDR which will be relevant to the user.
This feature allows the user to import this file into the formatted TSC file, enabling direct access to it
from AVSCAN.flight.

2.3.4 Other file types

AVSCAN.flight can open files containing data in a variety of formats besides that of native TSC
files. Each unique data format is expected to exist in a file with a particular file extension (.bin,
.fdt, .sdf, etc.) If you have a file of a given type but it does not have the required extension, you
will need to give it the required extension in order for AVSCAN.flight to recognize it. For some file
types, you may need to know certain information about the data in order for AVSCAN.flight to
interpret it properly. In particular, for some file types, AVSCAN.flight will need to be told the
number of words per subframe; different options for the number of words per subframe are
indicated using the WPS abbreviation (e.g. 64 WPS, 128 WPS, etc.). For data from a Fairchild (L3)
data recorder, an FDT extension is expected, and you must specify the recorder type (FA2100 or
F1000) and, for the F1000, the mode (542E, 542EP, 573, 747). The file formats that AVSCAN.flight
recognizes are:

ACCO Files — 64 WPS Unpacked (.bin)


Allied Signal FDAMS Files (.qxx)
Allied Signal FDAMS Files (.dxx)
Allied Signal HHDLU (*.dlu)
Teledyne OQAR Files (.dat)
Penny & Giles OQAR Files — 128 WPS (.fld)
Penny & Giles OQAR Files — 256 WPS (.fld)
Austin Digital PCR Files — 64 WPS (.pcr)
Allied Signal RTU Files — 64 WPS (.sdf)
Allied Signal RTU Files — 128 WPS (.sdf)
Allied Signal RTU Files — 256 WPS (.sdf)
PKZIP Compressed Files (.zip)
FA2100 Compressed Files (.fdt)
F1000 Compressed Files — 542E Mode (.fdt)
F1000 Compressed Files — 542EP Mode (.fdt)
F1000 Compressed Files — 573 Mode (.fdt)
F1000 Compressed Files — 747 Mode (.fdt)

To open one of these file types instead of a TSC file, select from the options under the "Files of
type" area of the File->Open dialog box. (See Figure 2-2). When opening any of these file types,
you will be prompted for the name of a TSC file. This is the TSC file that the file you are opening will

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 12 of 113
be converted to. You will then be working with the TSC file - AVSCAN.flight does not make
modifications to the original file.

Figure 2-2 Other file types

Note that for PKZIP compressed files, the software is expecting to find a TSC file within the archive
of the ZIP file. If a TSC file is found, that file (the first one, if there are more than one) will be
extracted and copied to the TSC file you specify. If no TSC file is found, the conversion will fail.

Depending upon the size of the file and its type, the conversion process could take a significant
amount of time.

2.4 Renormalizing

In the rare case where a TSC file becomes corrupted and can not be opened, or if reapplication
of a template or PRM file becomes necessary, one may renormalize a TSC file. The
renormalization process will treat the formatted TSC file as an unformatted TSC file, prompting you
again for a template or PRM file and a text file to apply, and erasing all information which was
created after the original formatting process. You should not renormalize a file unless absolutely
necessary, since you will lose all work which was done on that file since it was first opened.

To renormalize a TSC file, make sure the file is not currently open, and select the menu item, "File-
>Renormalize." You will be prompted for a TSC file to renormalize, and subsequently for a
template or PRM file to apply, and a text file. You will not be allowed to renormalize a currently
open file.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 13 of 113
2.5 Saving sections

In some cases it may be convenient to work only with a subsection of the TSC data, say the data
pertaining to a single flight or takeoff. AVSCAN.flight provides you with the ability to create a new
TSC file, which contains only a selected range of data, but which preserves all the views and
event definitions of the original.

To save a section of a TSC file, select the range which you would like to save in any open
DataView using the graph cursor (see Section 5.2.3), then select the menu item, "File->Save
section..."

2.6 Default directories

Since TSC files, templates, and PRM files may all be located in different places on your machine,
AVSCAN.flight allows you to specify default directories for each. When prompted for a file of a
given type, the prompt dialog will default to the specified directory location. You may, of course,
change the directory location at the prompt.

To specify a default directory, select the appropriate menu item under "File->Directories," and
select the appropriate directory in the dialog box which comes up. These directories are stored in
the Windows registry on your machine, and not with any TSC file; so they will always be the same
on a given machine.

2.7 Saving and closing

You may save changes you have made to a TSC file at any time by selecting the "File->Save"
menu item. As with any application, it is recommended that you save your changes from time to
time if you are making extensive modifications, so that your changes will not be lost in the rare
case of an abnormal termination, or an accidental shutdown of your computer.

You may also save your changes to a different TSC file by selecting the "File->Save as" menu
option. A dialog box will come up allowing you to select the name and location for the new file.
Once you do this, you will now be working with the new TSC file you have created; the original file
will remain the same as it was when you first opened it, or after your last save.

You may close the TSC file you are working on without saving by selecting "File->Close." If you
made modifications to the file, you will be asked for confirm that you are willing to close without
saving. If you confirm, your work since your last save will be lost.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 14 of 113
2.8 Saving to CSV

AVSCAN.flight gives you the ability to export some or all of the TSC flight data to a comma-
separated value (CSV) format for viewing in a text editor or for importing into a spreadsheet. To
export data to CSV format, select "File->Save CSV". A dialog box will come up which allows you
to specify what data to export and how to format it (see Figure 2-3). These options are described
below. Once you have selected your options, click OK on the dialog, and you will be prompted
for a CSV file to save to.

Figure 2-3 Save to CSV

The following options are available:

Save data only between these COUNTER values


Check this option to only save values within a specific range of COUNTER values. Enter the
starting COUNTER value in the "Start" field, and the ending COUNTER value in the "End" field.

Interval
By default, AVSCAN.flight will save every second of data to the CSV file. In some cases, you may
want to change this interval. For instance, some parameters are sampled more than one per
second (see Section 10.2), and you may want to choose an interval smaller than one second to
see these subsecond samples. You may also wish to enter an interval greater than one second to
limit the amount of data exported.

Output sync losses of error values as:

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 15 of 113
For data points which represent sync losses (See Section 10.1) or other types of error values, you
can choose what to display in the corresponding field in the exported CSV file. Choose "Empty" to
leave the field blank. Choose "Zero" to put a value of ‘0’ in place of the error value. Or choose
"This string" to enter a text string of your choosing in the field.

Quotes around strings


For data points which return text values rather than numeric values, you may wish to enclose the
text values in quotes. This may need to be done to clarify to the software that you use to import
the CSV file (a spreadsheet program, for example) that the field in question should be interpreted
as a text string even if it looks like a number.

Sparse output
With the sparse output option selected, values will only be output to the CSV file when they have
changed from the previous row of output. Values which have not changed from the previous row
will appear in the CSV file as blank.

Save COUNTER values


Select this option to save the COUNTER values along with the values of the parameters in the CSV
file. This option is selected by default.

Save values for these fields


You can control which parameters whose values you wish to export. The list box on the left shows
all the parameters available for export; the list box on the right shows which are currently selected
for export. Use the arrow buttons to transfer parameters between the two list boxes. If the list box
on the right contains no parameter names, the values of all parameters will be exported. You can
also control the order in which the parameters will appear in the CSV file. Select parameters in
the list box on the right, and use the "Move up" and "Move down" buttons to rearrange their order.

Save field names on first line


With this option selected, AVSCAN.flight will write the names of the parameters to the first line of
the CSV file. When the CSV file is then imported into a spreadsheet, the parameter names can be
used as column headings.

2.9 TSC data in memory versus on disk

Usually AVSCAN.flight reads all of the TSC data into memory when you open a TSC file. This
generally makes the software run faster. However, with unusually large files or on machines with
little system memory, reading the data into memory may cause the operating system to be
sluggish. If this is the case, AVSCAN.flight can be told to read the TSC data from disk as needed.
This may result in less than optimal performance for AVSCAN.flight, but better performance for
other applications running on the same computer. To force AVSCAN.flight to read the TSC data
from disk rather than memory, uncheck the "File->Read TSC data into memory" option.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 16 of 113
This option is for advanced users only and should typically only be exercised under unusual
circumstances.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 17 of 113
3.0 The AVSCAN.flight Tree

When the user opens a TSC file, AVSCAN.flight posts a single window with a list box containing all
of the elements of the document in an easy-to-use, hierarchical layout called a tree. (See Figure
3-1). Double-clicking on each of these elements will reveal the contents of each section of the
document. Each of these sections is detailed below.

Figure 3-1 The AVSCAN.flight tree

3.1 The Description Section

The "Description" section of a TSC document is simply an area of text which is stored with the
document and can be freely edited by the user. This allows the user to enter information relevant
to this particular readout, or to import the ACINFO.TXT file generated by the Avionica download
procedure (or the serialized .TXT file in the case of an RSU handheld) . Double-click on this branch
of the tree to bring up this text in a text-editor. The text may be freely modified.

3.2 The Parameters Section

The parameters section maintains information relevant to the three different kinds of parameters
known to AVSCAN.flight: recorded, system, and computed. Recorded parameters are the actual
parameters which were recorded by the DFDR. System parameters are single-valued variables
which contain useful information about the document. Examples of system parameters include
the date and time the file was normalized, the number of frames in the document, and the

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 18 of 113
aircraft type from which the document originated. Computed parameters are parameters whose
values are computed from other parameters; for instance, a computed parameter called
"Vertical Speed" could be created which is the differential of altitude. Double-click on each of
these branches to show a list of each type of parameter. Any of these types of parameters can
be individually selected and brought into views or tests. See Section 5.1 for more information on
this procedure. For more detailed information on parameters, see Section 4.0.

3.3 The DataViews Section

DataViews are user-defined ways of looking at some or all of the flight data for a readout.
DataViews contain a tabular view, where data is presented using a spreadsheet-like layout, and a
graphical view, where the specific parameters are plotted against time. The DataViews branch
of the tree contains all the named DataViews associated with the document, as well as the "New
DataView" item, which brings up a new DataView for the user to design. See Section 5.1 for more
on creating and modifying DataViews.

3.4 The EventDefs Section

EventDefs provide the user the ability to design and run event definitions across particular
parameters of the data. For instance, a user could design an event definition which reported all
times at which the aircraft was flying at an airspeed of greater than 300 knots. The EventDefs
branch of the tree contains all the named EventDefs associated with the document, as well as the
"New EventDef" item, which brings up a new EventDef for the user to design. See Section 6.1 for
more on creating and modifying EventDefs.

3.5 The Events Section

Since event definitions usually take some time to run, the results of those tests (the time-ranges
which fulfill the conditions of the tests), called "Events", are stored separately and can be viewed
without rerunning the event definitions. For each EventDef in the EventDefs branch, there is a
corresponding item in the Events branch which has the same name. This is called an EventSet.
Double-clicking on an EventSet will display the results of its corresponding event definition - the
events. In addition, the Events section contains an item called, "Master Events," which is a list of all
matching time-ranges across all EventDefs in the file. For more on the results of EventDefs, see
Section 6.4.

Note that if event strings are enabled, additional text may appear next to the name of the
EventSets in the tree view. For more on event strings, see Section 6.4.5.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 19 of 113
3.6 The Anomalies Section

AVSCAN.flight allows you to keep track of anomalous behaviors in parameters by way of Anomaly
Tags. Anomaly Tags contain three pieces of information: the name and mnemonic of the
anomalous parameter, the frame layout of the parameter, and text describing the anomaly. The
Anomalies branch of the tree lists these Anomaly Tags, as well as the "New Anomaly" item, which
brings up a dialog where you can create a new Anomaly Tag. Anomaly Tags, unlike other items
in the tree, do not have names: the text which appears in the tree is generated from information
about the anomalous parameter and the description of the anomaly. For more on Anomaly Tags,
see Section 7.0.

3.7 The Tree Popup Menu

Right-clicking in the tree window brings up a small "popup menu." The contents of this menu will
vary depending upon which item or items have been selected in the tree, but the most common
menu items, applicable to most objects selected, are: Open, Export, Rename, Delete, and three
sorting options, Sort Ascending, Sort Descending, and Unsort. These items are described below.
Other items that may appear in the popup menu apply only to specific items and are described
under the appropriate section. Note that some items on the popup menu can be applied to
multiple items in the tree. In this case, standard Windows conventions for multiple selection
(Control-click to select separate objects, Shift-click to select a series of objects) can be used to
select any number of items in the tree.

Open
Select the Open item on the popup menu to open the selected item. This is the same as double-
clicking on the item.

Export
Select the Export item on the popup menu to export a DataView, EventDef, or EventSet to a
separate file on disk. This file can then be imported into another document. For more on
importing and exporting, see Section 9.0.

Rename
Select the Rename item on the popup menu to rename the selected item. You will be prompted
for the new name of the selected item, after which the change will be reflected throughout the
document.

Delete
Select the Delete item on the popup menu to remove the selected item from the document. A
confirmation prompt protects you from accidental deletions. Deletion of multiple objects, by
using multiple-selection techniques, is allowed.

Sorting

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 20 of 113
There are three sort options: Sort Ascending, Sort Descending, and Unsort. If you have selected a
collection of objects (such as "Recorded Parameters" or "DataViews"), the sort option you select
will be applied to the order of objects in that collection. If you have selected only a single object,
the sort option you select will be applied to all of the objects in the same collection as the object
you have selected. Sort Ascending sorts the objects in increasing alphabetical order; Sort
Descending sorts the objects in decreasing alphabetical order; and Unsort reverts the objects
back to their original order (the order in which they were created). The sort order for any given
collection of objects will be saved with the TSC file, and thus any sorting that you apply will be in
place the next time you open the file.

3.8 Parameter Drag-and-Drop

In addition to the ability to drag and drop parameters directly into open DataViews,
AVSCAN.flight also gives you the ability to drag parameters directly into the corresponding items
on the tree view itself. For instance, to add a parameter to a view called "MyView", simply drag
the desired parameter into the item called "MyView" under the "DataViews" branch. The
DataView called "MyView" is automatically opened and the parameter added. To open a new
DataView with a set of parameters, select the desired parameters, and drag directly to the "New
DataView" item under the "DataViews" branch. A new DataView is opened displaying the
selected parameters.

3.9 Modifying item ordering

As you create new views or event definitions in a TSC file, the names of those items will be added
to the appropriate branch of the tree in the order they are created. For organizational or
convenience purposes, the order of these items may be changed. To move an item in the list,
select it, and drag it over another item elsewhere in the same list. The item being dragged will be
inserted before the item being dragged over. Note that some "dummy items," such as the "New
DataView" item, or the "Master Events" item, must always be at the top of their respective list.

Modifying item ordering only works when the collection of items for which you are moving is
unsorted. See Section 3.7 for more on sorting.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 21 of 113
4.0 Parameters

AVSCAN.flight maintains three types of parameters: recorded, system, and computed. Recorded
parameters are the actual parameters which were recorded by the DFDR. System parameters
are single-valued variables which contain useful information about the document. Examples of
system parameters include the date and time the file was normalized, the number of frames in the
document, and the aircraft type from which the document originated. Computed parameters
are parameters whose values are computed from other parameters; for instance, a computed
parameter called "Vertical Speed" could be created which is the differential of altitude.

4.1 Recorded parameters

Recorded parameters are the actual parameters which were recorded by the DFDR. Their names
and the formulas used to convert them from raw data are gleaned from the PRM file associated
with the document. (See Section 2.3.1).

Any recorded parameter may be edited at any time by double-clicking on the parameter you
wish to edit in the document tree (see Section 3.0). A dialog appears which allows you to specify
the various options which define the conversion from raw TSC dump data to engineering units.
(See Figure 4-1). More detail on the creation and modification of the definitions of recorded
parameters is provided in Section 12.0. Please note that this feature is provided for advanced
users who are intimately familiar with both the format of raw octal dump data on DFDRs and with
Avionica’s GP-573 PRM file format. Even minor mistakes in the creation and/or editing of the PRM
table could result in wildly inaccurate data. Always make a backup of a TSC file before editing its
parameter definitions.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 22 of 113
Figure 4-1 Editing a recorded parameter definition

Special options are available for recorded parameters on the document tree popup menu (see
Section 3.7). These are described below.

Auto events
Select this option for one or more recorded parameters to automatically create EventDefs for
testing the values of those parameters. For more on this feature, see Section 6.2.

Manual events
Select this option for one or more recorded parameters to automatically create manual EventSets
named after the recorded parameters in question. For more on this feature, see Section 6.4.3.

Create anomaly
Select this option for one or more recorded parameters to create Anomaly Tags for the
parameters in question. For more on Anomaly Tags, see Section 7.0.

4.2 System parameters

System parameters are single-valued variables which contain useful information about the current
document. The values of system parameters are available to DataViews and EventDefs just like all
other parameters; their value is the same at all points in the data. The software creates some
internal system parameters automatically; these parameters generally encapsulate certain
properties of the document, such as the number of sync losses or the date and time that the file
was first normalized.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 23 of 113
It is also possible to create user-defined system parameters. It may be useful, for instance, to have
a system parameter called "MaximumOperatingAltitude," which defines the constant maximum
operating altitude for a particular aircraft. This system parameter can then be compared to the
recorded altitude in an expression for a computed parameter or EventDef.

System parameters, whether internally defined or user-defined, can be one of five types: Number,
Text, Memo, Date/Time, and Null. Number means that the value of the system parameter is an
ordinary decimal number. Text means that the value of the parameter is a short character string
(under 256 characters). Memo means that the value of the parameter is a text string of arbitrary
length. (Use the Memo data type only if you need the value to be 256 or more characters long,
since Memo data types are inherently less efficient than Text.) Date/Time means a date or a time
value, or both. Null means that the system parameter has no value.

To view or edit the value of a system parameter, double-click on the desired parameter in the
document tree view. A dialog comes up which allows you to view the name, data type, value,
and description of the selected system parameter. See Figure 4-2. Note that the values of some
internal system parameters are pre-calculated by the software and therefore can not be
modified. Note also that if you try to modify the value of a system parameter, you will get an error
message if the value you enter is incompatible with the data type of the parameter. For instance,
you can not enter a non-numeric text string for a system parameter whose type is Number. The
values of Date/Time system parameters must conform to the standard "mm/dd/yy" or "hh:mm"
format.

You will note in the dialog for a system parameter, that there is a check box labeled, "Make this
parameter persistent through template updates." This flag is used in relation to the AVSCAN.fleet
product and is not relevant to the use of AVSCAN.flight.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 24 of 113
Figure 4-2 A single system parameter

You may view the values of all system parameters in a single table by right-clicking on the System
Parameters branch of the tree view and selecting "Open" from the popup menu. A table will
come up with the values of all system parameters displayed. For those system parameters whose
values are modifiable, you can type your changes directly into the appropriate cell in the table.
See Figure 4-3.

Figure 4-3 Table of system parameters

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 25 of 113
Following is a brief description of each internal system parameter that is calculated by the
software.

TemplateUsed — The value of this parameter is a text string and indicates the full path name of the
TPL or PRM file with which the current TSC file was normalized.

SyncLossCount - This represents the total number of synchronization losses which occurred in the
original flight data. See Section 10.1 for more on sync losses.

NumFrames - The total number of frames in the data.

SyncPercentage — The percentage of frames in the data that are valid (do not represent sync
losses). This is simply equal to 100*(NumFrames-SyncLossCount)/NumFrames.

NormalizationPercentage - This is the percent by which the TSC data was shrunk during the
normalization process, and thus indicates the actual amount of data which was discarded due to
loss of synchronization.

NormalizationDate - The exact date and time the file was normalized.

SubframeSize - The number of 12-bit words per subframe. The number of bytes per subframe is this
number times 1.5.

StartCounter - The counter value assigned to the first frame of data, usually zero unless a Save
Section operation has been performed - see Section 2.5.

EndCounter - The counter value assigned to the last frame of data.

StartCursor - The counter value which specifies the initial position of the left edge of the graph
cursor for all DataViews. See Section 5.2.3 for more on the graph cursor.

EndCursor - The counter value which specifies the initial position of the right edge of the graph
cursor for all DataViews. See Section 5.2.3 for more on the graph cursor.

EventStart — The counter value which specifies the current position of the left edge of the event
cursor for all DataViews. See Section 5.2.18 for more on the event cursor.

EventEnd — The counter value which specifies the current position of the right edge of the graph
cursor for all DataViews. See Section 5.2.18 for more on the event cursor.

Anomalies — This system parameter stores as a Memo field all of the Anomaly Tags (see Section
7.0) associated with the TSC file.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 26 of 113
Files which were formatted with a text file originating from the Avionica download procedure (see
Section 2.3.3) will also contain system parameters which correspond to the informational values
entered into the download computer by the engineer performing the download. The names of
the parameters created will depend upon whether the download was performed on a GP-573
download computer or on the RSU handheld device.

4.3 Computed parameters

Computed parameters are parameters whose values are computed from other parameters; for
instance, a computed parameter called "Vertical Speed" could be created which is the
differential of altitude. AVSCAN.flight allows you to create arbitrarily complex computed
parameters using standard mathematical operators and a comprehensive set of built-in functions.
These operators and built-in functions are described in detail in Section 11.0.

To create a new computed parameter, double-click on the "New Computed Parameter" item
under the computed parameters branch of the document tree (see Section 3.0). A dialog
appears which allows you to type in the computed parameter’s expression. See Figure 4-4.

Figure 4-4 Editing a computed parameter

A number of features are provided in this dialog to make entering the expressions for computed
parameters easier. A list of operators and a list of built-in functions is provided; simply double-click
on the desired operator or function, and it will be added to the expression. Buttons representing
the common operators, "AND", "OR", and "NOT" are provided, as well as buttons for opening and
closing parentheses. A description field allows you to enter free-form text describing the
parameter and its expression. The combo box labeled "Decimal places" allows you to specify the
number of decimal places to which the values of computed parameters should be calculated.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 27 of 113
And finally, underneath the expression entry field and description is a field labeled, "Function
format", which will show you the parameters you need to provide for built-in functions. Simply click
once on a function name in the list of built-in functions, and its parameter format will appear in this
field.

A computed parameter may access the value of any other parameter, including recorded and
system parameters, as well as other computed parameters. To add a parameter to the
expression, you may drag the parameter from the document tree as you would into a DataView.
(See Section 3.8). The parameter will be added to the end of the current expression. Or you may
simply type in the name of the parameter as it appears in the parameter list in the document tree.
Note that parameter names which include non-alphanumeric characters (such as spaces or
punctuation marks) must be enclosed in square brackets (‘[‘ and ‘]’) to be properly interpreted by
AVSCAN.flight. It is not necessary for the case of the parameter name as it appears in the
expression to match the case of the parameter in the document tree.

Aside from the names of the built-in functions and operators, two additional words are reserved
for usage in computed parameter expressions, and you should not use these words for parameter
names. The word "NULL" indicates a non-value (different from zero, which is a number), while "PI"
represents the value of the mathematical constant pi.

The process of writing expressions for complex computed parameters can be eased through the
use of local variables. Within a single expression, local variables can be used to store temporary
values for use later in the expression. Local variables are denoted by a ‘$’-sign in front of the
variable name, and assignments are made to local variables by way of the ‘:=’ operator.
Assignment statements should be separated from each other and from the remainder of the
expression through the use of semi-colons (‘;’). For instance, the following expression returns the
duration of any period where the lateral acceleration exceeds 0.19g for more than 1 second:

$ACClatMax := 0.19;
$ACClatTime := Duration (Abs(ACClat) >= $ACClatMax) ;
If ($ACClatTime >= 1, $ACClatTime, NULL)

In this case, the $ACClatMax variable helps by putting the value which triggers the exceedance
at the top of the expression, where it can be modified easily without digging through the
expression. The $ACClatTime variable allows the duration of the event to be computed once and
then used in the IF-function that follows, without the user having to actually type the whole
expression twice in the IF-function.

The readability of complex expressions is also helped by the use of comments in expressions.
Comments are denoted by the text string "/*" at the beginning of a comment and the text string
"*/" at the end of a comment, as in the C programming language. For instance, the expression
demonstrating local variables above can be further enhanced through the use of comments as
follows:

/* Define value of lateral acceleration which triggers an exceedance as 0.19g */

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 28 of 113
$ACClatMax := 0.19;

/* Compute duration of the exceedance */


$ACClatTime := Duration (Abs(ACClat) >= $ACClatMax) ;

/* Only display events which are at least one second in duration */


If ($ACClatTime >= 1, $ACClatTime, NULL)

When you are finished entering the expression, hit the OK button to add the computed parameter
to this document. You may then return to re-edit the parameter at any time by double-clicking
on the parameter’s name in the computed parameters branch of the document tree (see
Section 3.2).

To add the computed parameter to a DataView, see section 3.8. When the parameter is added
to a DataView for the first time, it may require an initial calculation. Depending on the nature and
complexity of the expression and the amount of data access required, this calculation could be
very quick, or it could take some time. It may also require multiple passes through the data. A
window will be posted to keep you apprised of the progress of the calculation.

Once the computed parameter is added to a DataView, changes to the parameter’s expression
will be automatically reflected in the DataView after the parameter is recalculated. You may see
the changes without closing the parameter editing dialog by hitting the "Apply" button. This allows
you to tailor the definition of a computed parameter interactively.

You will notice additional items on the computed parameter dialog box which are grayed out.
These are applicable only to EventDefs and will be discussed in the section on EventDefs (Section
6.0).

4.4 Parameter descriptions

For you convenience, AVSCAN.flight allows you to print out reports summarizing the definitions of
the parameters in a TSC file in a tabular format. To perform this operation, select the menu item,
"Parameters->Descriptions." A dialog will come up enabling you to select which type or types of
parameters you wish to print out, and allowing you to preview the reports before printing (see
Figure 4-5). For recorded parameters, you may also elect to sort the parameters as listed in the
table; you may sort according to the full parameter name, the parameter mnemonic, or the word
ordering in the frame layout.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 29 of 113
Figure 4-5 Parameter descriptions

An additional option allows you to choose to include parameter tokens as part of the parameter
descriptions report. Parameter tokens are described in Section 12.1.6. When you select this
option, the report will include additional columns each displaying the name of a parameter
token. The values under these columns will correspond to the values of the parameter tokens for
a given parameter.

The "Print Setup" button allows you to define print settings for the printout, such as paper size and
orientation, as well as selection of printer to print to. When you are ready to print, press the "Print"
button.

An additional option is available which allows you to export the parameter descriptions to a
comma-separated value (CSV) text file, suitable for import into a spreadsheet program like
Microsoft Excel. To export the parameter descriptions to a CSV file, hit the "Save to CSV" button on
the dialog. A new dialog will then come up allowing you to set the file you wish to export to.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 30 of 113
5.0 DataViews

DataViews are user-defined ways of looking at some or all of the flight data for a readout.
DataViews contain a tabular view, where data is presented using a spreadsheet-like layout, and a
graphical view, where the specific parameters are plotted against time.

5.1 Creating a new DataView

To create a new DataView, either double-click the "New DataView" item under the "DataViews"
branch of the AVSCAN.flight tree, or select the menu item, "DataView->New." You are prompted
to enter a name for the new DataView. After you have typed a name, a window appears with
two sections, the tabular section and the graphical section (see Figure 5-1). In the tabular section,
there is one column, entitled "COUNTER." This column lists a series of regularly-spaced time
intervals. Since displaying all of the flight data at once would be unwieldy, AVSCAN.flight selects
an interval which displays a reasonable number of data points at one time. Greater detail can
be achieved by zooming (See Section 5.2.4).

Note that in the AVSCAN.flight tree window, an extra item has been added to the "DataViews"
branch, which takes on the name you typed when prompted. Note that this same name is shown
on the caption of the DataView window. If you now close the window (via the Close button in
the upper-right corner), you can reopen it from the tree window and the same view of data will
be presented. With the Rename item on the right-click popup menu of the tree window, you can
rename the DataView at any time.

When a new DataView is created, there is no data to display. To look at a particular parameter,
drag one of the parameter items in the "Parameters" branch of the AVSCAN.flight tree over into
the new DataView. Any type of parameter (recorded, system, or computed) can be selected. A
column is added to the tabular view, which lists all the values of the parameter at the time
specified by the corresponding COUNTER value. In the graphical view, a graphical representation
of the parameter is displayed.

See Section 5.2.1 for additional features regarding the addition of parameters to DataViews.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 31 of 113
Figure 5-1 A DataView

5.2 Working with DataViews

The DataView window provides many powerful features which allow the user enormous flexibility
in the presentation of both the graphical and tabular views of the data. Some features apply only
to the tabular view, some apply only to the graphical view, and some apply to both at the same
time. These features are discussed below.

5.2.1 Multiple Parameter Dragging

It would become tedious to drag over, one by one, each parameter one might want to have in a
DataView. You may use the standard Windows convention for multiple-selection (Control-click to
select a single parameter, Shift-click to select a contiguous list of parameters) to select multiple
parameters to drag into a DataView at the same time. Dragging any one of a number of
highlighted parameters into a DataView drags all selected parameters.

This procedure may also be used prior to creating a new DataView to have the new DataView
display the selected parameters when it first comes up. When a new DataView is created, the
parameter list is searched for selected parameters, and those parameters are automatically
added to the new DataView. This saves the user from having to perform any drag-and-drop
operation whatsoever.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 32 of 113
5.2.2 Color Correspondence

The color of each parameter’s column-heading in the tabular display is matched to the color of
that parameter’s line graph in the graphical display.

5.2.3 The DataView Cursor

Each part of the DataView (the graphical and the tabular) contains a cursor. In the tabular view,
this is represented by a highlighted row on the grid; in the graphical view, it is represented by a
vertical black bar over the graph. These cursors are synchronized; moving one moves the other.
Thus to look at a particular value which corresponds to, say, a peak in the graph, one merely
needs to position the graphical cursor (by clicking over the desired point), and the tabular cursor
will shift to the exact row of data which corresponds to that point. Similarly, to view the point in a
graph which corresponds to a particular value, simply click anywhere in that value’s row, and the
graphical cursor will appear over the corresponding point on the graph.

5.2.4 Zooming

One of the most powerful features of AVSCAN.flight is the ability to zoom in on a particular area of
data in order to view that area in greater detail. For instance, one readout file may contain five
or six separate flights. Since the screen size is limited, each flight can not be viewed in much
detail. AVSCAN.flight provides a simple way to focus on a single flight, a single takeoff, or even a
single data point, by way of its zoom feature.

To zoom into a particular area of data, click, then drag the mouse over the portion of the graph
you want to look at. That part of the graph is now highlighted in reverse colors. Click on the right
mouse button, and a small popup menu displays. Selecting the "Zoom In" option "zooms into" the
highlighted portion of the data. In other words, the left edge of the highlighted area becomes
the left edge of the entire graphical view, and the right edge of the highlighted area becomes
the right edge of the entire graphical view.

Moreover, the tabular display now shows only rows which correspond to the zoomed-in area.
Note also that the time interval decreases (if it can), to display the same number of rows in the
grid, but at a greater resolution. One can continue zooming in until one reaches the resolution
limit of the data file, at which point the number of rows will start decreasing. One can even
continue to zoom down to a single point, or a single row of data. See Figure 5-2.

To restore to the "widest" view of the data, select the "Restore" option from the popup menu. To
widen the current view by an incremental amount, without restoring to the entire view, select the
"Zoom Out" option from the popup menu. The view widens by a factor of three.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 33 of 113
In addition to zooming in and out, you can also go back to your last zoom configuration simply by
selecting the "Zoom previous" option from the right-click popup menu. You can then go "forward"
to the configuration you were at before you did a "Zoom previous" using "Zoom next". In fact,
AVSCAN.flight maintains a running list of your zoom configurations as you continue to zoom in and
out on a particular DataView, so by repeatedly selecting the "Zoom previous" option, you can go
back through your entire history (since opening the file) of zoom configurations.

Figure 5-2 Zooming into a DataView

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 34 of 113
5.2.5 The Sync Range

For convenience, AVSCAN.flight allows you to define a special range called the "Sync Range",
which can then be used as a range into which all other DataViews can be zoomed. This allows
you to select a special area of interest in the data file and then easily inspect that area of interest
in any and all DataViews to examine different sets of parameters. The Sync Range is stored with
the TSC file, so that it is always available even after saving and re-opening the file.

To specify a range as the current Sync Range, simply select the range of interest in the graphical
view of any open DataView, then select the "Make Sync Range" option from the right-click popup
menu. To zoom a specific DataView into the current Sync Range, open the DataView then select
the "Zoom to Sync Range" option from the right-click popup menu in the graphical view.
Alternatively, you can select one or more DataViews in the document tree window, and select
the "Zoom to Sync Range" in the right-click popup menu (see Section 3.7). In this case, all the
DataViews selected will be zoomed into the Sync Range — if they are currently open, the zooming
will take effect immediately. If they are not currently open, the zooming will take effect when
they are opened later.

The "Zoom to Sync Range" option can also be selected from the right-click popup menu of the
document tree window when the DataViews branch itself is selected. In this case, the zooming
will apply to all DataViews in the document.

5.2.6 The DataView scroll bar

Note that at the bottom of the graphical part of the DataView there is a scroll bar. The bar
indicates the size and position of the current view within the entire data set. Using standard
Windows conventions, one can use the scroll bar to shift the current view. For instance, clicking on
the arrow button to the right of the scroll bar shifts the view a single time-interval to the right, while
maintaining the same zoom factor. Clicking in the area to the left of the bar shifts the view a full
screen to the left. The view can also be shifted to an arbitrary position by dragging the bar to the
desired location.

5.2.7 Tabular display settings

To change the width or heading of a particular column, click on the column-heading to highlight
the column, then hit the right mouse button and select the "Display settings…" option from the
Popup Menu. A dialog appears which enables you to change the width of the selected column
or the display heading. One can also set every column to the same width by checking the "Set all
widths" check box.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 35 of 113
5.2.8 Tabular print settings

To change the width or heading of a particular column for a printout, click on the column-
heading to highlight the column, then click the right mouse button and select the "Print settings…"
option. A dialog appears which enables you to change the width of the selected column or the
display heading. Three lines are available for the display heading. One can also set every printed
column to the same width by checking the "Set all widths" check box.

You may also set the printed precision of values for particular parameters. By default, the printout
uses the display precision (which is defined for the parameter in its corresponding row in the
parameter table; see Section 2.3.1). To set a different precision for printing, click off the "Use
display precision" check mark, then enter the number of decimal places to display in the
"Precision" text box. As with the "Set all widths" option for printed column width, one may also set a
display precision for all parameters in the printout.

For more on tabular printing, see Section 8.1.

5.2.9 Graph settings

There are two types of options available for adjusting the display of the graphical part of a
DataView, orientation and scaling. See Figure 5-3.

Figure 5-3 The Graph Settings dialog

Orientation

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 36 of 113
Normally, parameters are stacked equally in the graphical display area. In some cases, it might
be desirable to have a parameter span the entire vertical space, while another which, for
example, might only assume two values, should take up very little space. You can adjust the size
and position of each parameter’s graph in the graphical display area to address such issues.

To adjust the size and position of a particular parameter’s graph, click on the column-heading
which corresponds to that particular column, then hit the right mouse button and select the
"Graph settings…" option. A dialog comes up, the top of which contains two "sliders". The "Offset"
controls the position, in terms of a percentage of the vertical space, of the top left corner of the
graph. The "Amplitude" controls the size of the graph in terms of a percentage of the vertical
space. For example, to have a graph occupy the entire space, set both the offset and the
amplitude sliders to the top. To have a graph occupy a tiny area in the middle of the vertical
space, bring the offset slider to a halfway position, and the amplitude slider close to the bottom.
Experiment!

Scaling
AVSCAN.flight provides flexibility in scaling the displayed graph for a particular parameter based
on the overall extent of the data. Three types of scaling are available: Local, Global, and
Manual. To select one of these types of scaling, click on the column-heading which corresponds
to that particular parameter, then hit the right mouse button and select the "Graph settings..."
option. A dialog comes up, the bottom of which contains the "Scaling" section. Select whichever
option is most appropriate for your needs. You may use the "Set all" check box to set the graph
scaling for all graphs in the DataView, not just the currently selected one. See Figure 5-4.

Figure 5-4 Local, Global and Manual graph scaling

Local Scaling

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 37 of 113
Local scaling is the default behavior for graphed parameters. Normally, the entire vertical space
assigned to a particular parameter’s graph is used to display the data currently being viewed. In
other words, the top of the assigned vertical space is assigned to the maximum value across the
data, and the bottom is assigned to the minimum value, with all other values in between being
scaled appropriately. For instance, if you are zoomed in on a parameter which, over the region
currently displayed, has very little variation compared to the overall data, that small variation will
be greatly exaggerated when zoomed in, because the high point and the low point, though
actually very close together in value, will be assigned to the top and bottom of the vertical space
respectively. This can be useful in some situations, for instance, if you are looking at the detailed
structure of these small variations, but in other situations it can be misleading.

Global Scaling
With global scaling, the top of the vertical space is assigned to the maximum value of the
parameter over the entire data set, regardless of the zoom factor. Similarly, the bottom of the
vertical space is assigned to the minimum value of the parameter over the entire data set. Thus
when zoomed in on a region of a parameter with very little variation with respect to the rest of the
data, a graph with Global Scaling turned on will reflect that variation by displaying the data in
nearly a straight line, which will be positioned, relative to the axis orientation of the parameter, at
a height scaled appropriately to the minimum and maximum values of that parameter over the
entire data set. For instance, if zoomed in on the cruising section of the altitudinal parameter for a
flight, one would see close to a straight line near the top of the vertical space assigned to the
graph.

Note that in order for AVSCAN.flight to scale the graph to a global scale, the minimum and
maximum data points across the data set for that particular parameter will need to be
calculated. If AVSCAN.flight has not yet calculated these values, it will do so after you click "OK"
in the Graph Settings dialog. A window will display informing you of the progress of the
calculation; for most files, the delay will be only a few seconds. Note that once the values are
calculated, they are stored for the life of the file; they will never need to be calculated again.

Manual Scaling
If neither Local Scaling nor Global Scaling are appropriate for your needs, you may use Manual
Scaling to type in the minimum and maximum values for the graphing routine to use to draw the
graph in its assigned vertical space. Other points in the graph will be scaled to this range, which
means that some points may fall outside of the space assigned to the graph. Use the "Display
points out of range" check box to decide whether or not you want to see those points which fall
outside of your manually defined range. If you choose to display points out of range, they may
overlap other graphs. Note that points drawn out of range will never be drawn outside of the
graphical viewing area, so portions of the graph may disappear completely.

5.2.10 Overlapping graphs

In some cases it may be desirable to have the graph of two parameters occupy exactly the same
vertical space in the display, in order to visually inspect how well the two parameters track

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 38 of 113
together. A common example is to overlap the graphs of an engine parameter for each engine
on a twin-engine aircraft, to verify that the two engines correlate. AVSCAN.flight allows you to
easily overlap the graphs of two or more parameters. Simply highlight the columns corresponding
to the parameters you wish to overlap, using normal Windows multiple-selection conventions
(Shift-Click for a range of columns, Ctrl-Click for a single column). Then click the right mouse
button and select the "Overlap" option. Later, you may remove the overlap by selecting "Undo
overlap" from the same menu.

5.2.11 Parameter Deletion

To remove a parameter from a particular DataView, click on the column-heading for that
parameter to highlight the column, then click the right mouse button and select the "Delete"
option. Multiple columns may also be selected, using standard Windows multiple-selection
conventions (Shift-click for a range of columns, Control-click for a single column). You may not
delete the COUNTER column. A confirmation prompt protects you from accidental deletions.

5.2.12 Drag to Change Column Widths

To change the width of a column without typing in the width manually, position the mouse pointer
over the right edge of that particular column, click and drag the edge to the desired width. The
column width will change.

To change the width of a number of columns without typing in the width manually, select the
desired columns using normal Windows multiple-selection conventions (Shift-Click for a range of
columns, Ctrl-Click for a single column), then drag the right edge of any one of the selected
columns to the desired width. All selected column widths will change.

5.2.13 Moveable Columns

To change the order of a column in the tabular display (as well as the stacking order of the graphs
in the graphical display), click on a column-heading to select that column, and drag the column
to the place you want it to go. If moving between existing columns, it will be inserted directly to
the left of the column where it is released.

A range of contiguous columns may also be moved. Use the standard Windows convention of
Shift-Clicking on the start and end columns of the range you would like to move to select the
range.

Note that the COUNTER column must always be the first column in a DataView. You may not
move the COUNTER column, and you may not move another column to the left of the COUNTER
column.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 39 of 113
5.2.14 Renaming

To rename a DataView, select the menu item "DataView->Rename." You will be prompted for the
new name. This is the same as selecting the "Rename" option from the tree view’s popup menu.

5.2.15 Import/Export

To import or export a DataView to or from disk, select the menu item, "DataView->Import", or
"DataView->Export." For more on importing and exporting, see Section 9.0.

5.2.16 Print settings

To set print settings for the tabular portion of the DataView, select the menu item, "DataView-
>Table printing…". To set print settings for the graphical portion of the DataView, select the menu
item, "DataView->Graph printing…". For more on printing, see Section 8.0.

5.2.17 Manual event creation

In addition to the standard events generated by running EventDefs (see Section 6.3), you may
also create events of your own, using the highlighted area of a DataView’s graph and the
"Create event..." option on the graph popup menu. See Section 6.4.3 for more on this procedure.

5.2.18 The Event Cursor

In addition to the graph cursor present in every DataView, AVSCAN.flight allows you to keep track
of the most recent event selected by way of the event cursor. See Section 6.4.2 for more on the
syncing between selected events and DataViews. The event cursor typically appears as a dark
yellow vertical bar superimposed on the graphical display, similar to the graph cursor. If the graph
cursor and the event cursor overlap, the portion where they overlap will appear as blue.
Occasionally, you may find that you no longer need the event cursor to appear in DataViews.
You can easily clear out the event cursor by clicking on the right-mouse button in the graphical
display area, and selecting the "Clear event cursor" item on the popup menu. The event cursor
will go away.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 40 of 113
6.0 EventDefs

EventDefs provide the user with the ability to design and run event definitions against particular
parameters of the data. For instance, a user could design an event definition which reported all
times at which the aircraft was flying at an airspeed of greater than 300 knots. EventDefs are
similar to computed parameters; they allow you to type in an arbitrary expression, using standard
operators and a set of built-in functions, which defines the conditions of the particular event in
question. The only difference is that while computed parameters can return any value at a given
time, EventDefs are expected to return only values which are true of false - indicating whether or
not the event in question is occurring at that time.

6.1 Creating a new EventDef

To create a new EventDef, either double-click the "New EventDef" item under the "EventDefs"
branch of the AVSCAN.flight tree, or select the menu item, "EventDef->New." You are prompted
to enter a name for the new EventDef. After you have typed a name, a dialog appears which
allows you to enter the expression representing the particular event you wish to look for.

Note that in the AVSCAN.flight tree window, an extra item has been added to the EventDefs
branch, which carries the name you entered when prompted. This same name is shown on the
caption of the EventDef window. If you now close the window (via the Close button in the upper-
right corner), you can reopen it from the tree window and the same EventDef will be presented.
With the Rename item on the right-click popup menu of the tree window, you can rename the
new EventDef, using any name you like. See Figure 6-1.

Figure 6-1 An EventDef

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 41 of 113
The EventDef dialog box is almost identical to the one for computed parameters. See Section 4.3
for more details on the interface for this dialog. There are a few extra items, however, which are
discussed below.

Run button
Clicking the Run button in the EventDef dialog allows you to immediately run that EventDef to
detect events, after which the resulting events list will be displayed. For more on running
EventDefs, see Section 6.3.

Events button
Clicking the Events button in the EventDef dialog allows you to immediately bring up the events list
associated with that EventDef without actually running the event definition. This can be used
once an EventDef has already been run to see the results without having to wait for a repeat
computation. Note that if the EventDef has not yet been run, the events window will be empty.

More button
Clicking the EventDef button in the EventDef dialog brings up another dialog which allows you to
define further properties of the EventDef (see Figure 6-2). The items in this dialog are discussed
below:

Figure 6-2 EventDef properties

Category
AVSCAN.flight gives you the capability to classify your EventDefs using custom categories. To
assign the current EventDef to a particular category, either select a pre-existing category from the
list provided, or type in a new category. If you type in a new category, the new category will
thereafter be offered as an option in the list box.

Severity

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 42 of 113
AVSCAN.flight also gives you the ability to define the severity of events associated with a
particular EventDef. Five levels of severity are provided: Routine, Mild, Moderate, Severe, and
Critical.

Anomaly status
Conceptually, certain EventDefs will be considered to be "anomalous" if they return positive
results; i.e., if running those EventDefs yields one or more events. An example would be an
EventDef defined to determine the occurrence of an engine over-temp. Others will be
considered to be anomalous only if they do not return positive results; i.e., if running those
EventDefs yields no events. An example of this would be a "push-to-talk" event, where the lack of
a single push-to-talk event in a given data set is a probable indicator of bad data. AVSCAN.flight
allows you to classify an EventDef as "Anomalous on positive results" or "Anomalous on negative
results" (or "Neither", the default). The anomaly status of an EventDef can affect which event string
is displayed for events in the tree view. For more on event strings, see Section 6.4.5.

Generate Anomaly Tag


EventDefs which are defined with a positive or negative anomaly status (see above) can further
be defined to automatically generate an Anomaly Tag (see Section 7.0) when they are run and
produce results representing anomalous events. Click this check box to enable this feature for the
given EventDef. The next two items in the dialog are associated with this feature.

Parameter
When the EventDef is defined to automatically generate an Anomaly Tag when it yields
anomalous results, the recorded parameter selected here will be the parameter associated with
the Anomaly Tag created.

Anomaly Type
When the EventDef is defined to automatically generate an Anomaly Tag when it yields
anomalous results, this will be the Anomaly Type associated with the Anomaly Tag created.

6.2 Automatic EventDefs

For certain parameters, it may be desirable to create EventDefs based on those parameters that
simply generate events for times when the parameters in question are nonzero. This would be
most useful for discrete recorded parameters, which are one-bit parameters that can only be 0 or
1. AVSCAN.flight gives you the ability to create such EventDefs automatically. The EventDefs
created will use the name of the parameter from which they were created as part of their own
name, although the names must be modified to differentiate these EventDefs from the original
parameters.

To generate such an EventDef, right-click on the parameter for which you wish to create the
EventDef in the AVSCAN.flight tree window, and select the "Auto events…" option from the popup
menu. You will be prompted to enter text which will be appended or pre-pended to the name of
the parameter to form the name of the EventDef. In this same dialog box you may also define

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 43 of 113
the Anomaly Status of the EventDef created (see Section 6.1). For EventDefs defined to be
anomalous upon positive or negative results, you may also define the EventDefs to automatically
generate an Anomaly Tag after they are run and produce results that are anomalous, as defined
by their Anomaly Status. Click on the "Generate Anomaly Tag" option to enable this feature, after
which you must specify an Anomaly Type.

This method of creating EventDefs is most useful when applied simultaneously to a series of
parameters, using multiple selection (see Section 3.0). The series of EventDefs thus created will
save lots of time that would be used to otherwise create each of these EventDefs individually.

6.3 Running an EventDef

Click the "Run" button to run a EventDef, and bring up the resulting EventSet. Alternatively, select
the menu item, "EventDef->Run", or press the Run button in the EventDef window. The Run option
is also available from the right-click popup menu (see Section 3.7) of the document tree window.
Multiple EventDefs can be run at once by using multi-selection techniques before selecting the
Run option.

You may wish to run an EventDef or a series of EventDefs on only a subset of the entire data set.
You can do this by selecting the "Run over range" option from the right-click popup menu of the
document tree window. The range over which the EventDefs will be run will be the range most
recently selected in any open DataView. Note that before this process, all ranges in EventSets for
the EventDefs run will be removed. Special care should then be taken to recognize that the
resulting EventSets will not reflect event ranges across the entire data set but merely across the
data selected.

The speed with which a given event definition will run depends on the complexity of the condition
list, the number of rows in the TSC data source, and, of course, the calculating speed of the
machine. A window keeps you informed of the test’s progress. Expressions which reference other
computed parameters which have not themselves been computed will cause those parameters
to be computed as well. Sometimes multiple passes through the data are necessary; this is
indicated on the progress window.

You can run all EventDefs in the current TSC file by selecting the "EventDef->Run all" menu option,
or by selecting the EventDefs branch of the document tree window and then choosing the "Run
all" option from the right-click popup menu (see Section 3.7). Alternatively, select the "Run all over
ranges" option to run all EventDefs over the most recently selected range in an open DataView
(see above). Whenever you run all EventDefs, the "Master" event list will be displayed (see Section
6.4.1) when the computation is complete.

6.4 Events

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 44 of 113
When an EventDef is run, the results of that EventDef are recorded in the form of a list of ranges of
COUNTER values (time values) for which the event conditions held true. These ranges will be
saved with the file, and therefore stored indefinitely, so that the event definition will never have to
be run twice. Note that if you modify the event definition, you must rerun it to display correct
results. You may rerun the event definition either from the EventDef window, or from its
corresponding Events window.

6.4.1 Master Events

An extra item called "Master Events" exists in the AVSCAN.flight tree. The Master Events is a range
list which is the union of all the EventDefs which exist in the current document, sorted by starting
COUNTER value. This allows the user to run the whole set of EventDefs against a document with a
single mouse click, by pressing the Run button in the Master Events window. The user can then see
all the Events in one single place. Double-clicking on a particular Event in the Master Events
window will bring up the EventSet associated with that Event.

6.4.2 Events synced to DataViews

If you click on any row in an events table, the graph cursor in any open DataView will jump to the
beginning of that range. In addition, the entire range of the event will be highlighted by a vertical
yellow bar called the Event Cursor. Note that where the graph cursor and the event cursor
coincide the event cursor will appear blue. The event will continue to be highlighted by the event
cursor in all open DataViews, even as you zoom in and out and change the position of the graph
cursor. This allows you to maintain the location of the event visually while using the graph cursor to
examine data in the vicinity. If you no longer need the event cursor to appear, you can clear it
by clicking on the right mouse button in the graphical display and selecting the "Clear event
cursor" menu option.

For added convenience in viewing event ranges, the first range in an EventSet will automatically
be highlighted in any open DataViews when you click on an EventSet in the document view tree.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 45 of 113
Figure 6-3 Event synced to DataView

6.4.3 Manual events

In certain cases it may be convenient to define your own event ranges from an empirical
inspection of the data without designing an event definition to find them. AVSCAN.flight provides
manually created events for this purpose. EventSets may be created which are independent of
any event definition, and manually created event ranges may be added to those or any other
EventSets.

EventSets are created just like any other item in AVSCAN.flight, via the "Events->New" menu item,
or by double-clicking on the "New Event" item in the "Events" branch of the document tree view.
Once a new EventSet is created, you are prompted for a name for the EventSet, and an empty
events window appears. Ranges can be freely added to this window, as described below.

To add a new event range to an existing EventSet, select the EventSet you wish to add a range
to, either by clicking on an open events window, or by clicking on the desired EventSet’s name in
the document tree window, then select the menu item, "Events->Add range..." You will be
prompted for a starting and ending COUNTER value which will constitute the added range.
Manually created event ranges are preceded in the events window with an ‘@’-sign, to
distinguish them from event ranges generated by the running of event definitions.

An alternative method to adding an event range to a EventSet is to highlight the desired range in
an open DataView using the DataView’s graph cursor (see Section 5.2.3), then drag the mouse
from the highlighted range into either an open events window or over the desired EventSet’s
name in the document tree window. If you wish to assign the highlighted range to a new

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 46 of 113
EventSet, you may, instead of dragging into an existing EventSet, right-click over the DataView’s
graph to bring up the graph popup menu, and select the "Create event..." menu item. You will
be prompted for the name of a new EventSet, after which the events window will be displayed
with the range you highlighted as the first item.

You may also add the range most recently selected in a DataView to an EventSet by clicking on
the EventSet in the document tree window, right-clicking, and selecting the "Add current range"
item from the popup menu which appears. This method can be used on multiple EventSets at the
same time by using multiple-selection techniques (see Section 3.0).

As a time-saving device, manual EventSets can be generated whose names are based on
parameters. This is useful in a maintenance context when you might be checking a series of
parameters and wish to have a series of manual EventSets ready-made for storing event ranges of
interest. When these manual EventSets are created, the currently selected range in the most
recently viewed DataView can at the same time be added as the first event range in the new
EventSets. To create a series of EventSets based on a set of parameters, select the parameters in
the AVSCAN.flight tree using multi-selection techniques (see Section 3.0), then right-click and
select "Manual events…" from the popup menu which appears. You will be prompted for a string
which you can append or prepend to the name of the parameter when forming the name of the
new EventSets, and you may also select whether you wish to include the currently selected range
as the first event range.

6.4.4 Event range deletion

Any range in an EventSet may be deleted at any time simply by highlighting the desired range
and pressing the "Delete" key. This feature can be used to delete mistaken manual results, or to
remove anomalous ranges from the results of an EventDef. Note that if a range is deleted which is
the result of running an EventDef, should that EventDef be rerun, the range will once again
appear (if the event definition has not changed.)

6.4.5 Event strings

For your convenience, AVSCAN.flight gives you a way to quickly see the results of running an
event definition by visually inspecting the branch representing its EventSet in the document tree
window. (See Section 3.5). For instance, you may wish to quickly see how many event ranges
each EventSet contains without having to physically open each EventSet window. Event strings
are the way this is done. Event strings are text that is automatically or manually added to the
name of the EventSet in the document tree window. The contents of the text can be made to
depend upon whether or not the EventSet contains event ranges or not, the number of event
ranges, or whether or not the results represent an anomaly in the data.

To see and define the event strings which will applied to EventSets in the document, select the
"Events->Event strings" menu item. A dialog box will come up which allows you to define the

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 47 of 113
event string options. (See Figure 6-4). Set the check box next to "Enable event strings" to enable
the use of event strings in the document. A number of edit fields allow you to define the various
text strings that will be displayed depending upon the various possible conditions. You can clear
out the contents of these fields using the "Clear" button. You can define whether the text strings in
question will be prepended (added to the beginning of the name of the EventSet in the
document tree window) or appended (added to the end of the name of the EventSet in the
document tree view). Use the provided toggle button to set this option.

Figure 6-4 Event strings

For all of the possible conditions, you can use the pound character (‘#’) as a placeholder to
represent the number of event ranges in the EventSet. If you would like to display a literal ‘#’
character, use "##", For instance, if you have an EventSet called, "MyEventSet" , you have event
strings assigned to be appended to the EventSet name in the document tree view, and the
EventSet in question contains three event ranges, the expression, ": ## of events: #" will yield the
display string, "MyEventSet: # of events: 3" in the document tree view.

The various conditions for which you can define event strings are explained below.

Not yet run


This string is attached to EventSets corresponding to EventDefs which have not yet been run. The
default is " (?)".

No Event Definition
This string is attached to EventSets which do not have a corresponding EventDef — in other words,
manually created EventSets (see Section 6.4.3). This string is empty by default.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 48 of 113
Positive results returned
This string is attached to EventSets which after running the corresponding EventDef contain at
least one event range. The default is " (#)" (displays the number of event ranges).

No results returned
This string is attached to EventSets for which the corresponding EventDef has been run but for
which no event ranges were returned. The default is " (#)" (displays "(0)").

Anomalous on positive; positive results


This string is attached to EventSets for which the corresponding EventDef is defined as anomalous
on positive (see Section 6.1) and after running the EventSet contains at least one event range,
meaning that the result of the EventDef represents an anomaly in the data. The default is "
(ANOMALY-#)"

Anomalous on positive; negative results


This string is attached to EventSets for which the corresponding EventDef is defined as anomalous
on positive (see Section 6.1) and after running the EventSet contains no event ranges, meaning
that the result of the EventDef does not represent an anomaly in the data. The default is " (OK)",

Anomalous on negative; positive results


This string is attached to EventSets for which the corresponding EventDef is defined as anomalous
on negative (see Section 6.1) and after running the EventSet contains at least one event range,
meaning that the result of the EventDef does not represent an anomaly in the data. The default is
" (OK-#)".

Anomalous on negative; negative results


This string is attached to EventSets for which the corresponding EventDef is defined as anomalous
on negative (see Section 6.1) and after running the EventSet contains no event ranges, meaning
that the result of the EventDef represents an anomaly in the data. The default is " (ANOMALY-#)".

Additional strings
AVSCAN.flight allows you to add your own user-defined strings to EventSets on demand. You can
define the strings that are presented as options under the "Additional strings" section of the dialog.
The list of available options is displayed in the list box. To add an item to the list, type it into the
edit field and then hit the "Add" button. To remove an option from the list box, select it in the list
box and then press the "Delete" button.

To attach a user-defined string to an EventSet, simply select the EventSet in the document tree
view, click on the right mouse button, then select the "Attach string" menu item. A second popup
menu will appear offering you the options you have entered into the event strings dialog, as well
as the options, "New" and "Clear". If you select "New" you will be prompted for a new text string to
attach; the text string you type in will be added as one of the options. If you select "Clear" the
current event string applied to the EventSet will be removed. Note that the user-defined event
strings supersede the normal event strings; selecting "Clear" will revert the EventSet back to the
standard event string, depending upon the document settings. This method can be applied to

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 49 of 113
multiple EventSets at the same time by using multi-selection techniques (see Section 3.0) in the
tree window before selecting the "Attach string" menu item.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 50 of 113
7.0 Anomaly Tags

AVSCAN.flight allows you to keep track of anomalous behaviors in parameters by way of Anomaly
Tags. Anomaly Tags contain three pieces of information: the name and mnemonic of the
anomalous parameter, the frame layout of the parameter, and text describing the anomaly (the
anomaly type).

7.1 Creating a new Anomaly Tag

To create a new Anomaly Tag, either double-click the "New Anomaly" item under the "Anomalies"
branch of the AVSCAN.flight tree, or select the menu item, "Anomalies->New." A dialog comes up
allowing you to choose the anomalous parameter and to specify the anomaly type (see Figure
7-1). The parameter can be any one of the recorded parameters associated with the document.
You may view the definition of the parameter selected by hitting the "Edit" button. The anomaly
type is a pre-defined text string that describes the anomaly. You can choose one of the pre-
defined anomaly types from the list, or you add a new text string to this list by hitting the "New"
button. More details on modifying the list of pre-defined text strings to be used for Anomaly Tags
are given in Section 7.2.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 51 of 113
Figure 7-1 Creating an Anomaly Tag

Once you hit OK in the dialog for the new Anomaly Tag, an extra item will be added to the
Anomalies branch of the AVSCAN.flight tree window. The text displayed for this item indicates the
full parameter name, the mnemonic, and the frame layout information (word, bits, subframes,
etc.) associated with the parameter, and the anomaly type text. An Anomaly Tag has no name
associated with it like other objects in the tree. You can go back and modify the parameter or
the anomaly type by double-clicking on this item, or by selecting the Open item from the right-
click popup menu (see Section 3.7).

A new Anomaly Tag can also be created by selecting a recorded parameter in the
AVSCAN.flight tree, and then selecting the "Create anomaly" option from the right-click popup
menu (see Section 3.7). In this case, a dialog will come up which allows you to specify the
anomaly type. Once you click OK in this dialog, a new Anomaly Tag will be created, using the
parameter originally selected in the tree and the anomaly type you specified. Note that this
technique can be applied to multiple parameters by using multiple-selection techniques in the
tree window. One Anomaly Tag will be created for each parameter selected; each of these will
share the same anomaly type.

7.2 Editing anomaly types

The anomaly types that are available when creating a new Anomaly Tag can be managed by
selecting the "Anomalies->Edit types…" menu option. A dialog comes up with a list of the
available anomaly types displayed. Anomaly types have a name and a description. Use the
name as a shorthand for describing the anomaly type; use the description as the anomaly type

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 52 of 113
text. In the Anomaly Types dialog, create a new anomaly type by pressing the "New…" button, in
which case a new dialog will come up allowing you to enter the new name and description. You
can edit an existing anomaly type by selecting it in the list and pressing the "Edit…" button; a
dialog will come up allowing you to edit the name and description. Finally, you can delete an
anomaly type from the list using the "Delete" button.

7.3 The Anomalies system parameter

As a convenience, you can place information pertaining to all Anomaly Tags in the document
into a single repository, the Anomalies system parameter (see Section 4.2). This can be
accomplished in one of two ways: either select the "Anomalies->Make system parameter" menu
option, or click on the "Anomalies" branch in the AVSCAN.flight tree window (see Section 3.0) and
choose the "Make system parameter" option from right-click popup menu. In either case, the
textual description for all Anomaly Tags in the document will be written to the value of the
Anomalies system parameter, which will then be presented in a dialog. You may make editions to
this text, although if you then regenerate the text later on you will lose your changes.

The text for specific Anomaly Tags can be appended to the Anomalies system parameter
individually. To do this, simply click on the Anomaly Tag in question in the AVSCAN.flight tree
window, and choose the "Append to system parameter" option from the right-click popup menu.
The Anomalies system parameter will then be presented in a dialog, with the new text added.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 53 of 113
8.0 Printing

AVSCAN.flight provides powerful printing tools for both tabular and graphical views of the data.
Each DataView has its own print settings for both the tabular and graphical displays, which allow
the user to control what gets printed and how it is formatted. Each of these is described
separately in the following sections.

8.1 Tabular printing

With a DataView open, select the menu item, "DataView->Table printing…". This brings up the
Print Settings dialog for tables. (See Figure 8-1). By default, printing uses the same values for the
minimum and maximum COUNTER values and interval as in the DataView. Click off the "Use
display settings" check box to enter your own values. If you prefer to select the number of rows
you would like to print, the COUNTER interval will be calculated for you. By default, these values
are identical to the COUNTER values presented by the DataView on screen. Control over the size
of the page margins is also provided.

You may modify standard print settings (such as paper size, orientation, etc.) via the "Page
setup..." button. These settings are stored with the individual DataView, so that each DataView
can have its own settings. If no individual print settings exist for the DataView, the default user
print settings are used (see Section 8.3).

Also in the Print Settings dialog, you can select the "Highlight event cursor" option to display the
event cursor in the printout at the same location that it is currently occupying in the DataView.
The event cursor will appear as a horizontal yellow bar over the rows of the table that fall within
the event range. For more on the event cursor, see Section 5.2.18.

By default each column in the table will be printed out in the same color used in the display. On a
black-and-white printer, the colors will be translated into various shades of gray. If you have a
black-and-white printer, or if you want to force your color printer to print in black-and-white, you
can set the "Force black and white printing" check box, and your printout will be in black and
white.

You may also change the printed column width for each column of data, as well as the printed
column heading. See Section 5.2.7 for details.

To print, select the DataView for which you would like to print a table, either by clicking on an
open DataView window, or by clicking on the desired DataView in the document tree window,
and select the menu item, "Print->Print table…", or "Print->Preview table" to see what the printout
will look like on the screen.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 54 of 113
Figure 8-1 The tabular Print Settings dialog

You may also print any DataView, whether it is currently open or not, by selecting the DataView in
the document tree window, and then selecting "Print table…" (or "Preview table…" for on-screen
preview) from the right-click popup menu (see Section 3.7). In this case, you will be prompted
with the Print Settings dialog before printing. The values you enter into this dialog are temporary
and will only apply to the current print job (as opposed to the changes made through DataView-
>Table printing…", which are stored with the DataView). Note that this option can be used for
multiple items in the document tree to print a series of DataViews at the same time. In this case,
the Print Settings dialog will appear only once, and the values entered will apply to all the printed
DataViews. Note also that the default time values displayed in the dialog will come from the most
recently selected range in any open DataView. This feature, coupled with the use of multiple
selection techniques, allows you to print out a series of DataViews for the same region of data, by
first selecting the region of data in any open DataView. Note that multiple selection can only be
used for direct printing, not previewing; only one DataView can be previewed at a time.

8.2 Graphical printing

With a DataView open, select the menu item, "DataView->Graph printing…". This displays the Print
Settings dialog for graphs. (See Figure 8-2.) By default, printing uses the same values for the
minimum and maximum COUNTER values and interval as in the DataView. Click off the "Use
display settings" check box to enter your own values. If you prefer to select the number of points
you would like to plot, the COUNTER interval will be calculated for you. You may also select the

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 55 of 113
number of points plotted per page, or the number of total pages you would like to print. By
default, these values are identical to the COUNTER values presented by the DataView on screen.
Control over the size of the page margins, as well as the size of the axis labels, is provided. Axis
labels are directly copied from the column headings in the tabular display.

Also in the Print Settings dialog, you can select the "Highlight event cursor" option to display the
event cursor in the printout at the same location that it is currently occupying in the DataView.
The event cursor will appear, as it does in a DataView, as a vertical yellow bar over the portion of
the graph that falls within the event range. For more on the event cursor, see Section 5.2.18.

By default each plot in the graph will be printed out in the same color used in the display. On a
black-and-white printer, the colors will be translated into various shades of gray. If you have a
black-and-white printer, or if you want to force your color printer to print in black-and-white, you
can set the "Force black and white printing" check box, and your printout will be in black and
white.

You may modify standard print settings (such as paper size, orientation, etc.) via the "Page
setup..." button. These settings are stored with the individual DataView, so that each DataView
can have its own settings. If no individual print settings exist for the DataView, the default user print
settings are used (see Section XXX). To print, click on the DataView for which you would like to
print a graph, either by clicking on an open DataView window, or by clicking on the desired
DataView in the document tree window, and select the menu item, "Print->Print graph…", or "Print-
>Preview graph" to see what the printout will look like on the screen.

Graphs will be printed in a stacked format, with an equal share of the vertical space given to
each graph. Major and minor ticks, and the accompanying numerical text, are calculated
automatically. If you have overlapping graphs in the DataView (see Section 5.2.10), the
overlapping will also be evident in the printout.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 56 of 113
Figure 8-2 The graphical Print Settings dialog

You may also print any DataView, whether it is currently open or not, by selecting the DataView in
the document tree window, and then selecting "Print graph…" (or "Preview graph…" for on-screen
preview) from the right-click popup menu (see Section 3.7). In this case, you will be prompted
with the Print Settings dialog before printing. The values you enter into this dialog are temporary
and will only apply to the current print job (as opposed to the changes made through DataView-
>Graph printing…", which are stored with the DataView). Note that this option can be used for
multiple items in the document tree to print a series of DataViews at the same time. In this case,
the Print Settings dialog will appear only once, and the values entered will apply to all the printed
DataViews. Note also that the default time values displayed in the dialog will come from the most
recently selected range in any open DataView. This feature, coupled with the use of multiple
selection techniques, allows you to print out a series of DataViews for the same region of data, by
first selecting the region of data in any open DataView. Note that multiple selection can only be
used for direct printing, not previewing; only one DataView can be previewed at a time.

8.3 Default print settings

The default print setup characteristics — such as printer selection, paper size, and orientation — can
be controlled through the "Print->Default setup…" menu item. Selecting this menu item brings up
the standard Windows Print Setup dialog box, where these settings can be modified. This
information is stored in the registry, not in the current document, so that it affects all printing that is
done from AVSCAN.flight.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 57 of 113
9.0 Importing and Exporting

To facilitate the transfer of user-designed objects between files, functionality is provided to export
and import these items to and from disk. DataViews are saved to files with a .VIW extension;
computed parameters are saved to files with a .CMP extension; and EventDefs are saved to files
with an .EDF extension. Importing can be performed by selecting the "Import" menu item under
the appropriate menu. Exporting can be performed by selecting the desired item, either by
clicking on an open window or by clicking on the item’s name in the document tree window, and
then either selecting the "Export" menu item under the appropriate menu, or selecting the "Export"
option in the tree popup menu (see Section 3.7). A dialog will appear prompting you for the
exported file name. Note that problems will occur when DataViews, computed parameters, or
EventDefs are imported into TSC files which use a different PRM file than the imported item; field
names which do not match exactly will be ignored from the imported item, and parameters may
not be correctly converted to engineering units.

9.1 Exporting Events

Functionality is also provided for the export of events to disk. Exported events will be saved in a
comma-delimited ASCII format (CSV). For each event range, four fields are saved: the starting
COUNTER value, the ending COUNTER value, the name of the EventDef, and the name of the TSC
file. These files can then be imported as .CSV (Comma-Separated Value) files into a spreadsheet
or database application and combined with events from other files, allowing the user to perform
summarizing operations across multiple readouts.

To export an EventSet to a comma-delimited format, either use the Export option on the
AVSCAN.flight tree popup menu (see Section 3.7), or select the menu item, "Events->Export…".
You will be prompted to enter the name and location of the CSV file.

9.2 Import/Export of PRM Files

If you open an unformatted TSC file and provide the wrong PRM file to apply to the conversion, or
if revisions are made to a PRM file you have already applied to a TSC file, AVSCAN.flight provides
the ability to import the correct or revised PRM file. To import a PRM file, select the menu item,
"Parameters->Import PRM…", and select the appropriate PRM file in the dialog. Note that existing
DataViews or EventDefs which contain references to parameters which no longer exist in the
newly imported PRM file will no longer function properly. Make sure that the PRM file you are
importing is compatible with the data which already exists in the document.

You may also choose to export the PRM file being used to convert the data in the current TSC file,
perhaps to use the PRM conversion table in other files. To export the PRM conversion table, select

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 58 of 113
the menu item, "Parameters->Export". A dialog appears prompting you for the name of the saved
PRM file. By default, the file will be saved in the standard Avionica PRM file format; details on the
syntax of this format are discussed in Section 12.3.

Once you select a file, another dialog appears allowing you to define the ordering of parameters
in the exported PRM file. You can opt not to sort, in which case the parameters will be listed in the
order that they appear in AVSCAN.flight. You can sort by mnemonic, in which case the
parameters will be listed in alphabetical order by mnemonic. Or you can sort by word, in which
case the parameters will be listed in word order. If you choose to sort the parameters, there is also
another option: "Put superframe parameters at top when sorting". Enabling this option ignores
parameters which are superframe indexes (see Section 12.1.1) when sorting, putting those
parameters at the top of the exported PRM file. This practice is necessary when the exported PRM
file is meant to be used by the RSU handheld device.

In rare circumstances, you may wish to save the file in the "old-style" PRM format, for use in versions
of AVSCAN.flight older than 4.38 (see Section 12.0). This option is available using the "Save as
type" combo box. Note that the pre-4.38 PRM format was much more limited in the types of
conversions supported than the current format. Therefore, when exporting to the old format, it is
possible that some of the conversion formulas will not translate, and that conversions performed
with these formulas will be inaccurate. You will be informed of any such problems when the
export is complete.

Also available in this box is the option to export in the Flight Recorder Configuration Standard, or
FRCS format. As with the old-style PRM format, there may be compatability problems between
the nature of conversion formulas supported by Avionica’s PRM format and the FRCS format. As
with the export to the old-style format, you will be notified of any problems with the export to the
FRCS format once the export operation is complete.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 59 of 113
10.0 Additional issues

10.1 Errors

It is normal for drop-outs to occur from time to time in the data recording process. These drop-
outs are called "Errors" by AVSCAN.flight, but are not harmful; the drop-outs are handled and
noted by the normalization process. In a DataView, an error is indicated by a row in the table
containing the word, "#ERROR" in all of the fields of that row; and by an unplotted point, or gap, in
the graphical display. Note that since data is not displayed to the finest resolution unless one is
sufficiently zoomed in, all errors in the data are not readily apparent.

The number of total errors in the data is stored in one of the System Parameters, called,
"SyncLossCount." Other system parameters of interest with regard to data loss are "NumFrames," a
count of the total number of frames in the data, and "NormalizationPercentage", which is the
percent by which the TSC data was shrunk during the normalization process, and thus indicates
the actual amount of data which was discarded due to loss of synchronization.

10.2 Subsecond sampling

Certain parameters exist which may be sampled by the DFDR more than once a second. Others
may be sampled only once a second or even less. When zooming in to small intervals,
AVSCAN.flight will allow you to zoom in to the smallest interval represented by the present in the
current DataView. Those parameters that are not sampled as often will exhibit "step-like"
behavior; AVSCAN.flight does not interpolate between adjacent data points even though the
interval of the DataView may be smaller than the time difference between samples for a given
parameter.

10.3 Stored window sizes

By default, the sizes and positions of the various windows you open in AVSCAN.flight are reset to
defaults whenever you re-open a file. However, some users may wish to have the sizes and
positions of windows saved with a file when they save it, so that the same sizes and positions will
be apparent when they re-open the file. AVSCAN.flight gives you the ability to enable this option,
by way of the "Window->Use stored window sizes" menu item. Select this menu item to have
window sizes and positions stored with TSC files when they are saved.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 60 of 113
11.0 Technical reference for built-in functions and operators

Below are descriptions of the built-in functions offered by AVSCAN.flight for use in the expressions
for computed parameters and EventDefs.

It should be noted that, for technical reasons, the calculation of computed parameters will be
significantly improved by breaking complicated expressions into several layers of computed
parameters. For instance, the following expression might be used to calculate the average
cruising altitude for each cruising segment in a readout:

Average_Cruising_Altitude: MeanGroup (ALT, SegmentTrigger (NULL, NULL, Diff(Cruising)=1,


Diff(Cruising)=-1))

Performance of this computation will be significantly improved by defining three separate


computed parameters:

Begin_Cruise: Diff(Cruising) = 1
End_Cruise: Diff(Cruising) = -1
Cruise_Segment: SegmentTrigger (NULL, NULL, Begin_Cruise, End_Cruise)

Then modify the original computed parameter as follows:

Average_Cruising_Altitude: MeanGroup (ALT, Cruise_Segment)

Such separation will not only improve the computation speed, but will make it significantly easier
to read and make changes to the definitions of your computed parameters.

11.1 Statistical functions

Max (expression)
Min (expression)
Mean (expression)

These functions will calculate the corresponding statistical value for all values of expression across
the entire data stream. For instance, to calculate the maximum airspeed achieved for an entire
readout, use the expression "MAX(IAS)" in a computed parameter. The value of this computed
parameter is then the value of this parameter at every frame in the data stream. Thus you can
determine the difference between every instantaneous value of the airspeed and the maximum
by creating a computed parameter with the expression "MAX(IAS) — IAS".

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 61 of 113
Typically, you will be interested in obtaining a single statistical value for an individual flight, rather
than an entire readout. The grouped statistical functions, MaxGroup, MinGroup, and MeanGroup
can be used for this purpose.

11.2 Grouped statistical functions

MaxGroup (expression, group_value)


MinGroup (expression, group_value)
MeanGroup (expression, group_value)

These functions use the expression in group_value to determine a set of unique values by which to
create separate groups of frames, then return the corresponding statistical value for all values of
expression across each group. This is most often used in conjunction with the SegmentTrigger
function (see Section 11.5). One use of the SegmentTrigger function is to delineate separate
flights in the readout by returning a unique ordinal number for every frame in a particular flight. In
other words, the SegmentTrigger can be made to return 1 for all frames in the first flight in the
readout, 2 for all frames in the second flight, 3 for all frames in the third flight, etc. This ordinal
number can then be used in a grouped statistical function to return a different statistical value for
each flight. For instance, suppose we have a computed parameter defined, called
OrdinalFlightNumber, which uses the SegmentTrigger function as described above. To calculate
the maximum altitude achieved for each flight, create a computed parameter which uses the
expression, "MaxGroup(ALT, OrdinalFlightNumber)". This will then treat each separate flight,
delineated by the OrdinalFlightNumber parameter, as a separate group across which to
calculate the maximum altitude. Your computed parameter will thus return the maximum altitude
of flight one for all points in flight number one, the maximum altitude of flight two for all points in
flight number two, etc.

11.3 Differential functions

Diff(expression, [span])
Filter(expression, [span])

These functions return the differential of expression at every point. The Diff function takes the
difference of expression between two points, and divides by the time difference between them.
The optional span argument can be used to smooth the differential curve by taking the difference
not between two adjacent points, but between points that are span seconds apart. If the span
argument is not provided, then 1 is the default. For instance, to calculate vertical speed from
altitude, create a computed parameter using the expression "Diff(ALT)." To smooth this curve
using a span of ten, use the expression "Diff(ALT,10)."

The Filter function is similar to the Diff function except that it uses the span argument to achieve
the average slope through all points within span points of the current point. It is considerably

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 62 of 113
slower than the Diff function, and should only be used if the Diff function can not be made to
achieve satisfactory results. Note that if span is 1, which is the default if it is not provided, then it
behaves exactly the same as the Diff function.

11.4 The Integral function

Integral (expression, [start_counter, end_counter])

The Integral function performs an integration of expression over the interval defined by
start_counter and end_counter. Strictly speaking, the Integral function is simply a summation,
since the expression over which the integration occurs is divided into discrete units (seconds) by
the sampling nature of flight data recorders. Note that integrations over multiple intervals are
possible because start_counter and end_counter can change across the data set. For instance, if
you have computed parameters Takeoff_Time and Touchdown_Time defined, such that
Takeoff_Time is the time of takeoff for each flight and Touchdown_Time is the time of touchdown
for each flight, both propagated to all points within the flight, then "Integral (IAS, Takeoff_Time,
Touchdown_Time)" will perform a separate integration for each flight (each change in
Takeoff_Time), and can be interpreted as returning the total distance traveled by the aircraft
since takeoff.

11.5 Trigger functions

Trigger (expression, condition, [default], [off_trigger])


PreTrigger (expression, condition, [default], [off_trigger])
SegmentTrigger (expression, condition, begin_segment, end_segment, [default], [off_trigger])

The various trigger functions take the value of expression at a point where a particular condition
occurs, returning that particular value for a specified range of points. The point at which the
condition occurs is called the trigger point, the condition which causes it is called the trigger
condition, the value taken is called the trigger value, and the range of points for which that value
is returned is called the trigger range. The behavior of the trigger condition and the bounds of the
trigger range are determined from the particular trigger function used. In all cases, for points
which do not fall within any trigger range, a trigger function will return the value specified by
default. The last argument for the three varieties of the Trigger function, the off_trigger argument,
modifies the behavior of the trigger functions slightly and is described in more detail below.

The simplest trigger function is the Trigger function itself. The Trigger function takes the value of
expression at the first point where condition changes from FALSE to TRUE, and returns that value for
every frame thereafter until the next time condition changes from FALSE to TRUE. Thus the trigger
condition is the change of condition from FALSE to TRUE, the trigger point is the point where that
condition occurs, the trigger value is the value of expression at the trigger point, and the trigger
range is that trigger point through the next trigger point. For instance, assume you have created a

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 63 of 113
computed parameter, called Takeoff, which is TRUE at every point of takeoff, and FALSE
everywhere else. To return, say, the airspeed of each takeoff in the readout for every point in the
flight in which the takeoff occurred until the next takeoff, create a computed parameter using the
expression, "Trigger (IAS, Takeoff)". All values of airspeed can then be compared to the airspeed
at the previous takeoff event by creating a computed parameter using the expression, "IAS —
Trigger(IAS, Takeoff)". Note that for the Trigger function, the value of default is returned for every
point prior to the first trigger point, in this example before the first takeoff.

The PreTrigger function also takes the value of expression at each point where condition changes
from FALSE to TRUE, but instead of returning that value for every succeeding frame, it returns that
value for every frame preceding that point, all the way back to the prior point where condition
changed from FALSE to TRUE. Thus, in the case of the PreTrigger function, the trigger condition is
the change of condition from FALSE to TRUE, the trigger point is the point where that condition
occurs, the trigger value is the value of expression at the trigger point, and the trigger range is that
trigger pointthrough the previous trigger point. This is useful for comparing values of parameter
against the value at an event which is to occur sometime in the future. For instance, assume you
have created a computed parameter, called Touchdown, which is TRUE at every point of
touchdown, and FALSE everywhere else. To return, say, the airspeed of each touchdown in the
readout for every point in the flight in which the touchdown occurred, back to the previous
touchdown, create a computed parameter using the expressoin, "PreTrigger (IAS, Touchdown)".
All values of airspeed can then be compared to the airspeed at the next touchdown event by
creating a computed parameter using the expression, "IAS — PreTrigger(IAS, Touchdown)". Note
that for the PreTrigger function, the value of default is returned for every point after the last trigger
point, in this example after the last touchdown.

The SegmentTrigger function introduces the concept of a segmented trigger range. A


segmented trigger range is a range which is defined by conditions other than the trigger
condition. The beginning of the segmented trigger range is defined as the point where
begin_segment changes from FALSE to TRUE, and the end of the segmented trigger range is
defined as the point where end_segment changes from FALSE to TRUE. The trigger value is then
returned for every point within the segmented trigger range. The SegmentTrigger is most often
used to delineate entire flights or flight segments. For instance, if you have a computed
parameter called BeginFlight, which is TRUE at the point at which a flight begins (perhaps defined
as the point two minutes before takeoff), and FALSE at all other points, and a computed
parameter called EndFlight, which is TRUE at the point at which a flight ends (perhaps defined as
the point two minutes after touchdown), and FALSE at all other points, then these two points can
be used to define a segmented trigger range which is taken to indicate one whole flight. Any
value at any trigger point during the flight can be taken and returned for all points within the flight.
For instance, to return the airspeed at takeoff for all points within the flight, create a computed
parameter using the expression, "SegmentTrigger (IAS, Takeoff, BeginFlight, EndFlight)". Any
airspeed within the flight can then be compared with the takeoff speed using the expression, "IAS
— SegmentTrigger (IAS, Takeoff, BeginFlight, EndFlight)". This overcomes the limitation of the normal
Trigger function, where only airspeeds which occur after the takeoff point can be compared, and
the PreTrigger function, where only airspeed which occur before the takeoff point can be
compared.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 64 of 113
Note that in the case of the SegmentTrigger functions, the value of default is returned for all points
which do not reside within a segmented trigger range, or in our example, within a flight.

For the SegmentTrigger function, if the value of expression and condition are given as NULL, then
the trigger value starts at 1 and is incremented for every new segmented trigger range. In this
case there is no trigger condition because there is no point at which the trigger value needs to
be obtained. This feature enables you to assign a unique ordinal number to each flight within a
readout — 1 for the first flight, 2 for the second, etc. These numbers can then be used to group
values within a particular flight for the purpose of obtaining aggregate statistics, using the
Grouped Statistical functions (see Section 11.2). For instance, to return the maximum altitude
achieved for each flight, create a computed parameter using the expression: "MaxGroup (Alt,
SegmentTrigger (NULL, NULL, BeginFlight, EndFlight))."

The segmented trigger range can be any range defined by a beginning point and an end point.
For instance, if you have a computed parameter called BeginCruise, which is TRUE at the point at
which cruising begins, and FALSE otherwise, and EndCruise, TRUE at the point at which cruising
ends, and FALSE otherwise, then the average cruising speed can be obtained from "MeanGroup
(IAS, SegmentTrigger (NULL, NULL, BeginCruise, EndCruise))."

The final argument in all three varieties of the trigger function modifies the behavior of the trigger
functions as follows. Instead of defining the trigger condition as the changing of condition from
FALSE to TRUE, the trigger condition is defined as the changing of condition from TRUE to FALSE.
For instance, suppose you have a parameter, called GearDown, which is TRUE when the landing
gear is down and FALSE otherwise. To return the value of the altitude at which the gear was
raised for every point thereafter until the next time the gear is raised, create a computed
parameter using the expression, "Trigger(ALT, GearDown, NULL, 1)" (note the use of NULL as the
third argument which is the default, but must be specified in order to specify the fourth argument).
All values of the altitude can then be compared to the altitude at the previous gear-up event by
creating a computed parameter using the expression, "ALT-Trigger(ALT, GearDown, NULL, 1)". Note
that instead of using the off_trigger argument, you could create a computed parameter using the
expression, "Trigger(ALT, Not GearDown)". The difference is that, without the off_trigger argument,
if the readout begins with the gear up (GearDown equal to 0), the first point in the readout will be
treated as a trigger point. In other words, the Trigger function will interpret the first point in the
readout as a point where the landing gear was raised. The OffTrigger function avoids this problem
by ensuring that the gear must be down before it can be raised.

NOTE: In earlier versions of AVSCAN.flight, a greater variety of trigger functions was offered. Each
of the three trigger functions provided here had a version which incorporated what is now the
off_trigger argument; thus for the Trigger, PreTrigger, and SegmentTrigger functions, there was the
OffTrigger, the OffPreTrigger, and the SegmentOffTrigger. Since the functionality of these has now
been incorporated into the three basic varieties, the Off- versions of the trigger functions are now
considered obsolete. They will, however, continue to be supported for backward compatibility.
The JointTrigger varieties of the Trigger functions have also been made obsolete, but like the Off-
triggers, will continue to be supported for compatibility.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 65 of 113
11.6 The Duration function

Duration (condition, [exclusion_duration], [coarseness])

The Duration function divides time into condition ranges. A condition range is defined as the point
where condition changes from FALSE to TRUE through the point where condition changes from
TRUE to FALSE. For all points within a given condition range, the Duration function returns the
duration, in seconds, of that condition range. For all points outside of any condition range (when
condition is FALSE), the Duration function returns 0. For instance, if the indicated airspeed during a
flight is 300 for 10 seconds, 301 for 5 seconds, 300 again for 2 seconds, and 301 again for another
10 seconds, then the computed parameter using the expression, "Duration(IAS>300)" will return 0
for the first 10 seconds (since the condition, IAS>300, is FALSE), 5 for the next 5 seconds (since the
condition is TRUE for 5 seconds), 0 for the next 2 seconds, and 10 for the next 10 seconds. In this
case, there are two condition ranges, the first is 5 seconds long, and the second is 10 seconds
long.

The optional exclusion_duration argument is used to define a duration for which a change in
condition from TRUE to FALSE does not interrupt a condition range. For instance, if we replace our
computed parameter’s expression above with "Duration (IAS>300, 2)", then the point at which the
airspeed drops to 300 for 2 seconds will not end the previous condition range. Thus the expression
will return 0 for the first 10 seconds, then 17 (5+2+10) for the next 17 seconds, since the 2 second
period where the airspeed drops to 300 is within the period allowed by the exclusion_duration
argument.

The third argument, coarseness, which is also optional, makes running the Duration function faster
in situations where you are willing to miss events that are shorter than coarseness seconds. In other
words, as the Duration function is proceeding through the data, it will only sample the condition
every coarseness seconds, ignoring points in between. For example, using a coarseness of 10
seconds will typically improve the performance by a factor of 10, but you will miss events shorter
than 10 seconds.

11.7 The Index function

Index (expression, [offset])

The Index function returns the value of expression at a point offset frames from the current point.
The value retrieved is retrieved from a prior frame if offset is negative, or from a succeeding frame
if offset is positive. For instance, to obtain the value of the altitude 10 seconds prior to the current
point, create a computed parameter using the expression, "Index (ALT, -10)". If the offset
argument is not provided, it defaults to 1. If the frame referred to by the Index function would be
before the first frame of data or after the last frame of data, NULL will be returned.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 66 of 113
11.8 The OscFilter function

OscFilter (expression, [value, oscillation_half_period])

The OscFilter function is intended for certain flight data recorders which, when certain circuits in
the aircraft are turned off (hopefully when the plane is on the ground!), record periodic
oscillations between two discrete values for particular parameter values. The OscFilter function
returns value for all points which follow this oscillating pattern. The value argument is optional,
and, if not specified, defaults to 0. The two discrete values of the oscillation need not be
specified, but the half-period, i.e., the time for which the recorded records each discrete value in
turn, is given by the optional oscillation_half_period argument. If this argument is not specified, it
defaults to 4, which is the usual half-period for recorded oscillations.

The OscFilter function is generally slow and should be avoided unless no other methods to screen
out the oscillating values are successful. Also, its performance will be considerably faster if you
narrow down the range of data points it looks at by making all data points for which you are not
interested in performing the algorithm equal to a constant value. For instance, if you are willing to
bet that the IAS parameter will only oscillate on the ground, and you have a computed
parameter, say On_Ground, which is 1 when the aircraft is on the ground and 0 otherwise, then
using the expression, "OscFilter (If (On_Ground, IAS, 0))" will use the desired value of IAS when the
aircraft is on the ground, but will substitute 0 otherwise. The OscFilter function will be able to
quickly scan past all the 0’s, and only perform its complex (and slow) calculations for the data
points where the aircraft is on the ground.

11.9 The Airport Lookup functions

AirportLookup (latitude, longitude)


AirportDescLookup (latitude, longitude)

The AirportLookup functions use the given latitude and longitude to return the three-digit airport
code or the airport description of the airport closest to the given coordinates. These functions use
an internal database which contains all of the major airport across the globe, as well as an
extensive set of lesser airports.

The current implementation of these functions is not optimized; every point in the data set will be
matched against all the known airports to determine the closest. Since there are over 4,000
airports to check against, this can be a time-consuming process when returning the closest airport
for each point during a flight. Although this may be useful, the most useful application of these
functions is to determine the origination and destination airport of a given flight. Thus the only
points of interest are the takeoff and touchdown points (or other points which occur within the
boundaries of an airport). To determine the origination and destination airport given the latitude
and longitude, use the AirportLookup functions in conjunction with the If function (see Section
11.10) to eliminate unwanted searches through the airport database. For instance, if you have a

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 67 of 113
computed parameter called Takeoff which is TRUE at every takeoff point and FALSE at all other
points, and parameters Lat and Lon indicating the latitude and longitude respectively, then, to
determine the origination airport of a flight, create a computed parameter using the expression,
"If (Takeoff, AirportLookup (Lat, Lon), NULL)". The If function will not perform the lookup if the
Takeoff condition is not met.

11.10 Utility functions

If (condition, true_value, [false_value])

The If function performs much like the If function available in most spreadsheet applications. For
every point in the data stream, if condition is TRUE, true_value is returned, otherwise false_value is
returned. The false_value argument is optional; if not provided, it defaults to NULL. The If function
saves time by not evaluating the true_value expression if condition is FALSE, and vice versa.

IsNull (expression)

The IsNull function, for every point in the data stream, returns 1 if expression is NULL at the current
point, or 0 if the expression is not NULL.

NoNull (expression, [value])

The NoNull function ensures that it will never return a NULL value by returning value for all points at
which expression evaluates to NULL. If the optional value argument is not provided, it defaults to
0. This function is useful in cases where the effect of NULL in the expression is that the expression
does not get evaluated, but where the expression should be evaluated anyway. In these cases,
value can be substituted to force an evaluation of the expression.

11.11 Mathematical functions

Abs (expression)

The Abs function returns the absolute value of expression, i.e., it makes positive all negative values.

Floor (expression)

The Floor function rounds expression down to the next lower whole number. Thus Floor (7.8) and
Floor (7.2) both return a value of 7. Note that negative numbers are still rounded downward, so
that Floor (-1.2) returns —2.

Ceil (expression)

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 68 of 113
The Ceil function rounds expression up to the next higher whole number. Thus Ceil (7.2) and Ceil
(7,8) both return a value of 8. Note that negative numbers are still rounded upward, so that Ceil (-
1.8) returns —1.

Round (expression)

The Round function rounds expression to the nearest whole number. If the fractional part is
greater than or equal to 0.5, then expression is rounded up; otherwise it is rounded down.

Sin (expression)

The Sin function returns the trigonometric sine of expression, where expression is in radians. To
convert from degrees to radians, multiply by PI/180.

Cos (expression)

The Cos function returns the trigonometric cosine of expression, where expression is in radians. To
convert from degrees to radians, multiply by PI/180.

Tan (expression)

The Tan function returns the trigonometric tangent of expression, where expression is in radians. To
convert from degrees to radians, multiply by PI/180.

Asin (expression)

The Asin function returns the trigonometric inverse sine of expression in radians. To convert from
radians to degrees, multiply by 180/PI.

Acos (expression)

The Acos function returns the trigonometric inverse cosine of expression in radians. To convert
from radians to degrees, multiply by 180/PI.

Atan (expression)

The Atan function returns the trigonometric inverse tangent of expression in radians. To convert
from radians to degrees, multiply by 180/PI.

Sqrt (expression)

The Sqrt function returns the square-root of expression. #ERROR will be returned for values of
expression that are negative.

Log (expression)

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 69 of 113
The Log function returns the 10-base logarithm of expression. #ERROR will be returned if expression
is less than or equal to zero.

Ln (expression)

The Ln function returns the natural logarithm of expression. #ERROR will be returned if expression is
less than or equal to zero.

Exp (expression)

The Exp function returns the exponential of expression (the mathematical constant e raised to the
power of expression).

11.12 Mathematical operators

+: Performs arithmetic addition.

-: Performs arithmetic subtraction with two operands (as in x-y) or sign reversal with one operand
(as in —x).

*: Performs arithmetic multiplication.

/: Performs arithmetic division. Returns #ERROR if the right operand is equal to 0.

^: Raises the left operand to the power of the right operand (as in 2^3 equals 8). Returns #ERROR
if the left operand is negative and the right operand is fractional.

MOD, %: Both of these operators are identical. They both perform the remainder operation. In
other words, they divide the left operand by the right operand and return the remainder. So 7
MOD 3 equals 1.

11.13 Logical operators

AND, &&: Both of these operators are identical. They both perform a logical AND of their
operands. In other words, they return the number 1 if both their left operands and right operands
are non-zero, 0 otherwise.

OR, ||: Both of these operators are identical. They both perform a logical OR of their operands.
In other words, they return the number 1 if either of their operands is non-zero, and 0 otherwise.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 70 of 113
XOR: This operator performs a logical exclusive-or of its operands. In other words, it returns 1 if one
or the other of its operands are non-zero, but not both, and 0 if both of its operands are non-zero
or both are 0.

NOT, !: Both of these operators are identical. They both perform a logical NOT of their operand. In
other words, they return 0 if their operand is non-zero, and 1 otherwise.

11.14 Comparison operators

=: Returns 1 if its operands are equal, 0 otherwise.

!=,<>: Both of these operators are identical. They return 0 if their operands are equal, and 1
otherwise.

<: Returns 1 if its left operand is less than its right operand, 0 otherwise.

<=: Returns 1 if its left operand is less than or equal to its right operand, 0 otherwise.

>: Returns 1 if its left operand is greater than its right operand, 0 otherwise.

>=: Returns 1 if its left operand is greater than or equal to its right operand, 0 otherwise.

11.15 Bitwise operators

&: Performs a bitwise AND on its operands. A bit in the result is 1 if and only if both of the
corresponding bits in the operands are 1, 0 otherwise.

|: Performs a bitwise OR on its operands. A bit in the result is 1 if either of the corresponding bits in
the operands are 1, 0 otherwise.

~: Performs a bitwise NOT on its operand. A bit in the result is 1 if the corresponding bit in the
operand is 0, 0 otherwise.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 71 of 113
12.0 Parameter definitions

AVSCAN.flight provides a very flexible and thorough mechanism for defining the formulas used to
convert parameter values as they are recorded on the flight data media into engineering units
useful for display and calculations. The set of conversion formulas provided by AVSCAN.flight can
be used to accurately convert almost all of the current data frame layouts in use in aircraft today,
and is designed to anticipate as much as possible the increasing complexity of data collection
methods into the future. Formulas can be designed based on a number of paradigms, including
interpolation functions, lookup tables, and best-fit polynomials.

Please note: users of Version 4.38 of AVSCAN.flight and earlier should note that the sophistication
of defining conversion formulas for parameters has increased considerably, but at the same time
the user-interface for creating and editing these formulas and the file format in which they are
stored have become both easier and less dependent upon the user’s understanding of esoteric
techniques. Because of the drastic difference between parameter editing in pre- and post- 4.38
versions of AVSCAN.flight, pre-4.38 versions will not be able to make use of the post-4.38 format.
All parameter definitions will be lost in files which are saved in post-4.38 versions and then opened
in pre-4.38 versions. However, parameter files can be saved separately in the pre-4.38 format,
through the PRM file export functionality (see Section 9.2). The exported PRM file can then be
imported in a pre-4.38 version of AVSCAN.flight.

Also note: as of Version 5.13 of AVSCAN.flight, considerable additional functionality has been
added to the PRM file format and the PRM Editor in the form of multiple conversion ranges and
multiple conversion steps. Earlier versions of AVSCAN.flight should be able to open files saved in
Version 5.13 and higher, but will not be able to properly interpret parameters with multiple
conversion ranges or multiple conversion steps. Parameters which have both a single conversion
range and a single conversion step should be handled properly in earlier versions.

This section is divided into three subsections. The first subsection will review the general concepts
behind the construction of parameter definitions. The next subsection will discuss the PRM Editor, a
sophisticated tool built into AVSCAN.flight to simplify the construction of parameter definitions.
Then the final subsection will describe the PRM file format itself, since sophisticated users might find
it more efficient to edit the textual PRM format directly.

12.1 Parameter construction concepts

The translation of information from bits in a data frame to meaningful engineering units such as
Altitude and Airspeed can best be understood as taking two steps. First is the extraction of bits
from the data frame and their assembly into a single raw bit field, and second is the conversion of
that bit field into engineering units via various mathematical formulae. These two operations are
described in detail in the following subsections.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 72 of 113
12.1.1 Bit field extraction

The GP-573 ARINC format dictates that data frames are composed of four subframes, and that
each subframe contains a certain number of 12-bit words. Typically, there will be 64, 128, 256, or
512 12-bit words in a subframe, but other values are possible. AVSCAN.flight typically determines
the number of words per subframe automatically when reading a TSC file, but when working with
a template it must be defined manually before parameter editing can take place. When
opening the PRM Editor in a template, AVSCAN.flight will ask you to define the number of words
per subframe before proceeding.

By convention, words are referred to by their order within the subframe layout, with Word #1 being
the first word. Bits are referred to by their position within the word, with Bit #1 being the least
significant and Bit #12 being the most significant.

The AVSCAN.flight parameter construction paradigm allows that virtually any configuration of bits
in the data frame can be assembled into a single coherent bit field for passage on to the
conversion routines. A bit field is broken up into units called word segments. Each word segment
represents a single contiguous set of bits that exists on a single word in the data frame. Therefore,
in the absence of additional qualifiers which limit the specific subframes on which a particular
word segment can be found (see below), a word segment is simply defined by a word, a low bit,
and a high bit. A bit field is then composed of any number of word segments, where the word
segments are arranged in order from most significant to least significant. For example, the bit field
for a parameter may be defined as being composed of Bits 1-3 of Word 1, Bits 2-12 of Word 11,
and Bit 1 of Word 15. The bit field, then, consists of a total of 15 bits, with the most significant bit
coming from Bit 3 of Word 1, and the least significant bit coming from Bit 1 of Word 15. The
number of bits in a bit field is limited only by the machine word-length, typically 32.

Any word segment can also be defined as limited to being valid only for a specific set of
subframes within a single frame. Subframes are numbered 1 through 4; the number of a subframe
is determined by its sync code, which is the first word of the subframe. Almost always, the sync
code is a repeating pattern of four, the most typical being: 583,1464,2631,3512
(1107,2670,5107,6670 in octal). The Hamilton-reverse sequence is also common: 3620,474,3621,465
(7044,0732,7045,0733 in octal). For the normal sequence, a subframe with a sync code of 583 is
considered Subframe #1, a subframe with a sync code of 1464 is considered Subframe #2, etc. A
word segment can be defined as being found in any combination of subframes.

A word segment can also be defined as limited to being valid only when another parameter is
equal to a certain value. In this case, any subframe for which the parameter value is equal to the
expected value is called the superframe for that word segment, the word segment is called a
superframe-dependent word segment, the value which triggers the validity of the superframe-
dependent word segment is called the superframe value or cycle, and the parameter upon
which the superframe-dependent word segment depends is called the superframe index. In fact,
AVSCAN.flight allows you to define any number of superframe values for a superframe-dependent

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 73 of 113
word segment, such that if the superframe index is equal to any one of these values, the word
segment is considered valid. And, for even more flexibility, a word segment can actually be
dependent upon multiple superframe indexes, such that if the value of any of the superframe
indexes is equal to one of the superframe values defined for that superframe index, the value of
the word segment is considered valid. The need for multiple superframe values and multiple
superframe indexes is quite rare, however.

A word segment can be defined as limited to both a specific set of subframes and a specific set
of superframe indexes and values. In this case, both the subframe and the superframe must
match for the value of the word segment to be valid.

A word segment can be signed, which means that the most significant bit is interpreted as a twos-
complement sign bit prior to being assembled into the final bit field. The meaning of a twos-
complement sign bit is as follows: If the sign bit is 0 (clear), then the value of the bit field is taken to
be equal to the value of the rest of the bits. If the sign bit is 1 (set), however, then the value of the
bit field is taken to be equal to minus the value of the rest of the bits less one. Thus binary 1000
equals —8, binary 1001 equals —7, etc., all the way up to 1111, which equals —1. This signed value
then gets added to the rest of the segments before assembly into the bit field. Typically, only the
most significant segment is signed, meaning that only the most significant bit in the assembled bit
field is signed.

In very rare cases the order of bits once assembled into a bit field must be reversed before the bit
field is run through the conversion formula. In other words, the most significant bit should really be
the least significant bit, the second most significant bit should really be the second least significant
bit, etc. AVSCAN.flight does allow for this rare case.

12.1.2 Conversion ranges

Once you have defined the assembly of word segments into a single bit field, ranges in different
values of the bit field can be defined such that each range is associated with a different
conversion routine. For instance, ranges can be defined such that bit field values between 0 and
999 are put through a linear conversion, values between 1000 and 1999 are put through a
polynomial conversion, etc.

The boundary of a range can be extended to infinity, such that bit field values of a specified
value or any higher value are put through a specific conversion. The boundary of a range can
also be extended downward to negative infinity for signed bit fields (see Section 12.1.1), such that
bit field values of a specified value or any lower value are put through a specific conversion. By
default the conversion range associated with a parameter is from negative infinity to positive
infinity, such that all possible values are put through a single conversion. When defining multiple
conversion ranges, the ranges must not overlap and must collectively include all possible values of
the bit field; thus the ranges must cover the entire range from negative infinity to positive infinity.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 74 of 113
12.1.3 Bit field conversion

Once you have defined the assembly of word segments into a single bit field, you must then
decide how that bit field, now essentially a single number, will be converted into the meaningful
value that AVSCAN.flight will work with. As discussed above, multiple ranges of possible values of
the bit field can be defined such that each range of possible values is governed by different
conversion rules. Conversion rules are defined by any number of conversion functions, each of
which acts on the value returned by the previous conversion function. The first conversion
function acts on the original bit field. Thus a conversion rule can be defined which first applies a
linear conversion function to the raw bit field value, then applies a user-defined equation to the
value returned by the linear conversion, and then finally converts the value returned by the
equation into a textual representation. Each of the possible conversion functions which can be
applied are described below:

BCD
This function interprets the input as a series of binary coded decimals which constitute the decimal
digits of the resultant value. The input value is divided into segments of four bits each. The value
of each four-bit segment is interpreted as a digit; thus if the four bits are 0110, the digit is 6. Digits
are then combined to form the resultant value. For example, the twelve bits, 0110 1001 0101
yields the value 695. Typically, this value is the final value; however, in some cases, this value
needs to be put through an additional polynomial operation. Constants A0 through A6 are
defined, such that if the value after the BCD conversion is x, the final value is equal to:

A0 + A1*x + A2*x2 + A3*x3 + A4*x4 + A5*x5 + A6*x6

If this extra calculation step is not needed then A1 should be defined as 1 and A0 as 0.

Occasionally, manufacturer specifications will call out for BCD’s for which the total bit field does
not span a number of bits which is an even multiple of four. In this case, AVSCAN.flight will assume
that the most-significant digit does not span the full range from 0 to 9. For instance, if the bit field
spans 10 bits, the final value will contain 3 digits, and the most significant digit will be assumed to
occupy only 2 bits, and thus it will only span the range of 0 to 3. This behavior can be overridden,
however, by explicitly specifying the number of bits occupied by the least-significant digit. In this
case, it is assumed that the full resolution that would otherwise be available for the least-significant
digit will not be used. So if the bit field again spans 10 bits, and the least-significant digit is
explicitly specified to occupy only 2 bits, then the final value will again contain 3 digits. But this
time the top two digits will span the full range from 0 to 9, and the least-significant digit will only be
significant to a resolution of 4. In other words, for the least-significant digit, only values of 0, 4, 8, or
12 will be possible (although a value of 12 should never occur).

Binary
This function simply passes the input value as a binary number.

Discrete text

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 75 of 113
This function returns a text string rather than a decimal value. It returns one text string, called the
"clear text", when the input value is zero, and another, called the "set text", when the input value is
non-zero. The typical use of this function is for single bit parameters called discretes, which simply
indicate the state of a parameter as on or off (eg. gear down or air-ground switch). The value
returned, then, is a text string indicating this state in English ("Gear down", "Gear up", "In air", "On
ground", etc).

DITS/Linear
Information gleaned through the Digital Information Transfer System (DITS) always conforms to a
linear specification; therefore the DITS conversion function and the Linear conversion function are
identical. The difference is that with the DITS function, AVSCAN.flight allows you to enter extra
information along with the conversion specifications in order to trace the parameter definition
back to the manufacturer document source. This extra information includes the DITS Label, the Bit
Range, the Input Resolution, and the SDI Flag. The values of these fields do not affect the
calculation of the conversion, but are provided for convenience. Most often, the Linear and DITS
functions map their input value to a final value based on the following formula, where the input
value is represented by x:

A0 + A1*x

In this expression A0 is the intercept and A1 is the slope. In some cases, however, it is more
convenient to express the conversion formula as follows:

A1 * (A0 + x)

The first form is called "multiply-then-add", the second form "add-then-multiply". The default
behavior in AVSCAN.flight is multiply-then-add; however, you can specify that a formula is to be
calculated using add-then-multiply if you wish. In this case, A1 will be the same, but the A0 in the
multiply-then-add expression will need to be divided by A1 for equivalent behavior in the add-
then-multiply expression.

Some manufacturers’ documents specify parameters according to a minimum and maximum, or


a minimum and a resolution. Given a minimum and a maximum, the resolution can be inferred
from the number of bits making up the bit field. Similarly, given a minimum and a resolution, the
maximum can be inferred. AVSCAN.flight allows you to enter the specifications for linear functions
this way rather than computing the appropriate A0 and A1; these will then be calculated
automatically.

Equation
AVSCAN.flight allows you to enter an arbitrary mathematical function as the conversion formula
for a parameter. All of the standard arithmetic, logical, comparison, and bitwise operators can
be used, as well as a set of built-in mathematical functions. The definitions of these operators and
functions are equivalent to those used for computed parameters. The reader is referred to
Section 11.0 for details.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 76 of 113
Hex
This function passes the input value as a hexadecimal (16-based) number.

Interpolation
The Interpolation function uses a series of (x,y) coordinates to define the endpoints between
which an interpolation operation can be used to find the y-value (the output) corresponding to a
given x-value (the input). The points are arranged in increasing order of their x-coordinates. Then
the y-value for a given x-value is found along the line segment between whose x-coordinates the
given x-value lies. For convenience, the x-coordinates can be given as octal codes or as decimal
values.

ISO #5
This function interprets the input value as the ASCII code for a single text character. Since ASCII
codes only go up to 127, only the least significant 7 bits will be considered when computing the
ASCII character.

L3 Airspeed
This function is a complex formula used exclusively to compute the airspeed parameter for certain
L3 data recorders.

L3 Altitude
This function is a complex formula used exclusively to compute the altitude parameter for certain
L3 recorders.

Linear
See DITS/Linear, above.

Octal
This function passes the input value as an octal (8-based) number.

Polynomial
This function allows you to do define constants A0 through A6 such that if the bit field is represented
by x, the final value is equal to:

A0 + A1*x + A2*x2 + A3*x3 + A4*x4 + A5*x5 + A6*x6

In addition, you can define input values below which and above which the polynomial function
will not be computed, but instead a simple constant value is returned. The point below which a
constant value is returned is called the out-of-range minimum data point, and the value to be
returned for points below that data point is called the out-of-range minimum value. Similarly, the
point above which a constant value is returned is called the out-of-range maximum data point,
and the value to be returned for points above that data point is called the out-of-range
maximum value. Both of these points can be disabled or enabled separately.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 77 of 113
Synchro
This function is to be used when the input value is to be interpreted as a synchro position. Three
varieties, or linearizations, of synchro are available: Teledyne, Hamilton, and L3. The Teledyne is
the most common and the complex formula used to convert raw data into an engineering unit is
well-known. The Hamilton synchro is technically a linear function, in which the input value is
multiplied by 360/4095, but is provided for convenience. The L3 synchro is a complex formula
associated with certain types of L3 recorders.

The synchro function can be defined such that the angle part of the synchro’s bit field is signed
(covering —180 to 180 degrees) or unsigned (covering 0 to 360 degrees). The value resulting from
passing the input value into the synchro function can be further manipulated by an additional
polynomial operation. Constants A0 through A6 are defined, such that if the value after the
Teledyne Synchro conversion is x, the final value is equal to:

A0 + A1*x + A2*x2 + A3*x3 + A4*x4 + A5*x5 + A6*x6

If this extra calculation step is not needed then A1 should be defined as 1 and A0 as 0.

Text
The Text function allows you to associate a particular value, or range of values, of the input value
with a text string. It is typically used for state parameters with more than two states (for
parameters with two states the Discrete Text function is simpler).

12.1.4 Subsecond sampling

Parameters sampled more than once a second can be defined such that the definition of each
sample is completely independent of the others. For instance, in a parameter with two samples
per second, sample number one can be defined as a linear conversion of a bit field with two
word segments, and sample number two can be defined as a synchro conversion of a bit field
with three word segments. This situation is highly unusual however, and it is much more common
to make use of a concept called "standard subsecond sampling."

Standard subsecond sampling assumes that the definition of each sample of a parameter is
identical, except for the word numbers on which each sample’s word segments are found.
Moreover, the word segments for each parameter are considered to be equally spaced through
the subframe, such that one only need set the word segments for a single sample and the rest will
be calculated, given the number of words per subframe and the number of samples. For
instance, given a subframe layout of 64 words per subframe, if, using standard subsecond
sampling, you define a vertical acceleration parameter with 8 samples, and then define a single
sample as deriving its bit field from word number 2, the other seven samples will automatically be
made equal to the one you defined, with the one difference being that the samples will derive
their bit fields from words 10, 18, 26, 34, 42, 50, and 58. Standard subsecond sampling greatly
simplifies creating the definitions of parameters with more than one sample per second.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 78 of 113
12.1.5 Rounding

Once the bit field has been put through the conversion function, a final stage of refinement is
rounding to the desired precision. The precision is specified in terms of decimal places, and is
usually based on the number of total bits which comprise the parameter’s bit field. Since the
conversion functions can introduce fractional parts with an arbitrary number of significant digits,
the reader of the parameter’s value should not be fooled into thinking the computed value is
significant to that degree. Therefore rounding to a precision appropriate to the number of bits is
important in representing the accuracy of the parameter as recorded on the flight data media.

12.1.6 Additional parameter data

AVSCAN.flight allows you to associate additional information with each parameter you define.
This information has no effect on the results of the conversion, but gives you a way to assign a unit
qualifier, describe the parameter, provide alternate names for the parameter, trace the definition
of the parameter back to the original manufacturer’s specifications, etc. The fields
automatically provided by AVSCAN.flight include a parameter description, a full parameter
name, an OEM name (matched to the name provided by the manufacturer), a mnemonic
abbreviation, and a unit string. In addition, AVSCAN.flight allows you to create user-defined
tokens, which can be used to associate additional properties with each parameter, such as the
signal source and signal type.

12.2 The PRM Editor

AVSCAN.flight provides a powerful interface for creating and editing the definitions of recorded
parameters. Double-clicking on a recorded parameter in the document tree will bring up the
PRM Editor, a dialog-based interface for designing and testing your parameter definitions
interactively. All of the parameter construction concepts discussed in the preceding subsection
are applicable to this dialog. See Figure Figure 12-1.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 79 of 113
Figure 12-1 The PRM Editor

The dialog can be roughly divided into the following sections: general parameter information,
sample selection, sample definition, comments, and utility buttons. The sample definition section is
further divided into the following subsections: word segment selection, word segment definition,
user-defined conversion function management, range selection, conversion step selection,
conversion function selection, and conversion function details. Each of these sections and
subsections is discussed below.

12.2.1 General parameter information

The top part of the PRM Editor dialog allows you to define the general information associated with
a parameter. The information entered into this part of the dialog does not affect the actual
conversion computations, but gives you a way to attach useful semantic information to the
parameter you are working on. The following fields are provided:

Full parameter name


Enter into this field as verbose a name for the parameter as you deem necessary.

OEM parameter name


Enter into this field the name of the parameter as provided in the original manufacturer’s
document from which the parameter’s definition is derived.

Mnemonic
Enter into this field the abbreviated mnemonic name used for the parameter. This is the name
that will be displayed in the document tree, and is also the name which should be used in the
expressions for computed parameters or event definitions.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 80 of 113
Last modified
This field is automatically updated whenever you modify the definition of a parameter and
indicates the date and time when this last occurred. As such, it is not user-editable.

Is a superframe index
Check off this box to make this parameter available as a superframe index to other parameters.
When this box is checked off, the name of the parameter will be made available in the
superframe parameter combo box (see the word segment definition section, Section 12.2.3.2,
below).

Units
Use this field to specify the unit of measurement for this parameter, if needed. The combo box will
make available the names of all units used in this particular document. You can select from this
list, or type in a new unit string as necessary. The units text will appear in the tabular and graphical
printouts for DataViews (see Section 7.0).

Decimal places
Use this field to select the precision to which the parameter is to be calculated at the end of the
conversion process. The precision is usually based on the number of total bits which comprise the
parameter’s bit field. Since the conversion functions can introduce fractional parts with an
arbitrary number of significant digits, the reader of the parameter’s value should not be fooled
into thinking the computed value is significant to that degree. Therefore rounding to a precision
appropriate to the number of bits is important in representing the accuracy of the parameter as
recorded on the flight data media.

12.2.2 Sample selection section

Underneath the section for general parameter information, you can define the number of
samples per second for your parameter. You can also specify whether or not the parameter uses
standard subsecond sampling. A parameter can have anywhere between one and eight
samples per second. If the parameter is defined to have more than one sample per second, you
can then control which sample is displayed in the sample definition section.

Samples per second


Use this field to select the number of samples per second that are associated with this parameter.
Any number between one and eight can be selected. If you select more than one, other fields
will appear; these are described below.

Uses standard subsecond sampling


Check off this box to use standard subsecond sampling for this parameter. With standard
subsecond sampling in use, changes made to the definition of any one sample will be
propagated to the definition of all the other samples. The only exception is that the word number

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 81 of 113
associated with each sample will be calculated based on the number of samples and the
number of words per subframe. With this box not checked, the definition of each sample can be
edited independently.

Sample currently displayed


Use this field to select which sample number is displayed in the sample definition section of the
PRM Editor dialog. As you change the number in this field, the information in the sample definition
section will change accordingly.

12.2.3 Sample definition section

Underneath the sample selection section of the PRM Editor dialog is the sample definition section.
This section is delineated by a box labeled, "Current sample." All information within this box is
associated with the sample number that is currently selected in the "Sample currently displayed"
field (see above). Here you will find a single control: the Reversed Bit Order check box.

Reversed bit order


Check off this box to indicate that the bit field assembled from the defined word segments should
be reversed before passing through the conversion steps.

The sample definition section is further subdivided into the following subsections: word segment
selection, word segment definition, user-defined conversion function management, range
selection, conversion step selection, conversion function selection, and conversion function
details. Each of these is described below.

12.2.3.1 Word segment selection section

In the upper left hand corner of the sample definition section is the word segment selection
section. Here you define the number of word segments associated with the current sample,
arrange the word segments in order of significance in forming the bit field, and select the word
segment whose definition is currently displayed in the word segment definition section.

Add segment
This button adds a word segment to the list of word segments associated with this sample. When
only one word segment is associated with the sample, then the other fields in the word segment
selection section will not be shown. Clicking this button will add a word segment and display the
rest of the fields, described below.

Word segments
The list box displays all of the word segments which comprise the current sample’s bit field. Each
segment is listed by word and bit range. The segments are listed in order of significance, most

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 82 of 113
significant at the top and least significant at the bottom. The current selection in this list also
determines which word segment’s definition is currently displayed in the word segment definition
section.

Delete segment
This button removes the word segment that is currently selected in the word segments list from the
sample. If the result of the deletion will result in the number of word segments for this sample
being one, this button and all other buttons and fields except the "Add segment" button will
disappear.

Move up/Move down


Use these buttons to rearrange the order of significance of each word segment comprising the bit
field of the sample.

12.2.3.2 Word segment definition section

To the right of the word segment selection section is the word segment definition section. This
section is delineated by a box labeled, "Current word segment." All information within this box is
associated with the word segment that is currently selected in the "Word segment" list box (see
above). The word segment definition section contains controls allowing you to define the word, bit
range, subframe dependence, superframe dependence, and signage of the currently selected
word segment.

Word
Use this field to define the word number of the current word segment. The word numbers
available will be limited by the number of words per subframe defined for the document.

Bits
There are two ways to define the bit range for a word segment. The LSB and MSB controls allow
you to select the least significant and most significant bit of the word segment, respectively. You
can select from bits 1 through 12. Note that the MSB is always greater than or equal to the LSB; if
you select an MSB such that is becomes less than the LSB, the bit displayed in each field will be
reversed.

You can also define the bit range using the bit selection buttons, labeled 1 through 12. Select a
single bit number simply by pressing the button corresponding to that bit; select a range by
pressing the button corresponding to one end of the range, then hold down the shift key and
select the button corresponding to the other end of the range. All of the buttons in between will
appear pressed.

You may notice yellow or red circles underneath the bit selection buttons. These indicate that the
bit in question is occupied by either another parameter or another sample or word segment of
the same parameter. If the circle appears underneath a bit that is selected, this is a problem

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 83 of 113
since it means that you have defined that bit as holding data for multiple parameters, or for two
different samples or word segments of the current parameter. In some cases this may be
acceptable (for instance, looking at the same information in two different ways, as in looking at a
numeric value and also at a textual representation of that same value), but usually, it indicates an
error in creating your parameter definitions. Clicking on the yellow or red button will bring up all of
the parameters which are currently conflicting, allowing you to correct the problem. The
"Coverage" button may also be used to inspect the entire parameter set for conflicts; see Section
12.2.5.4 and the description of the Coverage button for more details.

Subframes
In the subframes area are four buttons which correspond to the four possible subframes a word
segment can be associated with. You can select any combination of these four buttons to
indicate for which subframe or subframes the bit range for the current word segment is valid.

Superframes
Three controls exist which allow you to define the superframe dependence of the current word
segment. These are: the Index, the Cycle, and the More button.

The Index combo box allows you to select which superframe index parameter is to be used to
dictate whether or not the bit range for the current word segment is valid. Parameters are listed in
the Index control which have been defined with the "Is superframe index" check box checked off.
You can select one of these, or you can select the "None" option or the "Multiple" option.
Selecting the "None" option will define the parameter as not superframe-dependent. The
"Multiple" option will be provided only if there are multiple superframe indexes defined for the
parameter set. Selecting the "Multiple" option brings up the "Superframes" dialog, which allows
you to define superframe dependencies based on multiple indexes. Selecting the "Multiple"
option has the same effect as pressing the "More" button; see below.

The Cycle combo box allows you to select which value of the superframe index parameter
indicates that the bit range for the current word segment is valid. The cycles offered will be
determined according to the number of bits that make up the superframe index that is currently
selected in the Index box. For instance, if the superframe index occupies four bits, the number of
superframe cycles available will be 16. If no superframe index parameter is selected (the Index
field reads "None"), no cycles will be offered. You can select one of these cycles, or you can
select the "None" option or the "Multiple" option. Selecting the "None" option will define the
parameter as not superframe-dependent. Selecting the "Multiple" option brings up the
"Superframes" dialog, which allows you to define superframe dependencies based on multiple
indexes and/or multiple cycles. Selecting the "Multiple" option has the same effect as pressing the
"More" button; see below.

The More button brings up the "Superframes" dialog, which allows you to define superframe
dependencies based on multiple superframe index parameters and/or multiple superframe
cycles. See Figure 12-2. The Superframes dialog displays two list boxes. The list box on the left, the
possible cycles, displays all possible superframe cycles upon which the current word segment can
depend. The list box on the right, the selected cycles, displays all the superframe cycles upon

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 84 of 113
which the current word segment is currently dependent. Each list box uses a tree structure, where
each superframe index parameter can be expanded to show all of the cycles under that
superframe index. To add a superframe cycle to the selected list, select the cycle of interest in
the possible list, and press the ">>" button. To remove a cycle from the selected list, select the
cycle of interest in the selected list and press the "<<" button. Press the "Clear" button to remove
all superframe cycles from the selected list. Click OK when done, or Cancel to cancel your
changes. When you return to the PRM Editor dialog, if you have selected multiple superframe
index parameters, the Index combo box will display, "Multiple". If you have selected multiple
superframe cycles, the Cycle combo box will display "Multiple".

Figure 12-2 More superframes

Signed
The "Signed" check box allows you to define a particular word segment as signed or unsigned;
that is, to define whether or not the most significant bit of the word segment represents a sign bit.
By default, word segments are unsigned. Typically, only the most significant word segment will be
signed, indicating that the most significant bit of the bit field, once assembled, is signed.
However, any word segment can have a sign bit.

12.2.3.3 User-defined conversion function management

Underneath the word segment selection section and to the far left of the sample definition section is the
user-defined conversion function management section. Here you can manage, define, and select stored
user-defined conversion functions that can be applied to recorded parameters as a time-saving measure.
For instance, you can define a polynomial function with certain coefficients, then store that definition and

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 85 of 113
apply it to other parameters without retyping the coefficients. User-defined conversion functions can be
defined as local or global. Local functions are available only within the current document, and therefore
can be applied to other parameters within the document but not to parameters in other documents. Local
functions are stored with the TSC file in which they are created, and can also be saved to templates, such
that they are transferred to other TSC files normalized with the template to which they were originally
saved. Global functions are always available in all documents; their definitions are not stored with specific
documents but are instead saved in the Windows registry.

Three controls are found in the user-defined conversion function management section: the function
selection combo box, the "Add current" button, and the "Manage" button. The function selection combo
box allows you to choose from among the available user-defined conversion functions, both local and
global. When you select one of the available functions, the values displayed in the sample definition
section underneath will change to those that are stored with the function selected. The controls to change
those values will be disabled, since the definition as applied is fixed and the values defining a parameter
using a user-defined conversion function can not be changed without actually changing the values of the
user-defined function. To re-enable the controls and change the values, select "(None)" in the function
selection box.

The "Add current" button allows you to create a user-defined conversion function based on the values
currently entered into the sample definition section. Press this button and you will be prompted with a
dialog where you enter a name for the user-defined function, as well as decide whether the new conversion
function will be local ("available in this file") or global ("available in all files"). When you press OK in this
dialog, you will note that the user-defined function has been added to the function selection box, and that
the parameter you used to create the function definition will adopt the newly created function.

To make changes to the definition of a user-defined conversion function, or to generally manage all of the
available user-defined functions, press the "Manage" button. A dialog comes up displaying in a list box all
of the user-defined functions that are currently available, both local and global. Global functions are
marked by the text, "(Global)", after the function name in the list. The Manage dialog has five buttons:
New, Delete, Edit, Rename, and Make local/global.

Press the New button to create a new user-defined function; you will be prompted for the name of the
function and whether to make it local or global, as when pressing the "Add current" button from the PRM
Editor. After this, a new version of the PRM Editor will come up allowing you to define the function. In this
PRM Editor, controls having to do with general parameter values, such as units or decimal places, or
controls having to do with segment definitions, such as word number or bit field controls, will be disabled,
since these are not part of the user-defined function definition.

Press the Delete button in the Manage dialog to delete the user-defined function currently selected in the
list box. When you delete a user-defined function, parameters that are currently defined using that function
definition will lose their dependence on the definition, but the values associated with the parameter will stay
the same.

Press the Edit button in the Manage dialog to edit the user-defined function currently selected in the list
box. A PRM Editor dialog will come up allowing you to modify the values associated with the user-defined
conversion function definition. Just like after you create a new conversion function, the PRM Editor dialog
will have certain controls disabled which are not relevant to the function definition. Once you have made

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 86 of 113
changes to the definition of the conversion function, the definition will be automatically applied to all
parameters in the current document which use that function in their definition.

Press the Rename button in the Manage dialog to rename the user-defined function currently selected in
the list box. You will be prompted to enter the new name of the function. Once the name is changed, the
change will be reflected in other parameters which rely on that definition.

The caption of the "Make local/global" button will change depending on whether a local or a global function
is selected in the list box. If a local function is selected, the caption will read "Make global"; if a global
function is selected, the caption will read "Make local". Pressing the button for a local function will make
that function definition global; that is, the definition will change from being available only for the current
document to being available for all documents. Pressing the button for a global function will make the
function definition local; that is, the definition will no longer be made available for all documents but will
instead only be available in the current documents.

12.2.3.4 Range selection section

Underneath the word segment selection section and to the far left of the sample definition section
is the range selection section. Here you define the number of bit field ranges associated with the
current sample and select the range whose conversion definition is currently displayed in the
conversion step selection section.

Ranges
This list box displays all of the bit field ranges which are associated with the current sample. Each
bit field range has a separate conversion formula associated with it, and the conversion formula
for the range currently selected in the list box appears in the conversion step selection section.
The ranges appear in order from lowest to highest, are always contiguous, and always extend
over all possible values. Each range is listed in the form "x..y", where x is the lowest value in the
range and y is the highest value in the range. If the lowest value in the range and the highest
value in the range are the same (the range is a single number), only the number itself will be
displayed. If there is only one range (which necessarily covers all possible values), "ALL" will be the
only entry in the list box. If there are two or more ranges, the first listed range must necessarily
extend downward to negative infinity, and x in the above formula will appear as "-INF". Likewise if
there are two or more ranges, the last listed range must necessarily extend upward to positive
infinity, and y in the above formula will appear as "INF".

Insert
The Insert button inserts a new range into the list of ranges at the point represented by the range
currently selected in the Ranges list box. Pressing the button brings up a dialog where the
boundaries of the new range can be defined. Essentially, defining a new range in this manner will
split the currently selected range in two, with the new range sharing either its lower or its upper
boundary with the original range. When the dialog first comes up, the two values defining the
boundaries of the original range are displayed. You may modify one or the other of these values,
but not both. This ensures that the list of ranges is always contiguous and always extends over all

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 87 of 113
possible values. Once you click OK on the dialog, the results will be displayed in the Ranges list
box.

Delete
The Delete button deletes the currently selected range from the list of ranges. The range deleted
is essentially combined with the next higher range, such that the new range has as its lower
boundary the original lower boundary of the deleted range, and as its higher boundary the higher
boundary of the next higher range. This occurs unless the deleted range is the highest range in
the list of ranges. In this case the deleted range is combined with the next lower range, such that
the lower boundary of the new range is the lower boundary of the next lower range and the
higher boundary is the higher boundary of the deleted range. This ensures that the list of ranges is
always contiguous and always extends over all possible values.

Edit
The Edit button allows you to edit the boundaries of the range currently selected in the Ranges list
box. You can not edit the only range in the list since it must extend over all possible values — you
must insert a range using the Insert button to modify the list of ranges. If the edited range is the
first range listed, meaning that its lower boundary extends to negative infinity, you will not be able
to edit the lower boundary. Likewise, if the edited range is the last range listed, meaning that its
upper boundary extends to positive infinity, you will not be able to edit the upper boundary. This
ensures that the list of ranges always extends over all possible values. If the edited range is neither
the lowest nor the highest in the list of ranges, you may modify both boundaries. In all cases, the
upper boundary of the next lower range and the lower boundary of the next higher range will be
adjusted to accommodate the change to the edited range to ensure the ranges are contiguous.
Once you click OK in the dialog, the results will be displayed in the Ranges list box.

12.2.3.5 Conversion step selection section

To the right of the range selection section is the conversion step selection section. This section is
delineated by a box labeled, "Current range". All information within this box is associated with the
range that is currently selected in the "Ranges" list box (see above). The conversion step selection
section contains controls allowing you to define the conversion steps that make up the conversion
formula for the currently selected bit range, and to select the conversion step whose conversion
information is contained in the conversion function selection section.

Conversion steps
This list box displays all of the conversion steps which are used to convert the assembled bit field
into an engineering value for the currently selected bit field range. Each conversion step
represents a single conversion function and the properties associated with that function, and the
conversion function and properties for the conversion step currently selected in the list box
appears in the conversion function selection section and conversion function details section,
respectively. The conversion steps appear in order of application from first to last, such that the
first item in the list is the conversion step to be applied to the raw bit field, the second item in the
list is applied to the output value of the first item, etc. Only the name of the conversion function

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 88 of 113
associated with the conversion step appears in the list box. The controls that follow are used to
add and delete items in this list.

Add
The Add button adds a new conversion step to the end of the list, and makes the new conversion
step the current selection in the list. By default the new conversion step is Linear, with A0 set to 0
and A1 set to 1. You can change the conversion function in the conversion function selection
section, and the function properties in the conversion function details section.

Insert
The Insert button inserts a new conversion step into the list before the conversion step that is
currently selected. As with the Add button, the new conversion step becomes the current
selection in the list. By default the new conversion step is Linear, with A0 set to 0 and A1 set to 1.
You can change the conversion function in the conversion function selection section, and the
function properties in the conversion function details section.

Delete
The Delete button deletes the currently selected conversion step from the list. If the deleted
conversion step is the last one in the list, the one before it becomes the current selection;
otherwise the next conversion step in the list becomes the current selection.

12.2.3.6 Conversion function selection

Beneath the word segment selection section is the conversion function selection section. Here
you will find a single control: the Conversion Function combo box, as well as the conversion
function details section.

Conversion function
Use this combo box to select the conversion function to use for the current conversion step. The
options displayed in the conversion function details section below will change according to the
selection.

12.2.3.7 Conversion function details

Beneath the conversion function selection section is the conversion function details section. This
section is delineated by a box labeled according to the current selection in the conversion
function combo box (see above). The contents of this box will change according to the
conversion function selected. A description of the contents for each conversion function is given
below.

BCD

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 89 of 113
The options available for the BCD conversion function include entry fields for the polynomial
coefficients applied after the decimal value is assembled, as well as a combo box for selecting
the number of bits to assign to the least significant digit.

A0-A6 — Enter in these fields the polynomial coefficients to be used in the equation:

A0 + A1*x + A2*x2 + A3*x3 + A4*x4 + A5*x5 + A6*x6

The default for all coefficients except A1 is 0. The default for A1 is 1.

Number of bits in least significant digit — This field indicates the number of bits to use for the
least significant digit, in cases where the input value does not span an even multiple of four
bits.

Binary
No options are available for the Binary conversion function, since this function represents a direct
reading of the input value.

Discrete Text
The options available for the Discrete Text conversion function include the Clear text and the Set
text.

Clear text — Enter in this field the return value of the parameter when the input value is zero.

Set text — Enter in this field the return value of the parameter when the input value is non-zero.

DITS/Linear
The options available for the DITS conversion function and the Linear conversion function are the
same, except that the DITS conversion function has additional controls for defining the DITS label,
bit range, and resolution, which do not have an effect on the conversion calculation itself. The
controls are as follows:

A0,A1 — Use these fields to enter the A0 (intercept) and A1 (slope) values for the linear
calculation.

Add-then-multiply — Check off this box to indicate that the conversion function should use an
add-then-multiply computation, rather than a multiply-then-add computation.

Minimum, maximum, resolution — Use these fields to specify the linear formula in terms of a
minimum, maximum, and resolution. A modification of the minimum will cause the maximum
to be recalculated, based on the resolution. A modification of the maximum will cause the
resolution to be recalculated, based on the minimum. A modification of the resolution will
cause the maximum to be recalculated, based on the minimum. Modifications of any of
these fields will cause either or both of the A0 and A1 values to be recalculated.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 90 of 113
DITS label (DITS only) — Use this field to enter free-form text for the DITS label for the parameter.

Bit range (DITS only) — Use these fields to enter the DITS bit range for the parameter. Values are
restricted to between 1 and 32.

Input resolution (DITS only) — Use this field to enter free-form text indicating the input resolution
for the parameter.

SDI flag (DITS only) — Use this field to enter the number indicating the SDI flag for the parameter.

Equation
The details section for the Equation conversion function provides a text window into which full text
of the equation can be written. When writing an equation, the input value is indicated by the
variable ‘x’. For example, the expression, "sin(x)", defines an equation which computes the
trigonometric sine of the input value. The syntax for an equation follows the same rules as those
for computed parameters, although only a limited set of built-in functions and operators are
provided. Note that the parameter definition will not be accepted if the expression in the
equation text window is not syntactically correct.

Equation — This edit field displays the current text of the equation. You can type freely in this
text field, or you can insert items using the controls below.

Functions — This list box lists all of the built-in mathematical functions that are available for
insertion into the equation’s expression. Simply double-click on an item in the list, and the
current expression will become the argument of that function. For instance, if the expression,
"x/180" is the current expression, and you double-click on the "sin" function, the new expression
will display as "sin(x/180)".

Operators — This list box lists all of the built-in operators that are available for insertion into the
equation’s expression. Simply double-click on an item in the list, and the selected operator will
be appended to the current expression. For instance, if the expression, "sin(x)" is the current
expression, and you double-click on the "+" operator, the new expression will display as
"sin(x)+". You can then add an additional operand after the "+".

X — Click this button to append an "x" to the current expression . For instance, if the expression,
"sin(x)+" is the current expression, and you click on the "X" button, the new expression will
display as, "sin(x)+x".

Hex
No options are available for the Hex conversion function, since this function represents a direct
reading of the input value as a hexadecimal number.

Interpolation

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 91 of 113
The details section for the Interpolation conversion function allows you to define any number of
interpolation points, and to choose whether you would like to display the input value for each
interpolation point in octal or decimal format.

Interpolation points — This list box displays the current set of interpolation points. The points are
always listed in increasing order of the x-coordinate (the input value). The points are listed in
the format: "(Input, Output)", where "Input" represents the input value and "Output" represents
the output value corresponding to that input value in the interpolation. Select one of these
points, and the input value and output value are displayed in edit fields, where these values
can be freely edited.

Values in octal/Values in decimal — Use these toggles to switch between octal and decimal
display of the input value parts of the interpolation points. To view and interpret the input
values as octal values, select the "Values in octal" toggle button. To view and interpret the
input values as decimal values, select the "Values in decimal" toggle button.

Add data — Press this button to add an interpolation point to the list. Depending upon which
input values are already present in the list, the new point may be added at the end of the list,
or it may be added somewhere in the middle.

Delete data — Press this button to delete the interpolation point that is currently selected in the
interpolation points list box from the list of interpolation points.

Input value — The value in this field reflects the x-coordinate (input) value of the interpolation
point that is currently selected in the interpolation points list box. If you change this value, the
position of the interpolation point in the list box may change, since the points are always listed
in increasing order of the input value.

Output value — The value in this field reflects the y-coordinate (output) value of the
interpolation point that is currently selected in the interpolation points list box.

ISO #5
No options are available for the ISO #5 conversion function, since this function simply returns the
ASCII character corresponding to the input value.

L3 Airspeed
No options are available for the L3 Airspeed conversion function, as the conversion formula is fixed
with no user-definable parameters.

L3 Altitude
No options are available for the L3 Altitude conversion function, as the conversion formula is fixed
with no user-definable parameters.

Linear
See DITS/Linear, above.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 92 of 113
Octal
No options are available for the Octal conversion function, since this function represents a direct
reading of the input value as an octal number.

Polynomial
The options available for the Polynomial conversion function include entry fields for the polynomial
coefficients A0 through A6, and check boxes for enabling or disabling an out-of-range minimum
value, and an out-of-range maximum value. Enabling either one of these will then allow you to
define the value of the input below which or above which a constant value is returned, and what
that constant value will be.

A0-A6 — Enter in these fields the polynomial coefficients to be used in the equation:

A0 + A1*x + A2*x2 + A3*x3 + A4*x4 + A5*x5 + A6*x6

The default for all coefficients except A1 is 0. The default for A1 is 1.

Enable out of range minimum — Check off this box to allow the use of a constant value in place
of the polynomial equation when the input value is at or below a certain minimum.

Out of range data point (minimum) — When "Enable out of range minimum" is enabled, enter
into this field the value of the input at and below which a constant value is to be used in place
of calculating the polynomial. This value must be a nonnegative integer.

Out of range value (minimum) — When "Enable out of range minimum" is enabled, enter into
this field the constant value to be returned whenever the input value is at or below the out-of-
range minimum data point.

Enable out of range maximum — Check off this box to allow the use of a constant value in
place of the polynomial equation when the input value is at or above a certain maximum.

Out of range data point (maximum) — When "Enable out of range maximum" is enabled, enter
into this field the value of the input at and above which a constant value is to be used in place
of calculating the polynomial. This value must be a nonnegative integer.

Out of range value (maximum) — When "Enable out of range maximum" is enabled, enter into
this field the constant value to be returned whenever the value of the input is at or above the
out-of-range maximum data point.

Synchro
The options available for the Synchro conversion function allow you to define the "linearization"
(Teledyne, Hamilton, L3), and whether the synchro function uses a synchro angle of —180 to 180
degrees (signed) or 0 to 360 degrees (unsigned). You can also define polynomial coefficients to
be applied after the synchro calculation is performed.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 93 of 113
Linearization — Select one of the linearization options: Teledyne, Hamilton, or L3.

0-360/-180 thru 180 — Select the "0-360" toggle to reflect a synchro angle which covers the
range of 0 to 360 degrees (unsigned). Select the "—180 thru 180" toggle to reflect a synchro
angle which covers the range of —180 to 180 degrees (signed).

A0-A6 — Enter in these fields the polynomial coefficients to be used in the equation:

A0 + A1*x + A2*x2 + A3*x3 + A4*x4 + A5*x5 + A6*x6

The default for all coefficients except A1 is 0. The default for A1 is 1.

Text
The details section for the Text conversion function allows you to define a series of input values or
ranges, such that each value or range of values is associated with a particular text string.

Text strings — This list box displays the current set of associations between input values and text
strings. The associations are always listed in increasing order of the input value. The
associations are listed in the format: "Range: String", where "Range" represent the input value
range and "String" represents its associated text string. Select one of these associations, and
the range and the text string are displayed in edit fields, where they can be freely edited.

Add range — Press this button to add a range-string association to the list. Depending upon the
values of the ranges that are already present in the list, the new range may be added at the
end of the list, or it may be added somewhere in the middle.

Delete range — Press this button to delete the range-string association that is currently selected
in the list box.

Single value — To associate a single value with a text string, press this toggle button and enter
the value into the edit field.

Range — To associate a range of values with a text string, press this toggle button and enter the
start and ending ranges into the edit fields.

Text string — Enter into this field the text string that you wish to associate with the value or range
you have defined. The maximum length for this field is ten characters.

12.2.4 Comments

The very bottom part of the PRM Editor dialog allows you to enter free-form text to associate with
a particular parameter as commentary. There is no practical limit to the length of this text.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 94 of 113
12.2.5 Utility buttons

Near the upper right-hand corner of the PRM Editor dialog (underneath the "OK" and "Cancel"
buttons) are six utility buttons which expand the functionality of the PRM Editor. These are
described below.

12.2.5.1 Header fields

Clicking the "Header field" button opens a dialog where you view and edit the PRM header
tokens. These are named values that you can associate with a particular PRM file to provide
descriptive information. For instance, you may define tokens to describe the parameter set, the
aircraft type, the type of recorder, and so forth. PRM header tokens are very much like user-
defined system parameters in this regard. The main difference is that unlike system parameters,
the header tokens are exported when you the export the PRM file for use with the handheld RSU,
which can read PRM files but not templates. The header tokens can also be easily read by
examining the contents of a PRM file in a text editor.

Header tokens can be one of five types: Integer, Decimal, Text, Memo, and Date/Time. The
Integer type is limited to positive or negative integers. The Decimal type includes all real numbers
(integers and decimal numbers). The Text type is for simple text, limited to 255 characters. The
Memo type is like Text, except there is no limit to the size of the data. The Date/Time can specify a
date, a time, or both.

For each token you need to define the token name as well as the token value. To avoid having
to type the name of a token every time you create a new template or PRM file, you can define
tokens such that they are always presented as an option in the PRM header token dialog.
Moreover, you can make these tokens always appear by default in the dialog, in order to make
you or others aware of the need to provide values for those tokens, and you can define the
options available to users as values for those tokens.

The PRM header token dialog displays a grid where you can define and edit the names, types,
and values of the PRM header tokens. See Figure 12-3. The bottom row of the grid always
displays the string "(New)" under the Token column. This cell will heretofore be referred to as the
"New" cell. To create a new token, highlight this text and type in the name of the new token. Or,
you can select an item (if there are any) from the combo box which occupies the cell with the
"(New)" string in it. (See below for details on how to add options to this combo box.) You can
then move to the Type column to select a data type for the token, and finally to the Value
column to enter or select the token’s value. When you do this, a new "New" row will be created
for you to add the next token.

Figure 12-3 PRM header tokens

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 95 of 113
Beneath the grid are various options for storing the names and values of tokens you create for
presentation as options when working with other files. All of these options refer to the "currently
selected" token, which means the token whose row currently contains the highlighted cell in the
grid. The options will not be available if you have selected a column or a cell in the "New" row.

The first option is a check box labeled, "Make the currently selected token always available as an
option." Note that this option must be set on to enable all the other options. Setting this option on
will add the name of the currently selected token to the combo box which occupies the "New"
cell. This option will not only be available for this file, but for all future files which you or other users
may work on in AVSCAN.flight. For instance, if you create a token called "Aircraft_Type" by typing
in that name in the "New" cell, then click on the "make available as an option" check box, future
users working on other files will be able to select "Aircraft_Type" from the combo box occupied by
the "New" cell, rather than having to type the name over again from scratch.

Once this option has been set, further options become available. The first is another check box
labeled, "Make the currently selected token always appear by default". What this means is that,
rather than making the token available as an option under the "New" cell, a token by that name
(and of the same data type) will automatically be created for new files, and thus will always
appear as existing tokens in the PRM header tokens dialog. The value of the token will be blank
(or 0 for Integers or Decimals), but future users will see that it is there and will be therefore
compelled to enter a value for it.

Below this check box are three push buttons, which allow you to define the options that are
presented to future users as available values of the token. If you have typed rather than selected
a value for the current token, you can add that value to the list of available options by pressing
the "+" button. If you have selected a value rather than typed one, you can remove that value

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 96 of 113
from the list of available options by pressing the "-" button. And if you wish to no longer present
any options for values for the tokens, you can press the "---" button to remove all options. Note
that whatever the available options, the user can always freely type a new value if desired.

12.2.5.2 Parameter fields

Clicking the "Parameter fields" button opens a dialog where you view and edit the PRM tokens
associated with the current parameter. These are exactly the same as PRM header tokens,
except that rather than being associated with the entire template or parameter file, they are
associated with a given parameter. Thus you can define tokens to act as descriptive properties of
parameters, such as the parameter type, signal source, and signal type. Use the Parameter Fields
dialog just like the PRM header tokens dialog. Note that the tokens you define as available
options for future users are different from those for the PRM header tokens. Otherwise, they work
exactly the same way.

12.2.5.3 Test

Clicking the Test button opens a window where you can view a test curve, or characteristic, for
the parameter you have defined. See Figure 12-4. The test curve looks very much like a
DataView: there is a tabular view and a graphical view, and you can zoom into and out of the
data just like in a DataView. The difference is that each row of the grid and each point on the
graph, rather than representing a single second of data, represents the value of the parameter for
a particular value of the bit field. Thus the tabular portion of the DataView will have as many rows
as the number of possible combinations of bits (two raised to the power of the number of bits),
and the graphical portion will have just as many points of data. The tabular view contains four bit-
field columns: Decimal, Hex, Octal, Binary, and a single value column, named for the parameter
in question. The four bit-field columns display the value of the bit field in the four indicated
formats, and the value column displays the calculated value of the parameter for that value of
the bit field. Note that you can continue to make changes to the definition of the parameter in
the PRM Editor; the changes made will be reflected as you make them in the test view.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 97 of 113
Figure 12-4 A Test DataView

12.2.5.4 Coverage

Clicking the Coverage button opens a window where you can view which bits of a subframe are
currently associated with a parameter and which bits, if any, have been assigned to more than
one parameter or to more than one segment or sample within a single parameter. This is called
coverage. See Figure 12-5. The main part of the coverage window is a grid. Each row in the grid
corresponds to the coverage for four words of data; i.e., the first row displays coverage for words
1-4, the second row displays coverage for words 5-8, etc. Each column corresponds to a single bit
within a particular word. There are four sets of twelve columns; each set displays the coverage for
a particular word, and each column within the set displays coverage for a particular bit within
that word.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 98 of 113
Figure 12-5 The Coverage window

The grid cells are color-coded to indicate the coverage status of an individual bit. Cells which are
white or blank represent bits in the data stream for which there is no associated parameter. Cells
which are green represent bits that have exactly one referencing parameter. Cells which are red
represent a conflict; i.e., a bit which is referenced by more than one parameter, or by more than
one sample or word segment of a single parameter. Finally, cells which are cyan represent the
sync word (almost always all the bits in Word 1). Double-clicking on a cell which is green will bring
up the PRM Editor displaying the referencing parameter. Double-clicking on a cell which is red will
bring up a separate PRM Editor for all referencing (conflicting) parameters for your inspection.
Double-clicking on a blank (white) cell will create a new recorded parameter which occupies the
bit corresponding to the grid cell you clicked on, and bring up the definition of the newly-created
parameter for you to edit.

You will note that the Coverage window also has three combo boxes, labeled, "Sub-frame",
"Superframe cycle", and "Superframe parameter." These combo boxes allow you to restrict the
view of the coverage to specific subframes or superframes. For instance, to see the coverage
status of all bits in the data stream which fall only on subframe one, select "1" from the "Sub-frame"
combo box. Select "All" to back to viewing all sub-frames at once. Similarly, to see the coverage
status of all bits which reference superframe cycle one for the "sf" parameter, select "1" from the
"Superframe cycle" combo box and "sf" from the "Superframe parameter" combo box. Again,
selecting "All" for both of these will bring you back to looking at the coverage for all superframe
cycles.

12.2.5.5 Edit text

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 99 of 113
Clicking the "Edit text" button brings up the PRM Text Editor, where you can visually inspect and
edit the textual representation of the parameter you are working on in the PRM Editor. This is for
advanced users only, who may find working directly with the text easier in some circumstances
than working with the PRM Editor. Working with the text editor will require a thorough
understanding of the PRM file format; see Section 12.3 for more information.

The PRM Text Editor is interactive: it allows you to make changes to your parameter definition and
alerts you if there are any problems. A list of the problems will appear in the text window
underneath the main editing window whenever you press the Test or Save buttons. There are two
types of problems that are possible: warnings and errors. Warnings are problems that can be
corrected by the software if need be, such as numbers out of range, unknown conversion
function types, etc. When text produces a warning, the PRM Editor will usually assume default
behavior if you don’t fix the problem. Errors are problems that prevent the PRM Editor from being
able to make any sense out of the text whatsoever. You will not be able to save your changes
unless you fix these problems. You can, of course, press the Cancel button to cancel your
changes.

You can also bring up the PRM Text Editor through the menu item, "Parameters->Edit text," This will
display the entire PRM file, rather than the text for a single parameter.

12.2.5.6 Correlation

Clicking the "Correlation" button allows you to generate a correlation coefficient for testing the
accuracy of the conversion formula used to define the parameter displayed. The correlation
coefficient is calculated by comparing a set of known references values against the set of
derived values based on same raw data input, using the following formula (as specified in FAA
regulations):

Where: r = correlation coefficient


N = number of data points
X = reference data
Y = derived data
Σ indicates the sum of the values that follow (e.g. Σx equals the sum of all x values)

When you click the "Correlation" button, a dialog comes up allowing you to enter the reference
points to compare against the derived data (see Figure 12-6). A simple grid contains three
columns: the "Raw data" column, where you enter the raw bit field values, the "Observed data"
column, where you enter the reference data in engineering units to test against, and the "Derived
data", which will display the values calculated by way of the conversion once the correlation
coefficient is computed. Bit field values can be entered as octal codes or as decimal values.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 100 of 113
Press the "Clear" button to clear all data points from the grid. To display the Correlation
Coefficient, hit the "Compute" button.

Figure 12-6 Correlation Coefficient dialog

The results of computing a correlation coefficient can be printed in a simple report. To do this,
press the "Print" button. A dialog comes up allowing you to specify the printer selection and paper
properties. When you have filled out this information, press OK to print the document. You can
look at the printout in a preview window before printing by pressing the "Preview" button instead
of the "Print" button.

The results of computing a correlation coefficient are stored with the parameter when the
parameter is saved. Therefore, the next time you open the dialog to compute the correlation
coefficient for a given parameter, the values you entered previously, along with the computed
coefficient, will be displayed. The correlation coefficient information is stored with the parameter
as a generic parameter token (see Section 12.2.5.2).

12.3 PRM file format

The PRM file format is a simple, readable format for storing the definitions of recorded parameters.
The format relies on two constructs: tokens and sections.

Tokens
Tokens associate a named token with a value, according to the following expression:

Token=Value;

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 101 of 113
where Token is the name of the token and Value is its value. The Token is separated from the
value by the equal sign (‘=’), and the Value is read in up to the semi-colon (‘;’). The Token name
should begin with a letter and contain only letters, numbers, or spaces. The Value can be an
integer, a decimal number, a date and/or time, or text, The Value can also be blank. These
options are described below:

Integer — Any integer number. Exponential notation can also be used, as in 2E+3 (2,000) or 2E-3
(0.002). Comma separators are optional, meaning that both "3000" and "3,000" are valid.

Decimal — Any decimal number. Exponential notation can also be used, as in 2.2E+3 (2,200) or
2.2E-3 (0.00022). Comma separators are optional, meaning that both "1234.56" and "1,234.56" are
valid. Integer values that are to be interpreted as decimals must have at least one decimal
place, as in "1.0".

Date/Time — Dates must follow the American "m/d/y" format. The year (y) in this case can be
specified as a four-digit or a two-digit year: any two-digit value greater than or equal to 70 will be
assumed to be year 2000 and higher; otherwise 1900 will be assumed as the century. A time can
be appended, so that "m/d/y h:m" is also acceptable. The time part is interpreted on a 24-hour
clock (AM/PM specifiers are not supported). Times without dates are not supported,

Text — Any text between the equal sign (‘=’) after the token and before the delimiting semi-colon
(‘;’) which can not be interpreted as an Integer, Decimal, or a Date/Time will be assumed to be a
text string. The string need not be enclosed in quotes. However, to force an otherwise numeric or
date/time value to be interpreted as a text string, you must enclose it in quotes. Thus

Comments=1;

will be interpreted as an integer. In this case, you must specify:

Comments="1";

to have the token’s value interpreted as a text string. Note also that text strings not enclosed in
quotes can not contain other characters that are recognized by the PRM file format. These
include square-brackets (‘[‘,’]’), the equal sign (‘=’) and the semi-colon (‘;’). To be safe, any text
string which contains non alphanumeric characters should be enclosed in quotes. To enclose a
quote-mark in quotes, precede the quote-mark with a backslash, as in:

Comments="John said, \"Watch out for this parameter!\"";

To enclose a backslash in quotes, you will need to use two backslashes, as in:

Comments="Backslash: \\";

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 102 of 113
Text strings enclosed in quotes can be multi-line. The carriage-returns will be properly used in the
value of the text string. Thus:

Comments="Line 1
Line 2
Line 3";

is valid.

Blank — Blank values will typically be interpreted as empty text strings, although for certain tokens,
if the software is expecting a numeric or date/time value, a default value may be assumed.

The following are all examples of valid tokens:

Signed=1;
A0=1.0;
Last Edited=5/6/01 14:45;
Function=Linear;
Units="feet";
Comments=;

Tokens can be non-generic or generic. Non-generic tokens have meaning to AVSCAN.flight and
define the various properties of a parameter. Non-generic tokens generally translate into the
various options that are displayed in the PRM Editor. "Function", "Word", "Subframes", "Units" — these
are all examples of non-generic tokens used by AVSCAN.flight. Generic tokens, on the other
hand, are the tokens associated with parameters that provide more descriptive meaning. These
are the tokens that are listed when you press the "Parameter fields" button in the PRM Editor (see
Section Error! Reference source not found.). You can choose any name you like for generic tokens
(other than those used for non-generic tokens). The names of the non-generic tokens used by
AVSCAN.flight are fixed.

The non-generic tokens used by AVSCAN.flight to describe the various properties of parameters
are given in Section 12.3.1.

Sections
Sections are collections of other sections (sub-sections) and tokens. A section starts with a text
string enclosed in square brackets, as in the following:

[PARAMETER: Altitude]

Six section types are currently in use by the PRM file format: the File section, the Parameter section,
the Sample section, the Segment section, the Conversion section, and the Conversion Step
section.

File section

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 103 of 113
The File section encloses the entire PRM file and begins with the following header:

[AVIONICA PRM FILE, VERSION 1]

Future versions of the PRM file format may be indicated by the version number, but for now,
Version 1 is the only one in use. The File section is the only section that requires a footer, meaning
that at the very end of the section, the following line must occur:

[END AVIONICA PRM FILE]

This announces the end of the PRM file, and allows for the possibility that the PRM file may be
embedded within other files.

Tokens found in the File section and not enclosed in any other section are considered PRM header
tokens. These are generic tokens which you can define to describe various properties associated
with the PRM file (aircraft type, recorder type, creation date, etc). PRM header tokens can also
be viewed and edited in the PRM Editor (see Section 12.2.5.1).

Parameter section
The Parameter section encloses the subsections and tokens relating to a single parameter. The
following line signals the beginning of a new Parameter section:

[PARAMETER: Name]

where Name is the full name of the parameter. No footer is required for the Parameter section;
the end of the parameter’s definition is simply announced by the beginning of a new Parameter
section, or the File section footer.

Sample section
The Sample section encloses the subsections and tokens relating to the definition of a single
sample within a parameter. The following line signals the beginning of a Sample section:

[SAMPLE]

No footer is required for the Sample section; the end of the sample’s definition is simply
announced by the beginning of a new Sample section, a new Parameter section, or the File
section footer.

Segment section
The Segment section encloses the subsections and tokens relating to the definition of a single
word segment within a sample or a whole parameter. The following line signals the beginning of a
Segment section:

[SEGMENT]

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 104 of 113
Again, no footer is required for the Segment section; the end of the segment’s definition is simply
announced by the beginning a new Segment section, a new Sample section, a new Parameter
section, or the File section footer.

Conversion section
The Conversion section encloses the subsections and tokens relating to the definition of a single
conversion range within a sample. The following line signals the beginning of a Conversion
section:

[CONVERSION]

No footer is required for the Converson section; the end of the conversion range’s definition is
simply announced by the beginning of a new Conversion section, a new Sample section, a new
Parameter section, or the File section footer.

Conversion Step section


The Conversion Step section encloses the subsections and tokens relating to the definition of a
single conversion step within a conversion range. The following line signals the beginning of a
Conversion Step section:

[CONVERSION STEP]

No footer is required for the Conversion Step section; the end of the conversion step’s definition is
simply announced by the beginning of a new Conversion Step section, a new Conversion section,
a new Sample section, a new Parameter section, or the File section footer.

It is apparent from the preceding text that a File section can contain multiple Parameter sections,
a Parameter section can contain multiple Sample sections, a Sample section can contain multiple
Segment sections and/or multiple Conversion sections, and a Conversion section can contain
multiple Conversion Step sections. Note that for any object which contains only one instance of a
sub-object, an actual section delineating the tokens of the single sub-object is not necessary; the
tokens associated with the single sub-object can appear in the enclosing section and will be
interpreted as the tokens associated with a single instance of the sub-object. Thus for a
parameter with only one sample, the tokens associated with the sample need not be enclosed
within a Sample section. They can be enclosed in the Parameter section, in which case the
parameter will be assumed to consist of only one sample. Furthermore, a parameter containing
only one sample which in turn contains only one segment does not need to have either a Sample
section or a Segment section. The tokens associated with both the sample and the segment can
simply be enclosed within the Parameter section. Hence, the following two parameter definitions
are equivalent:

[PARAMETER: Altitude]
Mnemonic=ALT;
[SAMPLE]

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 105 of 113
[SEGMENT]
Word=2;
Bits=1-12;
[CONVERSION]
[CONVERSION STEP]
Function=Linear;
A0=0;
A1=1;

[PARAMETER: NextParameter]

[PARAMETER: Altitude]
Mnemonic=ALT;
Word=2;
Bits=1-12;
Function=Linear;
A0=0;
A1=1;
[PARAMETER: NextParameter]

The following is a complete PRM file with one parameter, which contains two samples, one of
which contains two segments and two conversions, one of which contains two conversion steps:

[AVIONICA PRM FILE, VERSION 1]


[PARAMETER: MyParam]
Mnemonic=Mine;
Units="MyUnits";
[SAMPLE]
Function=Linear;
A0=0;
A1=1;
Word=2;
Bits=1-12;
[SAMPLE]
[SEGMENT]
Word=34;
Bits=1-6;
[SEGMENT]
Word=35;
Bits=7-12;
[CONVERSION]
Range=-INF..0;

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 106 of 113
Function=Linear;
A0=0;
A1=1;
[CONVERSION]
Range=1-INF;
[CONVERSION STEP]
Function=Linear;
A0=0;
A1=2;
[CONVERSION STEP]
Function=Equation;
Equation="1/x";
[END AVIONICA PRM FILE]

Comments
You can enter commentary into a PRM file to assist you or others in reading the file. Comments
are enclosed by a ("/*", "*/") pair, as in the C programming language. Comments can occur
after section headers and between tokens. Comments can not occur inside a section header
(inside the square brackets) or within a token/value pair. The following shows valid comments:

[AVIONICA PRM FILE, VERSION 1] /* File header */


[PARAMETER: Altitude] /* Parameter section */
Mnemonic=ALT; /* Altitude mnemonic */

These are not valid ways to enter comments:

[AVIONICA /* Bad comment */ PRM FILE, VERSION 1]


[PARAMETER: Altitude /* Another bad comment! */]
Mnemonic=/* Yet another bad comment */ ALT;

Comments will be saved even if you edit in the PRM Editor rather than in the text editor.

12.3.1 Non-generic tokens

This section describes the non-generic tokens used in the PRM file format, that is, those tokens that
are recognized as having special meaning for parameter definitions. Tokens associated with
parameters, samples, word segments, conversion ranges, and conversion steps are described.
Note that in the absence of a particular token, or if AVSCAN.flight can not make sense out of a
particular token value, a default value will be used.

Parameter tokens

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 107 of 113
Mnemonic (Text) — Describes the parameter mnemonic. Appears in the Mnemonic field of the
PRM Editor. The default is the same as the parameter name.

OEM Name (Text) — Describes the OEM parameter name, for reference. Appears in the OEM
Name field of the PRM Editor. The default is an empty string.

Is superframe (Integer) — Indicates if this parameter is a superframe index. Corresponds to the Is


Superframe check box in the PRM Editor. The default is 0.

Last modified (Date/Time) — Indicates the last time the definition of this parameter was modified.
Appears in the Last Modified field in the PRM Editor. The default is the current time.

Units (Text) — Describes the units string associated with this parameter. Appears in the Units field of
the PRM Editor. The default is an empty string.

Decimal places (Integer) — Number of decimal places to which to compute the value of the
parameter. Appears as the Decimal Places field in the PRM Editor. The default is 0.

Comments (Text) — Comments associated with a particular parameter. Appears in the Comments
field in the PRM Editor. The default is an empty string.

Sample tokens
Reversed bit order (Integer) — Whether to use reversed bit order on the bit field before applying
the conversion formula. Appears as the "Reversed bit order" check box in the PRM Editor. The
default is 0 (false).

Segment tokens
Word (Integer) — The word number for a word segment. Appears in the Word combo box of the
PRM Editor. Default is 1.

Bits (Text) — The bit range for a word segment. For a single bit, the value is the bit number (e.g. "1").
For a range of bits, the value follows the format: "#-#" (e.g. "1-12"). Appears in the LSB and MSB
fields of the PRM Editor, and is also represented by the bit selection buttons. The default is "1-12".

Subframes (Text) — The subframes on which a word segment falls. Subframes are numbered from 1
through 4. The subframe numbers on which a word segment falls are separated by commas.
Examples:

Subframes=1; /* Subframe one */


Subframes=1,3; /* Subframes one and three */
Subframes=1,2,3,4; /* All subframes */

The default is all subframes (1-4).

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 108 of 113
Superframes (Text) — The superframe cycles which indicate valid frames for taking the data of a
word segment. The format of the value of the Superframes token is best illustrated by example:

Superframes=sf1(1,9),sf2(5,13);

In this case, the word segment is valid when the value of the parameter called "sf1" equals 1 or 9,
as well as when the value of the parameter called "sf2" equals 5 or 13. The default is an empty
string, indicating no superframes.

Signed (Integer) — Indicates whether the most significant bit of the word segment is to be
interpreted as a sign bit before the conversion. Default is 0.

Conversion range tokens


Range (Text) — The bit field range that applies to this conversion. The text string is in the form "x..y",
where x is the lower boundary of the range and y is the upper boundary of the range. The x value
can be "-INF", representing negative infinity, and the y value can be "INF", representing positive
infinity. The whole value can also be "ALL", representing all possible values for a single range. The
default is "ALL".

Conversion step tokens


(Note that these include the various tokens used as part of the definitions of conversion functions.
Tokens for specific conversion functions must occur after the Function token.)

Function (Text) — The conversion function for this sample. Appears in the Conversion Function field
in the PRM Editor. The following values are valid:

BCD
Binary
Discrete Text
DITS
Equation
Hex
Interpolation
ISO #5
L3 Alitude
L3 Airspeed
Linear
Octal
Polynomial
Synchro
Text

The default is Linear.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 109 of 113
A0-A6 (Decimal) — The polynomial coefficients for the conversion functions, BCD, Polynomial, and
Synchro. A0 and A1 are also used for the conversion functions Linear and DITS as linear
coefficients. These fields appear whenever the appropriate conversion function is selected. The
default for A1 is 1; the default for all other coefficients is 0.

LSD bits (Integer) — Used for the BCD conversion function. Indicates the number of bits occupied
by the least significant digit. This value should be between 1 and 4. Default is 4.

Add-then-multiply (Integer) — Used for the Linear and DITS conversion functions. Indicates whether
the linear coefficients are to be applied as add-then-multiply, rather than multiply-then-add. The
default is 0.

Clear (Text) — Used for the Discrete Text conversion function. Indicates the text to be assigned if
the input value is zero. Defaults to an empty string.

Set (Text) — Used for the Discrete Text conversion function. Indicates the text to be assigned if the
input value is non-zero. Defaults to an empty string.

Equation (Text) — Text of the equation used for the Equation conversion function. Defaults to an
empty string, which simply returns the value of the input value unaffected.

Text table (Text) — Represents the value/text pairs for the Text conversion function. Each value/text
pair consists of a value part and a text part separated by a colon (‘:’). The value part is a single
integer value representing the single-valued input value, or a range in the format (#-#)
representing the input value range. The value is a quote-enclosed text string. Each value/text
pair is separated from the next one by a comma (‘,’). The following is an example:

Text table=0:"Zero",1:"One",2-7:"Two thru seven";

The default is no text table, meaning that all possible values of the input value will return an empty
string.

Data points (Text) — Represents the point/value pairs for the Interpolation conversion function.
Each point/value pair is enclosed by parentheses. The point (input value) is first, followed by a
comma, followed by the value. Points are listed one after the other, with no punctuation
between. The following is an example:

Data points=(0,0)(512,10)(256,100)(1023,1000);

The default is no points, meaning that all possible values of the input value will return 0.

Values in octal (Integer) — Indicates if the input value parts of the interpolation points in the
Interpolation conversion function are to be interpreted as octal codes. This token must occur
before the data points token in the PRM file in order for the data points token to be read correctly.
The default is 0.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 110 of 113
Linearization (Text) — Indicates the linearization to be used in interpreting the Synchro conversion
function. Possible values are Teledyne, Hamilton, and L3. Default is Teledyne.

Signed angle (Integer) — Used by the Synchro conversion function. Indicates whether the synchro
angle is to be interpreted as running from 0 to 360 (Signed angle=0) or from —180 to 180 (Signed
angle=1). Default is 0.

Out of range minimum (Integer) — Used by the Polynomial conversion function. Represents the
input value below which the out-of-range minimum value is to be used. The default is not to use
an out-of-range minimum. If the "Out of range minimum value" token is present but not this one,
then the default is 0.

Out of range minimum value (Decimal) — Used by the Polynomial conversion function. Represents
the value to be returned for input values less than or equal to the out-of-range minimum. The
default is 0.

Out of range maximum (Integer) — Used by the Polynomial conversion function. Represents the
input value above which the out-of-range maximum value is to be used. The default is not to use
an out-of-range maximum. If the "Out of range maximum value" token is present but not this one,
then the default is 0.

Out of range maximum value (Decimal) — Used by the Polynomial conversion function.
Represents the value to be returned for input values less than or equal to the out-of-range
maximum. The default is 0.

DITS Label (Text) — Used by the DITS conversion function. Represents the DITS Label. Default is an
empty string.

DITS LSB (Integer) — Used by the DITS conversion function. Represent the DITS least significant bit.

DITS MSB (Integer) — Used by the DITS conversion function. Represent the DITS most significant bit.

DITS Input Resolution (Text) — Used by the DITS conversion function. Represents the DITS input
resolution.

DITS SDI Flag (Integer) — Used by the DITS conversion function. Represents the DITS SDI flag.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 111 of 113
13.0 Workspace Considerations

Before attempting to transfer DFDR data from a readout computer or RSU handheld, it is a good
idea to contemplate a logical, extensible, data structure in which to store and work on the data.
We suggest creating a separate workspace for each readout within an appropriate directory
(folder) structure. The purpose of this addendum is to provide step-by-step instructions to create
that structure, as well as a step by step procedure for manipulating your data files for use by
AVSCAN.flight.

Creating a workspace Using Windows Explorer


It is beyond the scope of this document to explain the fundamental concepts of files and folders;
please refer to your Windows documentation for further information. For purposes of this
discussion, it is assumed that the user has a working knowledge of Microsoft Windows Explorer and
associated concepts.

To enable easy lookup and archiving of data, we suggest making the most of the Windows long-
filename capabilities. We also suggest creating a hierarchical structure, with a folder at the root
indicating that the area beneath is reserved for readout data. Naming suggestions could be
"Readouts", or possibly in a shop environment where multiple clients are served, "Airline-name
Readouts".

Beneath that level, in keeping with a structure whose benefits will become clear, create a folder
for each of your aircraft types, or fleets. Be obvious, such as "Boeing 757-224". Within each fleet
folder, so as to enable easy lookup of historical data on your aircraft, create a separate folder for
each tail number in that fleet. Again, be obvious, using the N-number "N12101" or some other
designation such as a nose gear number.

Finally, within each individual aircraft’s folder, create a unique folder for each readout performed
over time. In this way, a built-in trend monitoring system is created, spanning not only aircraft
within individual fleets, but time as well. Please see Figure 13-1 for an example folder structure.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 112 of 113
Figure 13-1 Suggested folder structure

The structure may now be used for easy lookup of data from within AVSCAN.flight or other
software, and provides a simple method for archiving data in a permanently organized fashion.

AVSCAN.flight User’s Guide for Version 5.21


Last modified April 19, 2004 Page 113 of 113

Вам также может понравиться