Если вы хотите добавить подключение к Интернету для Arduino, у вас есть довольно много вариантов. Поскольку большинство моделей Arduino не поставляются в комплекте с Ethernet или Wi-Fi, для него был разработан рынок, и я решил попробовать одну из них и поделиться своими мыслями.
В этой статье я буду использовать разделительную доску Adafruit CC3000, найденную здесь . Для платформы я использую Arduino Mega 2560, которую я получил от Newark element14 .
Сборка CC3000
CC3000 поставляется с платой и штифтами так:
Этот комплект требует пайки, но не много. Один из советов — оторвать 9 контактов в соответствии с инструкциями, положить их в макет и поместить плату сверху:
Это будет держать его на месте во время пайки, когда это будет выглядеть так:
Только я надеюсь, что ваша пайка выглядит лучше.
Теперь положите его на макет и подключите! В инструкции проводниковая здесь и в этом случае он подключен вверх для Arduino Mega.
Обратите внимание, что у меня есть дополнительный источник питания. Примечание от Adafruit:
Убедитесь, что ваш Arduino питается от внешнего источника питания 1 А или выше при использовании с CC3000! Питание Arduino + CC3000 от USB-порта компьютера / ноутбука приведет к нестабильной работе и зависанию, поскольку USB-порт не может обеспечить достаточное питание!
Это хороший совет, и если у вас еще нет источника питания, выберите его. Он понадобится вам, когда вы начнете добавлять вещи в свой Arduino.
Программное обеспечение
Теперь мы будем работать над программной частью проекта, используя Arduino Sketch. Я делаю это в Linux, но инструкции будут одинаковыми для Windows и OSX.
Вы захотите убедиться и получите последнюю версию библиотеки Adafruit CC3000 здесь для следующих шагов.
Разархивируйте этот файл в папку, мы будем работать с некоторыми включенными демонстрациями. Не удаляйте Zip-файл.
Откройте эскиз и перейдите к папке, которую вы только что создали:
Запустите тест сборки
Мы хотим запустить тест сборки, чтобы убедиться, что устройство работает правильно. Откройте buildtest.ino. Вам нужно будет изменить следующее, чтобы подключиться к вашей сети WiFi:
#define WLAN_SSID "myNetwork"
#define WLAN_PASS "myPassword"
Обратите внимание, если вы хотите изменить настройку безопасности для вашего WAP с помощью переменной «WLAN_SECURITY».
Сохраните эскиз. Теперь вы захотите импортировать библиотеку Adafruit CC3000 в свой эскиз. Как правило, это самый быстрый способ сделать это:
Найдите, куда вы скачали zip-архив и импортируйте его.
Теперь попробуйте составить эскиз. Вы должны увидеть это:
Теперь он готов к отправке в Arduino. Далее я покажу вам, как общаться с Arduino, чтобы посмотреть, что происходит.
Мониторинг последовательного порта
Вы можете скомпилировать эскиз и отправить его в Arduino, и (надеюсь) что-то произойдет. Серийный монитор — это хороший способ визуально увидеть происходящее и получить обратную связь от устройства. В Sketch IDE перейдите в Инструменты -> Последовательный монитор.
Примечание. Если вы используете Linux, вам может потребоваться добавить учетную запись пользователя в группу для доступа к этому порту. Инструкции можно найти здесь, как это сделать.
Убедитесь, что установлена правильная скорость передачи для CC3000, а это 115200:
Если ваша информация Wi-Fi верна, вы должны увидеть:
И после того, как это соединится, это попытается пропинговать adafruit. В случае успеха это будет выглядеть так:
Я не уверен, почему, но по моему он говорит, что не смог получить IP, затем отображает его и пингует сайт. Я буду изучать это в ближайшее время. Если все тесты пройдены, вы готовы к работе.
Создайте веб-сервер
Для этого проекта вернитесь в папку примеров и перейдите в папку HTTPServer.
Откройте HTTPServer.ino в эскизе. Как и в предыдущем файле, вам нужно изменить настройки WiFi:
#define WLAN_SSID "myNetwork"
#define WLAN_PASS "myPassword"
Обратите внимание, если вы хотите изменить настройку безопасности для вашего WAP с помощью переменной «WLAN_SECURITY».
Проверьте и загрузите эскиз.
Снова откройте последовательный монитор, чтобы посмотреть результаты скетча В случае успеха вы должны увидеть что-то вроде этого:
Ваш сервер сейчас слушает и готов к работе!
Откройте веб-браузер и перейдите по IP-адресу:
И так просто, что у вас есть веб-сервер. Это довольно скромно, но хорошая отправная точка.
Вывод
Я совершил немало хакерских атак на Arduino, и отсутствие сетевого подключения не было такой уж большой проблемой. Однако я знаю, что для будущих проектов это будет необходимо, поэтому я решил приобрести этот комплект, попробовать и поделиться своими результатами с вами.
В целом, его было действительно легко собрать, только запаяв штырьки. Электрические схемы четко изложены на сайте Adafruit, и программное обеспечение в значительной степени написано для вас. При цене $ 34,95 это отличная сделка для любителей, желающих получить простой доступ к Wi-Fi. Я выбрал опцию прорыва, чтобы увидеть, насколько хорошо она работает, если я хочу создать продукт, который использует этот форм-фактор. Мне было бы интересно посмотреть, как складывается версия щита, но я подозреваю, что она будет идентична.
Если вы ищете быстрый и простой способ добавить WiFi к вашему Arduino, я рекомендую CC3000.
Еще раз спасибо Newark element14 за Arduino Mega!