Джереми Блум - Изучаем Arduino: инструметы и методы технического волшебства
- Название:Изучаем Arduino: инструметы и методы технического волшебства
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2015
- Город:Санкт-Петербург
- ISBN:978-5-9775-3585-4
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Джереми Блум - Изучаем Arduino: инструметы и методы технического волшебства краткое содержание
Для радиолюбителей
Изучаем Arduino: инструметы и методы технического волшебства - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
// фиксируем факт прохода через дверь.
if (abs(raw-raw_prev) > 75)
active
true;
else
active=false;
raw_prev=raw;
// Открыть лог-файл и записать в него.
if (active || update_tirne == 20)
File dataFile=SD.open("log.csv", FILE_WRITE);
if (dataFile)
{
dataFile.print(date);
- 300 -
dataFile.print(F(","));
dataFile.print(time);
dataFile.print(F(","));
dataFile.print(raw);
dataFile.print(F(","));
dataFile.println(active);
dataFile.close();
// Вывод в последовательный порт для отладки
Serial.print(date);
Serial.print(F(","));
Serial.print(time);
Serial.print(F(","));
Serial.print(raw);
Serial.print(F(","));
Serial.println(active);
}
else
{
Serial.println(F("Couldn't open log file"));
}
update_time = 0;
}
delay(50);
update_time++;
}
После загрузки программы на плату Arduino установите регистратор возле двери и дайте поработать некоторое время. Когда наберется достаточное количество данных, вставьте SD-карту в компьютер и откройте лог-файл CSV в программе просмотра электронных таблиц. Предполагая, что на карте записаны данные для одного дня, можно построить график активности движения от времени. Пока никто не проходит через дверь, значение остается равным нулю. Когда кто-нибудь входит или выходит из комнаты, значение подскакивает до единицы, и можно точно узнать, когда это случилось. Процедура построения графика зависит от выбранного графического приложения. Я создал онлайн-таблицу, которая будет рисовать график. Чтобы воспользоваться этим сервисом, вам необходимо иметь учетную запись Google.
Посетите веб-страницу http://www.exploringarduino.com/content/ch13 и перейдите по ссылке на таблицу для построения графика. Вам будет предложено создать новую таблицу в своем аккаунте Google Drive. В итоге вы получите график данных, приведенный на рис. 13.24.
- 301 -

Рис. 13.24. Данные регистратора входа, представленные в графическом виде
Резюме
• Что данные удобно хранить в CSV-файлах, использующих строки и запятые в качестве разделителей.
• Как отформатировать SD-карту памяти в операционных системах Windows, Mac и Linux.
• Что есть множество плат расширения SD-карт для Arduino, каждая со своими особенностями.
• Как использовать Arduino библиотеку SD для записи и чтения из файла на SD-карте.
• Как с помощью RTC вставить временные метки в данные регистратора.
• Как преодолеть ограничения оперативной памяти за счет хранения строк во флэш-памяти.
• Как обнаружить движение по изменению аналогового значения, полученного с ИК-датчика расстояния.
• Как построить на компьютере график данных от регистратора, используя программу просмотра электронных таблиц.
Глава 14. Подключение Arduino к Интернету
Для повторения примеров главы вам понадобятся следующие детали:
• плата Arduino (рекомендуется Uno);
• USB-кабель для программирования платы Arduino;
• плата расширения Ethemet shield;
• фоторезистор;
• датчик температуры ТМР36;
• RGB-светодиод;
• 1 резистор номиналом 10 кОм;
• 1 резистор номиналом 150 Ом;
• 3 резистора номиналом 220 Ом;
• динамик или пьезозуммер;
• кабель Ethemet;
• доступ к проводному маршрутизатору;
• набор перемычек;
• макетная плата.
На странице http://www.exploringarduino.com/content/ch14 можно загрузить программный код, видеоуроки и другие материалы для данной главы. Кроме того, листинги примеров можно скачать со страницы www.wiley.com/go/exploringarduino в разделе Downloads.
Вот она, последняя глава. Запустим плату Arduino в виртуальное пространство, подключив ее к Интернету. Доступ к Интернету - очень сложная тема, можно написать целые тома книг о лучшем способе подключения Arduino к Интернету.
- 303 -
В этой главе мы рассмотрим использование платы расширения Arduino Ethemet shield для создания веб-страницы и отправки данных в Сеть. Вы узнаете о топологии Сети, о создании интернет-сайта, об использовании сторонних сервисов регистрации имен для подключения Arduino к Всемирной паутине.
14.1. Всемирная паутина, Arduino и Вы
Объяснить в одной главе, как работает Всемирная паутина, - слишком амбициозная затея, поэтому проиллюстрируем связь нашей платы Arduino с Интернетом с помощью упрощенной схемы, изображенной на рис. 14.1.

Рис. 14.1. Упрощенная схема взаимодействия Интернета и локальной сети
Если вы работаете только в локальной сети, то можете связаться с платой Arduino через веб-браузер компьютера, находящегося в той же локальной сети. Через маршрутизатор можно получить доступ к вашей плате Arduino из любой точки мира (или, по крайней мере, отовсюду, где есть доступ к Интернету).
Прежде чем подключить Arduino к сети, рассмотрим термины, которые встретятся нам на протяжении этой главы.
IP-адрес представляет собой уникальный адрес, который идентифицирует каждое устройство, подключенное к сети. При работе в локальной сети есть на самом деле
- 304 -
два вида IP-адресов: IP-адреса внутренней сети и глобальный IP-адрес. Если в вашем доме или офисе установлен маршрутизатор ( см. рис. 14.1 ), то каждое устройство в пределах локальной сети обладает локальным IP-адресом, который виден всем устройствам вашей сети. Маршрутизатор/модем имеет один глобальный IP-адрес, который виден всему Интернету. Если вы хотите установить связь через Интернет между компьютером в другом месте и устройством, подключенным к маршрутизатору, необходимо преобразование сетевых адресов (NAT).
MAC-адреса, в отличие от IP-адресов, уникальны в пределах всей Сети (на практике они часто таковыми не являются). MAC-адреса назначаются каждому сетевому физическому устройству и не меняются. Например, когда вы покупаете компьютер, уникальные MAC-адреса присвоены и внутреннему модулю Wi-Fi, и адаптеру Ethernet. Это позволяет по MAC-адресу идентифицировать физические устройства в Сети.
HTML, или язык гипертекстовой разметки, является языком разметки документов в Интернете. Для отображения веб-страницы с вашего Arduino напишем простой HTML-документ, который создает кнопки и ползунки для отправки данных.
НТТР, или протокол передачи гипертекста, определяет протокол для связи через World Wide Web (Всемирную паутину) и используется в браузерах. НТТР задает информацию заголовка, которая передается в виде части сообщения. Этот заголовок определяет, какая веб-страница будет отображаться и подтверждает успешное получение данных.
GET и POST определяют два способа передачи информации на удаленный вебсервер. Если вам встретится URL, который выглядит как www.jeremyblum.com/?s = arduino, то это запрос GET. GET определяет ряд переменных, следующих за вопросительным знаком в URL. В данном случае передается переменная s со значением arduino. Когда страница получает этот URL, он идентифицирует переменную s, выполняет поиск и возвращает страницу результатов. POST очень похож, но информация не видна непосредственно в URL. Вместо этого, данные передаются в фоновом режиме. POST обычно используется, чтобы скрыть конфиденциальную информацию.
Читать дальшеИнтервал:
Закладка: