Skip to content

BAM1020 Beta Attenuation Monitor

The BAM1020 is a beta attenuation monitor used for measuring PM2.5 mass concentrations in ambient air.

AeroViz.rawDataReader.script.BAM1020.Reader

Reader(path: Path | str, reset: bool | str = False, qc: bool | str = True, **kwargs)

Bases: AbstractReader

BAM1020 (Beta Attenuation Monitor) Data Reader

A specialized reader for BAM1020 data files, which measure PM2.5 mass concentration using beta attenuation technology.

See full documentation at docs/source/instruments/BAM1020.md for detailed information on supported formats and QC procedures.

Attributes

nam class-attribute instance-attribute

nam = 'BAM1020'

MIN_CONC class-attribute instance-attribute

MIN_CONC = 0

MAX_CONC class-attribute instance-attribute

MAX_CONC = 500

Functions

_raw_reader

_raw_reader(file)

Read and parse raw BAM1020 data files.

Parameters:

Name Type Description Default
file Path or str

Path to the BAM1020 data file.

required

Returns:

Type Description
DataFrame

Processed BAM1020 data with datetime index and PM2.5 concentration column.

_QC

_QC(_df)

Perform quality control on BAM1020 data.

QC Rules Applied
  1. Invalid Conc : Concentration outside valid range (0-500 ug/m3)
  2. Spike : Sudden value change (vectorized spike detection)

Data Format

  • File format: CSV files
  • Sampling frequency: 1 hour
  • File naming pattern: Various formats supported
  • Data columns: PM2.5 mass concentration and related parameters

Measurement Parameters

The BAM1020 provides:

Parameter Unit Description
Conc μg/m³ PM2.5 mass concentration
Status - Instrument status codes
Flow L/min Sample flow rate
Temperature °C Internal temperature
Pressure hPa Atmospheric pressure

Data Processing

Data Reading

  • Reads CSV format files with automatic column detection
  • Handles various timestamp formats
  • Processes instrument status information
  • Validates data integrity

Quality Control

The BAM1020 reader uses the declarative QCFlagBuilder system with the following rules:

+-----------------------------------------------------------------------+
|                         QC Thresholds                                 |
+-----------------------------------------------------------------------+
| MIN_CONC = 0         μg/m³                                            |
| MAX_CONC = 1000      μg/m³                                            |
+-----------------------------------------------------------------------+

+-----------------------------------------------------------------------+
|                            _QC() Pipeline                             |
+-----------------------------------------------------------------------+
|                                                                       |
|  +---------------------------+    +---------------------------+       |
|  | Rule: Invalid Conc        |    | Rule: Spike               |       |
|  +---------------------------+    +---------------------------+       |
|  | Conc <= 0 OR              |    | Sudden value change       |       |
|  | Conc > 500 μg/m³          |    | (vectorized detection)    |       |
|  +---------------------------+    +---------------------------+       |
|                                                                       |
+-----------------------------------------------------------------------+

QC Rules Applied

Rule Condition Description
Invalid Conc Conc ≤ 0 OR Conc > 500 μg/m³ Concentration outside valid range
Spike Sudden value change Unreasonable sudden change detected

Valid Concentration Range

    Conc (μg/m³)
       ^
  1000 +-------------------------------- MAX_CONC
       |   +-----------------------+    (reject if exceeded)
       |   |    VALID RANGE        |
       |   +-----------------------+
     0 +-------------------------------- MIN_CONC
       +----------------------------> Time

Output Data

The processed data contains:

Column Unit Description
Conc μg/m³ PM2.5 mass concentration

QC_Flag Handling

  • The intermediate file (_read_bam1020_qc.pkl/csv) contains the QC_Flag column
  • The final output has invalid data set to NaN and QC_Flag column removed

Notes

  • Beta attenuation technology provides real-time PM2.5 measurements
  • Regular calibration and maintenance are required for accurate results
  • Status codes indicate instrument health and measurement validity
  • Suitable for continuous ambient air quality monitoring