Электронный компонент:Seeeduino Stalker V3.1

Материал из Онлайн справочника
Перейти к: навигация, поиск

Перевод: Максим Кузьмин (Cubewriter)
Перевел 1852 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Ambox content.png Черновик


Содержание

Seeeduino Stalker V3.1[1]

Плата Seeeduino Stalker служит носителем для модулей типа Bee, что упрощает создание проектов, предусматривающих наружное использование. Первая версия этой платы была выпущена в 2009 году, и с тех пор вышло уже 6 разных версий. Последняя вышла летом 2016 года и называется Seeeduino Stalker V3.1.

Seeeduino Stalker V3.1 cover 1.JPG

Список версий

  • Seeeduino Stalker V1.0 – 23 декабря 2009 года
  • Seeeduino Stalker V2.0 – 10 декабря 2010 года
  • Seeeduino Stalker V2.1 – 3 октября 2011 года
  • Seeeduino Stalker V2.2 – 27 декабря 2011 года
  • Seeeduino Stalker V2.3 – 10 января 2013 года
  • Seeeduino Stalker V3.0 – 6 июня 2014 года
  • Seeeduino Stalker V3.1 – 10 июля 2016 года

Что нового в V3.1

  • Сниженное энергопотребление. В спящем режиме вся плата тянет силу тока, равную всего 100 микроампер. Таким образом, когда микроконтроллер платы находится в режиме сна, все питающие порты (включая порт для модулей Bee, 3.3-вольтовый порт и VCC) можно смело отключить.
  • Рядом с областью для подключения модуля Bee добавлен переключатель, позволяющий переключаться между аппаратным и программным последовательными портами (в зависимости от того, к чему вы хотите подключиться).
  • В RTC-цепь были добавлены два переключателя, соответствующие контактам INTA и INTB на микроконтроллере. С их помощью пользователь может быстро задать, какой именно INT-контакт будет подключен к порту RTC INT при активации микроконтроллера.

Функции

  • Распиновка, совместимая с Arduino UNO
  • Загрузчик из Arduino Fio
  • Встроенный RTC-чип DS1337Sсокетом для батарейки-таблетки CR1220, которая служит резервным источником питания для RTC)
  • Последовательный порт с DTR для автосброса при программировании во время автономного режима
  • Сокет для карты MicroSD
  • Коннектор Grove (можно выбрать между рабочим напряжением 5V и 3.3V)
  • Кнопки сброса для модулей X-Bee и ATmega328P
  • 20-контактный (2х10) сокет для модуля X-Bee (шаг – 2 мм)

Характеристики

  • МикроконтроллерATmega328P
  • Тактовая частота – 8 МГц
  • Входное/выходное напряжение – 3,3 вольта
  • RTC-чипDS1337S
  • Плата для IDE ArduinoArduino Pro или Pro Mini (3.3V, 8 МГц) с чипом ATmega328P
  • Питание – 3,7-вольтовая литий-полимерная батарея (для зарядки используйте солнечную панель с 5 вольтами постоянного тока)
  • Питающий коннектор – 2-контактный JST/USB
  • ИнтерфейсыI2C, UART, SPI
  • SD-картаMicroSD
  • Сила тока холостого хода – не выше 6 мА (миллиампер)
  • Сила тока при зарядке – 300 мА
  • Максимальная сила тока на 3,3-вольтовом порте – 800 мА
  • Размер печатной платы – 86,74 мм х 60,96 мм

Области применения

  • Беспроводная сеть датчиков (при помощи модулей X-Bee, которые нужно покупать отдельно)
  • Запись логов с GPS-данными (при помощи модуля GPSBee, который нужно покупать отдельно)
  • Система сбора данных, коммуницирующая с приложением, запущенным на iPhone/Android (при помощи модуля BluetoothBee, который нужно покупать отдельно)
  • Радиочастотное дистанционное управление (при помощи модуля RFBee, который нужно покупать отдельно)
  • В качестве простой автономной вычислительной системы, совместимой с Arduino

Описание компонентов

Seeeduino Stalker V3.1 – это плата со множеством компонентов, включая RTC-чип (т.е. часы реального времени), коннектор для литий-полимерной батареи, сокет для модулей Bee, сокет для SD-карты и т.д. На картинке ниже показано, где эти (а также все остальные) компоненты находятся, чтобы вы лучше понимали, как устроена плата:

Seeeduino Stalker V3.1 overview 1.png
Название Функция
RTC BATTERY Слот для батарейки-таблетки, питающей DS1337S
RTC_INT Переключатель для прерывания RTC-чипа
Bee Serial Select Выбор контактов RX/TX для Bee. Можно выбрать между D0/D1 и D6/D7.
Bee Socket Сокет для модуля Bee
CHARGE STATUS LED Два светодиода: зеленый «OK», сообщающий о завершении зарядки, и красный «CH», горящий во время зарядки
BEE RST Кнопка для сброса Bee
SOLAR Входной коннектор для солнечной батареи, предназначенный для зарядки батареи. Входное напряжение – в диапазоне от 4,5 до 6 вольт.
LIPO Коннектор для литий полимерной батареи. Входное напряжение – 3,7 вольта.
L Светодиод, подключенный к D13. Может служить индикатором.
GROVE2 Порт Grove, подключенный к I2C
GROVE1 Порт Grove, подключенный к D7/D8
PROGRAM Порт для программирования, подключенный к UartSBee
RST Кнопка для сброса ATmega328P
SD CARD Сокет для карты MicroSD

Распиновка

Плата Seeeduino Stalker V3.1 совместима с Arduino и оснащена аналоговыми, цифровыми и последовательными контактами. Схема ниже показывает, какие контакты свободны для использования, а какие – нет.

Seeeduino Stalker V3.1 pinmap.png

С чего начать

Если вы в первый раз программируете Seeeduino Stalker, воспользуйтесь инструкцией ниже. Но для начала приобретите следующие компоненты:

Примечание: Модуль UartSbee V4, кабель Micro USB и 6-контактный кабель в комплекте с Seeeduino Stalker не идут.

Шаг 1: Подключение

Сначала подключите плату Stalker к модулю UartSBee при помощи 6-контактного провода-перемычки, а затем подключите UartSBee к ПК при помощи кабеля MicroUSB.

Seeeduino Stalker UartSBee V4
DTR DTR
TXD RXD
RXD TXD
5V VCC
GND GND

Примечание: Переставьте переключатель питания UartSBee на 5 вольт.

Шаг 2: UartSBee и драйвер

Модуль UartSBee – это конвертер USB/UART на базе чипа FT232RL от FTDI. Драйвер для платы можно загрузить с этой страницы.

В нашем случае этот модуль будет выполнять три функции:

Шаг 3: IDE Arduino

Seeeduino Stalker – это плата, совместимая с Arduino, благодаря чему ее можно программировать при помощи среды IDE Arduino. Если она у вас еще не установлена, то ее последнюю версию можно загрузить с этой страницы.

Шаг 4: Добавьте Seeeduino Stalker в IDE Arduino

В меню «Плата» IDE Arduino по умолчанию нет опции для платы Seeeduino Stalker. О том, как добавить аддон для плат Seeed в IDE Arduino, читайте тут.

Шаг 5: Скетч «Blink»

Теперь давайте загрузим на Stalker небольшой код. Кликните в IDE Arduino на Файл > Примеры > Basics > Blink (File > Examples > Basics > Blink).

Arduino blink.png

Затем кликните на кнопку «Загрузка» («Upload») и спустя несколько секунд на плате начнет мигать светодиод L с частотой один раз в секунду.

Скетчи-примеры для Stalker V3.1

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

  • Пример считывания данных о напряжении батареи
  • Пример считывания данных о статусе зарядки
  • Пример записи логов
  • Несколько примеров из библиотеки RTC (т.е. скетчи-примеры для работы с часами реального времени)
  • Примеры, демонстрирующие использование спящего режима

Подробнее о них читайте ниже.

RTC

Плата Seeeduino Stalker V3.1 оснащена RTC-чипом DS1337S, питающимся от 3-вольтовой батарейки-таблетки. Эта таблетка способна питать RTC-чип в течение 3 лет, даже если на плату не будет подаваться никакого питания. Чтобы скачать библиотеку для использования DS1337S (она называется «RTC»), промотайте вниз, к разделу «Полезные ссылки». Там будет раздел «Папка со скетчами» – кликните по нему, откроется GitHub-репозиторий папки скетчей Seeeduino Stalker V3.1. Скачайте ее и установите в IDE Arduino. После установки папки скетчей установится и библиотека RTC.

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

Откройте IDE Arduino и кликните на Файл > Примеры > RTC > Adjust (File > Examples > RTC > Adjust). Затем задайте текущие дату и время при помощи объекта dt, созданного от класса DateTime:

DateTime dt(year, month, date, hour, min, sec, week-day(starts from 0 and goes to 6));
Ex:- DateTime dt(2015, 10, 1, 11, 43, 0, 4);

Теперь скомпилируйте скетч и загрузите его на Stalker. Все, время настроено!

Получение информации о текущих дате/времени

Откройте IDE Arduino и кликните на Файл > Папка со скетчами > RTC > Now (File > Sketchbook > RTC > Now). Информация о текущих дате/времени считывается при помощи функции RTC.now().

Ex:- DateTime now = RTC.now();

Теперь скомпилируйте скетч, загрузите его на Stalker и откройте монитор IDE Arduino. Stalker начнет печатать в нем дату и время с периодичностью 1 раз в секунду.

Seeeduino Stalker V3.1 rtc now.png

Прерывания с помощью DS1337S

Этот скетч-пример демонстрирует определение прерываний при помощи INT-контактов DS1337S. Эта функция полезна, к примеру, для записи логов, когда микроконтроллер переключается в спящий режим, а DS1337S периодически будит его, чтобы выполнить запись логов. Это заметно экономит заряд батареи. Чтобы понять, как все это осуществляется, смотрите код.

