Olá, tenho um projeto onde preciso ler os valores de 3 Sensores (2 de Umidade e 1 de Temperatura) e mostrar em uma página PHP pela porta serial. Mas como eu faria para dividir esses valores?

Exemplo da página PHP:

Umidade1:  545

Umidade 2: 300

Temperatura: 25

Exibições: 882

As respostas para este tópico estão encerradas.

Respostas a este tópico

Vai dar um print, certo?? Eu vou fazer algo parecido, enviar dados via USB e resgatar no PC, porém estou fazendo em C.

Precisarei diferenciar, e a ideia que tive é diferenciar no print. Umidade 1: prinf("U1: <valor">. Pelo que sei não da para juntar um texto e uma variável diretamente no print, mas concatenarei antes.

Ai no PHP, na variável que você receber o valor você da um explode. Ex: $exp = explode("U1:", $recebe_serial);

$exp[0] terá o valor `U1:` e $exp[1] o valor que você quer. Meio confuso?? Sim! Mas da certo se pensar bem ... A lógica que coloquei aqui não está 100%, pois como você saberá que tipo de dado é, se você ja o pré definiu como `U1:`(Umidade 1) ?? Provavelmente dar 3 explode, um para cada valor possível, e o que retornar true(deu certo/encontrou) será oque será trabalhado.

Acho que estou começando a entender. Obrigado!

José,

Para tornar mais simples a sua tarefa, envie os dados para o PHP já em formatos comuns como o CSV ou o JSON. É bem mais fácil de trabalhar e evita que você tenha que fazer malabarismos para extrair os dados.

Um exemplo em CSV:

10.5;23.8;92.3

 

no PHP é só ler a partir linha e usar um explode na string.

 $linha = "10.5,23.8,92.3"; //lido da serial

 $dados = explode(",", $linha);

$U1 = $dados[0];

$U2 = $dados[1];

$U3 = $dados[2];

JSON:

seus dados virão formatados assim:

{"U1":10.5, "U2":23.8, "U3":92.8}

aí no PHP é só usar a função json_decode com a string formatada como a string acima e o seus dados serão lidos e armazenados num array associativo assim:

$data = {"U1":10.5, "U2":23.8, "U3":92.8}; //lido da serial

$dados = json_decode($data, true);

para ler os valores é só fazer o nome do array e como chave o nome da propriedade que você quer. Assim: $dados["U1"] para ler o valor de U1.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço