Work It Out: Eine interaktive Fitness Motivationssystem (9 / 10 schritt)


Schritt 9: Programmierung Ihres Kleidungsstücks | Beschleunigungsmesser vollständige Code

Unten ist die komplette Arduino-Code für den Beschleunigungssensor:

/*
Herausfinden!
Hier ist der Beispielcode verwendet ein tragbares System zu erstellen, die einen Beschleunigungsmesser verwendet um die Anzahl der
Schritte unternimmt ein Benutzer. Das System speichert diesen Wert in einer Variablen und gibt eine visuelle Anzeige auf der Grundlage der
Anzahl.
Unten ist der Code verwendet. */

die folgenden Sätze die Variablen und Stifte im Code verwendeten

im folgenden beschreiben die Pins für die leichte Pads verwendet

Int führte = 5;
Int led2 = 9;
Int led3 = 11;
/ / Int Schritte = 7;

Diese konstanten beschreiben die Pins für den Beschleunigungsmesser verwendet:
const Int Xpin = A5; / / x-Achse des Beschleunigungsmessers
const Int Ypin = A2; / / y-Achse
const Int Zpin = A3; / / z-Achse (nur bei 3-Achs Modellen)

Anzahl der Millisekunden zwischen Lesungen
Int SampleDelay = 500;
/ / die Variable global "Schritte" beschreibt die Variable verwendet, um die Leistung der Lichter zu bestimmen:

Int Schritte = 0;

SoftwareSerial xbee(5,6);

das Setup beginnt"" alles:

void setup() {}

die seriellen Kommunikation zu initialisieren:
Serial.Begin(9600);
/ / Satz die Xbee serial zu 9600
XBee.Begin(9600);
/ / die digital Pins als Ausgang und den Beschleunigungssensor Pins als Eingänge zu initialisieren:
PinMode geleitete (Ausgabe);
PinMode (led2, OUTPUT);
PinMode (led3, OUTPUT);
PinMode (Xpin, Eingabe);
PinMode (Ypin, Eingabe);
PinMode (Zpin, Eingabe);

}

die Schleife Routine läuft immer und immer wieder für immer:

void loop() {}

Beschleunigungsmesser Code zur Ermittlung der Variablen "Schritte"

die folgenden Flot-Variablen werden verwendet um zu bestimmen, die Schwelle für "Schritte":

Float oldy = 0;
Float-Schwelle = 0;
//read den Wert von xbee
SensorValue = xbee.read();
//serial Port, das druckt, was gelesen wurde, um zu bestätigen, dass sie eingegangen ist
Serial.Print("; Sensorwert = ");
Serial.Write(senorValue);
/ / pin Lesungen für X, y, z
Int X = analogRead(xpin);
Delay(1); //add eine kleine Verzögerung zwischen Pin Lesungen. Ich habe gelesen, dass Sie dies tun sollten, aber noch nicht, die Bedeutung getestet
Int y = analogRead(ypin);
Delay(1); //add eine kleine Verzögerung zwischen Pin Lesungen. Ich habe gelesen, dass Sie dies tun sollten, aber noch nicht, die Bedeutung getestet
Int Z = analogRead(zpin);

/ * Zero_G ist die Lesung, die wir erwarten, vom Sensor dass erkennt es keine Beschleunigung. Subtrahieren Sie dieser Wert von der Sensorwert zu einer verschobenen Sensorwert. */
Float Zero_G = 512;

/ * Skala ist die Anzahl der Einheiten, die wir erwarten, die Sensorwerte dass zu ändern, wenn die Beschleunigung entlang einer Achse von 1 G ändert. Die verschobenen Sensorwert Skala Beschleunigung in Gs zu teilen. * /
schweben Sie Skala = 102,3;

für dieses Projekt werden wir nicht gedruckt, die 'X'-Werte, aber wenn Sie sie drucken möchten:
Serial.Print (((Float) x - Zero_G) / Skala);
Serial.Print("\t");

für dieses Projekt wir drucken die 'y'-Werte hilft den Schwellenwert bestimmen:
Schwelle = oldy - ((Float) y - Zero_G) / skalieren;
Serial.Print ("y =");
Serial.Print (((Float) y - Zero_G) / Skala);
Serial.Print("; Schwelle = ");
Serial.println(Threshold);

für dieses Projekt werden wir nicht gedruckt, die 'Z'-Werte, aber wenn Sie sie drucken möchten:
Serial.Print("\t");
Serial.Print (((Float) Z - Zero_G) / Skala); Serial.Print("\n");

Wenn (Schwelle > 1.3)
Schritte ++;
Serial.Print ("Schritte =");
Serial.Print(Steps);

Code verwendet, um festzustellen, welche Lichter muss zur Ausgabe:
Wenn (Schritte < = 5) {}
DigitalWrite (geführt, hoch); die erste LED-Anzeige schalten (HIGH ist das Spannungsniveau)
/ / delay(1000); / / eine Sekunde warten
DigitalWrite (geführt, niedrig); Schalten Sie die erste LED-Anzeige aus, indem man die Spannung niedrig
Delay(1000); warten Sie eine Sekunde

SoftwareSerial.println("A");
}
ElseIf ((steps > 5) & & (< 10 Schritte)) {}
DigitalWrite (led2, HIGH); Wende die zweite LED-Anzeige auf (HIGH ist das Spannungsniveau)
/ / delay(1000); / / eine Sekunde warten
DigitalWrite (led2, LOW); Schalten Sie die zweite LED-Anzeige aus, indem man die Spannung niedrig
Delay(1000); warten Sie eine Sekunde

SoftwareSerial.println("B");

}
ElseIf (Schritte > 10) {}
DigitalWrite (led3, HIGH); Wende die dritte LED-Anzeige auf (HIGH ist das Spannungsniveau)
/ / delay(1000); / / eine Sekunde warten
DigitalWrite (led3, LOW); Schalten Sie die dritte LED-Anzeige aus, indem man die Spannung niedrig
Delay(1000); warten Sie eine Sekunde

SoftwareSerial.println("C");
}

Else {}
Return 0;
}
/ / Verzögerung vor der nächsten Lesung:
Delay(sampleDelay);
}

In Verbindung stehende Artikel

Erstellen einer Nebenanlage Kanone für ein interaktives Display Halloween

Erstellen einer Nebenanlage Kanone für ein interaktives Display Halloween

jedes Jahr, wir versuchen etwas Neues für Halloween.  Diese Displays sind Gelände-Up baut jedes Jahr und diese Kriterien erfüllen: lustige, spannende, interaktive für Kinder beinhalten Gameplay und bieten eine Chance für mich Electricuted zu bekommen
Gewusst wie: Wandhalterung TV auf eine interaktive TV-Halterung

Gewusst wie: Wandhalterung TV auf eine interaktive TV-Halterung

Manche Dinge scheinen sehr kompliziert nur wegen, wie wir sie sehen. Wir haben eine Menge Leute getroffen, die lieben, sehen ihre schönen Fernseher an der Wand in diesem idealen Winkel aber fürchten sich vor der Montage ihren Fernseher mithilfe einer
Wie erstelle ich ein interaktives Spiel mit Fiktion wie "Zork"

Wie erstelle ich ein interaktives Spiel mit Fiktion wie "Zork"

Hallo ihr alle!Denken Sie an die guten alten Zeiten, als es unmöglich ist, mehr als eine Farbe auf einem Bildschirm und keine Grafiken zu haben war? In den frühen 80er Jahren, eine Reihe von textbasierten Abenteuerspielen, die Zork-Serie von einer Fi
Flora-eine interaktive Blume

Flora-eine interaktive Blume

Hallo an alle... Heute habe ich etwas aus meinem Blumengarten genommen... Wir alle wissen, Pflanzen haben ihr eigenes Leben, können sie fühlen, wie wir uns fühlen... aber sie können es nicht ausdrücken... Aber was passiert, wenn eine Blume die Fähigk
KLEBEN SIE ES | Eine interaktive Möglichkeit, Musik zu machen.

KLEBEN SIE ES | Eine interaktive Möglichkeit, Musik zu machen.

