Arduino com a client de xarxa
Aquí tenim un exemple de com poder fer que el nostre Arduino UNO es connecti en xarxa amb un servidor, com per exemple, per bolcar dades d’un sensor a una base de dades en un servidor. Aquí teniu una imatge de com és:
Per fer-ho. utilitzarem una “ethernet shield”, basada en el xip Wiznet W5100. Aquesta placa disposa d’una ranura per una tarja SD, de forma que també pot funcionar com a servidor.
Aquesta tarja va connectada directament al damunt de l’arduino, de forma que no perdem connexions i la connexió és bastant neta, tal com mostra la imatge de sota:
El codi de programa bàsic és el següent: (extret de la pàgina oficial d’arduino).
Fixa’t que s’ha de carregar les llibreries Ethernet.h i SPI.h per a que sigui més senzill la programació
#include <Ethernet.h> #include <SPI.h> byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; byte ip[] = { 10, 0, 0, 177 }; //ip del client byte server[] = { 64, 233, 187, 99 }; // Google EthernetClient client; void setup() { Ethernet.begin(mac, ip); Serial.begin(9600); delay(1000); Serial.println("connecting..."); if (client.connect(server, 80)) { Serial.println("connected"); client.println("GET /search?q=arduino HTTP/1.0"); client.println(); } else { Serial.println("connection failed"); } } void loop() { if (client.available()) { char c = client.read(); Serial.print(c); } if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop(); for(;;) ; } }
Deixa un comentari