Чтение онлайн

на главную

Жанры

Робототехника: практическое введение для детей и взрослых
Шрифт:

Вы составили программу, которая показывает текущее значение температуры, а также программу контроля превышения заданного значения температуры.

В следующих главах книги вы научитесь подключать к micro:bit миниатюрную погодную станцию, способную показывать не только температуру окружающей среды, но и давление, влажность, а также температуру точки росы.

5. Измеряем ускорение и контролируем перегрузки

Микроконтроллер micro:bit оборудован очень интересным устройством – акселерометром, или измерителем ускорения.

Вспомним знания, полученные еще в школе. Ускорением

называется быстрота изменения скорости тела. Например, когда вы сбрасываете кирпич с крыши дома (никогда так не делайте), то его скорость будет увеличиваться с ускорением свободного падения, равном примерно 9,8 м/c^2. Это означает, что каждую секунду скорость падающего кирпича будет увеличиваться на 9,8 м/с.

Обычно при вычислениях ускорение свободного падения обозначается как g.

Обратите внимание, что ускорение свободного падения не зависит от массы тела. Иначе говоря, не важно, сбрасываете ли вы тяжелый кирпич, или легкий металлический шарик, ускорение будет одинаковым. Другое дело, что на изменение скорости может повлиять сопротивление воздуха (надувной шарик может вообще полететь не вниз, а вверх), но все это вам известно из школьного курса физики.

Когда вы летите в самолете, то можете испытывать ускорение (или иными словами, перегрузки) до 1,5g. Парашютисты и космонавты подвержены более серьезным перегрузкам, порядка 4g и более. Очень большие перегрузки возникают, когда вы едете в автомобиле и он на ходу врезается в стену или в автомобиль, который едет вам навстречу. Значительные перегрузки, как ударные, так и постоянно действующие, могут привести к серьезным проблемам в здоровье.

Принцип измерения ускорения

Наверное вы уже поняли, как важно контролировать ускорение, например, при испытании различной техники. Но как измеряется ускорение?

В микрокомпьютере micro:bit используются так называемый емкостной акселерометр. Его принцип действия иллюстрируется на рис. 5.1.

Рис. 5.1. Иллюстрация принципа действия емкостного акселерометра

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

Когда корпус перемещается с ускорением вверх или вниз, вправо или влево, расстояние между грузом и пластинами будет изменяться. Это происходит из-за инертной массы груза, закрепленного на гибкой пластине.

Груз и пластины образуют два конденсатора, обозначенные на рис. 5.1 как CX и CY. Когда расстояние между грузом и пластинами изменяется, меняются и емкости этих конденсаторов.

Таким образом, измеряя емкости конденсаторов в процессе движения, можно отслеживать изменение ускорения по горизонтальной и вертикальной оси. А если добавить третью пружину и еще одну металлическую пластину, то можно будет измерять ускорение во всех трех направлениях.

Что касается акселерометра, встроенного в micro:bit, то там применяется три пластины, что дает возможность измерять ускорение по всем трем осям координат.

Согласно документации, акселерометр micro:bit может измерять ускорение в диапазоне от -2g до 2g. При этом возвращаются

положительные и отрицательные значения в тысячных долях g, с диапазоном от 0 до 1024.

Обнаружение жестов

Одно из самых интересных применений акселерометра micro:bit – это обнаружение жестов. Это поворачивание платы микроконтроллера логотипом вверх или вниз, наклон вправо или влево, поворачивание монитором вверх или вниз, встряхивание, свободное падение, а также движение с ускорением в 3g, 6g и 8g.

Когда вы совершаете с платой микроконтроллера описанные выше действия, создаются соответствующие события. Их можно обрабатывать в блоке по жесту из палитры Ввод. Список доступных жестов показан на рис. 5.2.

Рис. 5.2. Жесты в микрокомпьютере micro:bit

Расскажем, как вы можете обрабатывать жесты от акселерометра в своих программах.

Бросаем кости

Самое простое что можно придумать с жестами – это сделать игру в кости. Когда вы встряхиваете плату своего micro:bit, на его экране высвечивается случайное число от 0 до 6. Конечно, это упрощенный вариант игры, так как тут мы «бросаем» только одну кость.

Программа игры в кости показана на рис. 5.3.

Рис. 5.3. Программа обработки события встряхивания

Когда микроконтроллер обнаруживает, что его начали трясти, он создает событие на жест встряхивание. Обработчик этого события показывает на экране случайное число в диапазоне от 0 до 6.

Эта программа находится в файле BoxRover/ch05/microbit-Кости.hex архива, который можно скачать с сайта автора книги по адресу http://frolov-lib.ru/books/boxrover/.

Отслеживаем ориентацию платы micro:bit в пространстве

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

Давайте создадим такую программу для micro:bit, которая будет рисовать стрелку, показывающую вверх независимо от того, как вы держите плату микроконтроллера.

Эта программа показана на рис. 5.4.

Рис. 5.4. Программа для отслеживания положения платы micro:bit в пространстве

Как видите, программа обрабатывает шесть жестов. Это поворот платы микроконтроллера логотипом вверх, вниз, наклон вправо или влево, а также расположение платы экраном вверх и экраном вниз.

Поделиться:
Популярные книги

На границе империй. Том 3

INDIGO
3. Фортуна дама переменчивая
Фантастика:
космическая фантастика
5.63
рейтинг книги
На границе империй. Том 3

Держать удар

Иванов Дмитрий
11. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Держать удар

Эффект Фостера

Аллен Селина
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Эффект Фостера

Не грози Дубровскому! Том VIII

Панарин Антон
8. РОС: Не грози Дубровскому!
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Не грози Дубровскому! Том VIII

СД. Том 17

Клеванский Кирилл Сергеевич
17. Сердце дракона
Фантастика:
боевая фантастика
6.70
рейтинг книги
СД. Том 17

Темный Патриарх Светлого Рода 3

Лисицин Евгений
3. Темный Патриарх Светлого Рода
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Патриарх Светлого Рода 3

Сумеречный Стрелок 3

Карелин Сергей Витальевич
3. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 3

Пипец Котенку!

Майерс Александр
1. РОС: Пипец Котенку!
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Пипец Котенку!

Неудержимый. Книга IV

Боярский Андрей
4. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга IV

Дурная жена неверного дракона

Ганова Алиса
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Дурная жена неверного дракона

Я не князь. Книга XIII

Дрейк Сириус
13. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я не князь. Книга XIII

Я – Орк. Том 6

Лисицин Евгений
6. Я — Орк
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я – Орк. Том 6

Отмороженный

Гарцевич Евгений Александрович
1. Отмороженный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Отмороженный

Безродный

Коган Мстислав Константинович
1. Игра не для слабых
Фантастика:
боевая фантастика
альтернативная история
6.67
рейтинг книги
Безродный