Джереми Блум - Изучаем Arduino: инструметы и методы технического волшебства
- Название:Изучаем Arduino: инструметы и методы технического волшебства
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2015
- Город:Санкт-Петербург
- ISBN:978-5-9775-3585-4
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Джереми Блум - Изучаем Arduino: инструметы и методы технического волшебства краткое содержание
Для радиолюбителей
Изучаем Arduino: инструметы и методы технического волшебства - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
DHCP, или протокол динамической конфигурации узла, подключает устройства к локальной сети за один шаг. Чаще всего при подключении к Wi-Fi или проводной сети у вас на устройстве не установлен вручную IP-адрес, по которому маршру
- 305 -
тизатор может подключаться к вам. Как же маршрутизатор отправляет пакеты на сетевое устройство? При подключении к сети маршрутизатор инициирует запрос DHCP, что позволяет маршрутизатору динамически назначать вам доступный IP-адрес. В результате настройка сети оказывается гораздо проще, потому что не нужно заботиться о конфигурации сети для подключения к ней. Однако программа для Arduino усложняется, потому что следует выяснить, какой IP-адрес был присвоен.
Аббревиатура DNS расшифровывается как Domain Name System ( система домеых имен). Каждый веб-сайт, который расположен на сервере в сети Интернет, имеет уникальный IP-адрес. При вводе в www.google.com DNS-сервер смотрит на список, который информирует его о IP-адресе, связанном с этим URL. Затем он передает IP-адрес обратно в браузер вашего компьютера, чтобы браузер мог общаться с сервером Google. DNS позволяет вводить понятные имена вместо запоминания IP-адреса всех ваших любимых веб-сайтов. Можно образно сравнить DNS для вебсайтов со списком контактов в телефоне для телефонных номеров.
В этой главе вы узнаете, как использовать Arduino с платой расширения Ethernet shield в качестве сервера и клиента. Все устройства, подключенные к Интернету, выступают в роли сервера или клиента (хотя на самом деле часто исполняют обе роли). Сервер выдает информацию по запросу от запрашивающего компьютера, поступающему по сети. Это может быть запрос веб-страницы, данных из информационной базы, электронной почты и многого другого. Клиент - это устройство, которое запрашивает данные и получает ответ. При подключении компьютера к Интернету веб-браузер вашего компьютера выступает в качестве клиента.
Для всех примеров, приведенных в этой главе, необходимо использовать плату Arduino в паре с фирменным Ethernet-адаптером. Есть несколько версий этого адаптера, наши примеры протестированы на самой последней версии с контроллером WIZnet Ethernet. На более старых адаптерах установлен другой чип, что не гарантирует работу описанных примеров. Для экспериментов вы можете также взять плату Arduino Ethernet, которая содержит встроенный интерфейс Ethernet.
СоветЯ рекомендую использовать внешний Ethernet-адаптер, т. к. он работает устойчивее, чем плата Arduino Ethernet со встроенным интерфейсом.
Прикрепите Ethernet-адаптер к вашей плате Arduino и подключите порт Ethernet адаптера к свободному порту Ethernet на вашем домашнем маршрутизаторе с помощью кабеля Ethernet. Подойдет обычный Ethernet-кабель типа "crossover". Соедините плату Arduino кабелем USB с вашим компьютером для программирования.
- 306 -
Если маршрутизатор находится далеко от компьютера, используемого для программирования, сначала запрограммируйте плату, а затем подключайте ее к маршрутизатору. Тем не менее, в некоторых примерах потребуется вывод информации, необходимой для отладки, в монитор последовательного порта. Чтобы не быть привязанным к компьютеру, можно подключить ЖК-дисплей для отображения IP-адреса, который в рассмотренных примерах выводится в последовательный терминал. Здесь пригодятся сведения из главы 10.
14.2. Управление платой Arduino из Интернета
Сначала используем плату Arduino в качестве веб-сервера. С помощью некоторых HTML-форм и интегрированной библиотеки Ethernet настроим Arduino для автоматического подключения к Сети и выведем веб-страницу, с помощью которой получим доступ для управления некоторыми контактами платы Arduino. Мы разместим кнопки на веб-интерфейсе для переключения цвета RGB-светодиода и управления частотой звука. Наша программа будет расширяемой, что позволит добавлять дополнительные устройства, чтобы более комфортно работать с Arduino.
Настроим оборудование для управления платой Arduino в качестве сервера для управления контактами платы из сети Интернет. Для этого примера возьмем RGB-светодиод и пьезозуммер или обычный динамик. Схема соединения элементов показана на рис. 14.2. Напомним, что контакты 4, 10, 11, 12 и 13 предназначены для связи платы Arduino с адаптером Ethernet. Мы подключаем RGB-светодиод к выводам 5, 6, 7, а динамик - к выводу 3 платы Arduino.
Разработать веб-страницу можно независимо от Arduino. На нашей веб-странице будут простые кнопки для переключения цвета RGB-светодиода и ползунок для регулировки частоты звука, воспроизводимого динамиком. Веб-страница будет отправлять команды из браузера на сервер по протоколу НТТР GET. При разработке дизайна страницы веб-сайт может не быть подключенным к серверу Arduino, на этом этапе не нужно, чтобы взаимодействие со страницей вызывало какие-нибудь действия на плате Arduino.
Откройте свой любимый текстовый редактор (я рекомендую Notepad++ в Windows, который осуществляет визуальное цветовое выделение кода) и создайте новый файл с расширением html. Название не имеет значения, например test.html. Это будет пустая страница, без тегов, которые обычно присутствуют на веб-страницах, например
и . Но это не повлияет на отображение страницы в браузере. Поместите в HTML-файл код из листинга 14.1.- 307 -

Рис. 14.2. Схема подключения к Arduino-серверу RGB-светодиода и динамика
Листинг 14.1. HTML-страница с формой - server_form.html
HTML-страница из листинга 14.1 содержит четыре элемента формы. Тег
задает начало формы, тег - конец формы. Каждый элемент формы с тегом- 308 -
определяет, какие данные будут переданы на сервер при отправке формы.
В нашем примере переменная называется L и на сервер передается номер необходимого вывода RGB-светодиода. Пустой элемент action указывает, что страница перезагружается при отправке формы. Значение скрытых полей (input с типом hidden) будут отправлены на сервер при нажатии кнопки submit. Для выбора частоты мы добавляем новый HTML-элемент (input с типом range). Это позволяет сделать ползунок диапазона. Вы можете перемещать ползунок с шагом 100 для выбора частоты, которая будет передаваться в переменной с именем s. Старые браузеры не поддерживают этот элемент ( слайдер) и он будет отображаться как поле ввода.
Чтобы увидеть, как будет выглядеть страница, запустите ваш браузер (я рекомендую Google Chrome ). В Chrome нужно нажать комбинацию клавиш + (в Windows) или + (в OS Х), чтобы вызвать диалоговое окно Открыть.
Откройте созданный HTML-файл (рис. 14.3).

Рис. 14.3. Вид нашей веб-страницы в браузере Chrome
Читать дальшеИнтервал:
Закладка: