Агуулгын хүснэгт:

Өмсөх боломжтой - Эцсийн төсөл: 7 алхам
Өмсөх боломжтой - Эцсийн төсөл: 7 алхам

Видео: Өмсөх боломжтой - Эцсийн төсөл: 7 алхам

Видео: Өмсөх боломжтой - Эцсийн төсөл: 7 алхам
Видео: 🎶 ДИМАШ "ОПЕРА 2". История выступления и анализ успеха | Dimash "Opera 2" 2024, Оны зургадугаар сарын
Anonim
Өмсөх боломжтой - Эцсийн төсөл
Өмсөх боломжтой - Эцсийн төсөл

ТАНИЛЦУУЛГА

Энэхүү төсөлд бид киборгийн функц дээр суурилсан функциональ өмсөж болох загварыг гаргах даалгавар авсан. Таны зүрх сэтгэл BPM хөгжимтэй синхрончлогддог гэдгийг та мэдэх үү? Хөгжмөөр дамжуулан сэтгэл санаагаа хянахыг оролдож болно, гэхдээ хэрэв бид технологийг тайвшруулахад тусалдаг бол яах вэ? Бидэнд зарим бүрэлдэхүүн хэсгүүд, Arduino болон чихэвч хэрэгтэй болно. Шинэлэг зүйл хийцгээе!

Төсөл Марк Вила, Гильермо Стауффахер, Пау Карселле нар

Алхам 1: Материал ба бүрэлдэхүүн хэсгүүд

Материал ба бүрэлдэхүүн хэсгүүд
Материал ба бүрэлдэхүүн хэсгүүд

Барилгын материал:

- 3d хэвлэсэн бугуйвч

- М3 эрэг (x8)

- М3 самар (x12)

- Фанни багц

Цахим материал:

-Зүрхний цохилтын мэдрэгч BPM

- Товчнууд (x2)

- Потенциометр

- LCD C 1602 модуль

- MODULE DFPLAYER MINI MP3

- 3.5 мм Жак стерео TRRS чихэвч

- MicroSD карт

- Arduino Uno хавтан

- Гагнуурчин

- Бакелит хавтан

Алхам 2: Бугуйвч хийх

Бугуйвч загвар зохион бүтээх
Бугуйвч загвар зохион бүтээх
Бугуйвч загвар зохион бүтээх
Бугуйвч загвар зохион бүтээх

Эхлээд бид бугуйвчны янз бүрийн эд ангиудыг зохион байгуулахын тулд хэд хэдэн тойм зураг гаргадаг.

Тодорхой санаагаар бид бүлгийн гишүүдийн гурван гарыг хэмжиж, дараа нь дизайны оновчтой хэмжүүрийг олохын тулд дундажийг гаргав. Эцэст нь бид бүтээгдэхүүнийг 3d програмаар бүтээж, 3D принтерээр хэвлэнэ.

Та эндээс. STL файлуудыг татаж авах боломжтой.

Алхам 3: Цахим холболт

Цахим холболт
Цахим холболт

Бид 3d дизайныхаа шаардлагатай шалгалтыг үргэлжлүүлэн хийж, хэмжилтийг зөв хийсэн эсэхийг харахын тулд прототипийн бүх бүрэлдэхүүн хэсгүүдийн анхны угсралтыг хийлээ.

Бүх бүрэлдэхүүн хэсгүүдийг Arduino самбартай холбохын тулд бид 0, 5 метрийн кабель ашиглан бүрэлдэхүүн хэсгүүдээс өөр өөр холболт хийсэн бөгөөд ингэснээр хавтангийн харагдах байдлыг багасгаж, загварыг илүү сайн зохион байгуулдаг.

Алхам 4: Код

Код
Код
Код
Код
Код
Код

Энэхүү төсөл нь киборгийн прототип юм. Мэдээжийн хэрэг, бид арьсан доорх бүрэлдэхүүн хэсгүүдийг нэвтрүүлээгүй байгаа тул бугуйвчаа ортоцез хэлбэрээр (бие махбодид чиглэсэн гадны төхөөрөмж, функциональ байдлыг өөрчлөх зорилгоор) загварчилсан болно.

Манай код хэрэглэгчийн товчлуурыг дарж LCD дэлгэц ашиглан харуулдаг. BPM -ээс гадна дэлгэц нь хүссэн эрч хүчийг харуулдаг бөгөөд ингэснээр хэрэглэгч үүнийг зүрхний цохилттой харьцуулж болно. Өөрийн BPM -ийг нэмэгдүүлэх эсвэл бууруулах нь сонирхолтой байдаг олон нөхцөл байдал байдаг. Жишээлбэл, тэсвэр хатуужилтай тамирчид хэт их ядрахгүйн тулд судасны цохилтыг хянах ёстой. Өдөр тутмын жишээ бол мэдрэлийн нөхцөлд унтах эсвэл тайвшрахыг хүсэх явдал юм. Үүнийг аутизмтай хүмүүст мэдрэх стрессээ бууруулах эмчилгээний арга болгон ашиглаж болно. Дэлгэцийн хажууд хүссэн товчлуурыг хянах, зүрхний цохилтыг нэмэгдүүлэх эсвэл бууруулах хоёр товчлуур байдаг. Эрчим хүчээс хамааран өмнө нь судалж байсан хөгжмийн төрлийг тоглодог. Хөгжим нь BPM -ийг өөрчилж чаддаг болохыг харуулсан судалгаа байдаг. Beats per Minute дууны дагуу хүний бие эдгээр BPM -ийг дуурайж, тааруулдаг.

int SetResUp = 11; // эрчим хүчийг нэмэгдүүлэх товчлуур бүхий Arduino -ийн 10 -р зүү SetResDown = 12; // эрчим бууруулах товчлуур бүхий Arduino -ийн 11 -р зүү

int ResButtonCounter = 0; // эсэргүүцлийн тохиргоог нэмэгдүүлэх эсвэл багасгах тоолуур, 0 -ийн анхны утга ResButtonUpState = 0; // эрчим нэмэгдүүлэх товчлуурын одоогийн төлөв int ResButtonDownState = 0; // эрчим буурах товчлуурын одоогийн төлөв int lastResButtonUpState = 0; // эрчим нэмэгдүүлэх товчлуурын сүүлийн төлөв int lastResButtonDownState = 0; // эрчим бууруулах товчлуурын сүүлийн төлөв

int pulsePin = 0; // A0 портод холбогдсон импульсийн мэдрэгч // Эдгээр хувьсагчууд нь хоёр дахь таб дахь тасалдлын горимд ашиглагддаг тул тогтворгүй байдаг. тогтворгүй int BPM; // Beats per minute volatile int дохио; // Пульс мэдрэгчийн өгөгдлийн оролт дэгдэмхий int IBI = 600; // Пульс цаг дэгдэмхий boolean Pulse = худал; // Импульсийн долгион өндөр байх үед үнэн, бага хэлбэлзэлтэй логик QS = худал байвал худал;

# тодорхойлох Start_Byte 0x7E # тодорхойлох Version_Byte 0xFF # Command_Length 0x06 # End_Byte 0xEF тодорхойлох # Acknowledge 0x00 тодорхойлох // 0x41 [0x01: мэдээлэл, 0x00: мэдээлэл байхгүй] командыг ашиглан мэдээллийг буцаана.

// PANTALLA #include // LCD дэлгэцийн функцүүдийн номын санг байршуулах #оруулах #оруулах

LiquidCrystal lcd (7, 6, 5, 4, 3, 2); // LCD холбосон портуудыг зарлах

// LECTOR #include #include // dfplayer mini MP3 модулийн функцын номын санг байршуулна уу.

char serialData; int nsong; int v;

SoftwareSerial comm (9, 10); // DFPlayer холбогдсон портуудыг зарлах DFRobotDFPlayerMini mp3;

void setup () {Serial.begin (9600); pinMode (SetResUp, INPUT); pinMode (SetResDown, INPUT);

// LCD (16x2) lcd.begin (16, 2) хэмжээсийг тодорхойлох; // Бид текстийг аль багананд, ямар мөрөнд харуулж эхэлснийг сонгоно // LECTOR comm.begin (9600);

mp3.begin (comm); // Бүрэлдэхүүн хэсэг serialData = (char) (('')) эхэлдэг; mp3.start (); Serial.println ("Тоглуулах"); // Дуу тоглуулах mp3.хэмжээ (25); // Эзлэхүүнийг тодорхойлох}

void loop () {if (digitalRead (11) == LOW) {mp3.next (); // Хэрэв товчлуур дарагдсан бол дуу өнгөрнө} if (digitalRead (12) == LOW) {mp3.previous (); // Хэрэв товчлуур дарагдсан бол өмнөх дуу} // if (SetResUp && SetResDown == LOW) {

int pulso = analogRead (A0); // А0 аналог портод холбогдсон зүрхний цохилт хэмжигчийн утгыг уншина уу

Serial.println (pulso/6); if (QS == true) {// Quantified Self -ийн туг нь arduino хайлт хийхтэй адил BPM QS = false; // Quantified Self -ийн тугийг дахин тохируулах}

lcd.setCursor (0, 0); // Хүссэн текстээ харуулах lcd.print ("BPM:"); lcd.setCursor (0, 1); // Хүссэн текстээ харуулах lcd.print ("INT:"); lcd.setCursor (5, 0); // Хүссэн текстээ харуулах lcd.print (pulso); lcd.setCursor (5, 1); // Хүссэн текстээ харуулах lcd.print (ResButtonCounter); саатал (50); lcd.clear (); ResButtonUpState = digitalRead (SetResUp); ResButtonDownState = digitalRead (SetResDown);

// TempButtonState -ийг өмнөх төлөвтэй нь харьцуулж үзээрэй

if (ResButtonUpState! = lastResButtonUpState && ResButtonUpState == LOW) {// хэрэв сүүлийн төлөв өөрчлөгдсөн бол тоологчийг нэмэгдүүлэх

ResButtonCounter ++; }

// одоогийн төлөвийг сүүлчийн төлөв болгон хадгалах, // дараагийн удаа давталтыг гүйцэтгэх lastResButtonUpState = ResButtonUpState;

// товчлуурын төлөвийг (нэмэгдүүлэх эсвэл бууруулах) сүүлийн төлөвтэй харьцуулах

if (ResButtonDownState! = lastResButtonDownState && ResButtonDownState == LOW) {

// хэрэв сүүлчийн төлөв өөрчлөгдсөн бол тоологчийг багасгах

ResButtonCounter-; }

// одоогийн төлөвийг сүүлчийн төлөв болгон хадгална, // дараагийн удаа давталтыг гүйцэтгэх болно lastResButtonDownState = ResButtonDownState; {Serial.println (ResButtonCounter);

if (ResButtonCounter> = 10) {ResButtonCounter = 10; }

if (ResButtonCounter <1) {ResButtonCounter = 1; }

}

}

Алхам 5: Нийт хурал

Кодыг зөв програмчилж, манай загварын хоёр хэсгийг аль хэдийн угсарсан болно. Бид бүх эд ангиудыг байрлуулж, соронзон хальсаар холбож бугуйвчдаа засна. Бугуйвчны бүрэлдэхүүн хэсэг нь зүрхний цохилтын мэдрэгч BPM, хоёр товчлуур, потенциометр ба LCD дэлгэц бөгөөд тус бүр нь тус тусын 3D файлд зориулагдсан нүхэнд байрладаг. Эхний хэсгийг дуусгасны дараа бид Arduino хавтангийн зөв зүү дээрх холбогч бүрийг протобоард дээр анхаарлаа хандуулдаг. Эцэст нь, бүрэлдэхүүн хэсэг бүрийн баталгаажсан ажиллагааг хийснээр утсыг нуухын тулд бид үүнийг fanny багцад хийнэ.

Алхам 6: Видео

Алхам 7: Дүгнэлт

Энэхүү төслийн хамгийн сонирхолтой зүйл бол хүний биеийг хөгжимд ухаангүй дуурайж сурах явдал юм. Энэ нь ирээдүйн төслүүдийн олон сонголтыг хийх боломжийг нээж өгдөг. Энэ бол бүрэн гүйцэд төсөл гэж би бодож байна, бидэнд ажилласан кодтой олон төрлийн бүрэлдэхүүн хэсгүүд байдаг. Хэрэв бид дахин эхлүүлбэл бусад бүрэлдэхүүн хэсгүүдийн талаар бодож эсвэл илүү чанартай худалдаж авах болно. Бид эвдэрсэн кабель, гагнууртай холбоотой маш олон асуудалтай тулгарсан, тэдгээр нь жижиг бөгөөд маш нарийн (ялангуяа BPM). Нөгөө талаар та бүрэлдэхүүн хэсгүүдийг холбохдоо болгоомжтой байх хэрэгтэй, тэдгээр нь олон гаралттай бөгөөд алдаа гаргахад хялбар байдаг.

Энэ бол маш их баялаг төсөл бөгөөд бид Arduino -ийн төрөл бүрийн техник хангамж, програм хангамжийн сонголтуудыг хөндсөн болно.

Зөвлөмж болгож буй: