Обзор Wio Tracker с GPS, Bluetooth 3.0 и GSM-подключением

Wio GPS – также известный как Wio Tracker – представляет собой совместимую с Arduino плату на базе микроконтроллера Microchip Atmel SAMD21, оснащенную модулями GPS, Bluetooth, GSM/GPRS, а также несколькими Grove-разъемами для подключения сенсоров и модулей в IoT-проектах. Компания SeeedStudio предоставила образец для оценки; было проведено тестирование, результаты которого представлены ниже на основе проверки нескольких Arduino-скетчей.

Распаковка Wio Tracker

В комплект входила только плата Wio GPS Tracker v1.1. На лицевой стороне расположены: микроконтроллер Atmel, RGB-светодиод, микрофон и разъем 3.5 мм для телефонных звонков, пользовательская и питающая кнопки, порт micro USB для питания и программирования, двухконтактный разъем для аккумулятора и 6 Grove-разъемов для цифровых, последовательных, I2C и аналоговых модулей.

Нажмите для увеличения

На обратной стороне платы установлен модуль Quectel MC20, отвечающий за Bluetooth, GPS и GSM, слот двойного назначения для micro SD и nano-SIM, а также антенны GPS, 2G и Bluetooth. Также видны контактные площадки +/- рядом с логотипом OSHW для подключения динамиков.

Нажмите для увеличения

Начало работы с Wio GPS Tracker в Arduino IDE

Для этой части обзора использовалось руководство Wio GPS Board Wiki ; как выяснилось, опыт оказался неоднозначным.

Сначала потребуется кабель micro USB — USB для подключения платы к компьютеру под Windows/Linux/Mac. Вывод ядра в Ubuntu 16.04:

После установки Arduino IDE для вашей ОС можно добавить платы Seeduino через Файл→Настройки , вставив ссылку  https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json в поле Дополнительные ссылки для менеджера плат и нажав OK. Затем в Инструменты→Платы→Менеджер плат следует найти «wio» и установить Seeeduino SAMD by Seeed Studio.

Дополнительно можно установить Adafruit Neopixel через Скетч→Подключить библиотеку→Управлять библиотеками или импортировать zip-архив . После этого в списке плат, вопреки указаниям в Wiki, «Wio Tracker» обнаружено не было, поэтому была выбрана Wio GPS Board и порт /dev/ttyACM0 (Wio GPS Board) .

Затем были проверены примеры скетчей в Примеры→Seeed_Wio_GPS_Board , охватывающие все ключевые функции платы. Протестированы скетчи для RGB_LED, Bluetooth, GNSS (GPS) и GSM (Send SMS), но работоспособным оказался только Bluetooth.

Нажмите для увеличенияПри повторном обращении к Wiki выяснилось, что требуется дополнительно импортировать библиотеку Wio Tracker , что и было сделано. Появился схожий набор примеров для MC20_GPS_Traker-master.

Причины дублирования функционально идентичных примеров неясны, поэтому тестирование продолжилось с образцами из папки MC20_GPS_Tracker-master.

Скетч Blink.ino должен мигать RGB-светодиодом синим цветом:

Программа загрузилась на плату со следующими предупреждениями:

RGB-светодиод не сработал. После удаления библиотеки Adafruit Neopixel результат сохранился. Проверка схемы подтвердила подключение светодиода к D10; добавление отладочных println-выводов показало корректное выполнение кода, но индикация отсутствовала. Обращение в компанию не дало оперативного результата из-за выходных.

Тестирование продолжилось скетчем BT_CLientHandle.ino для сопряжения платы со смартфоном. Код достаточно прост:

Устройство QUECTEL-BT успешно обнаружено и сопряжено с Android-смартфоном.

Вывод последовательного порта при сопряжении и отключении демонстрирует используемые AT-команды:

Попытка использовать плату как Bluetooth-колонку через AUX-разъем не удалась — динамик издавал звуки, напоминающие модемные. Для реализации функционала, вероятно, требуется дополнительный код и профиль A2DP (не HF_PROFILE). Тест Bluetooth признан успешным.

Тест GPS. Скетч GNSS_Show_Coordinate.ino должен выводить широту и долготу в последовательный порт:

Однако в выводе наблюдалось только повторяющееся сообщение:

+CREG: 0,0. Документация AT-команд (и схемы EAGLE) доступны в папке ресурсов на Github . Согласно документации, AT+CREG? запрашивает статус регистрации в сети; значения 0,0 означают:

  1. Отключение автоматического уведомления о статусе регистрации
  2. Не зарегистрирован, устройство не ищет сеть для регистрации

Первоначальное тестирование проводилось в помещении. Учитывая предыдущий опыт получения сигнала в здании с платой NavSpark mini , тест был повторен на улице, но результат не изменился. Возможная причина — отсутствие SIM-карты. После принудительного переключения Android-смартфона на 2G (подтверждено значком «E»), успешной отправки SMS и звонка SIM-карта была извлечена.

Поскольку карта имела формат micro-SIM, а плата требует nano-SIM, использовался переходник (доступны на eBay дешевле $1 ).

Нажмите для увеличенияПосле обрезки SIM-карты и вставки nano-SIM (совместно с micro SD, как показано на фото) GPS-тест был повторен. Вывод изменился, но координаты отсутствовали:

+QGNSSC:1 указывает на включенный модуль GNSS. +CREG:0,2 означает регистрацию в домашней сети, сменяющуюся +CREG:0,5 (регистрация в роуминге).

Более сложный скетч GNSS_Google_KML.ino должен выводить координаты на OLED-дисплей и сохранять сырые данные в gps.txt на SD-карте для генерации KML-файла Google. Скетч GoogleMapDemo.ino загружает координаты на сайт ziladuo.com. Учитывая неработоспособность базового примера GNSS, тестирование GPS/GNSS прекращено.

Последняя попытка — отправка SMS через скетч GSM (MC20_SMSSend.ino), рассылающий сообщение «Hello MC20!!» на указанный номер:

Отправка не удалась из-за ошибки функции waitForNetworkRegister:

Тестирование завершено. Извлечение nano-SIM потребовало использования пинцета для нажатия на фиксаторы слота.

Итоговый опыт оказался крайне негативным: функционировал только Bluetooth, тогда как GPS, 2G GSM и даже пример с RGB-светодиодом не работали. Дополнительные сложности возникали при загрузке кода с ошибками:

или (после длительного простоя последовательного порта):

Требовались многократные попытки загрузки. Возможная причина — использование Ubuntu 16.04 вместо Windows.

При условии работоспособности плата обладает значительным потенциалом: простое программирование GPS, Bluetooth, 2G (данные, SMS, звонки) и поддержка Grove-сенсоров для IoT-проектов. Компания предоставляет практичный пример

«Wild Adventure Tracker»

, отправляющий GPS-координаты по SMS при обнаружении удара. Исходный код доступен на Github с демонстрационным видео.

Анонсирована 4G-версия устройства для будущего тестирования. Текущую модель Wio GPS Tracker можно предзаказать за $24.95 (включая три антенны).

Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 votes
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments