Monitorar o status dos pinos do RPI pelo browser


#1

Estou com a seguinte dificuldade, tenho um programa pronto que aciona um relé para controle de uma contatora, para fazer este controle, fiz uma página em html porem preciso que ela me mostre o status do relé que é acionado por um programa em python bem conhecido por quem usa o RPI. Tenho procurado na internet mas nada mostra especificamente o programa que devo colocar no browser para poder monitorar o “status”, sempre apresentam programas gigantescos com a parte de html mais os programas de acionamento e a confusão é tanta que não consigo extrair somente a parte que acessa o status de “ligado” ou “desligado”, alguem pode ajudar. Quero lembrar que sou iniciante e preciso de informações razoavelmente fáceis de entender. obrigado. abaixo coloco a foto onde deverá aparecer sempre que estiver ligado o relé


#2

Você não vai conseguir mostrar o status de ligado ou desligado da lâmpada apenas com um frontend em HTML, é necessário programar um backend que, provavelmente é este código que te gera “confusão”. É necessário instalar um servidor web e utilizar alguma linguagem, como o próprio Python para repassar esses dados ao template.


#3

Os pinos de GPIO ficam em /sys/class/gpio. Existem várias possibilidades para consultar.

Se for em python (supondo que o relé está no gpio21 para exemplo):

gp_status_file = open("/sys/class/gpio/gpio21/value",“r”)
gp_status = gp_status_file.read();

Se quiser usar python sem abrir arquivo:
import os
os.system(“cat /sys/class/gpio/gpio21/value”)

Se quiser consultar via console:
gpio -g read 21


#4

Obrigado por responder, cometi uma falha ao descrever minha necessidade, na verdade tenho instalado o webserver, php, python e até o mysql para login dos usuários. O problema é exatamente este, tenho o código pronto e funcionando e só precisaria do código da parte que ficaria na página html para mostrar o staus de ligado ou desligado. Talvez um código em java script não sei bem, mas quando procuro na internet é exatamente isso, ensinam a instalar o apache e blablabla e o código de status vem neste meio e não consigo extrair a parte que me interessa talvez por não entender bem ainda.


#5

Djames, obrigado pela resposta, mas preciso que esta consulta seja feita de forma automática no browser ou seja, imagine que quando o relé estiver em “low” aparece um led apagado no browser e quando estiver em “hi” aparece um led aceso. Espero ter me explicado melhor.


#6

Eu passei a dica de como você interage com o GPIO. Se você estiver criando a página de interação com PHP, basta criar sua lógica de página agora. Você até fazer a pior das interações chamando system(“comando”) pra pegar o status e exibir na tela e utiizar meta-refresh. Enfim, como você disse que “a parte de html mais os programas de acionamento e a confusão é tanta que não consigo extrair somente a parte que acessa o status de “ligado” ou “desligado””, eu passei pra você apenas a parte de consulta de status.


#7

James,
agora entendi, antes pensei que as consultas que voce colocou não seriam possíveis chamar pelo browser, apenas via ssh , utilizando system vou conseguir.
Mais uma vez muito obrigado pela dica.