Очки с функцией костной проводимости
Материал из Department of Theoretical and Applied Mechanics
Содержание
Суть проекта
Создание очков, обладающих функционалом гарнитуры на костной проводимости Мы делаем это, потому что люди заслуживают такой девайс, который был бы безопасен для здоровья, удобен и действительно изменил бы их жизнь к лучшему!
Проектная команда
Поставленные цели
- Осуществление коммуникаций и прослушивание музыки без использования большого количества дорогостоящих устройств
- Использование безопасных для здоровья и жизни беспроводных девайсов
Альтернативные варианты
- Дорогостоящие импортные очки с гарнитурой
- Наушники с гарнитурой
- Ушная Bluetooth гарнитура
Технология костной проводимости
Данный динамик позволяет передавать звук напрямую во внутреннее ухо через кости черепа, минуя наружное ухо(ушную раковину) и среднее ухо( барабанную перепонку, молоточек, наковальню, стремечко)
Работа по проекту
Срок | Возникающие проблемы | Задача | Что сделано к сроку |
23.02.18 | Найти динамик на костной проводимости | Костная проводимость - нераспространенная технология | Динамик был приобретен с помощью интернет сервиса |
30.02.18 | Рассмотреть легальность вопроса | Во многих странах были запрещены подобные технологии из-за скрытого микрофона | На очках будет эмблема микрофона, предупреждающая о его наличии |
11.04.18 | Проектирование 3D модели | Изучение САПР Autodesk Fusion 360 | Модель построена |
7.05.18 | Работа с Arduino | Изучение электронного конструктора Arduino | Подключение к очкам по Bluetooth, получение звука через динамик |
15.05.18 | Сборка первого прототипа | 3D-принтер не смог осилить тонкости модели | Прототип собран и функционирует |
Смета
- Динамики - 500 рублей
- Bluetooth аудио модуль BK8000L (F-6188 V4.0) - 200р
- Аккумулятор Li-Pol Орбита 25*23*23 3.7В 110 мАч - 100р
- Модуль заряда аккумуляторов TP4056 (micro USB) - 25 р
Результаты по проекту
- Очки спроектированы и распечатаны на 3D-принтере
- Собраны модули
- С получившейся моделью можете ознакомиться здесь или на приложенных фотографиях
Arduino прошивка
1 #include "Arduino.h"
2 #include "Cl_do_btn.h"
3 Cl_do_btn::Cl_do_btn(byte _pin, bool high, void (* _Do_Btn)()) {
4 pin = _pin;
5 low = !high;
6 Do_Btn = _Do_Btn;
7 }
8 void Cl_do_btn::setup() {
9 //pinMode(pin, INPUT);// подключить кнопку
10 pinMode(pin, INPUT_PULLUP);// подключить кнопку 1 с подтяжкой
11 btn = read(); // прочитать реальное значение на выводе
12 }
13 void Cl_do_btn::loop() {
14 if (! bounce && btn != read()) { // если прошел фронт изм на выводн
15 bounce = 1; // выставить флаг
16 past = millis(); // сделать временую засветку
17 }
18 else if ( bounce && millis() - past >= 5 ) { // если прошло антидребезговое время
19 bounce = 0; // то снять флаг
20 btn_old = btn ;
21 btn = read(); // прочитать реальное значение на выводе
22 if (! btn_old && btn) Do_Btn();
23 }
24 }
25
26
27 void loop() {
28 v = !digitalRead(2);
29 battle = !digitalRead(3);
30 if (battle==1 && flag==0 && (millis()-timestep)>300){ // Отрабатываем нажатие кнопки..
31 flag = 1;
32 i++;
33 Serial.println(i);
34 timestep = millis();
35 }
36 if (battle==0 && flag==1){ // ..и отжатие
37 flag = 0;
38 }
39 if ((millis()-timestep)>2500 && i>1){ // Через 2.5 секунды после последнего нажатия кнопки запускается дальнейший скрипт
40 j = i;
41 }
42 //if (j>0 && (millis()-timestep)>5000 && (millis()-timestep)<6000){ Прошивка для двигателя (не использовалась)
43 // digitalWrite(9,HIGH);
44 //} else {
45 // digitalWrite(9,LOW);
46 //}
47 if (j>0 && v==HIGH && flag1==0 && c<180 && (millis()-timestep1)>1000){ // Снятие показания с датчика препятствий и
48 flag1 = 1;
49 timestep1 = millis();
50 c += 180/j;
51 servo1.write(c); // подача сигнала на сервопривод
52 }
53 if (j>0 && v==LOW && flag1==1 && (millis()-timestep1)>300){
54 flag1 = 0;
55 timestep1 = millis();
56 }
57
58 }