Abo
  • Services:
Anzeige
Arduino mit Ethernet-Shield zur Temperaturmessung
Arduino mit Ethernet-Shield zur Temperaturmessung (Bild: Alexander Merz/Golem.de)

Ethernet-Shield initialisieren

Bevor wir Daten über das Ethernet-Shield verschicken können, müssen wir es initialisieren. Dazu benötigen wir zwei Bibliotheken, die bereits mit der Arduino-IDE mitgeliefert werden. Außerdem müssen wir für das Ethernet-Shield von Hand eine MAC festlegen und ein Objekt definieren, über das unsere Kommunikation mit dem Shield abgewickelt wird:

  1. EthernetClient client;
  2. byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
So vorbereitet beschränkt sich der Start des Ethernet-Shields auf einen Funktionsaufruf, den wir in die setup()-Funktion des Sketch packen:

Anzeige

  1. Ethernet.begin(mac)

In unserem Skript auf Github haben wir diesen Aufruf in der Funktion initEthernet() gekapselt, die auch die Fehler bei der Initialisierung behandelt.

Temperatur senden

Die Daten werden schließlich in der Funktion sendTemperature() versendet. Die Funktion erwartet als Parameter die ID des Sensors, die wir in der Variable thermometer gespeichert haben.

Damit lesen wir den gespeicherten Temperaturwert des Sensors in Grad Celsius aus:

  1. float tempC = sensors.getTempC(deviceAddress);

Als Nächstes weisen wir das Ethernet-Shield an, eine TCP-Verbindung zum Golem.de-Server an Port 80 aufzubauen, die Konstante SERVER enthält den Servernamen "www.golem.de":

  1. client.connect(SERVER, 80)

War das erfolgreich, wickeln wir eine HTTP-GET-Anfrage von Hand ab. Diese bauen wir mit Hilfe eines String-Objekts zusammen. Wichtigster Bestandteil ist die URL, sie besteht aus der Konstante namens URL, daran wird die Temperatur als Parameter angehängt.

Wie die URL-Konstante aufgebaut werden muss, kann der technischen Dokumentation unseres Messprojekts entnommen werden. Teil der Dokumentation ist auch ein Formular, um sich die URL einfach zusammenzuklicken. Für die URL ist es wichtig, dass "Temperatur anhängen" ausgewählt wurde.

  1. String cmd = "GET ";
  2. cmd += URL;
  3. cmd += tempC;
  4. cmd += " HTTP/1.0";
  5.  
  6. client.println(cmd);
  7. client.print("Host: ");
  8. client.println(SERVER);
  9. client.println("Connection: close");
  10. client.println();

Die Zeichenketten in den Aufrufen von client.print() und client.println() werden direkt an den Golem.de-Server geschickt.

 LED ansprechenZeitgesteuerte Ausführung 

eye home zur Startseite
MikePenison 22. Apr 2016

Hallo, ich habe Interesse an so einem Temperatur Projekt auf Bluetooth Basis (Arduino...

NoLabel 22. Apr 2016

Breadboard ist ja auch nur zum testen einer Schaltung da und nicht für Dauerbetrieb...

TuX12 22. Apr 2016

Damit geht's auch und kost' fast nix ;)



Anzeige

Stellenmarkt
  1. PENTASYS AG, München, Frankfurt am Main, Nürnberg, Stuttgart, Hamburg
  2. Vertec GmbH, Hamburg, Zürich (Schweiz)
  3. Vodafone GmbH, Düsseldorf
  4. BIOTRONIK SE & Co. KG, Berlin


Anzeige
Blu-ray-Angebote
  1. 6,99€
  2. (u. a. Die Unfassbaren, Ghostbusters I & II, Jurassic World, Fast & Furious 7 Extended Version)
  3. 18,00€ (ohne Prime bzw. unter 29€-Einkaufswert zzgl. 3€ Versand)

Folgen Sie uns
       


  1. Eugene Cernan

    Der letzte Mann auf dem Mond ist tot

  2. taz

    Strafbefehl in der Keylogger-Affäre

  3. Respawn Entertainment

    Live Fire soll in Titanfall 2 zünden

  4. Bootcode

    Freie Firmware für Raspberry Pi startet Linux-Kernel

  5. Brandgefahr

    Akku mit eingebautem Feuerlöscher

  6. Javascript und Node.js

    NPM ist weltweit größtes Paketarchiv

  7. Verdacht der Bestechung

    Staatsanwalt beantragt Haftbefehl gegen Samsung-Chef

  8. Nintendo Switch im Hands on

    Die Rückkehr der Fuchtel-Ritter

  9. Raspberry Pi

    Compute Module 3 ist verfügbar

  10. Microsoft

    Hyper-V bekommt Schnellassistenten und Speicherfragmente



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Intel Core i7-7700K im Test: Kaby Lake = Skylake + HEVC + Overclocking
Intel Core i7-7700K im Test
Kaby Lake = Skylake + HEVC + Overclocking
  1. Kaby Lake Intel macht den Pentium dank HT fast zum Core i3
  2. Kaby Lake Refresh Intel plant weitere 14-nm-CPU-Generation
  3. Intel Kaby Lake Vor der Vorstellung schon im Handel

GPD Win im Test: Crysis in der Hosentasche
GPD Win im Test
Crysis in der Hosentasche
  1. Essential Android-Erfinder Rubin will neues Smartphone entwickeln
  2. Google Maps Google integriert Uber in Karten-App
  3. Tastaturhülle Canopy hält Magic Keyboard und iPad zum Arbeiten zusammen

Wonder Workshop Dash im Test: Ein Roboter riskiert eine kesse Lippe
Wonder Workshop Dash im Test
Ein Roboter riskiert eine kesse Lippe
  1. Supermarkt-Automatisierung Einkaufskorb rechnet ab und packt ein
  2. Robot Operating System Was Bratwurst-Bot und autonome Autos gemeinsam haben
  3. Roboterarm Dobot M1 - der Industrieroboter für daheim

  1. Re: Ich glaube das grundliegende Problem von...

    MrReset | 07:39

  2. Re: Für das gebotene ist der Preis einfach zu hoch.

    Kakiss | 07:27

  3. Re: Manchmal bin ich Mercedes für Ihre Pfusch...

    ronlol | 07:21

  4. Re: VW kooperiert in dem Bereich

    nf1n1ty | 07:20

  5. Re: TF2 schlechter als TF1

    linuxGNU | 07:06


  1. 07:41

  2. 18:02

  3. 17:38

  4. 17:13

  5. 14:17

  6. 13:21

  7. 12:30

  8. 12:08


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel