INÍCIO > Fórum > Discussões sobre problemas gerais > Ativação de saída de solicitação HTTP
- Este tópico tem 5 respostas, 2 participantes e foi atualizado pela última vez 2 anos, 6 meses atrás da Sergio Bertana.
-
autorPublique
-
Setembro 13, 2021 em 12: 06 pm #61137Claudioparticipante
Solicito ajuda para um projeto que gostaria de realizar com o seu PLC MPS056.
Um sensor de umidade conectado a um portal, que, assim que detectar que um determinado limite foi ultrapassado, deve comunicar ao PLC o acionamento de um relé.
Como o PLC pode ser programado para receber as informações de ativação do relé via interface web (especificamente, o PLC deve receber o comando para ativar este relé por meio de um comando http enviado do PC.
Setembro 13, 2021 em 12: 22 pm #61140Sergio BertanaAdministrador do fórumSe bem entendi, ao receber uma solicitação HTTP você deve ativar uma saída lógica.
Eu fiz para você o programa HTTPSetOuput, um exemplo simples usando o FB HTTPServer, um servidor é instanciado na porta 2000. Quando a página é solicitada SetOutput.cgi, você pode alterá-lo por programa, a saída 0 é ativada por 2 segundos.
Naturalmente, você também pode usar parâmetros em GET ou POST na solicitação de página para gerenciar vários comandos, ou definir várias páginas, cada uma das quais executa um comando específico (Download do programa).
Setembro 13, 2021 em 2: 18 pm #61141ClaudioparticipanteObrigado pela sua resposta, em qualquer caso não consigo baixar o exemplo (clicar em “Baixar programa” não inicia o download).
Setembro 13, 2021 em 2: 19 pm #61144Sergio BertanaAdministrador do fórumTodos os downloads são possíveis apenas para usuários logados. Ao clicar no link, se você não estiver logado, será redirecionado para a página que informa para efetuar o login.
Não é esta a página que você vê?
Outubro 1, 2021 em 9: 06 am #61361ClaudioparticipanteComo posso modificar o programa que me enviou para garantir que a saída permaneça ativa mesmo após os segundos configurados pelo FB e seja desativada quando um comando subsequente for enviado (a saída deve ligar somente quando o valor da variável considerada for maior que um valor limite, então ele deve sair)?
Outubro 1, 2021 em 9: 13 am #61379Sergio BertanaAdministrador do fórumOs programas que publico no fórum e na área do conhecimento têm como objetivo justamente despertar a curiosidade e a inventividade dos clientes, estimulando-os a modificar os programas para atingir os seus objetivos.
Se você olhar para o programa WebServer, você verá que escrevi:
IF (SysStrFind(HTTPSv.pPage, ADR('SetOutput.cgi'), FIND_DEFAULT) <> eNULL) THEN SetOutput:=TRUE; CaseNr:=10; RETURN; END_IF;
agora basta adicionar outra linha de programa:
IF (SysStrFind(HTTPSv.pPage, ADR('ResetOutput.cgi'), FIND_DEFAULT) <> eNULL) THEN SetOutput:=FALSE; CaseNr:=10; RETURN; END_IF;
E você terá o comando reset output disponível. Então você terá que no programa Logic exclua o cronômetro.
Temos uma série de tutoriais em vídeo que explicam técnicas de programação, porém lembre-se que é possível comprar suporte técnico para poder entrar em contato conosco através do Teamviewer e modificar o programa juntos.
-
autorPublique
- Você deve estar logado para responder a este tópico.