Como desligar e ligar uma tomada se o arduino parar de pingar para um ip?

Gostaria que o arduino disparasse ping para um ip e quando a conexão cair uma tomada fosse resetada, esse projeto seria para eu poder reiniciar um modem caso ele travasse.

Exibições: 1646

Responder esta

Respostas a este tópico

Mas no seu fonte, qual a dúvida e/ou problema está tendo?

Amigo, na verdade ainda não achei nada semelhante, mas queria pode disparar um ping para um determinado ip e quando parasse de de pingar um relé fosse acionado desligando uma tomada onde ficaria o meu modem, assim se o modem travar o arduino reiniciaria a tomada dele e quando ele retornasse estaria up novamente.

Caros colegas do forum, esse script foi o que eu encontrei, mas ainda não chega a ser o que realmente preciso. Alguém poderia me ajudar?

Anexos

Eu tenho o arduino e o Ethernet shield, sou iniciante no arduino, fiz o primeiro teste com ele que foi acender a lampada pela internet du certo bacana, estou cursando sistemas de informação e gostaria de fazer meu tcc com o arduino, e a ideia seria o seguinte, testar um link de dados de internet

ou seja fazer o arduino pingar o link alguem tem alguem sabe de algum código que faça isso no arduino?

Utilizei esse código, porem ele está dando erro

Segue abaixo o código

 

#include <SPI.h>        

#include <Ethernet.h>

#include <ICMPPing.h>

byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; // max address for ethernet shield

byte ip[] = {192,168,2,177}; // ip address for ethernet shield

byte pingAddr[] = {192,168,2,1}; // ip address to ping

SOCKET pingSocket = 0;

char buffer [256];

void setup() // start Ethernet 

{   

 

Ethernet.begin(mac, ip);  

Serial.begin(9600);

 

}

void loop() {  

ICMPPing ping(pingSocket);  

ping(4, pingAddr, buffer);  

Serial.println(buffer);  

delay(500);

 

}

 

Até que esse código se desse certo me ajudaria para eu dar continuidade...

 

Alguem pode me ajudar

 

Segue o erro abaixo

 

 

Ping:23: error: 'SOCKET' does not name a type Ping.ino: In function 'void loop()': Ping:36: error: 'ICMPPing' was not declared in this scope Ping:36: error: expected `;' before 'ping' Ping:37: error: 'ping' was not declared in this scope

Você ja conseguiu fazer o PING com o Arduíno? Eu estou tentando mas está dando vários erros. Qual a versão da IDE que você conseguiu rodar a biblioteca.

Olha esse vídeo

http://www.youtube.com/watch?v=8Ee0aiqTP-k

Abraço

Estou tentando fazer a mesma coisa, acender um led quando ocorrer um time out. você conseguiu?

isso pode ajudar:

http://www.blake-foster.com/projects/ICMPPing.zip

Abraço

Olá pessoal, alguém já conseguiu fazer algo parecido?

ok, você tem 2 problemas a resolver, primeiramente você precisa de um shield ethernet, eu indico o shield com o chip w5100, com isso será possível encontrar facilmente um exemplo de se fazer um ping,

Depois será necessário criar um circuito para acionamento de rele, normalmente você  utilizará um rele, diodo, resistor e transistor. Procure aqui no site ou na Internet que você acha fácil diversos circuitos. Não esqueça que este acionamento é executado através de um pino do Arduino.

Onde posso encontrar esse código exemplo para ping, não encontro a dias.

Obrigado Alexandre, eu já tenho os acessórios todos, o shield ethernet w5100 e um arduino mega. Agora não achei de jeito nenhum algum tipo de exemplo com essa caracteristica. Eu tenho um link de internet, quero poder enviar um ping para ele e quando ele travar e parar de pingar gostaria que o rele desligasse o modem e quando ele ligar o modem estará funcionando novamente sem intervenção humana.

Israel

Eu  nao tenho muita experiencia em programaçao de arduino, mas imagino algo assim; o resultado do ping seria "guardado" em uma variavel, e essa variavel seria comparada a um determinado valor, quando o resultado fosse igual ao valor comparado acionaria o rele. O resultado do comando ping quando nao obtido sucesso é; esgotado o tempo limite do pedido, esse seria o valor que acionaria o rele, como te falei nao tenho ideia de como fazer isso, mas posso te garantir que essa seria uma forma, quem sabe agora com essa idéia alguem possa ajudar.

Sérgio Sgarbi

É isso mesmo amigo, agora quem poderá nos ajudar? Esse projeto resolveria muito provedores de internet de pequeno porte e até residências que usam cftv e quando os donos da casa saem em viagem e o roteador travar não tem monitoramento, mas com essa solução isso não seria mais problema.

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço