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
Tags:
As respostas para este tópico estão encerradas.
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.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por