Arduino:Примеры/EsploraAccelerometer

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

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


Считывание данных с акселерометра Esplora[1]

Этот пример демонстрирует, как считывать значения с акселерометра платы Esplora. Чтобы увидеть процесс в действии, откройте на компьютере Serial Monitor и наклоните Esplora. Вы увидите, как будут меняться значения для каждой оси.

Необходимое оборудование

  • Плата Arduino Esplora;

Цепь

Для этого примера нужна лишь Arduino Esplora, через USB-кабель подключенная к компьютеру.

Расположение акселерометра, отсылающего данные с Esplora на компьютер

Код

Чтобы начать отправлять данные на компьютер, вам нужно запустить последовательную передачу данных. Для этого воспользуемся функцией Serial.begin() и установим скорость подключения в 9600 бод.

Далее воспользуемся функцией Esplora.readAccelerometer(), чтобы считать значения с акселерометра. Ей потребуется аргумент, говорящий о том, с какой осью работать – X_AXIS, Y_AXIS или Z_AXIS. С каждой оси будет поступать значение в диапазоне от 0 до 1023.

Для отправки значений на Serial Monitor вызовем функцию Serial.print(). В результате, подключив Esplora и открыв Serial Monitor, вы увидите, как система будет выводить значения примерно такого рода (и будет делать это дважды в секунду):

x: 6 y: -128 z: 27

x: 2 y: -138 z: 19

x: 9 y: -137 z: 20

/*

Считывание данных с акселерометра Esplora

Этот пример показывает, как считывать значения с акселерометра.
Чтобы увидеть процесс в действии, откройте Serial Monitor и наклоните Esplora.
В результате значения, отвечающие за ту или иную ось, начнут меняться в зависимости от того, как вы наклоните плату. 

Создан 22 декабря 2012 Томом Иго (Tom Igoe)

Этот код не защищен авторским правом.

*/

#include <Esplora.h>

void setup()
{
  Serial.begin(9600);        // инициализируем последовательную передачу данных на компьютер
}

void loop()
{
  int xAxis = Esplora.readAccelerometer(X_AXIS);    // считываем значения с оси X
  int yAxis = Esplora.readAccelerometer(Y_AXIS);    // считываем значения с оси Y
  int zAxis = Esplora.readAccelerometer(Z_AXIS);    // считываем значения с оси Z

  Serial.print("x: ");      // выводим строку обозначающую, что сейчас будут значения для оси X
  Serial.print(xAxis);      // выводим значение для оси X
  Serial.print("\ty: ");    // выводим символ «Tab» и строку, обозначающую, что сейчас будут значения для оси Y
  Serial.print(yAxis);      // выводим значение для оси Y
  Serial.print("\tz: ");    // выводим символ «Tab» и строку, обозначающую, что сейчас будут значения для оси Z
  Serial.println(zAxis);    // выводим значение для оси Z

  delay(500);              // ждем полсекунды (500 миллисекунд)
}

См.также

  1. Esplora.readAccelerometer()

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