Leia a concentração de CO 2 do sensor MH-Z19 e manuseie-o.
Conecte RPI & MH-Z19 como:
Os seguintes são o exemplo de cabeamento, mas você pode usar mais pinos 5V e 0V no RPI.
pi@raspberrypi:~/mh-z19 $ gpio readall
+-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5v | | | <---- Vin
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | | <---- Gnd
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 | <---- RxD
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 | <---- TxD
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
| 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
| 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
| 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 |
| 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | |
| 19 | 24 | GPIO.24 | IN | 0 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 |
| 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | IN | GPIO.28 | 28 | 20 |
| | | 0v | | | 39 || 40 | 0 | IN | GPIO.29 | 29 | 21 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
Conjunto completo inclui seguidores:
Instale o conjunto completo, faça o download do lançamento
git clone https://github.com/UedaTakeyuki/mh-z19.git
Então, cheguei à pasta e emitir Setup.sh *
./setup.sh
As configurações necessárias, incluindo a ativação da porta serial, são realizadas neste script.
Para Python 2.x
sudo pip install mh_z19
Para Python 3.x
sudo pip3 install mh_z19
Caso você o usaria com permissão de raiz, ligue para PIP sem sudo da seguinte maneira:
Para Python 2.x
pip install mh_z19
Para Python 3.x
pip3 install mh_z19
As diferenças da interface entre cada modelo Raspberry Pi são resolvidas dentro deste módulo. Por exemplo, o nome do dispositivo serial é a diferença entre o modelo Raspberry Pi 3 e o mais antigo, mas o módulo MH-Z19 detecta automaticamente o modelo e lê do dispositivo serial apropriado.
Para usar o MH-Z19, depois de precisar configurar o dispositivo de porta serial no Raspberry Pi. A página do wiki seguinte pode ser informativa. Além disso, consulte a página superior do Pypi para obter detalhes.
pi@raspberrypi:~ $ sudo python3 -m mh_z19
{'co2': 668}
Como acima, o sudo pode ser necessário porque o valor do sensor MH-Z19 é lido através da conexão serial e solicita permissão de raiz em geral.
O módulo MH-Z19 instalado corresponde ao Pondslider, que é o manipulador de sensores múltiplo e versátil para salvar, enviar e fazer outra coisa necessária com o valor do sensor.
Como exemplo, apresentamos o seguinte caso de uso:
O Pondslider lê sensorValue pelo manipulador de sensores especificado e passa os valores para os manipuladores de valor * que fazem algo com ele.
Os manipuladores de sensor e valor são módulos Python. Para mais detalhes dos manipuladores, consulte isso.
Este módulo corresponde ao Pondslider, que é o manipulador de sensores múltiplo e versátil para salvar, enviar e fazer outra coisa necessária com o valor do sensor.
Caso você tenha escolhido a instalação completa mencionada acima, em outras palavras, você fez o Setup.sh , o Pondslider e os manipuladores de exemplo já estão instalados e configurados.
Você pode fazê-lo com o manipulador de valor do Salve2STrage , que está em manipuladores/value/saver/save2strage , e o arquivo de configuração para ler do sensor MH-Z19 e salvar por salvar2strage é preparado como config.save.toml na pasta instalada MH-Z19.
Na pasta MH-Z19, chamando o Pondslider da seguinte forma;
sudo python -m pondslider --config config.save.toml
Então, /home/pi/data/co2.csv deve ser criado e a nova linha será adicionada para cada chamada.
O Monitor ™ é um serviço de monitoramento remoto gratuito para mostrar os dados mais recentes na web.


Por favor, consulte uma introdução ao entendimento do Grasp Birds Eye sobre Monior ™.
Uma conta gratuita está disponível como seguinte. Em seguida, faça o login e obtenha um View_id , que é um ID único para apontar uma área de dados no Monitor ™ para mostrar o valor e o gráfico mais recentes, como segue.
Depois de obter um value_id no seu navegador, retorne ao terminal do seu Raspberry Pi, então você deve definir este software para enviar valor medido para o value_id. Para fazer isso, ligue para o comando setid.sh no diretório instalado MH_Z19. Digamos que seu value_id seja vpgpargj , comando setid.sh o seguinte:
./setid.sh vpgpargj
Em seguida, ligue para o script Python "Pondslider" da seguinte forma:
pi@raspberrypi:~/mh-z19 $ sudo python -m pondslider
{'co2': 742}
co2
{"ok":false,"reason":"ViewID not valid"}
Seu gráfico de séries temporais na tela Monitor ™ no navegador deve ser atualizado pelo mais recente valor de concentração de CO2.
Você pode defini -lo por comando automaturact.sh no diretório instalado MH_Z19 da seguinte forma:
./autostart.sh --on
Você pode desligar isso da seguinte maneira:
./autostart.sh --off
Além disso, você pode verificar o status atual da seguinte forma:
./autostart.sh --status
Para mais detalhes, consulte este blog.
O Pondslider também suporta att m2x. Para detalhes, consulte este documento.
Os recursos sobre calibração (MH-Z19 e MH-Z19B), alteração da faixa de detecção (MH-Z19B) e Lógica ABC ON/OFF (MH-Z19B) são implementados na versão 0.2.1 ou posterior.
Receio que apenas os implementei sem teste devido à falta de dispositivos e aparelhos necessários para o teste, FX: Concentração padrão de gás CO2, também módulo MH-Z19B. Se você possui esses dispositivos ou aparelhos e tente usar essas funções generosamente, eu realmente aprecio o seu relatório de problemas, independentemente do resultado positivo ou negativo.
Para detalhes, consulte este wiki.
O Revspace/MHZ19 mostra valores sem documentos nas folhas de dados oficiais (MH-Z19, MH-Z19B). De acordo com isso, -todas as opções adicionam esses valores no valor JSON de retorno da seguinte forma:
sudo python -m mh_z19 --all
{"SS": 232, "UhUl": 10752, "TT": 61, "co2": 818, "temperature": 21}
sudo python3 -m mh_z19 --all
{"TT": 61, "co2": 807, "SS": 232, "temperature": 21, "UhUl": 10752}
ou ligue para read_all () Função da seguinte forma:
>>> import mh_z19
>>> mh_z19.read_all()
{'SS': 232, 'UhUl': 10738, 'TT': 61, 'co2': 734, 'temperature': 21}
>>>
Caso você deva usar um dispositivo serial específico em vez do dispositivo serial padrão do Raspberry Pi, que essa biblioteca seleciona automaticamente, por exemplo, caso precise usar /dev /ttyusb0 para FT232 USB-Série Conversor como a edição#12, você pode especificar o dispositivo serial pela opção --SERIAL_DEVICE , como a seguir:
sudo python -m mh_z19 --serial_device /dev/ttyUSB0
Veja este wiki.
Veja este wiki.
Veja este wiki.
Mesmo que o cabeçote pareça nenhum problema e o UART parece estar bem pré -patetado, mas você não pode obter o valor do sensor. Como o Nincube8 sugeriu que o registro de 1-5kΩ pode ser uma solução de funcionamento. Obrigado Nincube8!
O fórum é Avai aqui. Quaisquer perguntas, sugestões e relatórios são bem -vindos!
--co2valueonly Opção Mpegendo a edição nº 39 e a edição#40. Obrigado Jonesthefox!