Guide to publishing Shinyei sensor data on the World Air Quality Index project

This page is made for those interrested in measuring Air Quality based on the Shinyei sensor. For more information about the Shinyei sensor, please refer to this on-going experiment page: sensor/shinyei/.


--

Hardware Setup

For this experiement, the hardware used to retrieve the data from the Shinyei Sensor is a PC Duino - but any Raspberry PI would also work fine.

All which is needed, on the PC Duino side, to extract the information from the Shinyei sensor is two digital input. In our configuration, we use the GPIO6 and GPIO7 from the PC Duino. Since the PC duino also provide a 5V output, we directly power supply the SHinyei from the Pc Duino pins.

For now, threshold input (IN1) is left unsed, but it will be used later as a way to split particule by size, and hence detect both PM10 and PM2.5 particules.

Scripts

The scripts are available online from github. They are based on the Air Quality data-upload API described at api/sensor.

To run the scripts, you just need to use this simple command: python shinyei-lpo-reader.py. It will output data in the following style:

 $ python shinyei-lpo-reader.py

16:51:27: 13.02 9.27
16:51:32: 10.15 3.03
16:51:37: 8.58 1.86
16:51:42: 8.97 1.01
16:51:47: 8.32 1.05
16:51:52: 8.22 1.05
16:51:57: 7.33 0.75
16:52:02: 6.72 0.75
16:52:07: 6.05 0.75
16:52:12: 6.4 0.75
16:52:17: 7.13 0.75
--- 16:52:22 --- 0.073053159646 0.00751250729585 ---
Posting {'type': 'shinyei-pdp42ns-1u', 'unit': 'lpo', 'value': 0.07305315964603189} {'type': 'shinyei-pdp42ns-2.5u', 'unit': 'lpo', 'value': 0.007512507295851456} -> 200 OK
Server says {u'sensorID': u'589', u'result': u'ok', u'dataids': [2835085, 2835086]}
Firs column is obviously the current time. The second and third column are the measured LPO (in percentage, from 0 to 100). The script measures the LPO over 1 minute, so the 'current' LPO indication will be displayed 10 times. The 1 minute average is displayed as '--- 16:52:22 --- 0.073053159646 0.00751250729585 ---' (unit from 0 to 1). After that, the averaged LPO is posted ( Posting {'type': 'shinyei-pdp42ns-1u', 'unit': 'lpo', 'value': 0.07305315964603189} {'type': 'shinyei-pdp42ns-2.5u', 'unit': 'lpo', 'value': 0.007512507295851456} -> 200 OK ) to the server.


--

Configuration

Once your setup is working, do not forget to use your own sensor ID, by replacing the value "shinyei.test-sensor" in the file shinyei-lpo-reader.py with your own sensor ID. Sensor ID can be any string, but we recommand to use the convention sensor-type.(location+).your-name, such as for instance shinyei.china.beijing.haidian.john-doe.

 uploader = AirQualityUploader("shinyei.test-sensor")
Once you have choosen your own sensor ID, do not forget to protect it by password so that no-one else but you can upload data. For that, you just need to contact us and let us the ID you want to protect. We will then provide you the password to be used.

--

Still to be done

There are sitll many things to be done. Si if you want to join us and support our work, here are some of the things which we need help for:
  • Hardware connectivity based on the Raspberry PI, Beagle Bonne and other IOT Hardware.
  • Use an intermediate arduino-like to poll and pre-process the data from the Shinyei.
  • Improve the python-scripts with fail-safe support (i.e. keep the data even though if there is no WIFI connection).





--

Read or publish comments (they rely on Disqus)

Sobre a medição da aualidade do ar e poluição

Sobre os níveis de qualidade do ar

- Valores do Índice de Qualidade do Ar (AQI)Níveis de preocupação de saúde
0 - 50 Boa 0-50: Boa - A qualidade do ar é considerada satisfatória, a poluição do ar representa pouco ou nenhum risco
51 -100 Moderado 50-100: Moderado - A qualidade do ar é aceitável; No entanto, para alguns poluentes pode haver um problema de saúde moderada para um número muito pequeno de pessoas que são mais sensíveis à poluição do ar.
101-150 Não Saudável para Grupos Sensíveis Membros de grupos sensíveis podem ter efeitos na a saúde. O público em geral não é susceptível de ser afetado.
151-200 Não saudável 150-200: Insalubre - Toda a população pode começar a sentir os efeitos na saúde; membros de grupos sensíveis podem apresentar efeitos mais sérios de saúde.
201-300 Muito Prejudical à Saúde 200-300: Muito Insalubre - As advertências de saúde de situações de emergência. Toda a população é mais susceptível de ser afectada.
300+ Perigoso 300+: Perigoso - alerta de saúde: todos podem experimentar efeitos mais graves para a saúde

Para saber mais sobre Qualidade do Ar e Poluição, verifique o wikipedia Qualidade do Ar tópico ou o guia AIRNow a Qualidade do Ar e sua saúde.

Para informações sobre saúde muito úteis em Pequim, procure Doutor Richard Saint Cyr MD, consulte www.myhealthbeijing.com blogue.


Aviso de uso: Todos os dados da Qualidade do Ar não são validados no momento da publicação e, devido à garantia de qualidade, esses dados podem ser alterados, sem aviso prévio, a qualquer momento. O projeto Índice de Qualidade do Ar Mundial exerceu todas as habilidades e cuidados razoáveis na compilação do conteúdo desta informação e sob nenhuma circunstância o A equipe do projeto World Air Quality Index ou seus agentes podem ser responsabilizados em contrato, responsabilidade civil ou de outra forma por qualquer perda, lesão ou dano decorrente direta ou indiretamente do fornecimento desses dados.



Configurações


Configurações de Idioma:


Temperature unit:
Celcius