Sehen Sie das Video, um es in Aktion zu sehen! Sie können sehen, dass ich eine Pflanze verwendet, um verschiedene Töne, und auch ein Glas Wasser, neue Sounds zu machen!Schritt 1: Kleben Sie es | Eine interaktive Möglichkeit, Musik zu machen.Erstes Ar
Gewusst wie: erstellen und verwenden ein mein Fitness-Pal-Konto

Gewusst wie: erstellen und verwenden ein mein Fitness-Pal-Konto

versuchen, Gewicht zu verlieren?Abnehmen kann ein schwieriger Prozess für viele Menschen sein.  Glücklicherweise muss es nicht sein.Mit der My Fitness Pal-Website können Benutzer ihre Nahrung in ein Online-Tagebuch protokollieren, die protokolliert i
Machen eine interaktive funkelnden Wintermütze

Machen eine interaktive funkelnden Wintermütze

Winter in Holland! Kein Schnee, kein Eis, aber endloser Regen. Sie sagen die Menschen in der Arktis 29 Wörter für haben Schnee, Niederländer haben etwa die gleiche Anzahl von Wörtern für Regen.Dennoch haben wir ein Gefühl des Winters, wie es sein sol
Balloonacy! -Ein interaktives Ballon eintauchen

Balloonacy! -Ein interaktives Ballon eintauchen

Balloonacy! ist das Konzept für ein interaktives Ballon eintauchen.Tausende von Luftballons + Bewegung empfindlich LEDS = viel Spaß.Es war eine Erfahrung, die ich in San Francisco im Mai 2012 zusammen mit Mitarbeitern, Isaac Shivvers und Will Skinner
Erstellen Sie eine interaktive Living Wall

Erstellen Sie eine interaktive Living Wall

diese instructable erfolgte im Rahmen der Abschlussarbeit Anforderung in der CS-Hauptstudium "Tangible interaktive Computing" an der University of Maryland, College Park unterrichtet von Prof. Jon Froehlich. Der Kurs fokussiert auf die Erkundung
Verwandeln Sie Ihre Raspberry Pi in ein Hamster-Fitness-Tracker

Verwandeln Sie Ihre Raspberry Pi in ein Hamster-Fitness-Tracker

Haben Sie sich jemals gefragt, wie viel Ihr Hamster die Tag/Nacht durchzieht? Wie weit? Wie schnell? Meine 9 Jahre alte Tochter haben, und wir beschlossen, herauszufinden. Stellt sich heraus, es war ziemlich einfach, und die Ergebnisse waren unglaubl
Flip-Dot, eine interaktive kinetische tragbar.

Flip-Dot, eine interaktive kinetische tragbar.

Mode ist etwas sehr persönliches und intimes. Sie möglicherweise nicht immer bewusst zu sein, aber Ihr Körper berühren Kleidung oder Textilien fast die ganze Zeit. Dies erleichtert die perfekte Plattform um Technologie, nicht nur in Bezug auf Funktio
Machen Sie Ihre eigene Balance Board (und auf dem besten Weg, eine Wii Fit)

Machen Sie Ihre eigene Balance Board (und auf dem besten Weg, eine Wii Fit)

machen Sie Ihre eigene Balance Board oder BalanceTile (wie wir es nannten), als Schnittstelle für verschiedene Spiele und körperliche Fitness-Training,-CubeX Technologie. Entwerfen Sie Ihre eigene Anwendung und gehen Sie weit über die Wii Fit! Das Vi
Das Abenteuer der Elektrizität: eine interaktive Licht Diorama

Das Abenteuer der Elektrizität: eine interaktive Licht Diorama

Woher kommt Strom? Wer erfand die Glühbirne? Wie verwendet Städte diese Technologie heute?Dies sind nur einige Fragen, die hoffentlich in diesem interaktiven Diorama zu behandeln die Abenteuer der Elektrizität!Dieses Projekt wurde für pädagogische Zw
Babbletron - eine interaktive Auseinandersetzung mit Computer generierten Rede

Babbletron - eine interaktive Auseinandersetzung mit Computer generierten Rede

Die Babbletron ist ein Gerät, mit dem Sie die Welt der Computer generierte Spracheerkunden kann. Das grundlegende Konzept von der Babbletron verwendet ist, dass synthetische Sprache angenähert werden kann, mit einem kleinen Satz von phonetisch isolie