a ponta vc teria o arduino com a aplicação web funcionando normal mais um ddns ou no-ip e tal na outra ponta vc teria um pc comum que acessaria ele via web monitoraria tudo.
Bom com um pouco de programação e dedicação vc faria ate o servidor a ser minitorado enviar msn para vc caso ocorre algo.
…
Adicionado por Thiago Dias ao 17:47 em 25 novembro 2014
desses , controlar alguns atuadores via portas digitais.
Possuo um ESP8266 ESP-01 simples(com adaptador para 5 V) , um roteador DPLink e tambem um arduino UNO e sensores analógicos de umidade e temperatura.
Gostaria que alguem me indicasse um tutorial e até mesmo novas ideias e componentes para essa minha aplicação.
Grato.
…
m uma maquina (CPU) que atualiza o IP da sua WAN no servidor.
Outra opção é verificar se o se Router tem a função DNS. Verificar quais serviços são disponíveis e configurar o que vc achar melhor.
O problema maior é que todas empresas de DNS passaram a cobrar pelo serviço. Não há mais serviço gratuito. Com exceção da Winco DNS, que ainda disponibiliza um serviço free limitado.…
o C# sockets).
Os modulos se conectam nesse servidor pelo ip interno da rede e pela porta(aberta para aquele IP) e inicia-se uma comunicação que funciona muito bem.
Tambem testei a comunicação colocando os modulos para buscarem um IP fixo externo e a comunicação tambem se estabeleceu sem problemas.
Essa é a parte do codigo que declaro as strings e bytes para usar o endereço IP (trabalho com o Ip em string para poder salvar na EEPROM do ESP, pois pode-se mudar o ip via software.
WiFiClient Cliente;
unsigned int PORTA ; //variavel porta String PORTA1 = "9000"; // sring porta1 para salvar na eeprom
PORTA = PORTA1.toInt(); // converte a string porta1 para int porta String ipA = "192"; // 1ª parte do IP em string String ipB = "168"; // 2ª " " " String ipC = "001"; // 3ª " " " String ipD = "100"; // 4ª " " " byte a = ipA.toInt(); // converte a 1ª para byte byte b = ipB.toInt(); // converte a 2ª para byte byte c = ipC.toInt(); // converte a 3ª para byte byte d = ipD.toInt(); // converte a 4ª para byte
byte server[4] = {}; // aqui é onde monta o IP
server[0] = b; // aqui é onde monta o IP server[1] = c; // aqui é onde monta o IP server[2] = d; // aqui é onde monta o IP server[3] = e; // aqui é onde monta o IP
Aqui eu faço ele conectar no sercidor:
(Cliente.connect(server, PORTA))
Apos estar conectado esse comando envia qualquer dado pelo socket
Cliente.print ("comunicando...");
A ajuda que eu preciso é fazer esses clients(ESP8266) se conectarem no servidor através de um DDNS por exemplo servidor1.ddns.net ai ele redireciona para o ip do local e através da porta acha o servidor.
Alguem tem um ideia de como colocar esse endereço ddns na ide do arrduino?
Att.
RCO…
sso na sua conta a cada 15 dias sob risco de perder a conta. Isso é para evitar os "Hosts" criados e não utilizados mais por qualquer motivo. Aqueles programas que atualizam os DNS dinâmicos não valem como confirmação de uso, ou seja, tem que realmente acessar a página e logar. Como esse projeto é uma aplicação que teoricamente não pode ter falhas na comunicação sugiro quem for realmente utilizar que compre um "Host" ou procure um que ainda não exige esse procedimento.…
isto por pessoas que estejam fora, pela internet.
Para isso vc precisa rodar um exemplo tipico de servidor html e configurar as portas do seu roteador para direcionar para ele as chamadas na porta 80 (ou a que for usar). Aih digitando o IP de internet já aparece. Se quiser digitar um nome como www.xyz.com vc precisa de um serviço de dominio dinamico. DDNS ou coisa do tipo.
…
Adicionado por Eduardo ao 23:28 em 21 dezembro 2018
,fixei no roteador a liberação para o firewall, para somente os dispositivos que eu tenho em casa acessem o wifi.
bom vou ver a programação do módulo, pois ele esta com ip fixo e porta também, e hj estou usando a IDE do arduino como se o módulo fosse um arduino.
Outra coisa , vc teria uma dica como eu conseguiria fazer uma tela de login no módulo?
exatamente para quando acessar de qualquer lugar peça uma senha.
logicamente , mais segurança.
Grato pelas dicas!
…
o risco das conexões caírem então pensei em um módulo gprs que use um chip de telemetria (tenho acesso fácil a eles) então o esp8266 através do módulo gprs iria ser o servidor local para os outros esps e se conectar ao servidor principal (PC) e estabelecer uma comunicação em duas vias.
Preciso da ajuda do pessoal aqui para saber qual módulo devo usar e qual biblioteca devo usar.
Além de algum exemplo de conexão via socket (ip/porta) via gprs..
Além aí já fez algo nesse sentido.
Agradeço desde já.
Att Rodrigo…
yndns e No-IP, mas já que você já tem um servidor PHP externo você pode usar outra manobra.
No PHP se tem alguns arrays de variáveis globais, algumas delas são $_POST, $_GET, $_SESSION e $_SERVER. Mais especificamente no array $_SERVER, a variável $_SERVER[REMOTE_ADDR] vai retornar o endereço do cliente que se conectou nessa página, isto é, o arduino não vai precisar saber o IP externo dele, vai bastar apenas ele conectar nesta página que o endereço externo dele vai ser capturado e vai estar armazenado nessa varíavel. Dê um echo nessa variável em uma página PHP e acesse com seu browser, note que seu IP irá aparecer.…
zer o NAT e alterar o arquivo PHP no trecho "socket_connect($sock,"192.168.1.177", 8090); " para algo como: "socket_connect($sock,"IP_DO_TEU_ROTEADOR_COM_NAT", 8090); " ou caso esteja usando nome de domínio, o endereço DNS correto.
Estás usando algum tipo de DNS dinâmico? como o ddns ou coisa assim?
Neste trecho: "socket_connect($sock,"192.168.1.177", 8090); " tu indicas o retorno para um endereço local(192.168.1.77), como se o servidor de páginas estivesse em tua própria máquina.
Faz o seguinte, me manda o fluxo do processo como um todo. Onde está o servidor de páginas com ser respectivo endereço IP, o IP onde está o programa e o endereço de tua rede local.
…