
Π ΠΈΡ. 12.6. ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠΎΠ³ΠΎΠ΄Π΅ ΠΎΡ Π²Π΅Π±-ΡΠ»ΡΠΆΠ±Ρ
Π‘ΠΊΠ΅ΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ ΠΎΡΠ΅Π½Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ, Π²ΡΠ΅Π³ΠΎ 45 ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° (sketch_12_03_web_request). ΠΠ°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ Π΄Π»Ρ Π½Π°Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ hitWebPage:
void hitWebPage()
{
Β Β if (client.connect("api.openweathermap.org", 80))
Β Β {
Β Β Β Β client.println("GET /data/2.5/weather?q=Manchester,uk HTTP/1.0");
Β Β Β Β client.println();
Β Β Β Β while (client.connected())
Β Β Β Β {
Β Β Β Β Β Β if (client.available())
Β Β Β Β Β Β {
Β Β Β Β Β Β Β Β client.findUntil("description\":\"", "\0");
Β Β Β Β Β Β Β Β String description = client.readStringUntil('\"');
Β Β Β Β Β Β Β Β Serial.println(description);
Β Β Β Β Β Β }
Β Β Β Β }
Β Β Β Β client.stop();
Β Β }
}
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΊ ΠΏΠΎΡΡΡ 80 ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΡΠ»ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π±Π»Π°Π³ΠΎΠΏΠΎΠ»ΡΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, ΡΠ΅ΡΠ²Π΅ΡΡ ΠΏΠΎΡΡΠ»Π°Π΅ΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°ΠΏΡΠΎΡΠ°:
client.println("GET /data/2.5/weather?q=Manchester,uk HTTP/1.0");
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° println Π½ΡΠΆΠ½Π°, ΡΡΠΎΠ±Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΠΏΠΎΠ±ΡΠ΄ΠΈΡΡ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠΈΡΠ»Π°ΡΡ ΠΎΡΠ²Π΅Ρ.
ΠΠ°Π»Π΅Π΅ Π² ΡΠΈΠΊΠ»Π΅ while ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ if ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΏΠΎΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ Π½ΠΈΠΌ Π½Π΅ Π·Π°ΠΊΡΡΡΠΎ. ΠΠ΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠ° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ°Π½Π½ΡΠ΅ ΠΏΠΎΡΡΡΠΏΠ°ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ JSON:
{"coord":{"lon":-2.23743,"lat":53.480949},
"sys":{"country":"GB","sunrise":1371094771,
"sunset":1371155927},"weather":[{"id":520, "main":"Rain",
"description":"light intensity shower rain", "icon": "09d"}]
"humidity":87,"temp_min":283.15,"temp_max":285.93},
"wind":{"speed:5.1,"deg":270},"rain":{"1h":0.83},
"clouds":{"all":40},"dt":1371135000,"id":3643123,
"name":"Manchester","cod":200}
Π€ΡΠ½ΠΊΡΠΈΡ hitWebPage Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ findUntil ΠΈ readStringUntil ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΡΠ΅ΠΊΡΡΠ°, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π° ΡΠ»ΠΎΠ²ΠΎΠΌ Β«descriptionΒ», Ρ Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅ΠΌ ΠΈ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΎΠΉ Π΄ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΈ.
Π€ΡΠ½ΠΊΡΠΈΡ findUntil ΠΏΡΠΎΡΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅Ρ Π²ΡΠ΅, ΠΏΠΎΠΊΠ° Π½Π΅ Π²ΡΡΡΠ΅ΡΠΈΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΡΡΠΎΠΊΡ. ΠΠ°ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ readStringUntil ΡΠΈΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠ°, ΠΏΠΎΠΊΠ° Π½Π΅ Π²ΡΡΡΠ΅ΡΠΈΡ Π΄Π²ΠΎΠΉΠ½ΡΡ ΠΊΠ°Π²ΡΡΠΊΡ.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° WiFi
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° WiFi, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΎΠΆΠΈΠ΄Π°ΡΡ, ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Ethernet. ΠΡΠ»ΠΈ Π² ΡΠΊΠ΅ΡΡΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Ethernet Π½Π° WiFi, EthernetServer Π½Π° WiFiServer ΠΈ EthernetClient Π½Π° WiFiClient, ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ΄ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΏΠΎΡΡΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΡΠΌ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ WiFi ΠΎΡ Ethernet Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠ΅ΡΠΈ. ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ WiFi:
#include <SPI.h>
#include <WiFi.h>
Π§ΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ ΡΠ΅ΡΡΡ, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠ·Π²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ WiFi.begin ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π΅ΠΉ ΠΈΠΌΡ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅ΡΠΈ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ:
WiFi.begin("MY-NETWORK-NAME", "mypassword");
ΠΡΠΈΠΌΠ΅Ρ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ WiFiΒ» ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΎΡΠ»ΠΈΡΠΈΠ΅, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ.
ΠΡΠΎΠ±ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ WiFi
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° WiFi Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ½ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π² ΡΠ°Π±Π». 12.1.
ΠΠΎΠ»Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ WiFi ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://arduino.cc/en/Reference/WiFi11.
Π’Π°Π±Π»ΠΈΡΠ° 12.1. Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ WiFi
Π€ΡΠ½ΠΊΡΠΈΡ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
WiFi.config
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ IP-Π°Π΄ΡΠ΅ΡΠ° ΠΏΠ»Π°ΡΡ, ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠΌΠ΅Π½ (DNS) ΠΈ ΡΠ»ΡΠ·Π°
WiFi.SSID
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅ΡΠΈ SSID
WiFi.RSSI
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ ΡΠΈΠ³Π½Π°Π»Π° ΡΠΈΠΏΠ° long
WiFi.encriptionType
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ΄, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ
WiFi.scanNetworks
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅ΠΉ, Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π½ΠΈΡ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ
WiFi.macAddress
ΠΠΎΠΌΠ΅ΡΠ°Π΅Ρ MAC-Π°Π΄ΡΠ΅Ρ Π°Π΄Π°ΠΏΡΠ΅ΡΠ° WiFi Π² ΡΠ΅ΡΡΠΈΠ±Π°ΠΉΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ², ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ WiFi
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΡΠΊΠ΅ΡΡ sketch_12_02_server, Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π² Π΅Π³ΠΎ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠ»Π°ΡΠΎΠΉ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ WiFi. ΠΠΎΠ»Π½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΠΊΠ΅ΡΡΠ΅ sketch_12_04_server_wifi. Π― Π½Π΅ Π±ΡΠ΄Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ, ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΌΠ΅ΡΡ ΠΎΡΠ»ΠΈΡΠΈΡ ΠΎΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΊΠ΅ Π΄ΠΎΡΡΡΠΏΠ°, Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠΌΡ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅ΡΠΈ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ:
char ssid[] = "My network name";Β Β // ΠΈΠΌΡ ΡΠ΅ΡΠΈ (SSID)
char pass[] = "mypassword";Β Β Β Β Β Β Β // ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΡΠΈ
Π’Π°ΠΊΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠΌΠ΅Π½Π° ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, EthernetServer ΠΈ EthernetClient, Π½Π° WiFiServer ΠΈ WiFiClient:
WiFiServer server(80);
WiFiClient client;
ΠΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ²Π΅ΡΠ° Π²ΡΠ΅ ΡΠ°ΠΊ ΠΆΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΡ Π½ΠΎΠΌΠ΅Ρ ΠΏΠΎΡΡΠ° 80.
Π‘Π»Π΅Π΄ΡΡΡΠ΅Π΅ ΡΠ°ΠΊΠ·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΠΏΠ»Π°ΡΠ°ΠΌΠΈ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°
WiFi.begin(ssid, pass);
ΠΡΠΎΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΎΡΡΠ°Π»ΡΡ ΠΏΠΎΡΡΠΈ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π ΡΡΠ½ΠΊΡΠΈΠΈ loop Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ delay(1) ΠΏΠ΅ΡΠ΅Π΄ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΎΠ½Π° Π΄Π°Π΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π²ΡΠ΅ΠΌΡ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΊΡΡΡΠΎ. Π Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Ethernet ΡΠ°ΠΊΠ°Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ Π½ΡΠΆΠ½Π°. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΊΠΎΠ΅-Π³Π΄Π΅ Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΠ» Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΡΠ·ΠΎΠ²ΠΎΠ² client.print Π² ΠΎΠ΄ΠΈΠ½, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²ΡΠ·ΠΎΠ² Π²ΡΠ²ΠΎΠ΄ΠΈΠ» Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ. ΠΡΠΎΡ ΠΏΡΠΈΠ΅ΠΌ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠΊΠΎΡΠΎΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠ»Π°ΡΠ° WiFi ΠΊΡΠ°ΠΉΠ½Π΅ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ. ΠΠΎ Π½Π΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² client.print ΠΈΠ»ΠΈ client.println Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΡΡΠΎΠΊΠΈ Π΄Π»ΠΈΠ½Π½Π΅Π΅ 90 Π±Π°ΠΉΡ β ΠΎΠ½ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Ρ.
ΠΠ΅ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ WiFi ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Ethernet ΠΈ ΡΡΠ°ΡΠΈΡ Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΡ ΠΎΠΊΠΎΠ»ΠΎ 45 ΡΠ΅ΠΊΡΠ½Π΄. ΠΠ»Π°ΡΠ° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ WiFi ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ, ΠΈ Π΅ΡΠ»ΠΈ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Arduino ΠΏΠΎΠ²ΡΡΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠ»Π°ΡΡ WiFi, Π²Π°ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΡΡΠΎΠΈΡ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ ΠΎΠ± ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠ»Π°ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ. ΠΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΠΏΡΠΎΡΠΈΠ²ΠΊΠ΅ ΠΏΠ»Π°ΡΡ WiFi ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ http://arduino.cc/en/Main/ArduinoWiFiShield.
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΌΡ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΠΈΡΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ»Π°ΡΡ Arduino ΠΊ ΡΠ΅ΡΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ»Π°Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Ethernet ΠΈ WiFi. ΠΠ΄Π΅ΡΡ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΡΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Arduino Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅ Π²Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΠ΅ΡΡ Ρ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² (Digital Signal Processing, DSP) Ρ ΠΏΠΎΠΌΠΎΡΡΡ Arduino.
10 ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ Π½Π° ΡΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ: http://arduino.ua/ru/prog/Ethernet. β ΠΡΠΈΠΌΠ΅Ρ. ΠΏΠ΅Ρ.
11 ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ Π½Π° ΡΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ: http://arduino.ua/ru/prog/WiFi. β ΠΡΠΈΠΌΠ΅Ρ. ΠΏΠ΅Ρ.
13. Π¦ΠΈΡΡΠΎΠ²Π°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΈΠ³Π½Π°Π»ΠΎΠ²
ΠΠ»Π°ΡΠ° Arduino ΡΠΏΠΎΡΠΎΠ±Π½Π° Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΡΠΎΡΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ². Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ°ΠΊΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΎΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΠΈΠ³Π½Π°Π»Π°, ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠ΅Π³ΠΎ Π½Π° Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΉ Π²Ρ ΠΎΠ΄, Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠΎ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² Π΄ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ°ΡΡΠΎΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π€ΡΡΡΠ΅.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΠΈΡΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²
ΠΡΠΈΠ½ΠΈΠΌΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Ρ Π΄Π°ΡΡΠΈΠΊΠ°, Π²Ρ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΡΠ΅ ΡΠΈΠ³Π½Π°Π». Π‘ΠΈΠ³Π½Π°Π»Ρ ΠΏΡΠΈΠ½ΡΡΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π² Π²ΠΈΠ΄Π΅ Π»ΠΈΠ½ΠΈΠΈ (ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠ·Π²ΠΈΠ»ΠΈΡΡΠΎΠΉ), ΠΈΠ΄ΡΡΠ΅ΠΉ ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΡΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»Ρ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°ΡΠ°. ΠΡΡ y ΠΎΡΡΠ°ΠΆΠ°Π΅Ρ Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Ρ ΡΠΈΠ³Π½Π°Π»Π° (Π΅Π³ΠΎ ΡΠΈΠ»Ρ), Π° ΠΎΡΡ x β Π²ΡΠ΅ΠΌΡ. ΠΠ° ΡΠΈΡ. 13.1 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ ΡΠΈΠ³Π½Π°Π», ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ 1/4 ΡΠ΅ΠΊΡΠ½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» Π·Π°Ρ Π²Π°ΡΠ΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°ΡΠ°.