Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Pulseme on kantav seade, mis aitab inimestel teada saada, millal nende südamelöögid on määratud väärtusest kõrgemad, andes neile füüsilist tagasisidet kahaneva ja kokkutõmbumiseta kantava kujul.
Samm: kirjeldus
Selle kantava kanga põhiosa on villane kangas, mis puutub pidevalt kokku käsivarrega ja loob kokkutõmbumisel pehme tunde. Peale selle on olemas Arduino juhitav mehhanism, mis vastutab kanga liikumise eest, samuti pulsiandur.
2. samm: materjalid
Täpsemalt on selle füüsilise teavitusimpulsi anduri loomiseks vajalikud osad järgmised:
- Arduino Uno
- Pulseandur
- 2 x pideva pöörlemise servod (DS04-NFC)
- 2 x vedrud
- Käevõru
- Kangas
- Niidid
- Aku
3. samm: skemaatiline
Selle kantava elektroonilise osa loomiseks on kaks lihtsat vooluahelat.
Anduri ahel:
- Anduri tihvt 1 kuni Arduino A0
- Anduri tihvt 2 +5V
- Anduri tihvt 3 GND külge
Servo ahel:
- Servo1 tihvt Arduino tihvtiga 8
- Servo2 tihvt Arduino tihvtiga 9
Lõpuks ühendage +5V ja GND nende vastavate klemmidega Arduino plaadil.
4. samm: asjade kokkuviimine
Selle kulumaterjali kokkupanemiseks tuleb järgida järgmisi samme:
- Mõõda keskmise inimese käe läbimõõt, et kangast õmmelda sõltuvalt sellest kujust/suurusest.
- Ostke või 3D -printige sobiv käevõru, et see toimiks kogu elektroonika/mootorite alusena.
- Õmble vedrud kangale vastaskülgedelt.
- Liimige käevõru külge kaks servot.
- Ühendage vedrud ja servod keerme abil.
- Reguleerige koodi vastavalt oma eelistustele ja/või kanga suurusele.
- Nautige!
Samm: seadistage Arduino ja kood
Arduino ühendamine arvutiga ja selle esmakordne toimimine. Seda on lihtne teha. Seejärel programmeerige arduino pulssi lugema ja servosid juhtima, kui pulsisagedus ületab normaalse vahemiku. Põhimõtteliselt peame ka muutma sisendväärtuse lugemise sagedust, et saada järgmine kood: viivitust (9000) peetakse lihtsa visandi parimaks tavaks. Kood on järgmine:
Servo myservo1; Servo myservo2; int pos; // Muutujad const int PulseWire = 0; // PulseSensor PURPLE WIRE ühendatud ANALOG PIN PIN 0 const int LED13 = 13; // pardal olev Arduino LED, PIN 13. lähedal. // int Threshold = 550; // Määrake, millist signaali "võita" ja millist ignoreerida. // Kasutage projekti "Alustamine", et läviväärtust peenhäälestada kaugemale kui vaikeseade. // Muidu jätke vaikeväärtus "550". PulseSensorPlayground pulseSensor; // Loob eksemplari PulseSensorPlayground nimega "pulseSensor" void setup () {Serial.begin (9600); // Seeriamonitori jaoks
// PulseSensori objekti seadistamine, määrates sellele meie muutujad. pulseSensor.analogInput (PulseWire); pulseSensor.blinkOnPulse (LED13); // vilgutab automaatselt maagiliselt Arduino LED-i südamelöökidega. // pulseSensor.setThreshold (lävi); // Kontrollige uuesti, kas objekt "pulseSensor" loodi ja "hakkas" signaali nägema. if (pulseSensor.begin ()) {Serial.println ("Lõime pulseSensor Object!"); // See prinditakse üks kord Arduino sisselülitamisel või Arduino lähtestamisel. }} void loop () {int myBPM = pulseSensor.getBeatsPerMinute (); // Kõnede funktsioon meie pulseSensor objektil, mis tagastab BPM kui "int". // "myBPM" hoiab seda BPM väärtust praegu. //myservo1.attach (9); // if (pulseSensor.sawStartOfBeat ()) {// Kontrollige pidevalt, kas "peksmine juhtus". Serial.println ("♥ Südamelöök juhtus!"); // Kui test on "tõene", printige teade "südamelöök juhtus". Serial.print ("BPM:"); // Prindi fraas "BPM:" Serial.println (myBPM); // Printige väärtus myBPM -i. if (myBPM> = 65) {// Kontrollige pidevalt, kas "peksmine juhtus".
myservo1.attach (9); myservo2.attach (8); myservo1.writeMicroseconds (2000); // CW myservo2.writeMicroseconds (2000); viivitus (4000); myservo1.writeMicroseconds (1000); // CCW myservo2.writeMicroseconds (1000); viivitus (4000); myservo1.writeMicroseconds (1500); // stop myservo2.writeMicroseconds (1500); viivitus (500); } //} viivitus (9000); // peetakse lihtsaks visandiks parimaks tavaks. } Käivitage kood kohe, kontrollite lihtsalt visandit, ühendage USB ja laadige üles. Sa näed.