Arduino Ethernet Shield Tutorial (5 / 5 stap)

Stap 5: Client


u kunt ook de Ethernet-Shield gebruiken als een client. Met andere woorden, kunt u het lezen van websites zoals een webbrowser.

Websites hebben een heleboel tekst zowel zichtbare als verborgen, waardoor programmering op de clientzijde erg lastig. Lezen van informatie vanaf websites meestal gaat ontleden alot van tekenreeksen. Dit is gek, maar de moeite waard, als dat is wat u wilt doen.

Ik was van plan om te schrijven wat code om Twitter berichten te lezen, maar een dergelijke code bestaat al als voorbeeld binnen de Arduino-programmeur. In plaats daarvan, mij gewijzigde gewoon iets om te schakelen op een LED als een speciale bericht is gelezen.

Om dit werk steek de positieve stekker een LED aan pin D2, en de negatieve lood in serie met een weerstand van 220 ohm op grond.

Vergeet niet uw eigen IP-adres invoeren in de onderstaande code, anders zal het niet werken.

Hier is de code:

 /* Twitter Client with Strings This sketch connects to Twitter using an Ethernet shield. It parses the XML returned, and looks for <text>this is a tweet</text> You can use the Arduino Ethernet shield, or the Adafruit Ethernet shield, either one will work, as long as it's got a Wiznet Ethernet module on board. This example uses the DHCP routines in the Ethernet library which is part of the Arduino core from version 1.0 beta 1 This example uses the String library, which is part of the Arduino core from version 0019. Circuit: * Ethernet shield attached to pins 10, 11, 12, 13 created 21 May 2011 by Tom Igoe This code is in the public domain. */ #include <SPI.h> #include <Ethernet.h> // Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x01 }; IPAddress ip(191,11,1,1); //<<< ENTER YOUR IP ADDRESS HERE!!! // initialize the library instance: EthernetClient client; const int requestInterval = 60000; // delay between requests char serverName[] = "api.twitter.com"; // twitter URL boolean requested; // whether you've made a request since connecting long lastAttemptTime = 0; // last time you connected to the server, in milliseconds String currentLine = ""; // string to hold the text from server String tweet = ""; // string to hold the tweet boolean readingTweet = false; // if you're currently reading the tweet void setup() { pinMode(2, OUTPUT); // reserve space for the strings: currentLine.reserve(256); tweet.reserve(150); // initialize serial: Serial.begin(9600); // attempt a DHCP connection: if (!Ethernet.begin(mac)) { // if DHCP fails, start with a hard-coded address: Ethernet.begin(mac, ip); } // connect to Twitter: connectToServer(); } void loop() { if (client.connected()) { if (client.available()) { // read incoming bytes: char inChar = client.read(); // add incoming byte to end of line: currentLine += inChar; // if you get a newline, clear the line: if (inChar == '\n') { currentLine = ""; } // if the current line ends with <text>, it will // be followed by the tweet: if ( currentLine.endsWith("<text>")) { // tweet is beginning. Clear the tweet string: readingTweet = true; tweet = ""; } // if you're currently reading the bytes of a tweet, // add them to the tweet String: if (readingTweet) { if (inChar != '<') { tweet += inChar; } else { // if you got a "<" character, // you've reached the end of the tweet: readingTweet = false; Serial.println(tweet); if(tweet == ">Hello Cruel World"){ digitalWrite(2, HIGH); Serial.println("LED ON!"); } if(tweet != ">Hello Cruel World"){ digitalWrite(2, LOW); Serial.println("LED OFF!"); } // close the connection to the server: client.stop(); } } } } else if (millis() - lastAttemptTime > requestInterval) { // if you're not connected, and two minutes have passed since // your last connection, then attempt to connect again: connectToServer(); } } void connectToServer() { // attempt to connect, and wait a millisecond: Serial.println("connecting to server..."); if (client.connect(serverName, 80)) { Serial.println("making HTTP request..."); // make HTTP GET request to twitter: client.println("GET /1/statuses/user_timeline.xml?screen_name=RandyMcTester&count=1 HTTP/1.1"); client.println("HOST: api.twitter.com"); client.println(); } // note the time of this connect attempt: lastAttemptTime = millis(); } 

U gaat vermoedelijk wilt lezen dat iets anders dan de recente post op de RandyMcTester Twitter feed.

Om te lezen van andere Twitter-feeds, wijzigt u het volgende stuk tekst:
client.println ("GET /1/statuses/user_timeline.xml?screen_name=[nieuwe TWITTER naam hier]& tellen = 1 HTTP/1.1");

Gerelateerde Artikelen

Voorbeeld van de automatisering van Remote Home - Arduino + Ethernet-Shield

Voorbeeld van de automatisering van Remote Home - Arduino + Ethernet-Shield

opnieuw welkom!In dit Instructable, ik zal detail hoe met verschillende sensoren en items met een internet aangesloten Arduino. Naar mijn mening was dit een erg leuk project samen te stellen en sleutelen! Plus, kreeg ik omhoog borstel op mijn HTML en
WeMo Switch regelen met Arduino + Ethernet-shield

WeMo Switch regelen met Arduino + Ethernet-shield

Er zijn veel apps waarmee u de controle van uw Belkin WeMo -apparaten, maar er is geen een panel schakelaar hardware zoals de Hue Tap voor Philips hue.Dus bouwen ik met een Arduino!Stap 1: materialenVoor dit project heb je het volgende nodig:Een Ardu
Arduino ethernet-shield + advancedHMI, atmega644/1284 kloon + VB NET + MODBUS TCP

Arduino ethernet-shield + advancedHMI, atmega644/1284 kloon + VB NET + MODBUS TCP

Dit project is een manier om controle van een Arduino of mijn kloon Arduino atmega644/1284 via een PC of een mens machine interface aangesloten op de arduino ethernet-shield. U maakt een SCADA-systeem om te bepalen uw systeem vanaf een grote afstand.
Controle van Denon AVR met Arduino + Ethernet-shield

Controle van Denon AVR met Arduino + Ethernet-shield

Aan dit project heb ik het opbouwen van een eenvoudig bedieningspaneel voor mijn Denon AVR (AVR-X4100W).Meeste van Denon A / V-ontvangers zijn netwerk klaar, zodat u hen binnen een web interfase of een app bepalen kunt. Er is geen officiële documenta
Arduino Routing Protocol RIPv1 Spoofer / netwerk Jammer - Ethernet Shield Tutorial

Arduino Routing Protocol RIPv1 Spoofer / netwerk Jammer - Ethernet Shield Tutorial

Dit is een snelle intstructable met één of ander bewijs conceptcode om te laten zien dat routeringsprotocollen kunnen zijn vervalst, met behulp van Arduino. Het ook fungeert als een snelle inleiding tot het gebruik van de ethernet-shield en krijgt je
Arduino cellulaire Shield Tutorial

Arduino cellulaire Shield Tutorial

The Arduino cellulaire Shield kun je cellulaire telefoon bellen en SMS-berichten versturen. De hersenen van dit schild is de SM5100B die is een robuuste cellulaire module staat uit te voeren veel van de taken van de meeste standaard mobiele telefoons
Arduino Motor Shield Tutorial

Arduino Motor Shield Tutorial

The Arduino Motorschild kunt u gemakkelijk bepalen motor richting en snelheid met behulp van een Arduino. Doordat u eenvoudig inspelen op Arduino pinnen, maakt het het zeer eenvoudig om een motor in uw project opnemen. U kunt om het vermogen van een
Online grafieken met niets, maar een Arduino, Ethernet-Shield en Sensor

Online grafieken met niets, maar een Arduino, Ethernet-Shield en Sensor

Tot slot heb ik besloten om enkele van mijn bestaande projecten opgemaakt op instructables. Dit is aangepast van mijn project Super Graphing datalogger.Wat is de Super Graphing Data Logger (SGDL)? Het is een Arduino project dat integreert gegevensreg
TouchOSC en Arduino Ethernet-Shield controle energie (A.M.P.A.E.)

TouchOSC en Arduino Ethernet-Shield controle energie (A.M.P.A.E.)

Dag na dag, mensen gebruik maken van een grote hoeveelheid gadgets en veel energie hebben geen bezorgdheid over het afval. Ons idee is in principe een mobiele toepassing voor tablets en smartphones die de gebruiker een totale controle van alle energi
Slimme huis met Arduino Ethernet-shield en Teleduino (met web app)

Slimme huis met Arduino Ethernet-shield en Teleduino (met web app)

Dit project is een eenvoudige oplossing voor degenen die willen een smart-home-systeem, maar hebben niet een groot budget en de lui die wil niet opstaan uit bed om te schakelen van de verlichting of uitschakelen.Het is ook het project van een middelb
Online Temperatuurbewaking met behulp van Arduino + Ethernet-Shield

Online Temperatuurbewaking met behulp van Arduino + Ethernet-Shield

Hallo, vandaag mij zal uiterlijk vertoon u guy hoe maak je arduino online temperatuurbewaking, dit voorbeeld is web gebaseerde dat betekent dat u kunt verbinden uit anyplace, door combineren AJAX en PHP samen die temperatuur gegevens kunt overbrengen
Arduino Wifly Shield Tutorial

Arduino Wifly Shield Tutorial

er zijn veel dingen die je met je arduino board doen kunt. U kunt bijvoorbeeld, wifi-connectiviteit toevoegen aan uw project. Om dit te doen, moet u een Arduino Wifly RN-131 C schild of een ander type van WiFi schild die kunt u in de markt.Het schild
Draadloos met Arduino Board iPhone, iPad of iPod Using iArduino App en Ethernet-Shield

Draadloos met Arduino Board iPhone, iPad of iPod Using iArduino App en Ethernet-Shield

deze tutorial zal u met hoe maak je hele setup te controleren uw Arduino Board met toepassing van de iArduino. Om te begrijpen, zullen we gebruik maken van Led en we zullen het aan en uit schakelen met behulp van iArduino app. U krijgt hieruit het id
Arduino Nano met Ethernet-Shield

Arduino Nano met Ethernet-Shield

Ik kocht onlangs een Arduino Ethernet-shield voor de Arduino Uno ontworpen, en dacht dat ik kon net gemakkelijk sluit deze dan aan mijn bestaande Arduino Nano. Ik had het mis!Ik kon niet vinden veel informatie helemaal over hoe dit te doen, behalve d