Редактирование: Очки с функцией костной проводимости
Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
− | + | ===Суть проекта=== | |
+ | Создание очков, обладающих функционалом гарнитуры на костной проводимости | ||
− | = | + | ===Проектная команда=== |
− | |||
− | |||
− | ==Проектная команда== | ||
* [[Дрепин Михаил]] | * [[Дрепин Михаил]] | ||
* [[Серов Александр]] | * [[Серов Александр]] | ||
− | ==Поставленные цели== | + | ===Поставленные цели=== |
* Осуществление коммуникаций и прослушивание музыки без использования большого количества дорогостоящих устройств | * Осуществление коммуникаций и прослушивание музыки без использования большого количества дорогостоящих устройств | ||
* Использование безопасных для здоровья и жизни беспроводных девайсов | * Использование безопасных для здоровья и жизни беспроводных девайсов | ||
− | ==Альтернативные | + | ===Альтернативные решения=== |
* Дорогостоящие импортные очки с гарнитурой | * Дорогостоящие импортные очки с гарнитурой | ||
* Наушники с гарнитурой | * Наушники с гарнитурой | ||
* Ушная Bluetooth гарнитура | * Ушная Bluetooth гарнитура | ||
− | ==Технология костной проводимости== | + | ===Технология костной проводимости=== |
Данный динамик позволяет передавать звук напрямую во внутреннее ухо через кости черепа, | Данный динамик позволяет передавать звук напрямую во внутреннее ухо через кости черепа, | ||
− | минуя наружное ухо (ушную раковину) и среднее ухо (барабанную перепонку, молоточек, наковальню, стремечко) | + | минуя наружное ухо(ушную раковину) и среднее ухо( барабанную перепонку, молоточек, наковальню, стремечко) |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Работа по проекту== | ==Работа по проекту== | ||
Строка 32: | Строка 24: | ||
|- | |- | ||
|'''Срок''' | |'''Срок''' | ||
+ | |'''Возникающие проблемы''' | ||
|'''Задача''' | |'''Задача''' | ||
− | |||
|'''Что сделано к сроку''' | |'''Что сделано к сроку''' | ||
|- | |- | ||
Строка 51: | Строка 43: | ||
|Модель построена | |Модель построена | ||
|- | |- | ||
− | | | + | | 7.05.18 |
− | |||
− | |||
− | |||
− | |||
− | |||
|Работа с Arduino | |Работа с Arduino | ||
|Изучение электронного конструктора Arduino | |Изучение электронного конструктора Arduino | ||
Строка 77: | Строка 64: | ||
* Очки спроектированы и распечатаны на 3D-принтере | * Очки спроектированы и распечатаны на 3D-принтере | ||
* Собраны модули | * Собраны модули | ||
− | * С получившейся моделью можете ознакомиться | + | * С получившейся моделью можете ознакомиться на приложенных фотографиях |
− | |||
− | |||
− | |||
− | |||
− | |||
==Arduino прошивка== | ==Arduino прошивка== | ||
Строка 90: | Строка 72: | ||
<syntaxhighlight lang="javascript" line start="1" enclose="div"> | <syntaxhighlight lang="javascript" line start="1" enclose="div"> | ||
− | #include < | + | #include <Servo.h> // Библиотека для сервопривода |
− | + | Servo servo1; // Объявление переменных | |
− | int | + | int timestep; |
− | int | + | int timestep1; |
− | + | boolean flag = 0; | |
− | + | boolean flag1 = 0; | |
− | + | boolean battle; | |
− | + | byte i; | |
− | + | byte j; | |
− | + | byte v; | |
− | void setup(){ | + | byte c; |
− | pinMode( | + | void setup() { |
− | pinMode( | + | servo1.attach(4); // Задание пинов на вход и выход |
− | + | pinMode(3,INPUT_PULLUP); | |
+ | pinMode(2,INPUT); | ||
+ | pinMode(9,OUTPUT); | ||
+ | Serial.begin(9600); | ||
+ | servo1.write(0); | ||
+ | // digitalWrite(9,LOW); | ||
} | } | ||
− | void loop(){ | + | |
− | + | void loop() { | |
− | + | v = !digitalRead(2); | |
− | + | battle = !digitalRead(3); | |
− | + | if (battle==1 && flag==0 && (millis()-timestep)>300){ // Отрабатываем нажатие кнопки.. | |
− | if ( | + | flag = 1; |
− | + | i++; | |
+ | Serial.println(i); | ||
+ | timestep = millis(); | ||
} | } | ||
− | + | if (battle==0 && flag==1){ // ..и отжатие | |
− | + | flag = 0; | |
} | } | ||
− | + | if ((millis()-timestep)>2500 && i>1){ // Через 2.5 секунды после последнего нажатия кнопки запускается дальнейший скрипт | |
− | + | j = i; | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
− | + | //if (j>0 && (millis()-timestep)>5000 && (millis()-timestep)<6000){ Прошивка для двигателя (не использовалась) | |
+ | // digitalWrite(9,HIGH); | ||
+ | //} else { | ||
+ | // digitalWrite(9,LOW); | ||
+ | //} | ||
+ | if (j>0 && v==HIGH && flag1==0 && c<180 && (millis()-timestep1)>1000){ // Снятие показания с датчика препятствий и | ||
+ | flag1 = 1; | ||
+ | timestep1 = millis(); | ||
+ | c += 180/j; | ||
+ | servo1.write(c); // подача сигнала на сервопривод | ||
+ | } | ||
+ | if (j>0 && v==LOW && flag1==1 && (millis()-timestep1)>300){ | ||
+ | flag1 = 0; | ||
+ | timestep1 = millis(); | ||
+ | } | ||
+ | |||
} | } | ||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
</div> | </div> | ||
</div> | </div> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Ссылки== | ==Ссылки== | ||
− | |||
− |