The Plantower PMS5003 and PMS7003 Air Quality Sensor experiment

For a complete list of all the Air Quality Sensors test on, check our sensor overview page.


Plantower PMS 5003 and PMS 7003 Sensor

The PMS 7003 and PMS 5003 sensors are the 7th resp 5th generation of the PMSx003 series developed by Plantower (chinese name 攀藤).

Experiment Setup

This experimentation is dedicated to our colleagues at Haier, IBM and Google.

For this experiment, 3 PMS 7003 and 3 PMS 5003 are co-located together. The objective is to understand the accuracy of individual sensor readings, and potential level of error induced by the lack of efficient calibration of low-cost sensors .

For each sensor (PMS5003 and PMS7003), there are 3 sensors (identified as PMSx003 #1, #2 and #3) running in alternation over a period of 3 minute. For each minute, only the last 30 seconds data is collected, as the first 30 seconds as kept to let the sensor stabilize its output.

There is additional PMS5003 sensor (number #4 ): It is a used (old) sensors which has been running in continuous mode for several months outdoor. The objective for this sensor is to understand if the accuracy decreases with the age (during to the laser or fan wearing off).

Specification sheets: PMS5003.pdf and PMS7003.pdf.

Note that the PMSx data from the Sensor comes in two flavors: '标准颗粒物' (Standard Particles or CF-1, bytes 4-9) and '大气环境下' (Atmospheric Environment, bytes 10-15). It is the second one which we use for this experiments (Thanks to Bart for the clarification).

Sensor tear-down

The following pictures are taken from a PMS5003 running for several months outdoor in continous mode.

The good news is that Plantower managed to do a pretty good mechanical design which prevents dust accumulation on the front-side of the PCB (see image A on the right), where laser and diode are mounted. Compared to the dust accumulation on the Dylos, that guarantees a much better lifetime and data accuracy over time.

In terms of electrical and electronic components, the PMS5003 is not quite different from the initial PMS1003 desing. The CPU is still a Cypress CY8C4245, which a combined ARM Cortex-M0 running at 48Mhz with dedicated ADC, used to sample the output from the diode.

Real-time data

db stands for dust bin and is measured in counts per minute. For instance, db2.5-um represents the count of particles with an aerodynamic diameter below 2.5 µm;

Time series for Meteorological Conditions

Meteorological conditions, and especially the Relative Humidity (RH) is needed as high RH might have a direct impact on the size of the particle size detected by the laser. For BAM sensors, there is actually a requirement for constant humidity.

Above graph is based on CWOP station EW2754. Below table is based on the real-time readings from our GAIA A12 station

Time series for Particulate Matter

Note that the first 3 time-series graphs are showing the values using AQI (and not raw mg/m3). The AQI is based on the US EPA breakpoints. For PM1, the PM2.5 breakpoints are used.

For the particulate matter graphs, the reference BAM measurements from the neighbor stations are shown, but not taken into account for the deviation plot ~ the aim of this experiments is to understand the deviation in between sensors of the same type (eg PMS) and not in between sensors using different technologies (eg Laser Counter vs Beta Attenuation).

The deviation plots below each time-series is computed as the difference between the minimum (in blue) resp. maximum (in red) value and the average reading for each 5 minute period block. The X axis is showing the average value, and the Y axis the difference between min/max and average. For the first 3 time-series graphs, the difference is expressed in AQI: This way, it is easy to asses the potential error in AQI value of those low-cost sensors.

Comparison between Std. Particle (标准颗粒物) and Std. Atmosphere (大气环境下)

CF1 refers to Std. Particle (标准颗粒物). SAT refers to Std. Atmosphere (大气环境下).

The graphs below shows the correlation for the CF1 (X, absyss) and the ratio CF1/SAT (Y, ordinate), for the PM2.5 and PM10 data.

The almost too perfect correlation between approx. 30 mg to 100 mg for PM2.5 / PMS5003, (40mg to 150 for PM10) does not sound too scientific...

cf1<30 ⇒ sat = cf1
cf1>100 ⇒ sat = cf1 * 2/3
cf1 in ∈ [30;100] ⇒ sat = 30 + cf1 * (cf1-30)/70 * 2/3

Note: Thanks to Bart for the comment on CF1>30 ⇒ SAT < CF1
The formula has been updated with correct ratio (2/3)

One interesting question is whether is CF-1/SAT ratio is part of the calibration process done by Plantower; At least, for PM2.5 the upper threshold for PMS7003 and PMS5003 are different (85 for the first, and 100 for the second). When sufficient data is available, this page will be updated with the answer...

Correlation between PM10 and PM2.5

Refering to the experiment on PM10 vs PM2.5, the question is weather the PMS sensor is able to correctly detect the particules. The graph below show the correlation between PM10 vs PM2.5 CF-1 readings for the past 10 days.

For now, the correlation seems perfectly linear, but as soon as the next PM10 pollution event comes, the graph will be able to confirm the efficiency of bin size detection.

Moreover, one interesting pattern to check for is the non-linear curve, which can be seen on the Dylos sensor. This curved pattern is due to the sensor not beeing able to properly detect the different particles bins, caused by a too high number of particles 'obstructing' the diode. For now, the Air Pollution is too low to detect this phenomenon, but as soon as winter arrives, the data will confirm the existence of this pattern or not.

Time series for Particulate Matter (Indoor setup)

There are 2 additonal indoor PMS5003 sensors:
The graphs below are expressed in AQI units.
And this is for the meteorological indoor sensor


For the list of all air quality sensors, check the Sensor Overview page

Read or publish comments (they rely on Disqus)



指数 大気質指数の分類(米国) 健康影響 / カテゴリ 粒子状物質(PM10,PM2.5)
0 - 50 良い - Good 通常の活動が可能 なし
51 -100 並 - Moderate 特に敏感な者は、長時間又は激しい屋外活動の減少を検討 非常に敏感な人は、長時間または激しい活動を減らすよう検討する必要がある。
101-150 敏感なグループにとっては健康に良くない - Unhealthy for Sensitive Groups 心臓・肺疾患患者、高齢者及び子供は、長時間又は激しい屋外活動を減少 心疾患や肺疾患を持つ人、高齢者、子供は、長時間または激しい活動を減らす必要がある。
151-200 健康に良くない - Unhealthy 上記の者は、長時間又は激しい屋外活動を中止
201-300 極めて健康に良くない - Very Unhealthy 上記の者は、すべての屋外活動を中止
300+ 危険 - Hazardous 上記の者は、屋内に留まり、体力消耗を避ける
(Reference: see wikipedia, and


北京在住の医師Richard Saint Cyr氏による大変役に立つ健康上のアドバイスは、 をご覧ください。

使用上の注意: すべての大気質データは公開時点では妥当性が担保されていないため、これらのデータは予告なしに修正することがあります。 世界大気質指数プロジェクトは、この情報の内容を編集に最善の注意を尽くしておりますが、いかなる状況においても World Air Quality Index プロジェクトチームまたはそのエージェントは、このデータの供給によって直接的または間接的に生じる損失や損害について責任を負いません。



Temperature unit: