Конструктор для начинающих Seeed Grove Beginner Kit

В этой статье мы расскажем о новом конструкторе Ардуино для начинающих Grove Arduino Begginer Kit от компании Seeed Studio. Этот набор позволяет быстро собирать проекты с LCD экраном, светодиодами, датчиками температуры, света, наклона и другими сенсорами, которые легко и надежно соединяются друг с другом благодаря коннекторам Grove. Поэтому конструктор может быть интересен и начинающим, и опытным пользователям.

О компании Seeed Studio

Seeed StudioКитайская фирма Seeed Studio является крупным производителем и поставщиком продукции для интернета вещей IoT.  Компания предлагает широкий ассортимент готовых платформ и модулей собственной разработки, причем многие из этих модулей изначально рассчитаны на использование в так называемых “интеллектуальных системах”. Широко известны шилды Seeed для голосовых помощников, модули компьютерного зрения, связи, систем позиционирования для многих платформ: Arduino, Raspberry Pi, BeegleBone и других. Ссылки вы найдете в конце статьи.

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

Компания была основана в Китае, главный офис расположен в городе Шэньчжэнь. Филиалы фирмы расположены в США (открылся в 2015 году) и Японии (с 2017 года). Судя по сайту, основная миссия Seeed Studio – стать глобальной интеграционной платформой в мире для реализации глобальных современных технологий. Следует отметить, что компания уже сотрудничает с такими крупными вендорами, как Microsoft, с которой они развивают решения, упрощающие повсеместной распространение элементов “интернета вещей”.

Описание набора

К нам на обзор приехала одна из последних разработок компании – набор Grove Beginner Kit для Arduino. Как следует из названия, комплект в первую очередь адресован начинающим изучать электронику. Конструктор не требует сложного соединения деталей и пайки, поэтому может использоваться в учебных целях даже для самых маленьких учеников. Для начала работы потребуется только сам набор, кабель USB и компьютер с Arduino IDE. В качестве платы Ардуино выступает собственный модуль Seeeduino Lotus (ее описание – далее в этой статье).

Seeed Grove Begginer Kit For Arduino
Набор Grove Begginer Kit For Arduino

Конструктор представляет собой набор из модулей, датчиков, переключателей, дисплеев и других элементов для создания проектов. В комплекте прилагается руководство пользователя с 8 уроками и двумя проектами для Ардуино (естественно, на английском). Но в нашем наборе такой инструкции не оказалось.

Seeed Grove Begginer Kit For Arduino
Состав набора Grove Begginer Kit For Arduino

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

К основным компонентам набора относятся 8 модулей. Давайте рассмотрим их подробнее.

LCD экран Grove LCD

Модуль представляет собой стандартный LCD дисплей 1602, 16-символьный жидкокристаллический дисплей с двумя строками. В нашем случае подсветка голубая (белые символы). Для связи с платой используется интерфейс I2C, что позволяет уменьшить количество выводов с 10 до 2 для удобства работы в сложных проектов. I2C разъем также выполнен в формфакторе Grove. Работа с ЖК-дисплеем подробно описывалась в статье, посвященное экрану LCD 1602.

Grove LCD 1602
Модуль Grove LCD 1602

Grove – 3-Axis Digital Accelerometer

3-осевой цифровой акселерометр 3-Axis Digital Accelerometer. Модуль является ключевой частью таких проектов, как выбор ориентации, определение жестов и обнаружение движения. Этот трехосевой цифровой акселерометр основан на модуле низкого энергопотребления Freescale, MMA7660FC, на котором можно настроить частоту выборок в секунду. Это оптимальный вариант для задач, не требующих большого диапазона измерений. Отличается долговечностью и экономичностью.

Grove 3 axel акселерометр
Акселерометр 3x Grove

Подключение осуществляется с помощью аналогового, цифрового, UART и I2C интерфейсов. Программирование производится в среде разработки Arduino IDE. Для работы предварительно нужно установить драйвер на компьютер, который можно загрузить на официальном сайте.

Grove DHT11

Старый добрый датчик температуры и влажности DHT11. Емкостной сенсорный элемент измеряет относительную влажность, а температура измеряется термистором с отрицательным температурным коэффициентом (NTC). Модуль обладает высокой степенью надежности и стабильностью в течение продолжительного времени. Важно отметить, что датчик не является очень точным (в реальных проектах погрешность бывает и более 2 градусов!) и не работает при отрицательных температурах.

Grove DHT11
Модуль датчика влажности и температуры DHT11

Grove Buzzer

Модуль с пьезо-зуммером Grove – Buzzer. С помощью данного элемента можно воспроизводить звук высокого тона (при подсоединении к цифровому пину), если логический уровень высокий. В ином случае звуки воспроизводятся разного тона в зависимости от частоты, генерируемой с аналогового ШИМ вывода.

Grove buzzer
Пищалка Ардуино

Grove Tilt Switch

Модуль представляет собой датчик наклона. Это капсула с металлическим шариком внутри, который перекатывается и замыкает/размыкает цепь. В итоге выдает простой цифровой сигнал – ноль или единицу в зависимости от стороны наклона.

Датчик наклона Grove Tilt Sensor
Датчик наклона Grove Tilt Sensor

Grove Chainable RGB LED

Модуль RGB-светодиода. Работает на базе чипа P9813, который является драйвером светодиодов. Чип обеспечивает работу 3 драйверов постоянного тока, на выходе можно получить 256 оттенков. Он связывается с MCU при помощи двухпроводной линии. Модуль сквозной и может использоваться для добавления дополнительных модулей Grove – цепочки Chainable RGB LED. Встроенный усилитель увеличивает дальность передачи. Этот модуль может использоваться для любых проектов со светодиодами.

Модуль Grove RGB Led
Модуль Grove RGB Led

Grove Light Sensor

Модуль с датчиком света Light Sensor. Включает в себя фоторезистор для определения интенсивности света. Сопротивление фоторезистора уменьшается при увеличении интенсивности света. Микросхема с двумя операционными усилителями LM358 на плате создает напряжение, соответствующее интенсивности света, которое рассчитано на основе значения сопротивления. Выходной сигнал является аналоговым значением. Он напрямую зависит от яркости света.

Датчик света Grove Light Sensor
Датчик света Grove Light Sensor

Grove Line Finder

Этот модуль часто используется для создания робота, передвигающегося по линии. Он имеет инфракрасный светодиод и фототранзистор, чувствительный к ИК-излучению. Модуль возвращает цифровой сигнал, соответствующий “темной” или “светлой” линии. На борту имеется небольшой резистор для настройки уровня срабатывания.

Датчик линии Grove Linefinder
Датчик линии Grove Linefinder

Провода Grove

8 соединительных проводов с коннекторами типа Grove. Благодаря им производится соединение компонентов и монтаж проекта. Будьте внимательными и не теряйте эти провода, они большая редкость даже в популярных интернет-магазинах.

Grove Wire
Провода Grove Wire

 

Дополнительные фотографии

Конструктор для начинающих Seeed Grove Beginner Kit Конструктор для начинающих Seeed Grove Beginner Kit Конструктор для начинающих Seeed Grove Beginner Kit

Видео

Посмотрите, как все это выглядит вместе.

Разъемы и коннекторы Grove

Соединения типа Grove используются сейчас несколькими поставщиками электронных компонентов. В отличие от обычных макетных плат, они более надежны за счет механизма жесткой фиксации, хотя и занимают дополнительное место на плате. В то же время они меньше по размеру традиционных RJ45, что позволяет делать более компактные устройства.

Кабель с разъемом Grove Wire
Кабель с разъемом Grove Wire

На самом деле модульная система Grove – это целая платформа. Решения на ее основе состоят из основного блока и различных модулей со стандартными разъемами. Базовый блок представляет собой процессор, обеспечивающий связь между модулями, а также отвечающий за прием, обработку и вывод полученной информации с датчиков. Каждый модуль выполняет свою задачу. Он может быть как обычной кнопкой, так и представлять собой сложную систему, включающую в себя несколько датчиков, регуляторов и других элементов.

На модуле Grove есть 4 контакта разных цветов:

  • контакт 1 – желтый (например, SCL на соединителе Grove I2C);
  • контакт 2 – белый (например, SDA на Grove I2C);
  • контакт 3 – красный VCC на всех Grove;
  • контакт 4 – черный GND на всех Grove.

Выделяют 4 основных типа интерфейса модулей Grove. К ним относятся цифровой, аналоговый,  UART  и I2C.

Цифровой Grove состоит из четырех стандартных линий. Две сигнальные линии обычно называются D0 и D1. Большинство модулей используют только D0, но в некоторых проектах задействованы обе линии (например, для подключения светодиодного дисплея Grove).

Распиновка следующая:

  • pin1 — Dn, первичный цифровой вход / выход.
  • pin2 — Dn + 1, вторичный цифровой вход / выход.
  • pin3 — VCC, питание 5 В / 3,3 В.
  • pin4 — GND, земля.

Аналоговый Grove состоит из четырех стандартных линий. Две сигнальные линии  называются A0 и A1.

Распиновка:

  • pin1 —An, первичный аналоговый вход;
  • PIN2 — + 1, вторичный аналоговый вход;
  • pin3 — VCC, питание;
  • pin4 — GND, земля.

Модуль Grove UART является специализированной версией цифрового модуля Grove. Он использует как контакт 1, так и контакт 2 для последовательного ввода и передачи данных. Контакт 1 – это линия RX,  контакт 2 – это линия TX.

Распиновка:

  • pin1 — RX, серийный прием;
  • PIN2 — TX, последовательная передача;
  • pin3 — VCC, питание;
  • pin4 — GND, земля.

Существует множество типов датчиков I2C Grove. Большинство из них – устройства с питанием 5 В / 3,3 В.

Соединитель Grove I2C имеет стандартную компоновку. Контакт 1 – это сигнал SCL, а контакт 2 – это сигнал SDA. Питание и заземление такие же, как и у других модулей.

Распиновка:

  • pin1— SCL;
  • PIN2 — SDA;
  • pin3 — VCC;
  • pin4 — GND.

С помощью соединителей Grove можно собрать разные блоки в одну конструкцию без использования сложного соединения вроде перемычек или припоя по принципу конструктора. Это упрощает процесс сбора и расширяет возможности для экспериментов. Для работы с Grove нужно иметь базовые знания в электронике.

Описание платы Seeeduino Lotus

Seeeduino Lotus – это еще один вариант платы Arduino Uno на базе  микроконтроллеров ATMEGA328. Она представляет собой комбинацию из чипа Atmel ATMEGA328P-MU, CH340 и обвязки в виде Grove разъемов для всех стандартных выводов. В версии v1.1 чип CH340 был заменен на CP2102N, что упростило использование платы для пользователей Windows и iOS.

Seeeduino Lotus
Плата Seeeduino Lotus

Seeeduino Lotus имеет 14 цифровых вводов и выводов. 6 пинов могут использоваться как ШИМ. Также есть 7 аналоговых пинов, разъем micro USB, разъем ICSP, 12 подключений Grove, кнопка сброса.

Есть разные версии платы. К ним относятся:

  • 0. Первый релиз произведен в 2014 году. Работает только с ОС Windows.
  • 1. Релиз – в 2016 году. Работает как с Windows, так и с операционной системой Mac.

Плата применяется в проектах IoT, системе «Умный дом», в робототехнике, игрушках, а также в учебных целях.

Seeeduino Lotus
Плата Seeeduino Lotus с обратной стороны

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

  • Полная совместимость с Arduino UNO.
  • Наличие 12 разъемов Grove.
  • 14 цифровых входов/выходов.
  • Рабочее напряжение 5 В.
  • Рабочий ток – 40А.
  • 32 КБ флеш-памяти.
  • EEPROM 1 Кб.
  • Тактовая частота 16 МГц.
Seeeduino Lotus
Seeeduino Lotus

На плате Seeeduino Lotus есть следующие разъемы и порты:

  • LED D13. Светодиод, расположенный на 13 выводе платы, может использоваться в качестве индикатора в программах.
  • Порт USB и micro USB. Применяется для подсоединения к компьютеру, смартфону, подачи питания.
  • Кнопка сброса reset. Размещена на боковой части для сброса платы в отличие от Ардуино, на которых Reset устанавливается в верхней части.
  • Разъемы питания, аналоговые контакты. Применяются для подключения различных компонентов к плате без дополнительного макетирования.
  • Соединители Grove SeeedStudio с датчиками и другими устройствами, которые могут использоваться как аналоговое, цифровое, I2C или UART подключение.
  • Используется для ATmega328P, размещено в стандартном положении пина ICSP / SPI. Также есть пины MISO, SCK, MOSI, которые размещены как на Arduino Uno на цифровых контактах 12, 13, 11.
  • USB 2 Uart. Применяются для взаимодействия с другими устройствами UART – например, для вспомогательной платы USB2UART.

Используется разъем MicroUSB, что повышает компактность и совместимость со стандартными источниками питания.

Подключение и настройка Seeeduino Lotus

Для программирования платы Seeeduino можно использовать привычную всем среду Arduino IDE. Т.к. на борту у нас обычный микроконтроллер ATMEGA328, то в меню “Платы” можно выбрать обычную Arduino/Genuino Uno. Но у поставщика есть свои пакеты и библиотеки поддержки программирования для набора, рекомендуем установить их.

Подключение платы

Для загрузки поддержки платы требуется добавить источник в менеджеры плат. Для этого откройте Настройки (Файл – Настройки) и введите следующую строчку в поле “Дополнительные ссылки для Менеджера Плат” (несколько ссылок можно перечислять через запятую).

Конструктор для начинающих Seeed Grove Beginner Kit
Настройка менеджера плат Seeeduino Studio

После этого мы переходим в Менеджер плат (Инструменты – Плата – Менеджер плат), находим элемент Seeeduino AVR и загружаем модуль поддержки этой платы.

Seeeduino AVR
Загрузка пакета поддержки для платы Seeeduino AVR

После завершения загрузки нам остается перейти в меню Инструменты – Плата и выбрать из списка плату Seeeduino Lotus.

Выбор платы Seeeduino Lotus
Выбор платы Seeeduino Lotus

Все, можно приступать к программированию. Некоторые полезные примеры появились в соответствующем разделе меню Файл – Примеры.

Конструктор для начинающих Seeed Grove Beginner Kit

Библиотеки для работы с Seeeduino Begginer Kit

Вы можете загрузить необходимые библиотеки на нашем сайте:

Библиотека для работы с LCD экраном.

Библиотека для работы с RGB-светодиодом.

Библиотека для работы с Акселерометром.

Пример проекта – мигающий светодиод

Самый первый и самый простой пример. Загрузите скетч маячка (Файл – Примеры – Basiс – Blink) и убедитесь, что традиции не нарушены – светодиод на плате, подключенный к 13 пину, исправно и дружественно мигает вам!

Пример проекта – секундомер на экране

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

Seeeduino Blink

Пример Blink на Seeeduino

Схема подключения

Для проекта нужно подключить модуль LCD дисплея 1602 к порту i2c платы Seeeduino. Мы используем Grove провода, здесь невозможно ошибиться с полярностью, главное, не сломать контакт от нетерпения.

Grove LCD Seeeduino
Подключение LCD экрана к Seeeduino
Конструктор для начинающих Seeed Grove Beginner Kit
Подключение LCD к Seeeduino через Grove
ArduinoMaster Seeeduino
ArduinoMaster.Ru на LCD экране, подключенного к Seeeduino

Пример скетча

Нам потребуется подключить библиотеку rgb_lcd. Если вы не знаете как это делать, то можете посмотреть статью, рассказывающую, как подключать библиотеки к Ардуино. Найти и скачать библиотеку можно на нашем сайте или на GitHub. У нас на сайте есть отдельная статья, в которой описана работа с Arduino LCD экраном 1602.

//Подключаем необходимую библиотеку
#include "rgb_lcd.h"

// Создаем объект для работы с экраном
rgb_lcd lcd;

void setup() 
{

    // Настраиваем экран
    lcd.begin(16, 2);
    // Пишем приветствие
    lcd.print("Arduino Master");
    delay(1000);
}

void loop() 
{
    // Перемещаемся в первую позицию второй строки
    lcd.setCursor(0, 1);
    // Пишем количество секунд, прошедших с момента старта
    lcd.print(millis()/1000);
    delay(100);
}

 

Пример проекта – погодная станция

Давайте рассмотрим простой проект метеостанции с датчиком температуры и влажности DHT11 и экраном LCD 1602. Для работы нам понадобятся соответствующие Grove модули DHT11 и LCD.

Схема подключения

При наличии удобных разъемов собрать схему не представляет никакого труда. В данном случае датчик DHT подключаем к пину 2, экран – к выводу I2C.

DHT11 LCD 1602
Пример проекта DHT11 LCD 1602
LCD Grove
Показания погодной станции на LCD Grove

Пример скетча

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

#include <DHT.h>
#include <rgb_lcd.h>

#define DHTPIN 2
#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);
rgb_lcd lcd;

void setup() {
  //initialise the dht sensor
  dht.begin();
  //initialise the lcd screen;
  //set up the lcd's number of columns and rows:
  lcd.begin(16, 2);
  //wait for 2s
  delay(2000);
}

void loop() {
  //store the humidity value to h
  int h = dht.readHumidity();
  //store the temperature value to t(in Celsius)
  int t = dht.readTemperature();

  //set the LCD cursor to column 0, line 0
  lcd.setCursor(0, 0);
  //Print text temperature: to the LCD
  lcd.print("Temperature:");
  //set the LCD cursor to column 12, line 0
  lcd.setCursor(12, 0);
  //Print temperature value t to the LCD
  lcd.print(t);
  //set the LCD cursor to column 14, line 0
  lcd.setCursor(14, 0);
  //Print temperature º is character 223 on lookup table
  lcd.write(223);
  //Print C to the LCD
  lcd.print("C");

  //set the LCD cursor to column 0, line 1
  lcd.setCursor(0, 1);
  //Print text Humidity: to the LCD
  lcd.print("Humidity: ");
  //set the LCD cursor to column 10, line 1
  lcd.setCursor(10, 1);
  //Print humidity value h to the LCD
  lcd.print(h);
  //set the LCD cursor to column 12, line 1
  lcd.setCursor(12, 1);
  //Print sign % to the LCD
  lcd.print("%");
}

При желании вы можете разместить все элементы в удобном корпусе и сделать полноценную информативную (пустm и не стопроцентно точную) погодную станцию.

Где купить и полезные ссылки

Купить Grove Begginer Kit можно на сайте интернет-магазина: https://www.seeedstudio.com/Grove-Beginner-Kit-for-Arduino-p-2895.html

Основной сайт производителя: https://www.seeedstudio.com/

Ссылка на документацию и учебные материалы: http://wiki.seeedstudio.com/Grove_Beginner_Kit_for_Arduino/

Ссылка на документацию по Seeeduino Lotus: http://wiki.seeedstudio.com/Seeeduino_Lotus/

Обратите внимание, что у Seeed Studio есть еще несколько наборов с похожими названиями Starer Kit для разных платформ, не перепутайте.

Выводы

В данной статье мы привели описание нового очень интересного набора для Ардуино – Seed Grove Begginer Kit for Arduino. По сравнению с другими подобными конструкторами здесь нет макетных плат и “россыпи” электронных компонентов. Используется оригинальная Arduino-совместимая плата, выполняющая также роль платы расширения для датчиков. Благодаря удобным коннектором Grove все элементы быстро соединяются, формируя нужную конфигурацию и так же быстро разбираются.

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

Из минусов набора хочется отметить достаточно редкий тип коннекторов и проводов Grove, которые со временем придется докупать. Безусловно, их можно заказать у производителя и на нескольких сайтах в интернете, но стоимость их будет выше, чем у у привычных аналогов.

В целом же конструктор выглядит очень удачным приобретением и одним из самых комфортных способов приступить в погружение необъятного мира электроники и программирования.

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here