Arduino:Примеры/EsploraAccelerometer

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

Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


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

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

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

  • Плата Arduino Esplora;

Цепь

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

Esplora Accelerometer.png

Расположение акселерометра, отсылающего данные с 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

 1 /*
 2 
 3 Считывание данных с акселерометра Esplora
 4 
 5 Этот пример показывает, как считывать значения с акселерометра.
 6 Чтобы увидеть процесс в действии, откройте Serial Monitor и наклоните Esplora.
 7 В результате значения, отвечающие за ту или иную ось, начнут меняться в зависимости от того, как вы наклоните плату. 
 8 
 9 Создан 22 декабря 2012 Томом Иго (Tom Igoe)
10 
11 Этот код не защищен авторским правом.
12 
13 */
14 
15 #include <Esplora.h>
16 
17 void setup()
18 {
19   Serial.begin(9600);        // инициализируем последовательную передачу данных на компьютер
20 }
21 
22 void loop()
23 {
24   int xAxis = Esplora.readAccelerometer(X_AXIS);    // считываем значения с оси X
25   int yAxis = Esplora.readAccelerometer(Y_AXIS);    // считываем значения с оси Y
26   int zAxis = Esplora.readAccelerometer(Z_AXIS);    // считываем значения с оси Z
27 
28   Serial.print("x: ");      // выводим строку обозначающую, что сейчас будут значения для оси X
29   Serial.print(xAxis);      // выводим значение для оси X
30   Serial.print("\ty: ");    // выводим символ «Tab» и строку, обозначающую, что сейчас будут значения для оси Y
31   Serial.print(yAxis);      // выводим значение для оси Y
32   Serial.print("\tz: ");    // выводим символ «Tab» и строку, обозначающую, что сейчас будут значения для оси Z
33   Serial.println(zAxis);    // выводим значение для оси Z
34 
35   delay(500);              // ждем полсекунды (500 миллисекунд)
36 }

См.также

  1. Esplora.readAccelerometer()

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