Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌ Arduino. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со скСтчами». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 40

Автор Монк Π‘Π°ΠΉΠΌΠΎΠ½

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌ Arduino. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со скСтчами - _84.jpg

Рис. 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 сСкунды, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π·Π°Ρ…Π²Π°Ρ‡Π΅Π½ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ осциллографа.