[RESOLVIDO] Existe um similar do PHP> socket_connect($sock,$Arduino_IP, 8081); para Arduino?

Olá pessoal, 

Eu fiz um arduino abrir socket e o código em PHP conectando a esse socket pelo comando PHP> socket_connect($sock,$Arduino_IP, 8081);

Funcionando perfeitamente usando write/read tanto no PHP quando no Arduino.


Agora eu quero esquecer o lado do computador e por 2 arduinos se conversarem pelo socket, mas não sei qual é o comando PHP> socket_connect($sock,$Arduino_IP, 8081); equivalente para arduino.

Alguém sabe me dizer se existe um comando equivalente?


Obrigado!

Exibições: 1514

Responder esta

Respostas a este tópico

Galera consegui o que eu queria com ajuda do Playground segue o link:

http://forum.arduino.cc/index.php?topic=172721.0


E a solução:

//Arduino Server

#include <SPI.h>
#include <Ethernet.h>

char msg[100];

//change the MAC
byte mac[] = { 0xDA, 0xAA, 0xBA, 0xEF, 0xFE, 0xED };
byte ip[] = { 10,20,30,79 };
byte gateway[] = { 10,20,30, 1 };
byte subnet[] = { 255, 255, 255, 0 };

EthernetServer server(8081);

EthernetClient client;

void setup()
{
Ethernet.begin(mac, ip, gateway, subnet);
server.begin();
Serial.print("server is at ");
Serial.println(Ethernet.localIP());
}

void loop()
{
client = server.available();
if(client){
for(int i = 0; client.available() > 0; i++)
msg[i] = client.read();

client.write(msg);
}
else
client.write("NO MSG READ");
delay(1000);
}


- - -

Arduino Client

#include <SPI.h>
#include <Ethernet.h>

byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(10,20,30,99);
IPAddress serverIP(10,20,30,79);

EthernetClient client;

void setup() {
Ethernet.begin(mac, ip);
Serial.print("server is at ");
Serial.println(Ethernet.localIP());

Serial.println("connecting socket...");
if (client.connect(serverIP, 8081)) {
Serial.println("connected");
}
else {
Serial.println("connection failed");
}
}

void loop()
{
if(client){
client.write("TEST MSG");
Serial.print("TEST MSG");
delay(2000);
}
if (client.available()) {
char c = client.read();
Serial.print(c);
}

while (Serial.available() > 0) {
char inChar = Serial.read();
if (client.connected()) {
client.print(inChar);
}
}

if (!client.connected()) {
Serial.println();
Serial.println("disconnecting.");
client.stop();
while(!client.connect(serverRep, 8081)){
delay(10000);
Serial.println("Trying to connect");
}
Serial.println("connected");
}
}

bom dia julio, tudo bom ? estou desenvolvendo o Arduíno automação residencial para acender as lampada. gostaria saber que tem como usar o arduino pela internet hospedado pelo site, para eu acessar qual quer lugar. 

eu to desenvovendo um projeto semelhante a esse seu e nao gostaria de usar socket como vc fez o codigo em php...

Olá.

Eu consegui fazer o PHP enviar por socket ao arduino mas não consegui ler o retorno.

Teria alguma sugestão?

Como vc conseguiu enviar se comonicar via socket com o arduino?

com socket mesmo, consegui enviar e ler o retorno

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço