Isi kandungan:

Boleh Dipakai - Projek Akhir: 7 Langkah
Boleh Dipakai - Projek Akhir: 7 Langkah

Video: Boleh Dipakai - Projek Akhir: 7 Langkah

Video: Boleh Dipakai - Projek Akhir: 7 Langkah
Video: “Duduk Macam Lelaki” – Netizen Terkejut Lihat Rupa Terkini Anak Perempuan Sharifah Shahira 2024, November
Anonim
Boleh Dipakai - Projek Akhir
Boleh Dipakai - Projek Akhir

PENGENALAN

Dalam projek ini, kami mempunyai tugas untuk membuat prototaip yang dapat dipakai berdasarkan fungsi cyborg. Adakah anda tahu bahawa hati anda selaras dengan BPM muzik? Anda boleh cuba mengawal mood anda melalui muzik, tetapi bagaimana jika kita membiarkan teknologi membantu kita menenangkan diri? Kami hanya memerlukan beberapa komponen, sebuah Arduino dan fon kepala anda. Mari berinovasi!

Projek oleh Marc Vila, Guillermo Stauffacher dan Pau Carcellé

Langkah 1: Bahan dan Komponen

Bahan dan Komponen
Bahan dan Komponen

Bahan binaan:

- gelang tangan dicetak 3d

- Skru M3 (x8)

- Kacang M3 (x12)

- Pek Fanny

Bahan elektronik:

-BPM Sensor Kadar Hati

- Butang (x2)

- Potensiometer

- MODUL LCD C 1602

- MODUL DFPLAYER MINI MP3

- KEPALA TRRS Jack Stereo 3.5mm

- Kad MicroSD

- Plat Arduino Uno

- Pengimpal

- Plat Bakelite

Langkah 2: Reka Gelang Tangan

Reka Gelang Gelang
Reka Gelang Gelang
Reka Gelang Gelang
Reka Gelang Gelang

Mula-mula kita membuat beberapa lakaran untuk menyusun komponen yang berbeza di gelang tangan.

Dengan idea yang jelas, kami melakukan pengukuran ketiga lengan anggota kumpulan itu, kemudian kami membuat rata-rata untuk mencari ukuran optimum untuk reka bentuk. Akhirnya kami merancang produk dengan program 3d dan mencetaknya dengan pencetak 3D.

Anda boleh memuat turun fail. STL di sini.

Langkah 3: Sambungan Elektronik

Sambungan Elektronik
Sambungan Elektronik

Kami terus melakukan pemeriksaan yang diperlukan dari reka bentuk 3d kami, kami membuat pemasangan pertama dari semua komponen dalam prototaip untuk melihat bahawa pengukurannya betul.

Untuk menyambungkan semua komponen ke papan Arduino, kami membuat sambungan yang berbeza dari komponen menggunakan kabel 0, 5 meter, dengan cara ini kami dapat mengurangkan penglihatan papan dan kami mengatur prototaip dengan lebih baik.

Langkah 4: Kodnya

Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut

Projek ini adalah prototaip cyborg. Jelas kami belum memperkenalkan komponen di bawah kulit, jadi kami telah mensimulasikannya dengan gelang sebagai orthosis (alat luaran digunakan pada badan untuk mengubah aspek fungsional).

Kod kami menggunakan ketukan kekunci pengguna dan menunjukkannya menggunakan skrin LCD. Selain BPM, layar menunjukkan intensiti yang diinginkan sehingga pengguna dapat membandingkannya dengan detak jantungnya. Terdapat banyak situasi di mana menarik untuk meningkatkan atau mengurangkan BPM anda sendiri. Sebagai contoh, atlet ketahanan mesti mengawal denyutan agar tidak terlalu letih. Contoh sehari-hari ialah ingin tidur atau tenang dalam keadaan gementar. Ini juga dapat digunakan sebagai metode terapi bagi penderita autisme untuk mengurangi tekanan yang mereka rasakan. Di sebelah skrin terdapat dua butang untuk mengawal intensiti yang diinginkan dan meningkatkan atau menurunkan degupan jantung. Bergantung pada intensiti, jenis muzik yang dipelajari sebelumnya dimainkan. Terdapat kajian yang menunjukkan bahawa muzik dapat mengubah BPM. Menurut Beats per Minute lagu, tubuh manusia meniru dan sesuai dengan BPM tersebut.

int SetResUp = 11; // pin 10 dari Arduino dengan butang peningkatan intensiti.int SetResDown = 12; // pin 11 dari Arduino dengan butang penurunan intensiti

int ResButtonCounter = 0; // kali pembilang yang meningkatkan atau mengurangkan tetapan rintangan, nilai awal 0 int ResButtonUpState = 0; // keadaan semasa butang peningkatan intensiti int ResButtonDownState = 0; // keadaan semasa butang penurunan intensiti int lastResButtonUpState = 0; // keadaan terakhir butang peningkatan intensiti int lastResButtonDownState = 0; // keadaan terakhir butang penurunan intensiti

int pulsePin = 0; // Pulse Sensor disambungkan ke port A0 // Pemboleh ubah ini tidak stabil kerana digunakan semasa rutin gangguan pada tab kedua. int BPM yang tidak menentu; // Pukul per minit Isyarat tidak stabil; // Input data sensor denyut nadi antara IBI = 600; // Pulse boolean volatile time = denyut; // Benar ketika gelombang nadi tinggi, salah ketika itu adalah boolean volatile rendah QS = false;

# define Start_Byte 0x7E # define Version_Byte 0xFF # define Command_Length 0x06 # define End_Byte 0xEF #efinisikan Akui 0x00 // Mengembalikan maklumat dengan arahan 0x41 [0x01: info, 0x00: tanpa maklumat]

// PANTALLA #include // Muat naik pustaka untuk fungsi skrin LCD #include #include

LiquidCrystal lcd (7, 6, 5, 4, 3, 2); // Menyatakan port di mana LCD disambungkan

// LECTOR #include #include // Muat naik perpustakaan untuk fungsi modul dfplayer mini MP3.

char serialData; int nsong; int v;

Perisian Serial Perisian (9, 10); // Menyatakan port di mana DFPlayer disambungkan DFRobotDFPlayerMini mp3;

batal persediaan () {Serial.begin (9600); pinMode (SetResUp, INPUT); pinMode (SetResDown, INPUT);

// Tentukan dimensi LCD (16x2) lcd.begin (16, 2); // Kami memilih lajur mana dan baris mana teks mula ditunjukkan // LECTOR comm.begin (9600);

mp3.begin (kom); // Komponen memulakan serialData = (char) (('')); mp3.start (); Serial.println ("Main"); // Mainkan lagu mp3.volume (25); // Tentukan kelantangan}

gelung kosong () {if (digitalRead (11) == RENDAH) {mp3.next (); // Sekiranya butang ditekan, lagu akan berlalu} if (digitalRead (12) == LOW) {mp3.pre sebelumnya (); // Sekiranya butang ditekan, lagu sebelumnya} // if (SetResUp && SetResDown == RENDAH) {

int pulso = analogRead (A0); // Baca nilai monitor denyut jantung yang disambungkan ke port Analog A0

Serial.println (pulso / 6); if (QS == true) {// Bendera Diri Dikukur benar seperti arduino mencari BPM QS = false; // Tetapkan semula bendera Diri Terkenal}

lcd.setCursor (0, 0); // Tunjukkan lcd.print teks yang dikehendaki ("BPM:"); lcd.setCursor (0, 1); // Tunjukkan lcd.print teks yang dikehendaki ("INT:"); lcd.setCursor (5, 0); // Tunjukkan teks lcd.print (pulso) yang dikehendaki; lcd.setCursor (5, 1); // Tunjukkan lcd.print teks yang dikehendaki (ResButtonCounter); kelewatan (50); lcd.clear (); ResButtonUpState = digitalRead (SetResUp); ResButtonDownState = digitalRead (SetResDown);

// bandingkan TempButtonState dengan keadaan sebelumnya

jika (ResButtonUpState! = lastResButtonUpState && ResButtonUpState == RENDAH) {// jika keadaan terakhir berubah, tingkatkan pembilang

ResButtonCounter ++; }

// simpan keadaan semasa sebagai keadaan terakhir, // untuk kali berikutnya gelung dijalankan lastResButtonUpState = ResButtonUpState;

// bandingkan keadaan butang (naik atau turun) dengan keadaan terakhir

jika (ResButtonDownState! = lastResButtonDownState && ResButtonDownState == RENDAH) {

// jika keadaan terakhir berubah, kurangkan pembilang

ResButtonCounter--; }

// simpan keadaan semasa sebagai keadaan terakhir, // untuk kali seterusnya gelung dijalankan lastResButtonDownState = ResButtonDownState; {Serial.println (ResButtonCounter);

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

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

}

}

Langkah 5: Jumlah Perhimpunan

Dengan kod yang diprogramkan dengan betul dan dua bahagian prototaip kami sudah dipasang. Kami meletakkan semua komponen dan memasangkannya dengan pita untuk memasangkannya ke gelang. Komponen yang terdapat dalam gelang tersebut adalah Sensor Denyut Jantung BPM, dua butang, potensiometer dan Layar LCD, masing-masing di lubang masing-masing yang sebelumnya dirancang dalam fail 3D. Dengan bahagian pertama selesai, kami menumpukan perhatian pada protoboard, setiap penyambung pada pin papan Arduino yang betul. Akhirnya, dengan operasi yang disahkan bagi setiap komponen, kami memasukkannya ke dalam fanny pack untuk menyembunyikan wayar.

Langkah 6: Video

Langkah 7: Kesimpulannya

Perkara yang paling menarik mengenai projek ini ialah belajar meniru tubuh manusia secara tidak sedar dengan muzik. Ini membuka banyak pilihan untuk projek masa depan. Saya rasa ini adalah projek yang lengkap, kita mempunyai pelbagai komponen dengan kod yang telah dikerjakan. Sekiranya kita memulakannya lagi, kita akan memikirkan alternatif komponen lain atau membelinya dengan kualiti yang lebih baik. Kami mempunyai banyak masalah dengan kabel dan pengelasan yang pecah, kabelnya kecil dan sangat halus (terutama BPM). Sebaliknya anda mesti berhati-hati ketika menyambungkan komponen, ia mempunyai banyak output dan mudah melakukan kesalahan.

Ini adalah projek yang sangat memperkaya di mana kami telah menyentuh pelbagai pilihan perkakasan dan perisian Arduino.

Disyorkan: