World Air Quality Index プロジェクトで大気質データを公開するためのガイド

共有: aqicn.org/publishingdata/jp/

World Air Quality Indexプロジェクトのデータ公開は誰でも無料です。しかし、それはシンプルかつ簡単でもあります。世界大気質指数マップにデータを追加するために必要なのは、監視ステーション (名前と場所)、測定されている汚染物質、および実際の汚染物質に関するリアルタイム情報をフィード URL に提供することだけです。 - 時間の読み取り値 (ミリグラムや ppb などの単位とともに)。


資格基準

歴史的に、世界大気質指数マップ (aqicn.org および waqi.info) で公開されているデータは、各国の環境保護庁によって提供された公式データのみであることに注意してください (完全な EPA リストを参照)。

公式データは、専門的な BAM、TEOM、および同様の高コストの大気質監視ステーションを使用して監視されたデータを指します。これらのステーションは使用するのが簡単ではなく、EPA の専門フィールド エンジニアリング チームによる定期的なメンテナンスと校正が必要です。

しかし、現在では、より手頃な価格のレーザー散乱ベースの大気質監視ステーションが、公式の大気質監視ステーションと併用して広く使用されています。これらのより手頃な価格のステーションは、BAM ステーションや TOEM ステーションよりもコストが 1000 分の 1 低くなる可能性があります。

この目的には、セミプロフェッショナルのGAIA大気質モニタリング ステーションを使用することをお勧めします。ただし、他の局からのデータも受け入れます。それにもかかわらず、そのようなパーティクルカウンターベースのステーションは、追加の品質管理を備えた強化されたデータフィードを報告する必要があります (品質管理のセクションを参照)。

フィード形式

ほぼすべての国が独自のレポート形式を持っているため、World Air Quality Index プロジェクトではあらゆる種類のフィード形式を受け入れることができます。CSV、JSON、または単なるプレーン テキストや HTML 形式にすることもできます。このページの下部に、CSV、HTML、JSON の 3 つの例があります。

参考までに、シンガポールまたはオランダの公式フィードを確認してください。それらはすべて異なりますが、当社のシステムで取り込むことができることがわかります。

インスタント大気粒子カウンターの場合は、当社独自の Web サーバー経由、またはthingpeak経由でデータをレポートできます。

データの取り込み

World Air Quality Index システムは、フィードからのデータを定期的にチェックし、更新が利用可能になるたびに処理され、米国 EPA スケールの AQI 値に変換され、世界大気質指数 Web サイトで公開されます。分。

また、PM 2.5 、PM 10 、オゾン、NO 2 、SO 2および CO の大気質データのみが公開されていますが、システムは予測目的でより多くの汚染物質を収集します: ベンゼン、トルエン、エチルベンゼン、NO x 、THC、NMHC、PM 1 、ホルムアルデヒド、水銀、アンモニア、メタン、硫化水素、亜硝酸、フェノール、ナフタレン、パラキシレン(p-キシレン)、メタキシレン(m-キシレン)など。

気温、気圧、湿度、降水量、風速、風向、日射量、UVIなどの気象データを公開することも可能です。提供されない場合は、他の関連する気象情報ソースを使用します。

フィード例(CSV形式)

 #ID: ID_BEI_DC
#City: Beijing
#Station: Dongcheng
#Name: 东城东四
#Latitude: 39.929
#Longitude: 116.417
#Timezone: +0800
Date,PM10,PM25,CO,Ozone,Sulphur Dioxide,Nitrogen Dioxide,AmbientTemperature,RelativeHumidity,WindDirection,WindSpeed,Pressure,RainGauge
Unit,ug/m3,ug/m3,ppm,µg/m3,µg/m3,µg/m3,°C,%,°,m/s,hPa,mm
10/29/2016 13:00,16,3,,58,10,3,32,66,200,3,1001,0
10/29/2016 14:00,19,8,,57,9,4,32,64,197,2,1001,0
10/29/2016 15:00,15,9,,52,47,17,30,72,190,2,1001,0
10/29/2016 16:00,31,19,,52,34,17,30,75,191,2,1001,0
10/29/2016 17:00,31,17,,49,49,19,29,75,194,1,1002,0
10/29/2016 18:00,37,18,,45,55,25,29,73,183,1,1003,0
10/29/2016 19:00,24,13,,40,21,19,29,80,65,1,1004,0
10/29/2016 20:00,39,22,,44,4,16,28,85,7,1,1005,0
10/29/2016 21:00,24,16,,43,3,7,28,85,10,1,1005,0

フィード例(HTML形式)

これは HTML 形式 (直接 URL: Publishingdata/html/ ) に基づく例です。

Station list:
Station ID City or County Name Station Name Local name (optional) Latitude/Longitude Timezone (optional)
ID_BEI_DC Beijing Dongcheng 东城东四 39.929/116.417 +0800
ID_BEI_WP Beijing West Park 西城官园 39.929/116.339 +0800
ID_BEI_OP Beijing Olympic Park 朝阳奥体中心 39.982/116.397 +0800
... ... ... ... ... ...
  • Station ID 」は各駅の一意の識別子であり、単なる数字 (例: ID8373)、または駅の都市と駅名の連結 (例: 「北京/東城」) です。
  • デフォルトでは、ステーションは URL /city/ country-name / city-name / station-name経由で利用可能になります。
  • Station Name 」にはラテン文字を使用する必要があるため、Web ページをローカライズするためにオプションの「 Local Name 」を指定できます。

Real-time pollutant list:
Station ID Pollutant Unit Update time Value Averaging
ID_BEI_DC PM10 mg/m3 2024-11-23T09:00:00+09:0027.8 1 hour
ID_BEI_DC PM25 mg/m3 2024-11-23T09:00:00+09:0010.8 1 hour
ID_BEI_DC Ozone mg/m3 2024-11-23T09:00:00+09:0015.2 1 hour
ID_BEI_DC Ozone mg/m3 2024-11-23T09:00:00+09:0018.2 8 hours
ID_BEI_DC Temperature Celcius 2024-11-23T09:00:00+09:0022.3 1 hour
ID_BEI_WP PM10 mg/m3 2024-11-23T09:00:00+09:0027.8 1 hour
ID_BEI_WP PM25 mg/m3 2024-11-23T09:00:00+09:0010.8 1 hour
ID_BEI_WP SO2 ppb 2024-11-23T09:00:00+09:0015.2 1 hour
ID_BEI_WP Humidiy % 2024-11-23T09:00:00+09:0088 1 hour
... ... ... ... ...
  • Averaging 」列は、値の期間を指定するために使用されます。最も一般的な平均は 1 時間です。また、バックエンド システムがオゾンと一酸化炭素の 8 時間の平均計算を自動的に実行するため、これが推奨されます。
  • 測定値が 1 時間ごとよりも頻繁に提供される場合 (たとえば、30 分ごとまたは 10 分ごと)、指定期間の生の測定値を提供することも、時間ごとの平均のみを提供することもできます。バックエンド システムはいずれにしてもデータを処理します。たとえ時間の間であっても。

フィード例(JSON形式)

これはJSON形式に基づく例です(直接URL: /publishingdata/json/ )

..

パーティクルカウンターセンサーの品質管理

Plantower PMSNova SDSなど、粒子状物質の読み取り値を瞬時に (数秒で) 提供するインスタント粒子カウンターの場合、通常、データは 1 分ごとに報告されます。このデータは通常、1 ~ 2 分間の複数の「平均」読み取り値に基づいて計算されます。

ただし、平均化の使用は、特に故障したセンサー (または寿命に近づいたセンサー) の場合には十分ではありません。したがって、このようなセンサーの場合は、中央値、最小値、最大値、標準偏差などの追加の指標を提供する必要があります。たとえば、以下の JSON データ フィードのreadingsオブジェクトを参照してください。

..

次の Arduino 互換コードを使用して、これらのメトリクスを収集できます。

class Accumulator 
{ 
    #define OUTPUT_BUFFER_SIZE 120 
    char buffer[OUTPUT_BUFFER_SIZE]; 
 
    #define MAXACCVALUES 120 
    int vals[MAXACCVALUES]; 
 
    int count = 0; 
 
public: 
    Accumulator() 
    { 
        reset(); 
    } 
 
    void reset() 
    { 
        count = 0; 
        for (int i=0;i< MAXACCVALUES;i++)  
        { 
            vals[i]=0; 
        } 
    } 
 
    bool hasData()  
    { 
        return count!=0; 
    } 
 
    std::string output()  
    { 
        if (!hasData()) return std::string("{}"); 
 
        sprintf(buffer, OUTPUT_BUFFER_SIZE, "{\"min\":%d,\"max\":%d,\"median\":%d,\"average\":%.1f,\"stddev\":%.1f,\"count\":%d}",  
            vmin(), vmax(), median(), average(), stddev(), count); 
 
        return std::string(buffer); 
 
    } 
 
