Логотип sheen.bot

3D-визуализатор IMU

Подключи sheenbot∞, возьми плату в руку и двигай ей: 3D-модель на этой странице будет наклоняться, поворачиваться и скользить точно так же, повторяя сигналы встроенного датчика движения (акселерометра и гироскопа).

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

Всё работает прямо в браузере и ничего не записывается в память платы. При подключении текущая программа на плате приостанавливается, чтобы использовать датчик движения; кнопка «Перезагрузить плату» или кнопка сброса на самой плате снова запустит твою программу.

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

Подключи sheenbot∞ к компьютеру через USB-кабель и включи питание. Нажми «Подключить плату» и выбери нужный порт из списка — обычно он называется «USB-SERIAL CH340». Сначала закрой все другие программы и вкладки, использующие плату.

3D-вид

Подключи плату или посмотри демо, чтобы оживить 3D-модель.

Сетка: квадраты 1 см, жирные линии каждые 10 см. Перетаскивай, чтобы повернуть вид; удерживай Ctrl (⌘ на Mac) и прокручивай или сжимай пальцы для масштабирования.

Управление

Отслеживание

В режиме «Только повороты» позиция не вычисляется, поэтому плата остаётся на месте. Это отлично подходит для игр с наклонами и долгих плавных движений.

Между движениями плата находится

Режим «На столе» улавливает более мелкие и плавные движения, но считает плату неподвижной, только когда она лежит на поверхности и её никто не трогает.

Последнее движение

Движений пока нет. Возьми плату, перемести её на 20–40 см примерно за секунду, а затем замри или положи её.

Углы наклона в реальном времени

Верхний край вверх (+) / вниз (−)
Кнопка B вверх (+) / вниз (−)
Поворот влево (+) / вправо (−)

Наклон остаётся точным, потому что страница сверяет его с силой тяжести каждый раз, когда плата неподвижна. Для курса нет компаса, поэтому он накапливает ошибку — до 10 градусов за полный оборот. Кнопка «Направить вперёд» сбрасывает его на 0.

Показания датчика в реальном времени

Последние 10 секунд прямо с чипа. Ускорение включает гравитацию, поэтому неподвижная плата показывает около −1 g по оси z. Серым цветом выделены моменты, когда плата считалась неподвижной.

  • x: к верхнему краю экрана
  • y: к кнопке B
  • z: внутрь платы
  • плата неподвижна
Ускорение (g)
Скорость поворота (°/с)
Сигнал
Измерений в секунду
Получено измерений
Потеряно измерений
Пропусков
Превышений предела датчика
Смещение гироскопа x y z (°/с)
Температура датчика
Калибровка на столе (необязательно, более точная)

Каждый датчик движения имеет небольшую погрешность. Удержание платы неподвижно в трех положениях на плоском столе позволяет измерить эту ошибку и компенсировать её: ошибка наклона обычно снижается с нескольких градусов до менее чем одного, а поворот на месте перестает выглядеть как скольжение. Это займет около минуты, и результат сохранится для этой платы в этом браузере.

  1. Положи плату ровно на стол экраном вверх и отпусти её.
  2. Поверни её на столе на пол-оборота, не переворачивая (экраном вверх), и отпусти.
  3. Переверни её экраном вниз на том же месте и отпусти.

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

Проверка осей датчика

Страница предполагает, что ось x чипа направлена к верхнему краю экрана, y — к кнопке B, а z — внутрь платы, поэтому неподвижная плата показывает около −1 g по оси z. Проверь, соответствует ли твоя плата: держи её неподвижно в каждом из положений ниже и посмотри, появится ли галочка.

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

Держи платуОжидается (g)Получено (g)
Горизонтально, экраном вверх[0.00, 0.00, −1.00]еще не определено
Правым краем (кнопка B) вниз, около 45°[0.00, −0.71, −0.71]еще не определено
Верхним краем (экран) вниз, около 45°[−0.71, 0.00, −0.71]еще не определено

Текущие показания: — g

Советы для лучших результатов
  • Двигай бодро: 20–40 см примерно за секунду, а затем остановись. Медленные и плавные скольжения слишком малы, чтобы датчик их почувствовал, и могут не отобразиться.
  • Делай паузы между движениями. Каждая остановка помогает странице уточнить положение. Движение без остановок сбивается, и примерно через 8 секунд (или если данные с платы перестанут поступать) его положение будет помечено как неизвестное.
  • Положение рассчитывается приблизительно. При хорошем движении погрешность составляет несколько сантиметров — и чуть больше, если плата также сильно вращается при перемещении.
  • Здесь нет компаса, поэтому направление постепенно смещается. Наклон всегда точен, потому что сила тяжести измеряется при каждой паузе.
  • Интересуют только наклоны и повороты? Выбери «Только вращение».
  • Для максимальной точности выполни калибровку на столе один раз для каждой платы.
  • Следи, чтобы кабель USB лежал свободно и не тянул плату.
  • Твоя программа не изменится и не удалится. Она останавливается при подключении и возобновит работу только после перезапуска платы: нажми «Перезапустить плату» или кнопку сброса на самой плате (например, если ты закрыл эту страницу, пока плата была подключена).
Технический журнал(0)