У чипа DS1337S есть два выходных INT-контакта – INTA (подключен к D2) и INTB (подключен к D3). На плате есть два переключателя, один из которых соединяет контакт INTA с контактом D2, а второй – INTB с D3. Таким образом, если вы не хотите использовать эти контакты для прерываний, можете просто отключить их при помощи этих переключателей. Это позволит освободить для нужд проекта 1 или 2 дополнительных I/O контакта. На картинке ниже показано, где этот переключатель находится:

RTC INT SELECT.png

Откройте IDE Arduino, затем Файл > Папка со скетчами > RTC > Interrupts (File > Sketchbook > RTC > Interrupts). Этот скетч-пример будет генерировать прерывания каждые несколько минут. Если вам нужен другой тип уведомлений, смотрите подробности в коде.

SD-карта

На плате есть сокет для карты MicroSD, в который можно вставить SD-карту, чтобы использовать ее для хранения данных. Stalker осуществляет считывание/запись данных на SD-карту при помощи интерфейса SPI. В среде IDE Arduino есть немало скетчей-примеров, позволяющих оперировать SD-картой при помощи библиотеки SD. Чтобы увидеть их, кликните в IDE Arduino на Файл > Примеры > SD (File > Examples > SD).

Seeeduino Stalker V3.1 sd cs.png

Примечание: На Stalker контакт CS подключен к контакту D10, поэтому в некоторых скетчах CS нужно поменять на D10.

Менеджер питания

В плату Stalker встроена цепь для питания от литий-полимерной батареи.

Считывание напряжения литий-полимерной батареи

Чтобы открыть этот скетч-пример, откройте IDE Arduino и кликните на Файл > Папка со скетчами > ReadBattery (File > Sketchbook > ReadBattery).

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

Емкость (%) 100% 80% 60% 40% 20% 0%
Напряжение (вольты) 4,20 4,00 3,87 3,79 3,73 3,00

Считывание статуса зарядки

Чтобы открыть скетч-пример, откройте IDE Arduino и кликните на Файл > Папка со скетчами > ReadChangeStatus (File > Sketchbook > ReadChangeStatus). Этот скетч может вернуть один из трех статусов:

0. Батарея не подключена

1. Зарядка

2. Зарядка выполнена

Модули Bee

Bee – это серия модулей, выполняющих самые разные функции вроде WiFi, BLE, GPS и радиочастотную коммуникацию. Будучи подключенной к Xbee, плата Stalker может выступать коммуникационным узлом. Более подробно о модулях Bee читайте по ссылкам ниже.

Примечания:

  • Вам нужно выбрать, какой порт будет использоваться для Bee. Более подробно читайте выше, в разделе «Описание компонентов»
  • Контакт D9 управляет VCC-питанием сокета Bee. Если хотите подать на Bee питание, контакт D9 нужно выставить в положение HIGH. Это делается при помощи функции
digitalWrite(9, HIGH). Кроме того, не забудьте, что в блоке setup() нужно вызвать pinMode(9, OUTPUT).

Запись логов

Главная область применения Seeeduino Stalker – это запись логов в виде данных вроде напряжения батареи (вместе с временной отметкой). Когда микропроцессор не делает запись логов, этот скетч переключает его в спящий режим. Более подробно читайте в комментариях к коду.

Чтобы открыть этот скетч, запустите IDE Arduino и кликните на Файл > Папка со скетчами > StalkerV30_DataLogger_10Sec (File > Sketchbook > StalkerV30_DataLogger_10Sec).

  • Этот скетч пишет на SD-карту логи с информацией о напряжении батареи. Запись логов выполняется при помощи функции RTC.enableInterrupts(h, m, s)
  • Периодичность задается при помощи аргументов h, m и s. При определении прерывания, скетч задает увеличивает значения в этих аргументах, тем самым задавая, когда прерывание должно сработать в следующий раз. Для этого удобно пользоваться классом DateTime:
ex:- interruptTime = DateTime (interruptTime.get() + interruptInterval);
  • Этот скетч также делает вывод подробной информации о событиях, происходящих в микроконтроллере. Эта информация отображается в мониторе порта
Data log example.png

Полезные ссылки

Схема

Даташиты

FAQ

В этом разделе будут вопросы, которые обычно задают новые пользователи.

Когда я выключаю и включаю питание, RTC сбрасывается к исходному времени.

Если к плате не подключено питание, RTC-чип питается от батарейки-таблетки, ресурс работы которой – не менее 3 года. Проверьте, не кончился ли у нее заряд.

Не могу загрузить скетч на Stalker V3.1.

Во-первых, проверьте подключение UART-USB между Stalker и ПК. Если все осталось как прежде, проверьте, правильные ли выбраны порт и плата (это должна быть Arduino Fio или Arduino Pro или Pro Mini (3.3v , 8 MHz)w/ATmega328). Наконец, если Bee вставлена, а в качестве контактов RX/TX выбраны D0/D1, то при загрузке скетча Bee нужно вынуть.

Не работает скетч-пример «Interrupt» для библиотеки RTC. Никаких прерываний не активируется.

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

Солнечная панель не заряжает литий-полимерную батарею.

Убедитесь, что батарея выдает напряжение в диапазоне от 4,6 до 6 вольт.

См.также

Внешние ссылки

  1. wiki.seeed.cc - Seeeduino Stalker V3.1