Оглавление:
Видео: ITTT Rolando Ritzen - аркадная перчатка с управлением движением: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:50
Een handschoen die je kan gebruiken als motion controller for on-rail shooters. Проект De gimmick van dit - это данные, которые есть в управлении движением, включая het schieten. (Je schiet door te "finger bangen")
Шаг 1: Het Materiaal
Het materiaal dat je gaat nodig hebben - это vrij simpel. 1x Arduino pro micro гироскопа Arduino Leonardo 1x MPU6050
4x кабели
Шаг 2: Де Бекабелинг
Zoals je in het schema in de afbeelding ziet - это супер простое слово. MPU VCC> Arduino VCC, заземление> Arduino заземление MPU SCL> контакт 3 MPU SDA> контакт 2
Шаг 3. Библиотеки 1
Для проекта heb je een paar пользовательские библиотеки nodig van deze ссылка:
Загрузите ZIP-файл с помощью кнопки «Клонировать или загрузить».
Шаг 4: библиотеки 2
Откройте Zip-файл и нажмите на карту "Arduino". En uit deze Arduino map will je de mapjes "I2Cdev" en "MPU6050" pakken en in je Arduino libraries zetten (Program Files> Arduino> libraries) (Программные файлы> Arduino> библиотеки)
Шаг 5: Де Код
#включают
#include #include #include #include
MPU6050 mpu;
int16_t ax, ay, az, gx, gy, gz;
int16_t accx, accy, accz; int vx, vy; угол поплавка;
// код для сглаживания inputint readIndex = 0; const int numReadings = 20; int angleReadings [numReadings]; int total = 0; float averageAngle = 0,0;
int oldZ = 0;
int newZ = 0;
void setup () {Serial.begin (115200); Wire.begin (); Mouse.begin (); mpu.initialize (); если (! mpu.testConnection ()) {в то время как (1); }
for (int thisReading = 0; thisReading <numReadings; thisReading ++) {angleReadings [thisReading] = 0; }}
void loop () {
total = total - angleReadings [readIndex];
angleReadings [readIndex] = угол; total = total + angleReadings [readIndex]; readIndex = readIndex + 1; если (readIndex> = numReadings) {readIndex = 0; }
если (gz> 30000) {Serial.println ("Bang"); Mouse.click (); // Стрельба, щелкнув пистолетом назад (удары пальцами)}
// accx, accy, accz;
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz); mpu.getAcceleration (& accx, & accy, & accz); //Serial.println(gy); // Serial.println (angle);
oldZ = newZ;
vx = (gx + 1000) / 150; vy = - (gz - 200) / 150; Mouse.move (vx, vy); задержка (20);
Dit stukje code heeft een beetje uitleg nodig omdat je het waarschijnlijk een klein beetje moet aanpassen.
Wat er waarschijnlijk gaat gebeuren - это dat je cursor uit zichzelf over je scherm gaat bewegen (van rechts naar links, van boven naar onder of diagonaal) en dit stukje code zorgt er voor dat je curor stil blijft staan als je geen input geeft. Je moet de values in in in "gx + 1000" en "gz - 200" aanpassen totdat je het resultaat krijgt dat je will en ik denk dat de values die Wil nodig hebt afhankelijk zijn van je scherm resolutie. Также курсор уит zichzelf van rechts naar links beweegd wil je "gx + x" aanpassen. Als de cursor uit zichzelf van boven naar onder beweegd wil je de "gz - x" aan passen. Als het diagonaal beweegd, dan kies je een van de twee values om aan te passen totdat hij nog maar over een as beweegd en dan pas je de andere aan.
Serial.print ("gx =");
Serial.print (gx); Serial.print ("| gz ="); Serial.print (gz); Serial.print ("| gy ="); Serial.println (gy); if (gx> 32000) {Serial.println («Проведите вправо»); // Перезарядка при повороте пистолета вправо Keyboard.write ('r'); задержка (250); } Serial.print ("accx ="); Serial.print (accx); Serial.print ("| accy ="); Serial.print (accy); Serial.print ("| accz ="); Serial.println (accz); // рабочий // угол = atan2 ((float) (ay - 16384), (float) (ax - 16384)) * (180.0 / PI) * -1; угол = atan2 ((float) ay, (float) ~ ax) * (180.0 / PI); // угол с плавающей запятой = atan2 ((float) ay, (float) -ax) * (180.0 / PI); //Serial.println(averageAngle); }
Рекомендуемые:
Перчатка электрошокера: 7 шагов
Taser Glove: Устали от тупо выглядящих электрических перчаток со слабым одноразовым напряжением камеры? Ненавидите людей на YouTube, которые просто показывают вам только внешнюю сторону их тазерных перчаток и даже не рассказывают, как они это сделали? У вас изысканный вкус и вы хотите, чтобы ваша перчатка была одновременно мощной
Мягкая перчатка для робототехники: 8 шагов (с изображениями)
Перчатка Soft Robotics: Мой проект - перчатка softrobotic. У него есть исполнительный механизм, расположенный на каждом пальце; нижняя часть перчатки снимается, чтобы облегчить пользователю ее ношение. Приводы приводятся в действие устройством, расположенным на запястье немного больше, чем часы
Двигатель с транзисторным управлением и дистанционным управлением; обзор схемы: 9 шагов
Двигатель с транзисторным управлением и дистанционным управлением; Обзор схемы: Эта схема представляет собой двигатель с транзисторным управлением и дистанционным управлением. Дистанционное управление включает питание. Транзистор включает двигатель. Код программы увеличит скорость двигателя и затем уменьшите скорость двигателя до нуля
Перчатка мастера: перчатка с контроллером Arduino: 4 шага (с изображениями)
Wizard Glove: перчатка с контроллером Arduino: The Wizard Glove. В моем проекте я сделал перчатку, которую вы можете использовать, чтобы играть в свои любимые игры, связанные с магией, крутым и захватывающим способом, используя только несколько основных ресурсов Arduino и Arduino. вы можете играть в такие игры, как The Elder Scrolls, или вы
Камера с управлением движением с использованием MESH SDK: 6 шагов (с изображениями)
Камера с контролем движения с использованием MESH SDK: Хотите автоматизировать камеру, чтобы снимать лучшие моменты вашего питомца, пока вас нет дома? Датчик движения MESH делает возможным использование камер, поддерживающих SDK. Например, мы разместили датчик движения MESH рядом с кормом для кошек и игрушками для кошек, чтобы c