    void add(int val) 
    { 
        if (count==MAXACCVALUES-1) { 
          for (int i = 0; i < MAXACCVALUES - 1; i++) { 
            vals[i] = vals[i + 1]; 
            } 
            count --; 
        } 
        vals[count++]=val; 
    } 
 
    float stddev()  
    { 
        if (!hasData()) return -1; 
        int u  =avg(); 
        int t = 0; 
        for (int i=0;ivals[j]) { 
                    float t = vals[j]; 
                    vals[j]=vals[i]; 
                    vals[i]=t; 
                } 
  
            } 
        } 
        return vals[count/2]; 
    } 
 
    float avg()  
    { 
        if (!hasData()) return -1; 
        float t = 0; 
        for (int i=0;ivals[i]) { 
                t=vals[i]; 
            } 
        } 
        return t; 
    } 
 
    float vmax()  
    { 
        if (!hasData()) return -1; 
        float t = vals[0]; 
        for (int i=0;it) { 
                t=vals[i]; 
            } 
        } 
        return t; 
    } 
};

お問い合わせフォーム



MetOne BAM 1020 station

World Air Quality Index マップ (aqicn.org および waqi.info) のデータの公開は無料で簡単です。

プロフェッショナル向けおよび DIY 向けの大気質監視ステーションの両方が受け入れられます。

ただし、「luftdaten」などの DIY ステーションでは、高品質のデータを確保するために追加のデータ品質管理が行われます。

データが検証されると、リアルタイム データ、大気質、天気予報、履歴データをすべて無料で確認できるステーションの専用ページが表示されます。

モニタリング ステーションをお持ちでなく、入手したい場合は、 GAIA大気質モニタリング ステーションをチェックしてください。 DIY ステーションをお好みの場合は、 GAIA A08をチェックしてください。


--

データのアップロード

データをマップにアップロードするには、次の 3 つのケースがあります。

    既知の大気質監視ステーション (IQAir、Oizom、Luftdaten、PurpleAir、U-Rad、LUN など)、または大気質センサー モジュールを備えた既知の気象観測所 (Weather Link、Eco-Witt、c. ..)。その場合、ID/名前などのステーションの詳細を伝えるだけで済みます。これらのステーション用のアダプターはすでにあります。



    すでにウェブサイト (または thing-speak などのフィード) をお持ちで、そこからステーションからデータを収集できます。この場合、当社のシステムは定期的にページを読み込み、データを抽出して地図上に再公開します。 Web サイトの例については、フィードの例を確認してください。


    Web サイトは持っていませんが、ステーションは持っており、データをシステムに直接「プッシュ」したいと考えています。この場合、アップロード API 経由でステーション データを「投稿」するための小さなプログラムを作成する必要があります。 Arduino と Python のコード例があります。コード サンプルは、アップロード APIページから入手できます。


最初の 2 つのカテゴリ (既知のステーションまたは Web サイトを持っている) に該当する場合、または疑問がある場合は、以下のフォームを使用してメッセージを送信してください。 2 番目のカテゴリに該当し、アップロード API を介してプログラムでデータを投稿したい場合は、データ アップロード スクリプトと APIページを確認してください。

お問い合わせフォーム

Your name - eg "John Doe"


Your email address - eg "john.doe@mail.com"


Your data-feed URL - eg "https://airnow.gov/"
or station Id - eg "https://weatherlink.com/..."

どのような種類のサポートが必要か、または提供できるかを教えてください。

データ検証

Luftdaten または同様の低コスト センサーを所有している場合は、大気質データ検証サービスをチェックできます。

https://aqicn.org/data-feed/validation/jp/

たとえば、「luftdaten」センサー 84804 の場合は、ページaqicn.org/data-feed/validation/#/luftdaten/84804を確認できます。

データの検証と認定も 1 日に 1 回自動的に行われます。

あなたの地域の大気質測定ステーションを知っていますか?
あなた自身の大気質ステーションでマップに参加してみませんか?

当社の GAIA 空気質モニターはセットアップが非常に簡単です。必要なのは、Wi-Fi アクセス ポイントと USB 対応の電源だけです。

接続すると、リアルタイムの大気汚染レベルが地図上および API を通じて即座に確認できるようになります。

ステーションには、10 メートルの防水電源ケーブル、USB 電源、取り付け装置、オプションのソーラー パネルが付属しています。

大気汚染指数の測定方法:

大気汚染レベルについて

指数 大気質指数の分類(米国) 健康影響 / カテゴリ 粒子状物質(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 cn.emb-japan.go.jp/)

大気汚染についての更なる詳細をお知りになりたい方は、WikipediaAirNowを参照してください。

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


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



設定


言語を選択:


Temperature unit:
Celcius