Wi fi модуль

Если не подключается…

Вы можете проверить наличие связи между Arduino и ESP8266 используя Serial Monitor, который можно открыть во вкладке Tools в Arduino IDE.

Откройте Serial Monitor и установите скорость 115200. Нажмите кнопку сброса на плате Arduino.

Проверьте наличие правильно загруженной программы

Если после сброса Arduino в Serial Monitor нет никаких сообщений, это скорее всего означает, что Arduino не выполнят вашу программу. Возможно:

  • нужный скетч не был загружен;
  • ваша Arduino не включена;
  • Serial Monitor не подключился к Arduino;
  • с вашей Arduino что то не так.

Проверьте связь между Arduino и ESP8266

Если после сброса Arduino в Serial Monitor вы видите следующую последовательность команд, это означает, что инициализация ESP8266 проходит успешно и связь между Arduino и ESP8266 есть:

Если вы видите только повторяющиеся команды «AT», это означает что нет связи между Arduino и ESP8266.

Связь может отсутствовать по разным причинам. Ниже перечислены основные:

  • контакты RX и TX подключены не верно, перепутаны контакты, или подключены не к тем контактам, или не подключены совсем;
  • нет питания на ESP8266, при подаче питания на ESP8266 должен светиться красный светодиод;
  • не хватает мощности источника питания 3.3 В для ESP8266;
  • модуль ESP8266 неисправен.

Проверьте прошивку ESP8266

Если после сброса Arduino в Serial Monitor вы видите только начало последовательности команд, но нет завершающей команды AT+CIPSERVER=1,6377 это означает, что модуль ESP8266 имеет устаревшую прошивку. Требуется обновление прошивки.

Если инициализация проходит успешно и вы видите последнюю команду AT+CIPSERVER=1,6377, но при попытке подключения с мобильного приложения возникает ошибка, возможно, что модуль ESP8266 имеет устаревшую прошивку.

Проверьте объем памяти вашего ESP8266. Это можно сделать так же посмотрев маркировку чипа памяти, который находится на плате рядом с чипом ESP8266. Если размер памяти составляет 4 Mbit и меньше (установлен чип 25Q40), скорее всего этот модуль не будет работать как точка доступа для RemoteXY.

Проверьте питание ESP8266

Так же возможно, что вашей ESP8266 не хватает мощности источника питания. Некоторые платы Arduino имеют слабый стабилизатор напряжения 3.3 В, который не способен выдавать 200-300 мА в пиковых режимах. В этом случае в Serial Monitor вы так же увидите обрыв последовательности команд.

Проверьте особенности вашего смартфона

Некоторые модели смартфонов на Android имеют особенности подключения точек доступа WiFi, и возможно точка доступа не включается автоматически. Попробуйте подключиться к точке доступа предварительно в ручную, используя системные настройки. После этого попробуйте соединиться с устройством из приложения RemoteXY. Если в этом случае соединение устанавливается, значит ваш смартфон имеет такую особенность. Сообщите нам об этом.

Замена встроенного в ноутбуке Wi-Fi и Bluetooth модуля

Я буду показывать на примере ноутбука от ASUS. Но инструкция подойдет и для других производителей: Lenovo, Acer, Samsung, Hewlett-Packard, DELL и т. д. Разумеется, что процесс разборки, расположение самого беспроводного модуля внутри ноутбука, внешний вид и другие детали будут отличатся.

Нам понадобится только маленькая крестовая отвертка, которая подойдет для разборки конкретно вашего ноутбука.

Важно! Выключите ноутбук, отключите его от питания и извлеките батарею. Если она в вашем случае съемная

На большом количестве новых моделей батареи не съемные.

Переверните ноутбук и посмотрите, есть ли там отдельная крышка. Практически на каждом ноутбуке снизу есть небольшая крышка, открутив которую, можно получить доступ к жесткому диску, оперативной памяти, и если нам повезет, то к Wi-Fi модулю.

Но чаще всего, WLAN модуль спрятан мод основной крышкой. Как и в моем случае. Значит нужно полностью разбирать ноутбук.

Важно! Скорее всего, болтики будут разной длины. Желательно их не перепутать, чтобы не было проблем при сборке ноутбука.

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

Так же обратите внимание, что к крышке могут идти провода. В моем случае нужно было отключить небольшой коннектор, который шел к переключателю, который блокирует батарею

Видим Wi-Fi модуль, который подключен в порт Mini PCI Express на материнской плате ноутбука.

К самому модулю подключено два проводка. Обычно там один белый, а второй черный. Это Wi-Fi антенны. Нам нужно их отсоединить.

Перед отключением антенн желательно сделать фото, записать, или запомнить как они были подключены.

Снимаются они очень просто. Достаточно потянуть их вверх. Можно отверткой аккуратно их снять.

Дальше откручиваем болтик которым зафиксирован Wi-Fi модуль и извлекаем его.

Под самим модулем видим надпись «WLAN» на материнской плате. Чтобы при установке нового не промахнуться

Вставляем в порт Mini PCIe наш новый беспроводной модуль. Прикручиваем его.

Дальше нужно подключить антенны. Как видите, разъемы под антенны обозначены номерами 1 и 2, треугольниками (один зарисованный, другой нет) и надписями MAIN и AUX. Необходимо подключить антенны так, как они были подключены изначально.

Там такая каша с этими проводами от антенн, обозначениями, вариантами подключения и т. д., что вы себе даже не представляете. Ниже в этой статье я расскажу об это подробнее. По крайней мере постараюсь рассказать

Я подключил так: черный провод – AUX, белый провод – MAIN. Проблем с сигналом нет. Проверьте, чтобы коннекторы на проводах хорошо зафиксировались. А том могут быть проблемы с сигналом. Не редко ноутбук очень плохо ловит Wi-Fi, или вообще не видит беспроводные сети. Особенно часто это бывает после чистки ноутбука от пыли. Когда плохо, ли неправильно подключают антенны. Или когда перетирается кабель, который идет к антенне. Антенны, как правило, расположены под крышкой экрана.

Все, замена Wi-Fi модуля завершена. Собираем ноутбук в обратном порядке. Проверяйте, все ли подключено и прикручено. Будьте внимательны.

Возможно, после замены модуля понадобится установить драйвера. Об этом я расскажу в конце этой статьи. А сейчас еще раз об антеннах.

Библиотека WiFi

В Arduino IDE версии 1.0.5 изменена прошивка WiFi-платы расширения. Рекомендуется установить акутальное обновление по этим инструкциям.

Данная библиотека позволяет Ардуино выходить в Интернет через плату расширения WiFi. Она позволяет Ардуино выступать как в роли сервера, принимающего соединения, так и в роли клиента, подключающегося к удаленным серверам. Библиотека поддерживает методы шифрования WEP и WPA2 Personal (WPA2 Enterprise не поддерживается)

Также следует принять во внимание, что плата расширения может подключаться только к сетям с открытым SSID

Взаимодействие Ардуино и WiFi-платы расширения осуществляется по шине SPI, объединяющей в себе цифровые выводы 11, 12 и 13 на Arduino Uno, и 50, 51, 52 — на Arduino Mega. В обеих платах в качестве линии SS используется вывод 10. Аппаратный вывод SS (53) в Arduino Mega не используется, однако для нормальной работы интерфейса SPI он должен быть сконфигурирован как выход. Цифровой вывод 7 используется для инициализации WiFi-платы расширения при подключении к Ардуино, поэтому он не может использоваться для других целей.

Функции библиотеки WiFi очень похожи на функции библиотеки Ethernet, и часто имеют одинаковый синтаксис.

Для получения дополнительной информации о плате расширения WiFi см. ее техническое описание, а также страницу Начало работы.

Класс WiFi

Класс WiFi инициализирует библиотеку и основные сетевые настройки.

  • begin()
  • disconnect()
  • config()
  • setDNS()
  • SSID()
  • BSSID()
  • RSSI()
  • encryptionType()
  • scanNetworks()
  • getSocket()
  • macAddress()

Класс IPAddress предоставляет информацию о текущих настройках сети.

  • localIP()
  • subnetMask()
  • gatewayIP()

Класс Server

Класс Server предназначен для создания серверов, которые могут отправлять или получать данные от удаленных клиентов (программ, запущенных на других компьютерах или устройствах).

  • Server
  • WiFiServer()
  • begin()
  • available()
  • write()
  • print()
  • println()

Класс Client

Данный класс предназначен для создания клиентов, которые могут соединяться с серверами для отправки или получения данных.

  • Client
  • WiFiClient()
  • connected()
  • connect()
  • write()
  • print()
  • println()
  • available()
  • read()
  • flush()
  • stop()

Класс UDP

Класс UDP позволяет отправлять и получать UDP-сообщения.

  • WiFiUDP
  • begin()
  • available()
  • beginPacket()
  • endPacket()
  • write()
  • parsePacket()
  • peek()
  • read()
  • flush()
  • stop()
  • remoteIP()
  • remotePort()

Примеры

  • ConnectNoEncryption : Пример подключения к открытой сети.
  • ConnectWithWEP : Пример подключения к сети с алгоритмом шифрования WEP.
  • ConnectWithWPA : Пример подключения к сети с алгоритмом шифрования WPA2 Personal.
  • ScanNetworks : Отображение списка WiFi-сетей, доступных в радиусе действия.
  • WiFiChatServer : Создание простого чат-сервера.
  • WiFiCosmClient : Соединение с pachube.com — бесплатным сайтом для ведения журнала данных.
  • WiFiCosmClientString: Отправка текстовых строк на pachube.com.
  • : Twitter-клиент с использованием класса String.
  • WiFiWebClient : Соединение с удаленным веб-сервером.
  • WiFiWebClientRepeating : Циклическая отправка HTTP запросов веб-серверу.
  • WiFiWebServer : Обслуживание веб-страницы через плату расширения WiFi.
  • WiFiSendReceiveUDPString : Отправка и получение UDP-сообщения.
  • UdpNTPClient : Запрос на NTP-сервер (Network Time Protocol) через UDP.

Если не работает WI-FI модуль телефона

Определить причину отсутствия постоянного подключения можно, охарактеризовав суть проблемы. О неисправности модуля свидетельствует ряд признаков:

  • смартфон ловит слабый сигнал сети WI-FI, даже если вы находитесь вблизи роутера;
  • смартфон не обнаруживает нужную сеть;
  • смартфон обнаруживает, но не подключается к сети (при условии, что был введен правильный пароль).

Чтобы исключить вероятность наличия программных сбоев, вы можете сбросить настройки смартфона или заново прошить устройство.

Справиться с проблемами WI-FI- подключения и другими сбоями в работе смартфона также помогут полезные советы для пользователей ОС Андроид.

Если после устранения программных ошибок, сброса общих настроек и перепрошивки смартфона проблема не исчезла, необходимо искать причину, связанную с техническим фактором. Это значит, что проблемы с подключением мобильного телефона к беспроводной сети могут быть вызваны неисправностью WI-FI модуля, повреждением его составных частей (шлейфа или антенны).

Определить, действительно ли неисправен WI-FI модуль телефона, сможет лишь комплексная диагностика. Для получения точного результата и составления полной картины о функциональности устройства вам необходимо обратиться к специалисту в сервисный центр. Мастер определит наиболее вероятные причины проблемы и предложит оптимальные способы решения.

В большинстве случаев проблема решается путем ремонта WI-FI модуля смартфона или же его составных частей.

Бывают также ситуации, при которых ремонт устройства невозможен. Так, например, после значительных повреждений некоторые элементы блока могут не подлежать ремонту. В таком случае мастер осуществляет его замену. Мастер точно знает, как выглядит модуль WI-FI в телефоне и сможет оперативно подобрать необходимую деталь.

Однако чтобы реже сталкиваться с какими-либо сбоями в работе смартфона, нужно внимательно подходить к его выбору еще на этапе покупки.

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

В каталоге фирменного магазина Fly вы найдете множество стильных смартфонов, купить которые можно по весьма выгодной цене.

Если Вам интересно, то Вы можете ознакомиться со статьей о том, как раздать интернет с телефона на компьютер через USB?.

Схему собрали, теперь рассмотрим скетч.

Скетч.

Фактически, скетч по большей части будет состоять из написанных нами функций из начала и середины статьи. Рассмотрим основные отличия:

в строках 5-13 описываем используемые пины и команды

Обратите внимание, в строке 19 мы создаем два объекта — для приемника (ETT) и передатчика (ETR). Далее, в строке 20 объявляем переменную, которая отслеживает состояние кнопки — нажата или нет

Переменная строке 21 отвечает за состояние реле и светодиода (true при включенном и false при выключенном состоянии).

Переходим к обработке приема пакетов.

Тут должно быть все понятно, код почти аналогичен тому, что был в модуле беспроводного реле

Обращу внимание, что строки 97-98 и 101-102 надо заменить на вызов функции для вывода соответствующего значения

Теперь посмотрим, как будет обрабатываться нажатие кнопки.

Идея обработки кнопки взята с сайта Америки из урока с кнопочным переключателем. Код немного изменен и адаптирован для использования в функции. При вызове функция возвращает true, если в прошедшей с предыдущего вызова функции период состояние кнопки изменилось.

Наконец, нам осталось рассмотреть функции setup и loop.

В строках 150-152 задаем направление работы пинов Arduino, к которым подключены светодиод, передатчик и кнопка. Пин приемника не определяем (вы же помните, что по умолчанию пины работают на вход?).

Остановлюсь на режиме INPUT_PULLUP. Этот режим выдает false(0), когда кнопка нажата и true(1), если отпущена.

В функции loop в строке 160 мы принимаем и разбираем данные с модуля сенсора. В строке 161 мы проверяем был ли изменен статус кнопки. Если да — то (в строках 163-166) отправляем значение переменной ledEnabled на модуль реле. Помните, там мы писали. что в команде 3 при значении 1 мы включаем реле, при 0 — выключаем? Дело в том, что тип переменной Boolean (который может принимать только 2 значения: true и false) также может быть представлен в числовом эквиваленте, где 0=false, а 1=true.

Wifi.

Казалось бы, оптимальный вариант. Но давайте посмотрим все ли так радужно. Из недорогих вариантов для реализации Wi-fi у нас есть модули ESP8266. Стоят ни недорого — около 120-200 рублей. Продаются в нескольких вариантах исполнения, который отличаются количеством пинов ввода-вывода, наличие антенны, форм-фактором исполнения и прочим, но принципиальной разницы в работе с разными модификациями нет. И, если вы хотите соединить 2-3 удаленных модуля, проблем не возникнет. Но, если вам надо использовать десять или больше удаленных контроллеров (а для создания, например «Умного дома» далеко это не предел), то стоимость уже возрастает довольно существенно. Тем более, как уже сказано выше, объемы передаваемых данных будут довольно малы и, в нашем случае, пропускная способность Wi-fi является избыточной. Тем более, что с точки зрения программной реализации данное решение является наиболее затратным по размеру кода, а соответственно, времени. Также из минусов отмечу немаловажный фактор, что для подключения модуля нам потребуется источник питания строго от 3.3 вольт до 3.5 вольт (как мы помним из предыдущих статей, для Arduino подойдет любое напряжение в диапазоне от 5 до 12 вольт). В случае с ESP8266, конечно можно обойтись вообще без Arduino для считывания удаленных датчиков прямо с ESP8266, но вот команды на исполнение с этим Wifi-модулем выполнить не получится (точнее получится, но не совсем так, как нам надо). В связи с вышеописанным — откажемся от реализации по Wi-fi.

Upgrading the WiFi shield firmware

The WiFi shield provides wireless connectivity per the IEEE 802.11 b/g standard through the HDG204 (or HDG104) module. The TCP/IP stack and the APIs for WiFi library are managed by the AT32UC3A1512 (or AT32UC3A1256) called AT32UC3 for short microcontroller on the shield. Your Arduino connects to the shield using SPI through the WiFi library.

Both the AT32UC3 and the HDG204/HDG104 modules have firmware upgradable through the mini USB connector.

This tutorial shows you how to upgrade :

  • the HDG204/HDG104 WiFi module firmware, for when the manufacturer provides a new firmware binary for their device.

When upgrading the firmware, the WiFi shield should not be connected to the Arduino board.

Upgrading the firmware on the devices is a two step process:

  • The HDG204/HDG104 firmware is named «wifi_dnld.elf». The H&D module doesn’t have static memory so you’ll upload its firmware to AT32UC3 controller, then the AT32UC3 will transfer the firmware into the HDG204 module’s dedicated flash memory.
  • Once the firmware for the HDG204/HDG104 is uploaded, you’re ready to the upload the WiFi shield firmware for the AT32UC3. The «wifiHD.elf» is the file that contains the the application for the controller.

Download a DFU Programmer

You’ll need additional software to update the code on the 32UC3.

To update macPorts:

To update dfu-programmer and other ports to the most recent version:

Make sure you’re using dfu-programer version 0.5.4 or later

NB: If you’ve never used sudo before, it will ask for your password. Use the password you login to your Mac with. sudo allows you to run commands as the administrator of the computer

Linux: from a command line type

or

depending on your distribution.

Download updated firmware for the 32UC3A1256/AT32UC3A1256

The firmware is also located with the Arduino software in the /hardware/avr/arduino/firmwares/wifishield folder. On OSX, right-click or command-click on the Arduino application and select «show package contents» to find this folder.

Windows procedure

Note

Flip needs needs a 32-bit JRE. A 64-bit JRE do not work.

Connect the J3 jumper to put the shield in the programming mode, then plug it to the computer through the mini USB socket. On the command prompt type:

batchisp.exe -device AT32UC3A1512 -hardware usb -operation erase f memory flash blankcheck loadbuffer Arduinohardwareavrarduinofirmwareswifishieldbinarywifi_dnld.elf program verify start reset

or

batchisp.exe -device AT32UC3A1256 -hardware usb -operation erase f memory flash blankcheck loadbuffer Arduinohardwareavrarduinofirmwareswifishieldbinarywifi_dnld.elf program verify start reset

Depending on the chip you have.

To download the HDG204/HDG104 WiFi module firmware inside the dataflash.

batchisp.exe -device AT32UC3A1512 -hardware usb -operation erase f memory flash blankcheck loadbuffer ArduinohardwareavrarduinofirmwareswifishieldbinarywifiHD.elf program verify start reset

or

batchisp.exe -device AT32UC3A1256 -hardware usb -operation erase f memory flash blankcheck loadbuffer ArduinohardwareavrarduinofirmwareswifishieldbinarywifiHD.elf program verify start reset

Depending on the chip you have.

To download the WiFi shield firmware on the AT32UC3A1512/AT32UC3A1256.

Once the upgrade is done you can remove the J3 jumper and restart the shield. Now it’s ready to be used. Look at the Optional section at the bottom of this page for details on checking if the firmware upgrade was a success.

Linux and Mac procedure

On Linux and Mac we wrote a script that automates the process. The script is a command line utility, so in order to use it you need to open a terminal on your system.

You can find the script inside your IDE at the following path:

Connect a jumper on the J3 connector, that put the shield in the programming mode. Then connect the USB cable to the shield USB mini socket.

Open a Terminal window and move to the path were you saved the script and type as following to get the help:

  • Mac:

  • Linux:

On Linux you need to run the script as root in order to access correctly to the USB DFU peripherals.

With the parameter you’ll pass to the script the current Arduino installation path, for example:

With the parameter you’ll make the choice of which firmware install:

  • to upgrade only the shield firmware
  • to upgrade both the firmwares

Optional: to test if the WiFi shield has been updated, you can connect an USB to Serial adapter to the FTDI socket and access to the serial debug terminal if the startup message contains the updated date. Look at the apposite page to learn more about the serial debug option.

Беспроводная связь с модулями XBee

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

Что бы прошить наши модули, необходимо подключить их к компьютеру, используя USB адаптер или специальный шилд для Arduino Uno. Так же для удобства необходимо скачать программу PuTTY и посмотреть к какому COM порту подключен ваш модуль. Подробнее этот процесс показан в видео выше, поэтому расписывать как это делать я не буду. В виде это все равно нагляднее :).

После прошивки всех модулей XBee можно приступать к программированию ардуино. Для примера мы сделаем так, что одна ардуина будет считывать показания с потенциометра и передавать их на другую. А вторая ардуинка будет принимать и использовать значения для поворота сервопривода. Вот скетч для первой Arduino к которой подключен потенциометр:

// Аналоговый пин от потенциометра
int potPin = 0;

void setup() {
// Открываем соединение
Serial.begin(9600);
}

void loop() {
// Получаем и обрабатываем данные
int val map(analogRead(potPin), 0, 1023, 0, 9);

// Отправляем данные
Serial.println(val);

// Небольшая задержка для стабильности
delay(50);
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

// Аналоговый пин от потенциометра

intpotPin=;

voidsetup(){

// Открываем соединение

Serial.begin(9600);

}
 

voidloop(){

// Получаем и обрабатываем данные

intval map(analogRead(potPin),,1023,,9);

// Отправляем данные

Serial.println(val);

// Небольшая задержка для стабильности

delay(50);

}

Как видите скетч очень прост. Все что он делает это: получает значение с потенциометра, переводит в значение от 0 до 9 для простоты и отправляет по serial соединению. Следующий скетч тоже очень прост:

// Подключаем библиотеку
#include

// Аналоговый пин сервопривода
int servoPin = 9;

// Создаем объект
Servo jeremysServo;

void setup() {
// Открываем соединение
Serial.begin(9600);

// Назначаем пин сервопривода
jeremysServo.attach(servoPin);
}

void loop() {
// ждем данные
while(Serial.avalable() == 0);

// получаем байт
int data = Serial.read() — ‘0’;

// Переводим команду в угол поворота
int pos = map(data, 0, 9, 0, 180);

// на всякий случай
pos = constrain(pos, 0, 180);

// Поворачиваем серву
jeremysServo.write(pos);

// очищаем буфер
Serial.flush();
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

// Подключаем библиотеку
#include
 
// Аналоговый пин сервопривода

intservoPin=9;

 
// Создаем объект

Servo jeremysServo;

voidsetup(){

// Открываем соединение

Serial.begin(9600);

// Назначаем пин сервопривода

jeremysServo.attach(servoPin);

}
 

voidloop(){

// ждем данные

while(Serial.avalable()==);

// получаем байт

intdata=Serial.read()-‘0’;

// Переводим команду в угол поворота

intpos=map(data,,9,,180);

// на всякий случай

pos=constrain(pos,,180);

// Поворачиваем серву

jeremysServo.write(pos);

// очищаем буфер

Serial.flush();

}

На этом все! Вот так мы очень просто организовали общение между двумя платами Arduino по воздуху. Позже в другой статье мы рассмотрим передачу данных по радио каналам, по блютус и вайфай.Но это будет уже не в рамках обучающего курса.

Шаг 7. Подключитесь с мобильного приложения.

Установите мобильное приложение на ваш смартфон/планшет.

Примечание: В приложении для iOS перед подключением необходимо вручную подключить смартфон к точке доступа, используя системные настройки операционной системы. Приложение для Android умеет самостоятельно переключить систему на точку доступа устройства и вернуть предыдущую точку доступа после отключения.

В приложении нажмите кнопку нового подключения «+» в верхней панели. В открывшемся окне выберите подключение «WiFi точка доступа».

В приложении для iOS предварительно зайдите в системные настройки и подключитесь к точке доступа «RemoteXY» с паролем «12345678». Подключенная точка доступа должна отображаться в открывшемся окне. Нажмите кнопку «Connect».

В приложении для Android включите WiFi и нажмите кнопку обновления списка доступных точек доступа. Выберите точку доступа RemoteXY. В открывшемся окне введите пароль точки доступа «12345678», нажмите кнопку «Подключиться».

Шаг 6. Загрузите скетч в Arduino.

Скетч загружается в Arduino обычным способом. Однако из за того что модуль ESP8266 подключен к контактам 0 и 1, программирование становится невозможным. Компилятор будет показывать ошибку.

Перед программированием отсоедините провода идущие к ESP8266 от контактов 0 и 1. Произведите программирование. Затем верните контакты на место. Нажмите кнопку сброса Arduino.

Примечание: Первый признак того, что программирование прошло успешно, это мерцание синего светодиода на модуле ESP8266 в течении полсекунды сразу после сброса. Мерцание синего светодиода означает обмен данными между Arduino и ESP8266. В эти полсекунды Arduino производит настройку ESP8266 для работы в качестве точки доступа.

Радиоканал на частоте 433 MHz.

Довольно распространённая частота для использования домашней автоматики. Отличается низкой стоимостью модулей (около 30 рублей за штуку), простой использования и подключения (всего 3 провода, включая питание и землю). Дальность работы передатчиков в условиях городской квартиры — 50-60 метров, в условиях загородного дома — до 120 метров. Скорость передачи невысокая, но более чем достаточная для нашей задачи. Также, сигнал на этой частоте довольно хорошо подходит через всевозможные препятствия. Из минусов — однонаправленность: для одновременного приема и передачи нам понадобится подключить приемник и передатчик, но при способе их подключения это не такая уже и проблема. Второй минус — почти всегда модулю недостаточно встроенной антенны, так что придется припаять её вручную. Замечу, что процедура весьма простая, и в качестве антенны можно использовать просто кусок провода, длинной 17 см). Третьей недостаток — передаваемые данные будут приниматься всеми приемниками в радиусе действия и вам необходимо программно будет отсекать данные, предназначенные для конкретного модуля.

WiFi library

The firmware for the WiFi shield has changed in Arduino IDE 1.0.5. You are recommended to install this update per these instructions

With the Arduino WiFi Shield, this library allows an Arduino board to connect to the internet. It can serve as either a server accepting incoming connections or a client making outgoing ones. The library supports WEP and WPA2 Personal encryption, but not WPA2 Enterprise. Also note, if the SSID is not broadcast, the shield cannot connect.

Arduino communicates with the WiFi shield using the SPI bus. This is on digital pins 11, 12, and 13 on the Uno and pins 50, 51, and 52 on the Mega. On both boards, pin 10 is used as SS. On the Mega, the hardware SS pin, 53, is not used but it must be kept as an output or the SPI interface won’t work. Digital pin 7 is used as a handshake pin between the Wifi shield and the Arduino, and should not be used.

The WiFi library is very similar to the Ethernet library, and many of the function calls are the same.

For additional information on the WiFi shield, see the Getting Started page and the WiFi shield hardware page.

  • ConnectNoEncryption : Demonstrates how to connect to an open network
  • ConnectWithWEP : Demonstrates how to connect to a network that is encrypted with WEP
  • ConnectWithWPA : Demonstrates how to connect to a network that is encrypted with WPA2 Personal
  • ScanNetworks : Displays all WiFi networks in range
  • WiFiChatServer : Set up a simple chat server
  • WiFiWebClient : Connect to a remote webserver
  • WiFiWebClientRepeating : Make repeated HTTP calls to a webserver
  • WiFiWebServer : Serve a webpage from the WiFi shield
  • WiFiSendReceiveUDPString : Send and receive a UDP string
  • UdpNTPClient : Query a Network Time Protocol (NTP) server using UDP

WiFi class

The WiFi class initializes the ethernet library and network settings.

  • begin()
  • disconnect()
  • config()
  • setDNS()
  • SSID()
  • BSSID()
  • RSSI()
  • encryptionType()
  • scanNetworks()
  • status()
  • getSocket()
  • macAddress()

The IPAddress class provides information about the network configuration.

  • localIP()
  • subnetMask()
  • gatewayIP()

Server class

The Server class creates servers which can send data to and receive data from connected clients (programs running on other computers or devices).

  • Server
  • WiFiServer()
  • begin()
  • available()
  • write()
  • print()
  • println()

Client class

The client class creates clients that can connect to servers and send and receive data.

  • Client
  • WiFiClient()
  • connected()
  • connect()
  • write()
  • print()
  • println()
  • available()
  • read()
  • flush()
  • stop()

UDP class

The UDP class enables UDP message to be sent and received.

  • WiFiUDP
  • begin()
  • available()
  • beginPacket()
  • endPacket()
  • write()
  • parsePacket()
  • peek()
  • read()
  • flush()
  • stop()
  • remoteIP()
  • remotePort()
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector