Читаем Изучаем Arduino: инструменты и методы технического волшебства полностью

client.print("

"step = '100' value = '0'/>");

client.println("");

client.println("");

// Добавить формы для управления

// дополнительными устройствами

sentHeader = true;

}

if (с=='\n' && currentLineisBlank) break;

if (с=='\n')

{

currentLineisBlank=true;

}

else if (с ! = '\r')

{

currentLineisBlank=false;

}

}

}

// Дать время веб-браузеру на получение данных

delay(5);

client.stop(); // Закрыть соединение

}

}

Приведенная программа выполняет все функции, описанные в предыдущих разделах. Измените MAC-адрес на значение, указанное на этикетке вашего Ethemet-адаптера. Если вы не найдете этот адрес, возьмите значение из листинга 14.2. Загрузите программу на плату Arduino и запустите монитор последовательного порта.

Убедитесь, что плата Arduino подключена к сети и в маршрутизаторе включен

DHCP. Через несколько секунд в мониторе последовательного порта появится сообщение о назначенном IP-адресе (рис. 14.4).

В случае, показанном на рис. 14.4, Arduino был назначен локальный IP-адрес 192.168.0.9. В вашей сети почти наверняка будет другой адрес. Зная IP-адрес, можно использовать его для доступа к веб-интерфейсу.

- 313 -

Рис. 14.4. Вывод в последовательный порт полученного по DHCP IP-адреса

<p>14.3. Управление платой Arduino по сети</p>

Теперь, когда код сервера работает, и ваша плата Arduino подключена к сети с действительным IP-адресом, вы можете с помощью браузера получить к ней доступ и осуществлять управление. Сначала сделаем это по локальной сети, а затем воспользуемся переадресацией портов на вашем роутере для доступа к плате Arduino из внешней сети.

14.3.1. Управление платой Arduino по локальной сети

Чтобы убедиться, что веб-интерфейс работает должным образом, проверьте, что ваш компьютер подключен к той же сети, что и плата Arduino (через Wi-Fi или Ethemet). Откройте ваш браузер и введите в адресную строку IP-адрес из предыдущего раздела. В результате должна открыться HTML-страница, созданная ранее.

Попробуйте нажать кнопки для включения/выключения цветов RGB-светодиода.

Переместите ползунок и нажмите кнопку установки частоты динамика. Плата Arduino должна отреагировать на ваши действия. Если открыть монитор последовательного порта Arduino IDE, вы увидите вывод в него отладочной информации.

Обратите внимание, что переменные передаются на сервер Arduino методом GET через адресную строку браузера (рис. 14.5).

Если управление платой Arduino по локальной сети проходит успешно, можно перейти к следующему разделу, чтобы управлять платой Arduino из любой точки мира.

- 314 -

Рис. 14.5. Управление платой Arduino через веб-интерфейс и вывод отладочной информации в последовательный порт

ПРИМЕЧАНИЕ

Видеоурок, демонстрирующий управление платой Arduino по локальной сети, можно посмотреть на странице http://www.exploringarduino.com/content/ch14. Этот видеофайл доступен также на сайте издательства Wiley.

14.3.2. Организация доступа к плате Arduino из внешней сети

В предыдущем разделе мы научились управлять платой Arduino из любой точки локальной сети, поскольку IP-адрес платы находился за маршрутизатором. Если требуется связать плату Arduino с компьютерами за пределами вашей локальной сети, следует воспользоваться передовыми технологиями, позволяющими получить доступ к устройству через ваш маршрутизатор из внешней сети.

- 315 -

Чтобы сделать это, нужно осуществить три действия:

1. Зарезервировать локальный адрес DHCP, используемый платой Arduino.

2. Перенаправить внешний порт на маршрутизаторе к внутреннему порту платы Arduino.

3. Подключить маршрутизатор к службе DNS.

ВНИМАНИЕ!

Перейти на страницу:

Похожие книги