Cov txheej txheem:

Wearable - Txoj Haujlwm Kawg: 7 Kauj Ruam
Wearable - Txoj Haujlwm Kawg: 7 Kauj Ruam

Video: Wearable - Txoj Haujlwm Kawg: 7 Kauj Ruam

Video: Wearable - Txoj Haujlwm Kawg: 7 Kauj Ruam
Video: Hmong Wisdom : General Richard Vang - Man of the Year ( Hmong / Hmoob / Miao / Dr. Vue ) 2024, Hlis ntuj nqeg
Anonim
Wearable - Txoj Haujlwm Kawg
Wearable - Txoj Haujlwm Kawg

QHIA

Hauv txoj haujlwm no peb muaj lub luag haujlwm los ua cov qauv siv tau zoo raws li kev ua haujlwm hauv cyborg. Koj puas paub tias koj lub siab sib koom nrog BPM ntawm nkauj? Koj tuaj yeem sim tswj koj txoj kev xav los ntawm suab paj nruag, tab sis yuav ua li cas yog tias peb cia thev naus laus zis pab peb nyob ntsiag to? Peb tsuas xav tau qee yam khoom siv, Arduino thiab koj lub mloog pob ntseg. Cia peb hloov kho tshiab!

Qhov project los ntawm Marc Vila, Guillermo Stauffacher thiab Pau Carcellé

Kauj Ruam 1: Cov Khoom thiab Cov Khoom

Cov Khoom thiab Cov Khoom
Cov Khoom thiab Cov Khoom

Cov ntaub ntawv tsim kho:

- 3d luam dab teg

M3 ntsia hlau (x8)

M3 txiv ntoo (x12)

- Fanny pob

Cov ntaub ntawv hluav taws xob:

-Lub plawv ntsuas Sensor BPM

Khawm (x2)

- Cov potentiometer

- LCD C 1602 MODULE

- QAUV DFPLAYER MINI MP3

- 3.5mm Jack Stereo TRRS HEADSET

- MicroSD daim npav

- Arduino Uno Phaj

- Vuam

- Bakelite phaj

Kauj Ruam 2: Tsim Lub Tes Tsho

Tsim ib lub dab teg
Tsim ib lub dab teg
Tsim ib lub dab teg
Tsim ib lub dab teg

Ua ntej peb ua ntau daim duab los teeb tsa cov khoom sib txawv hauv lub dab teg.

Nrog lub tswv yim meej, peb tau ntsuas ntawm peb caj npab ntawm cov tswv cuab ntawm pab pawg, tom qab ntawd peb ua qhov nruab nrab kom pom qhov ntsuas pom zoo tshaj plaws rau kev tsim qauv. Thaum kawg peb tsim cov khoom nrog 3d program thiab luam tawm nrog lub tshuab luam ntawv 3D.

Koj tuaj yeem rub cov ntaub ntawv. STL ntawm no.

Kauj Ruam 3: Kev Sib Txuas Hauv Hluav Taws Xob

Kev Sib Txuas Hluav Taws Xob
Kev Sib Txuas Hluav Taws Xob

Peb txuas ntxiv ua qhov kev tshuaj xyuas tsim nyog ntawm peb qhov kev tsim 3d, peb tau ua thawj lub rooj sib txoos ntawm txhua lub Cheebtsam hauv tsab ntawv kom pom tias qhov ntsuas tau raug.

Txhawm rau txuas txhua lub Cheebtsam rau Arduino pawg thawj coj, peb tau sib txuas sib txawv los ntawm cov khoom siv 0, 5 meters cable, ua li no peb txo qhov pom kev ntawm lub rooj tsavxwm thiab peb npaj cov qauv zoo dua.

Kauj ruam 4: Txoj Cai

Txoj Cai
Txoj Cai
Txoj Cai
Txoj Cai
Txoj Cai
Txoj Cai

Txoj haujlwm no yog tus qauv cyborg. Pom tseeb peb tsis tau tshaj tawm cov khoom siv hauv qab ntawm daim tawv nqaij, yog li peb tau sim nws nrog txoj hlua tes ua orthosis (cov cuab yeej sab nraud siv rau lub cev txhawm rau hloov kho lub luag haujlwm).

Peb tus lej yuav siv tus neeg siv tus yuam sij thiab qhia lawv siv lub vijtsam LCD. Ntxiv rau BPM, lub vijtsam qhia pom qhov xav tau kom tus neeg siv tuaj yeem sib piv nws nrog nws lub plawv dhia. Muaj ntau qhov xwm txheej uas nws txaus nyiam nce lossis txo koj tus kheej BPM. Piv txwv li, cov neeg ncaws pob ua siab ntev yuav tsum tswj lub plab kom tsis txhob nkees ntau dhau. Ib qho piv txwv niaj hnub yuav xav kom tsaug zog lossis nyob hauv qhov xwm txheej tsis zoo. Nws kuj tseem tuaj yeem siv ua txoj kev kho mob rau cov neeg uas muaj kev puas siab ntsws kom txo qis kev ntxhov siab uas lawv hnov. Ib sab ntawm lub vijtsam yog ob lub nyees khawm los tswj qhov xav tau siv zog thiab nce lossis txo lub plawv dhia. Nyob ntawm qhov kev siv, hom kawm suab paj nruag yav dhau los tau ua si. Muaj cov kev tshawb fawb uas qhia tias suab paj nruag tuaj yeem hloov pauv BPM. Raws li Beats per Minute ntawm zaj nkauj, tib neeg lub cev ua tib zoo thiab ua raws cov BPM.

int SetResUp = 11; // tus pin 10 ntawm Arduino nrog siv zog nce khawm.int SetResDown = 12; // tus pin 11 ntawm Arduino nrog khawm txo qis

int ResButtonCounter = 0; // lub sij hawm txee uas nce lossis txo qhov tsis kam teeb tsa, thawj tus nqi ntawm 0 int ResButtonUpState = 0; // lub xeev tam sim no ntawm kev siv zog nce khawm int ResButtonDownState = 0; // lub xeev tam sim no ntawm qhov txo qis khawm int lastResButtonUpState = 0; // lub xeev kawg ntawm kev siv khawm nce ntxiv int lastResButtonDownState = 0; // Lub xeev kawg ntawm qhov txo qis khawm

int pulsePin = 0; // Pulse Sensor txuas nrog chaw nres nkoj A0 // Cov kev hloov pauv no yog qhov hloov pauv vim tias lawv tau siv thaum lub sijhawm cuam tshuam hauv ntu ob. volatile nyob rau hauv BPM; // Neeg ntaus ib feeb tsis hloov pauv hauv Teeb liab; // Pulse sensor cov ntaub ntawv nkag nkag tau yooj yim int IBI = 600; // Pulse time volatile boolean Pulse = cuav; // Muaj tseeb thaum lub plawv dhia yoj siab, tsis tseeb thaum nws Qes Qhuav boolean QS = cuav;

# txhais Start_Byte 0x7E # txhais Version_Byte 0xFF # txhais Command_Length 0x06 # txhais End_Byte 0xEF # txhais kom lees paub 0x00 // Rov qab cov ntaub ntawv nrog hais kom ua 0x41 [0x01: info, 0x00: tsis muaj info]

// PANTALLA #include // Upload lub tsev qiv ntawv rau lub luag haujlwm ntawm lub vijtsam LCD #include #include

LiquidCrystal lcd (7, 6, 5, 4, 3, 2); // Tshaj tawm cov chaw nres nkoj uas LCD txuas nrog

// LECTOR #include #include // Upload lub tsev qiv ntawv rau kev ua haujlwm ntawm tus qauv dfplayer mini MP3.

char cov ntaub ntawv; koj nco; tus v;

SoftwareSerial comm (9, 10); // Tshaj tawm cov chaw nres nkoj uas DFPlayer txuas nrog DFRobotDFPlayerMini mp3;

teeb tsa tsis muaj dab tsi () {Serial.begin (9600); pinMode (SetResUp, INPUT); pinMode (SetResDown, INPUT);

// Txhais qhov ntev ntawm LCD (16x2) lcd.begin (16, 2); // Peb xaiv nyob hauv kab twg thiab kab twg cov ntawv pib pom // LECTOR comm.begin (9600);

mp3. pib (comm); // Cheebtsam pib serialData = (char) (('')); mp3.start (); Serial.println ("Ua Si"); // Ua si nkauj mp3.volume (25); // Txhais qhov ntim}

void loop () {yog (digitalRead (11) == LOW) {mp3.next (); // Yog tias lub pob nyem, zaj nkauj dhau mus} yog (digitalRead (12) == LOW) {mp3.previous (); // Yog tias lub pob nyem, zaj nkauj dhau los} // yog (SetResUp && SetResDown == LOW) {

int pulso = analogRead (A0); // Nyeem tus nqi ntawm lub plawv ntsuas saib txuas nrog Analog chaw nres nkoj A0

Serial.println (pulso/6); yog (QS == muaj tseeb) {// Chij ntawm Quantified Tus kheej muaj tseeb zoo li arduino tshawb nrhiav BPM QS = tsis tseeb; // Pib dua tus chij ntawm Quantified Self}

lcd.setCursor (0, 0); // Qhia cov ntawv uas xav tau lcd.print ("BPM:"); lcd.setCursor (0, 1); // Qhia cov ntawv uas xav tau lcd.print ("INT:"); lcd.setCursor (5, 0); // Qhia cov ntawv uas xav tau lcd.print (pulso); lcd.setCursor (5, 1); // Qhia cov ntawv xav tau lcd.print (ResButtonCounter); ncua (50); lcd.clear (); ResButtonUpState = digitalRead (SetResUp); ResButtonDownState = digitalRead (SetResDown);

// sib piv TempButtonState nrog nws lub xeev dhau los

yog (ResButtonUpState! = lastResButtonUpState && ResButtonUpState == LOW) {// yog tias lub xeev dhau los hloov, nce lub txee

ResButtonCounter ++; }

// txuag lub xeev tam sim no raws li lub xeev kawg, // rau lub sijhawm tom ntej lub voj tau ua tiav lastResButtonUpState = ResButtonUpState;

// sib piv lub xeev khawm (nce lossis txo) nrog lub xeev kawg

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

// yog tias lub xeev dhau los hloov pauv, txo tus nqi

ResButtonCounter--; }

// txuag lub xeev tam sim no raws li lub xeev kawg, // rau lub sijhawm tom ntej lub voj tau ua tiav lastResButtonDownState = ResButtonDownState; {Serial.println (ResButtonCounter);

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

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

}

}

Kauj Ruam 5: Tag Nrho Cov Rooj Sib Tham

Nrog rau txoj cai programmed kom raug thiab ob ntu ntawm peb tsab ntawv twb tau sib sau ua ke. Peb muab tag nrho cov khoom siv tso rau hauv qhov chaw thiab koom nrog nws nrog daim kab xev txhawm rau kho nws mus rau txoj hlua tes. Cov khoom siv uas muaj hauv txoj hlua tes yog Lub Plawv Tus Nqi Sensor BPM, ob lub nyees khawm, lub hwj chim ntsuas thiab lub vijtsam LCD, txhua tus nyob hauv nws lub qhov qub uas tau tsim yav tas los hauv daim ntawv 3D. Nrog thawj ntu ua tiav, peb tsom mus rau lub protoboard, txhua qhov txuas ntawm tus pin raug ntawm Arduino board. Thaum kawg, nrog qhov ua haujlwm tau lees paub ntawm txhua qhov kev tivthaiv, peb muab nws tso rau hauv pob fanny kom zais cov xov hlau.

Kauj ruam 6: Yees duab

Kauj Ruam 7: Xaus

Qhov ntxim nyiam tshaj plaws txog txoj haujlwm no yog kawm txog kev ua tib neeg lub cev yam tsis paub siv suab paj nruag. Qhov no qhib lub qhov rooj rau ntau txoj kev xaiv rau cov phiaj xwm yav tom ntej. Kuv xav tias qhov no yog qhov haujlwm tiav, peb muaj ntau yam sib xyaw nrog cov lej ua haujlwm. Yog tias peb pib dua peb yuav xav txog lwm txoj hauv kev xaiv lossis yuav lawv ntawm qhov zoo dua. Peb tau muaj teeb meem ntau nrog cov kab tawg thiab txuas txuas, lawv me me thiab muag heev (tshwj xeeb yog BPM). Ntawm qhov tod tes koj yuav tsum tau ceev faj thaum txuas cov khoom sib txuas, lawv muaj ntau qhov tso tawm thiab nws yooj yim ua yuam kev.

Nws yog txoj haujlwm zoo heev uas peb tau kov ntau yam ntawm Arduino kho vajtse thiab software xaiv.

Pom zoo: